Removed Sphinx documentation files
This commit is contained in:
@@ -1,11 +0,0 @@
|
||||
EMD-L1
|
||||
======
|
||||
Computes the "minimal work" distance between two weighted point configurations base on the papers "EMD-L1: An efficient and Robust Algorithm
|
||||
for comparing histogram-based descriptors", by Haibin Ling and Kazunori Okuda; and "The Earth Mover's Distance is the Mallows Distance:
|
||||
Some Insights from Statistics", by Elizaveta Levina and Peter Bickel.
|
||||
|
||||
.. ocv:function:: float EMDL1( InputArray signature1, InputArray signature2 )
|
||||
|
||||
:param signature1: First signature, a single column floating-point matrix. Each row is the value of the histogram in each bin.
|
||||
|
||||
:param signature2: Second signature of the same format and size as ``signature1``.
|
@@ -1,82 +0,0 @@
|
||||
Cost Matrix for Histograms Common Interface
|
||||
===========================================
|
||||
|
||||
.. highlight:: cpp
|
||||
|
||||
A common interface is defined to ease the implementation of some algorithms pipelines, such
|
||||
as the Shape Context Matching Algorithm. A common class is defined, so any object that implements
|
||||
a Cost Matrix builder inherits the
|
||||
:ocv:class:`HistogramCostExtractor` interface.
|
||||
|
||||
HistogramCostExtractor
|
||||
----------------------
|
||||
.. ocv:class:: HistogramCostExtractor : public Algorithm
|
||||
|
||||
Abstract base class for histogram cost algorithms. ::
|
||||
|
||||
class CV_EXPORTS_W HistogramCostExtractor : public Algorithm
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void buildCostMatrix(InputArray descriptors1, InputArray descriptors2, OutputArray costMatrix) = 0;
|
||||
|
||||
CV_WRAP virtual void setNDummies(int nDummies) = 0;
|
||||
CV_WRAP virtual int getNDummies() const = 0;
|
||||
|
||||
CV_WRAP virtual void setDefaultCost(float defaultCost) = 0;
|
||||
CV_WRAP virtual float getDefaultCost() const = 0;
|
||||
};
|
||||
|
||||
NormHistogramCostExtractor
|
||||
--------------------------
|
||||
.. ocv:class:: NormHistogramCostExtractor : public HistogramCostExtractor
|
||||
|
||||
A norm based cost extraction. ::
|
||||
|
||||
class CV_EXPORTS_W NormHistogramCostExtractor : public HistogramCostExtractor
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setNormFlag(int flag) = 0;
|
||||
CV_WRAP virtual int getNormFlag() const = 0;
|
||||
};
|
||||
|
||||
CV_EXPORTS_W Ptr<HistogramCostExtractor>
|
||||
createNormHistogramCostExtractor(int flag=cv::DIST_L2, int nDummies=25, float defaultCost=0.2);
|
||||
|
||||
EMDHistogramCostExtractor
|
||||
-------------------------
|
||||
.. ocv:class:: EMDHistogramCostExtractor : public HistogramCostExtractor
|
||||
|
||||
An EMD based cost extraction. ::
|
||||
|
||||
class CV_EXPORTS_W EMDHistogramCostExtractor : public HistogramCostExtractor
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setNormFlag(int flag) = 0;
|
||||
CV_WRAP virtual int getNormFlag() const = 0;
|
||||
};
|
||||
|
||||
CV_EXPORTS_W Ptr<HistogramCostExtractor>
|
||||
createEMDHistogramCostExtractor(int flag=cv::DIST_L2, int nDummies=25, float defaultCost=0.2);
|
||||
|
||||
ChiHistogramCostExtractor
|
||||
-------------------------
|
||||
.. ocv:class:: ChiHistogramCostExtractor : public HistogramCostExtractor
|
||||
|
||||
An Chi based cost extraction. ::
|
||||
|
||||
class CV_EXPORTS_W ChiHistogramCostExtractor : public HistogramCostExtractor
|
||||
{};
|
||||
|
||||
CV_EXPORTS_W Ptr<HistogramCostExtractor> createChiHistogramCostExtractor(int nDummies=25, float defaultCost=0.2);
|
||||
|
||||
EMDL1HistogramCostExtractor
|
||||
---------------------------
|
||||
.. ocv:class:: EMDL1HistogramCostExtractor : public HistogramCostExtractor
|
||||
|
||||
An EMD-L1 based cost extraction. ::
|
||||
|
||||
class CV_EXPORTS_W EMDL1HistogramCostExtractor : public HistogramCostExtractor
|
||||
{};
|
||||
|
||||
CV_EXPORTS_W Ptr<HistogramCostExtractor>
|
||||
createEMDL1HistogramCostExtractor(int nDummies=25, float defaultCost=0.2);
|
@@ -1,15 +0,0 @@
|
||||
**********************************
|
||||
shape. Shape Distance and Matching
|
||||
**********************************
|
||||
|
||||
The module contains algorithms that embed a notion of shape distance.
|
||||
These algorithms may be used for shape matching and retrieval, or shape
|
||||
comparison.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
shape_distances
|
||||
shape_transformers
|
||||
histogram_cost_matrix
|
||||
emdL1
|
@@ -1,231 +0,0 @@
|
||||
Shape Distance and Common Interfaces
|
||||
====================================
|
||||
|
||||
.. highlight:: cpp
|
||||
|
||||
Shape Distance algorithms in OpenCV are derivated from a common interface that allows you to
|
||||
switch between them in a practical way for solving the same problem with different methods.
|
||||
Thus, all objects that implement shape distance measures inherit the
|
||||
:ocv:class:`ShapeDistanceExtractor` interface.
|
||||
|
||||
|
||||
ShapeDistanceExtractor
|
||||
----------------------
|
||||
.. ocv:class:: ShapeDistanceExtractor : public Algorithm
|
||||
|
||||
Abstract base class for shape distance algorithms. ::
|
||||
|
||||
class CV_EXPORTS_W ShapeDistanceExtractor : public Algorithm
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual float computeDistance(InputArray contour1, InputArray contour2) = 0;
|
||||
};
|
||||
|
||||
ShapeDistanceExtractor::computeDistance
|
||||
---------------------------------------
|
||||
Compute the shape distance between two shapes defined by its contours.
|
||||
|
||||
.. ocv:function:: float ShapeDistanceExtractor::computeDistance( InputArray contour1, InputArray contour2 )
|
||||
|
||||
:param contour1: Contour defining first shape.
|
||||
|
||||
:param contour2: Contour defining second shape.
|
||||
|
||||
ShapeContextDistanceExtractor
|
||||
-----------------------------
|
||||
.. ocv:class:: ShapeContextDistanceExtractor : public ShapeDistanceExtractor
|
||||
|
||||
Implementation of the Shape Context descriptor and matching algorithm proposed by Belongie et al. in
|
||||
"Shape Matching and Object Recognition Using Shape Contexts" (PAMI 2002).
|
||||
This implementation is packaged in a generic scheme, in order to allow you the implementation of the
|
||||
common variations of the original pipeline. ::
|
||||
|
||||
class CV_EXPORTS_W ShapeContextDistanceExtractor : public ShapeDistanceExtractor
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setAngularBins(int nAngularBins) = 0;
|
||||
CV_WRAP virtual int getAngularBins() const = 0;
|
||||
|
||||
CV_WRAP virtual void setRadialBins(int nRadialBins) = 0;
|
||||
CV_WRAP virtual int getRadialBins() const = 0;
|
||||
|
||||
CV_WRAP virtual void setInnerRadius(float innerRadius) = 0;
|
||||
CV_WRAP virtual float getInnerRadius() const = 0;
|
||||
|
||||
CV_WRAP virtual void setOuterRadius(float outerRadius) = 0;
|
||||
CV_WRAP virtual float getOuterRadius() const = 0;
|
||||
|
||||
CV_WRAP virtual void setRotationInvariant(bool rotationInvariant) = 0;
|
||||
CV_WRAP virtual bool getRotationInvariant() const = 0;
|
||||
|
||||
CV_WRAP virtual void setShapeContextWeight(float shapeContextWeight) = 0;
|
||||
CV_WRAP virtual float getShapeContextWeight() const = 0;
|
||||
|
||||
CV_WRAP virtual void setImageAppearanceWeight(float imageAppearanceWeight) = 0;
|
||||
CV_WRAP virtual float getImageAppearanceWeight() const = 0;
|
||||
|
||||
CV_WRAP virtual void setBendingEnergyWeight(float bendingEnergyWeight) = 0;
|
||||
CV_WRAP virtual float getBendingEnergyWeight() const = 0;
|
||||
|
||||
CV_WRAP virtual void setImages(InputArray image1, InputArray image2) = 0;
|
||||
CV_WRAP virtual void getImages(OutputArray image1, OutputArray image2) const = 0;
|
||||
|
||||
CV_WRAP virtual void setIterations(int iterations) = 0;
|
||||
CV_WRAP virtual int getIterations() const = 0;
|
||||
|
||||
CV_WRAP virtual void setCostExtractor(Ptr<HistogramCostExtractor> comparer) = 0;
|
||||
CV_WRAP virtual Ptr<HistogramCostExtractor> getCostExtractor() const = 0;
|
||||
|
||||
CV_WRAP virtual void setTransformAlgorithm(Ptr<ShapeTransformer> transformer) = 0;
|
||||
CV_WRAP virtual Ptr<ShapeTransformer> getTransformAlgorithm() const = 0;
|
||||
};
|
||||
|
||||
/* Complete constructor */
|
||||
CV_EXPORTS_W Ptr<ShapeContextDistanceExtractor>
|
||||
createShapeContextDistanceExtractor(int nAngularBins=12, int nRadialBins=4,
|
||||
float innerRadius=0.2, float outerRadius=2, int iterations=3,
|
||||
const Ptr<HistogramCostExtractor> &comparer = createChiHistogramCostExtractor(),
|
||||
const Ptr<ShapeTransformer> &transformer = createThinPlateSplineShapeTransformer());
|
||||
|
||||
ShapeContextDistanceExtractor::setAngularBins
|
||||
---------------------------------------------
|
||||
Establish the number of angular bins for the Shape Context Descriptor used in the shape matching pipeline.
|
||||
|
||||
.. ocv:function:: void setAngularBins( int nAngularBins )
|
||||
|
||||
:param nAngularBins: The number of angular bins in the shape context descriptor.
|
||||
|
||||
ShapeContextDistanceExtractor::setRadialBins
|
||||
--------------------------------------------
|
||||
Establish the number of radial bins for the Shape Context Descriptor used in the shape matching pipeline.
|
||||
|
||||
.. ocv:function:: void setRadialBins( int nRadialBins )
|
||||
|
||||
:param nRadialBins: The number of radial bins in the shape context descriptor.
|
||||
|
||||
ShapeContextDistanceExtractor::setInnerRadius
|
||||
---------------------------------------------
|
||||
Set the inner radius of the shape context descriptor.
|
||||
|
||||
.. ocv:function:: void setInnerRadius(float innerRadius)
|
||||
|
||||
:param innerRadius: The value of the inner radius.
|
||||
|
||||
ShapeContextDistanceExtractor::setOuterRadius
|
||||
---------------------------------------------
|
||||
Set the outer radius of the shape context descriptor.
|
||||
|
||||
.. ocv:function:: void setOuterRadius(float outerRadius)
|
||||
|
||||
:param outerRadius: The value of the outer radius.
|
||||
|
||||
ShapeContextDistanceExtractor::setShapeContextWeight
|
||||
----------------------------------------------------
|
||||
Set the weight of the shape context distance in the final value of the shape distance.
|
||||
The shape context distance between two shapes is defined as the symmetric sum of shape
|
||||
context matching costs over best matching points.
|
||||
The final value of the shape distance is a user-defined linear combination of the shape
|
||||
context distance, an image appearance distance, and a bending energy.
|
||||
|
||||
.. ocv:function:: void setShapeContextWeight( float shapeContextWeight )
|
||||
|
||||
:param shapeContextWeight: The weight of the shape context distance in the final distance value.
|
||||
|
||||
ShapeContextDistanceExtractor::setImageAppearanceWeight
|
||||
-------------------------------------------------------
|
||||
Set the weight of the Image Appearance cost in the final value of the shape distance.
|
||||
The image appearance cost is defined as the sum of squared brightness differences in
|
||||
Gaussian windows around corresponding image points.
|
||||
The final value of the shape distance is a user-defined linear combination of the shape
|
||||
context distance, an image appearance distance, and a bending energy.
|
||||
If this value is set to a number different from 0, is mandatory to set the images that
|
||||
correspond to each shape.
|
||||
|
||||
.. ocv:function:: void setImageAppearanceWeight( float imageAppearanceWeight )
|
||||
|
||||
:param imageAppearanceWeight: The weight of the appearance cost in the final distance value.
|
||||
|
||||
ShapeContextDistanceExtractor::setBendingEnergyWeight
|
||||
-----------------------------------------------------
|
||||
Set the weight of the Bending Energy in the final value of the shape distance.
|
||||
The bending energy definition depends on what transformation is being used to align the
|
||||
shapes.
|
||||
The final value of the shape distance is a user-defined linear combination of the shape
|
||||
context distance, an image appearance distance, and a bending energy.
|
||||
|
||||
.. ocv:function:: void setBendingEnergyWeight( float bendingEnergyWeight )
|
||||
|
||||
:param bendingEnergyWeight: The weight of the Bending Energy in the final distance value.
|
||||
|
||||
ShapeContextDistanceExtractor::setImages
|
||||
----------------------------------------
|
||||
Set the images that correspond to each shape. This images are used in the calculation of the
|
||||
Image Appearance cost.
|
||||
|
||||
.. ocv:function:: void setImages( InputArray image1, InputArray image2 )
|
||||
|
||||
:param image1: Image corresponding to the shape defined by ``contours1``.
|
||||
|
||||
:param image2: Image corresponding to the shape defined by ``contours2``.
|
||||
|
||||
ShapeContextDistanceExtractor::setCostExtractor
|
||||
-----------------------------------------------
|
||||
Set the algorithm used for building the shape context descriptor cost matrix.
|
||||
|
||||
.. ocv:function:: void setCostExtractor( Ptr<HistogramCostExtractor> comparer )
|
||||
|
||||
:param comparer: Smart pointer to a HistogramCostExtractor, an algorithm that defines the cost matrix between descriptors.
|
||||
|
||||
ShapeContextDistanceExtractor::setStdDev
|
||||
----------------------------------------
|
||||
Set the value of the standard deviation for the Gaussian window for the image appearance cost.
|
||||
|
||||
.. ocv:function:: void setStdDev( float sigma )
|
||||
|
||||
:param sigma: Standard Deviation.
|
||||
|
||||
ShapeContextDistanceExtractor::setTransformAlgorithm
|
||||
----------------------------------------------------
|
||||
Set the algorithm used for aligning the shapes.
|
||||
|
||||
.. ocv:function:: void setTransformAlgorithm( Ptr<ShapeTransformer> transformer )
|
||||
|
||||
:param comparer: Smart pointer to a ShapeTransformer, an algorithm that defines the aligning transformation.
|
||||
|
||||
HausdorffDistanceExtractor
|
||||
--------------------------
|
||||
.. ocv:class:: HausdorffDistanceExtractor : public ShapeDistanceExtractor
|
||||
|
||||
A simple Hausdorff distance measure between shapes defined by contours,
|
||||
according to the paper "Comparing Images using the Hausdorff distance." by
|
||||
D.P. Huttenlocher, G.A. Klanderman, and W.J. Rucklidge. (PAMI 1993). ::
|
||||
|
||||
class CV_EXPORTS_W HausdorffDistanceExtractor : public ShapeDistanceExtractor
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setDistanceFlag(int distanceFlag) = 0;
|
||||
CV_WRAP virtual int getDistanceFlag() const = 0;
|
||||
|
||||
CV_WRAP virtual void setRankProportion(float rankProportion) = 0;
|
||||
CV_WRAP virtual float getRankProportion() const = 0;
|
||||
};
|
||||
|
||||
/* Constructor */
|
||||
CV_EXPORTS_W Ptr<HausdorffDistanceExtractor> createHausdorffDistanceExtractor(int distanceFlag=cv::NORM_L2, float rankProp=0.6);
|
||||
|
||||
HausdorffDistanceExtractor::setDistanceFlag
|
||||
-------------------------------------------
|
||||
Set the norm used to compute the Hausdorff value between two shapes. It can be L1 or L2 norm.
|
||||
|
||||
.. ocv:function:: void setDistanceFlag( int distanceFlag )
|
||||
|
||||
:param distanceFlag: Flag indicating which norm is used to compute the Hausdorff distance (NORM_L1, NORM_L2).
|
||||
|
||||
HausdorffDistanceExtractor::setRankProportion
|
||||
---------------------------------------------
|
||||
This method sets the rank proportion (or fractional value) that establish the Kth ranked value of the
|
||||
partial Hausdorff distance. Experimentally had been shown that 0.6 is a good value to compare shapes.
|
||||
|
||||
.. ocv:function:: void setRankProportion( float rankProportion )
|
||||
|
||||
:param rankProportion: fractional value (between 0 and 1).
|
@@ -1,108 +0,0 @@
|
||||
Shape Transformers and Interfaces
|
||||
=================================
|
||||
|
||||
.. highlight:: cpp
|
||||
|
||||
A virtual interface that ease the use of transforming algorithms in some pipelines, such as
|
||||
the Shape Context Matching Algorithm. Thus, all objects that implement shape transformation
|
||||
techniques inherit the
|
||||
:ocv:class:`ShapeTransformer` interface.
|
||||
|
||||
ShapeTransformer
|
||||
----------------
|
||||
.. ocv:class:: ShapeTransformer : public Algorithm
|
||||
|
||||
Abstract base class for shape transformation algorithms. ::
|
||||
|
||||
class CV_EXPORTS_W ShapeTransformer : public Algorithm
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void estimateTransformation(InputArray transformingShape, InputArray targetShape,
|
||||
std::vector<DMatch>& matches) = 0;
|
||||
|
||||
CV_WRAP virtual float applyTransformation(InputArray input, OutputArray output=noArray()) = 0;
|
||||
|
||||
CV_WRAP virtual void warpImage(InputArray transformingImage, OutputArray output,
|
||||
int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT,
|
||||
const Scalar& borderValue=Scalar()) const = 0;
|
||||
};
|
||||
|
||||
ShapeTransformer::estimateTransformation
|
||||
----------------------------------------
|
||||
Estimate the transformation parameters of the current transformer algorithm, based on point matches.
|
||||
|
||||
.. ocv:function:: void estimateTransformation( InputArray transformingShape, InputArray targetShape, std::vector<DMatch>& matches )
|
||||
|
||||
:param transformingShape: Contour defining first shape.
|
||||
|
||||
:param targetShape: Contour defining second shape (Target).
|
||||
|
||||
:param matches: Standard vector of Matches between points.
|
||||
|
||||
ShapeTransformer::applyTransformation
|
||||
-------------------------------------
|
||||
Apply a transformation, given a pre-estimated transformation parameters.
|
||||
|
||||
.. ocv:function:: float applyTransformation( InputArray input, OutputArray output=noArray() )
|
||||
|
||||
:param input: Contour (set of points) to apply the transformation.
|
||||
|
||||
:param output: Output contour.
|
||||
|
||||
ShapeTransformer::warpImage
|
||||
---------------------------
|
||||
Apply a transformation, given a pre-estimated transformation parameters, to an Image.
|
||||
|
||||
.. ocv:function:: void warpImage( InputArray transformingImage, OutputArray output, int flags=INTER_LINEAR, int borderMode=BORDER_CONSTANT, const Scalar& borderValue=Scalar() )
|
||||
|
||||
:param transformingImage: Input image.
|
||||
|
||||
:param output: Output image.
|
||||
|
||||
:param flags: Image interpolation method.
|
||||
|
||||
:param borderMode: border style.
|
||||
|
||||
:param borderValue: border value.
|
||||
|
||||
ThinPlateSplineShapeTransformer
|
||||
-------------------------------
|
||||
.. ocv:class:: ThinPlateSplineShapeTransformer : public Algorithm
|
||||
|
||||
Definition of the transformation ocupied in the paper "Principal Warps: Thin-Plate Splines and Decomposition
|
||||
of Deformations", by F.L. Bookstein (PAMI 1989). ::
|
||||
|
||||
class CV_EXPORTS_W ThinPlateSplineShapeTransformer : public ShapeTransformer
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setRegularizationParameter(double beta) = 0;
|
||||
CV_WRAP virtual double getRegularizationParameter() const = 0;
|
||||
};
|
||||
|
||||
/* Complete constructor */
|
||||
CV_EXPORTS_W Ptr<ThinPlateSplineShapeTransformer>
|
||||
createThinPlateSplineShapeTransformer(double regularizationParameter=0);
|
||||
|
||||
ThinPlateSplineShapeTransformer::setRegularizationParameter
|
||||
-----------------------------------------------------------
|
||||
Set the regularization parameter for relaxing the exact interpolation requirements of the TPS algorithm.
|
||||
|
||||
.. ocv:function:: void setRegularizationParameter( double beta )
|
||||
|
||||
:param beta: value of the regularization parameter.
|
||||
|
||||
AffineTransformer
|
||||
-----------------
|
||||
.. ocv:class:: AffineTransformer : public Algorithm
|
||||
|
||||
Wrapper class for the OpenCV Affine Transformation algorithm. ::
|
||||
|
||||
class CV_EXPORTS_W AffineTransformer : public ShapeTransformer
|
||||
{
|
||||
public:
|
||||
CV_WRAP virtual void setFullAffine(bool fullAffine) = 0;
|
||||
CV_WRAP virtual bool getFullAffine() const = 0;
|
||||
};
|
||||
|
||||
/* Complete constructor */
|
||||
CV_EXPORTS_W Ptr<AffineTransformer> createAffineTransformer(bool fullAffine);
|
Reference in New Issue
Block a user