Class ConfigRecognitionNister2006

All Implemented Interfaces:
Configuration, Serializable

public class ConfigRecognitionNister2006 extends Object implements Configuration
Configuration for recognition algorithms based on RecognitionVocabularyTreeNister2006
See Also:
  • Field Details

    • kmeans

      public final ConfigKMeans kmeans
      Clustering algorithm used when learning the hierarchical tree
    • tree

      Configuration for the tree when it's being learned
    • distanceNorm

      public BowDistanceTypes distanceNorm
      Specifies which norm to use. L1 should yield better results but is slower than L2 to compute.
    • minimumDepthFromRoot

      public int minimumDepthFromRoot
      Critical tuning parameter for performance. A node can't be a "word" in the descriptor if it's this close to the root node. Small values will prune less or no images in the database. As a result more images are considered slowing everything down. However, if this is set too high then valid images are pruned and recognition goes down. If set larger than tree.maximumLevel, then there are no valid nodes.
    • queryMaximumImagesInNode

      public final ConfigLength queryMaximumImagesInNode
      When making a query, If a node has an inverted file list greater than this amount then it will be skipped when scoring. This should be viewed as a last ditch effort when the query is too slow as it will degrade the quality. For example, with 1,000,000 images, setting this to be 5000 images reduced query time from 7,000 (ms) to 85 (ms).
    • learningMaximumImagesInNode

      public final ConfigLength learningMaximumImagesInNode
      When learning, if a node is viewed by more than this number of images then its weight is set to zero. This is useful because it provides a more strategic way to eliminate less informative words from the image descriptor than by setting minimumDepthFromRoot. Disabled by default.
    • learningMinimumPointsForChildren

      public final ConfigLength learningMinimumPointsForChildren
      When learning, if a node has less than this number of points it will not spawn children. If relative then its relative to the total number of points. This is intended to avoid over fitting.
    • learnNodeWeights

      public boolean learnNodeWeights
      If true then it will learn node weights. If false the all nodes but the root node will have a weight of 1.0
    • featureSingleWordHops

      public int featureSingleWordHops
      When converting a descriptor into a word it will return the word which is this many hops from the leaf. The leaf can be too specific and by "hoping" away from the leaf it gets more generic and will have more matches. If words are being used for frame-to-frame matching then this is a critical parameter. Default value will force it to the root's children. This won't fail but might not be the most effective choice.
    • randSeed

      public long randSeed
      Seed used in random number generators
  • Constructor Details

    • ConfigRecognitionNister2006

      public ConfigRecognitionNister2006()
  • Method Details