Class implementing PCT (position-color-texture) signature extraction as described in [KrulisLS16]. The algorithm is divided to a feature sampler and a clusterizer. Feature sampler produces samples at given set of coordinates. Clusterizer then produces clusters of these samples using k-means algorithm. Resulting set of clusters is the signature of the input image.
[詳解]
|
virtual CV_WRAP void | computeSignature (InputArray image, OutputArray signature) const =0 |
| Computes signature of given image. [詳解]
|
|
virtual CV_WRAP void | computeSignatures (const std::vector< Mat > &images, std::vector< Mat > &signatures) const =0 |
| Computes signatures for multiple images in parallel. [詳解]
|
|
virtual CV_WRAP int | getSampleCount () const =0 |
| Number of initial samples taken from the image.
|
|
virtual CV_WRAP int | getGrayscaleBits () const =0 |
| Color resolution of the greyscale bitmap represented in allocated bits (i.e., value 4 means that 16 shades of grey are used). The greyscale bitmap is used for computing contrast and entropy values.
|
|
virtual CV_WRAP void | setGrayscaleBits (int grayscaleBits)=0 |
| Color resolution of the greyscale bitmap represented in allocated bits (i.e., value 4 means that 16 shades of grey are used). The greyscale bitmap is used for computing contrast and entropy values.
|
|
virtual CV_WRAP int | getWindowRadius () const =0 |
| Size of the texture sampling window used to compute contrast and entropy (center of the window is always in the pixel selected by x,y coordinates of the corresponding feature sample).
|
|
virtual CV_WRAP void | setWindowRadius (int radius)=0 |
| Size of the texture sampling window used to compute contrast and entropy (center of the window is always in the pixel selected by x,y coordinates of the corresponding feature sample).
|
|
virtual CV_WRAP float | getWeightX () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightX (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightY () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightY (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightL () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightL (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightA () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightA (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightB () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightB (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightContrast () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightContrast (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP float | getWeightEntropy () const =0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP void | setWeightEntropy (float weight)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space (x,y = position; L,a,b = color in CIE Lab space; c = contrast. e = entropy)
|
|
virtual CV_WRAP std::vector< Point2f > | getSamplingPoints () const =0 |
| Initial samples taken from the image. These sampled features become the input for clustering.
|
|
virtual CV_WRAP void | setWeight (int idx, float value)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space. [詳解]
|
|
virtual CV_WRAP void | setWeights (const std::vector< float > &weights)=0 |
| Weights (multiplicative constants) that linearly stretch individual axes of the feature space. [詳解]
|
|
virtual CV_WRAP void | setTranslation (int idx, float value)=0 |
| Translations of the individual axes of the feature space. [詳解]
|
|
virtual CV_WRAP void | setTranslations (const std::vector< float > &translations)=0 |
| Translations of the individual axes of the feature space. [詳解]
|
|
virtual CV_WRAP void | setSamplingPoints (std::vector< Point2f > samplingPoints)=0 |
| Sets sampling points used to sample the input image. [詳解]
|
|
virtual CV_WRAP std::vector< int > | getInitSeedIndexes () const =0 |
| Initial seeds (initial number of clusters) for the k-means algorithm.
|
|
virtual CV_WRAP void | setInitSeedIndexes (std::vector< int > initSeedIndexes)=0 |
| Initial seed indexes for the k-means algorithm.
|
|
virtual CV_WRAP int | getInitSeedCount () const =0 |
| Number of initial seeds (initial number of clusters) for the k-means algorithm.
|
|
virtual CV_WRAP int | getIterationCount () const =0 |
| Number of iterations of the k-means clustering. We use fixed number of iterations, since the modified clustering is pruning clusters (not iteratively refining k clusters).
|
|
virtual CV_WRAP void | setIterationCount (int iterationCount)=0 |
| Number of iterations of the k-means clustering. We use fixed number of iterations, since the modified clustering is pruning clusters (not iteratively refining k clusters).
|
|
virtual CV_WRAP int | getMaxClustersCount () const =0 |
| Maximal number of generated clusters. If the number is exceeded, the clusters are sorted by their weights and the smallest clusters are cropped.
|
|
virtual CV_WRAP void | setMaxClustersCount (int maxClustersCount)=0 |
| Maximal number of generated clusters. If the number is exceeded, the clusters are sorted by their weights and the smallest clusters are cropped.
|
|
virtual CV_WRAP int | getClusterMinSize () const =0 |
| This parameter multiplied by the index of iteration gives lower limit for cluster size. Clusters containing fewer points than specified by the limit have their centroid dismissed and points are reassigned.
|
|
virtual CV_WRAP void | setClusterMinSize (int clusterMinSize)=0 |
| This parameter multiplied by the index of iteration gives lower limit for cluster size. Clusters containing fewer points than specified by the limit have their centroid dismissed and points are reassigned.
|
|
virtual CV_WRAP float | getJoiningDistance () const =0 |
| Threshold euclidean distance between two centroids. If two cluster centers are closer than this distance, one of the centroid is dismissed and points are reassigned.
|
|
virtual CV_WRAP void | setJoiningDistance (float joiningDistance)=0 |
| Threshold euclidean distance between two centroids. If two cluster centers are closer than this distance, one of the centroid is dismissed and points are reassigned.
|
|
virtual CV_WRAP float | getDropThreshold () const =0 |
| Remove centroids in k-means whose weight is lesser or equal to given threshold.
|
|
virtual CV_WRAP void | setDropThreshold (float dropThreshold)=0 |
| Remove centroids in k-means whose weight is lesser or equal to given threshold.
|
|
virtual CV_WRAP int | getDistanceFunction () const =0 |
| Distance function selector used for measuring distance between two points in k-means.
|
|
virtual CV_WRAP void | setDistanceFunction (int distanceFunction)=0 |
| Distance function selector used for measuring distance between two points in k-means. Available: L0_25, L0_5, L1, L2, L2SQUARED, L5, L_INFINITY.
|
|
virtual CV_WRAP void | clear () |
| Clears the algorithm state [詳解]
|
|
virtual void | write (FileStorage &fs) const |
| Stores algorithm parameters in a file storage [詳解]
|
|
CV_WRAP void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
| simplified API for language bindings これはオーバーロードされたメンバ関数です。利便性のために用意されています。元の関数との違いは引き数のみです。
|
|
virtual CV_WRAP void | read (const FileNode &fn) |
| Reads algorithm parameters from a file storage [詳解]
|
|
virtual CV_WRAP bool | empty () const |
| Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read [詳解]
|
|
virtual CV_WRAP void | save (const String &filename) const |
|
virtual CV_WRAP String | getDefaultName () const |
|
Class implementing PCT (position-color-texture) signature extraction as described in [KrulisLS16]. The algorithm is divided to a feature sampler and a clusterizer. Feature sampler produces samples at given set of coordinates. Clusterizer then produces clusters of these samples using k-means algorithm. Resulting set of clusters is the signature of the input image.
A signature is an array of SIGNATURE_DIMENSION-dimensional points. Used dimensions are: weight, x, y position; lab color, contrast, entropy. [KrulisLS16] [BeecksUS10]