Removed Sphinx documentation files

This commit is contained in:
Maksim Shabunin
2014-12-24 18:37:57 +03:00
parent 61991a3330
commit d01bedbc61
338 changed files with 0 additions and 73040 deletions

View File

@@ -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``.

View File

@@ -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);

View File

@@ -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

View File

@@ -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).

View File

@@ -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);