Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
O
opencv
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
opencv
Commits
dee0aba9
Commit
dee0aba9
authored
May 06, 2011
by
Elena Fedotova
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Purpose: updated the feature2d chapter
parent
39b79b12
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
45 additions
and
47 deletions
+45
-47
common_interfaces_of_descriptor_extractors.rst
...ures2d/doc/common_interfaces_of_descriptor_extractors.rst
+45
-47
No files found.
modules/features2d/doc/common_interfaces_of_descriptor_extractors.rst
View file @
dee0aba9
...
...
@@ -3,11 +3,11 @@ Common Interfaces of Descriptor Extractors
.. highlight:: cpp
Extractors of keypoint descriptors in OpenCV have wrappers with
common interface that enables to switch easily
Extractors of keypoint descriptors in OpenCV have wrappers with
a common interface that enables you to easily switch
between different algorithms solving the same problem. This section is devoted to computing descriptors
that are represented as vectors in a multidimensional space. All objects that implement
''vector''
descriptor extractors inherit
:
func
:`DescriptorExtractor` interface.
that are represented as vectors in a multidimensional space. All objects that implement
the ``vector``
descriptor extractors inherit
the
:
ref
:`DescriptorExtractor` interface.
.. index:: DescriptorExtractor
...
...
@@ -15,7 +15,7 @@ DescriptorExtractor
-------------------
.. c:type:: DescriptorExtractor
Abstract base class for computing descriptors for image keypoints
.
::
Abstract base class for computing descriptors for image keypoints ::
class CV_EXPORTS DescriptorExtractor
{
...
...
@@ -40,12 +40,12 @@ Abstract base class for computing descriptors for image keypoints. ::
};
In this interface
we assume
a keypoint descriptor can be represented as a
dense, fixed-dimensional vector of
some basic type. Most descriptors used
in practice follow this pattern, as it makes it very easy to compute
distances between descriptors. Therefore
we represent
a collection of
descriptors
as a
:
func:`Mat` , where each row is one
keypoint descriptor.
In this interface
,
a keypoint descriptor can be represented as a
dense, fixed-dimensional vector of
a basic type. Most descriptors
follow this pattern as it simplifies computing
distances between descriptors. Therefore
,
a collection of
descriptors
is represented as
:
ref:`Mat` , where each row is a
keypoint descriptor.
.. index:: DescriptorExtractor::compute
...
...
@@ -53,24 +53,23 @@ DescriptorExtractor::compute
--------------------------------
.. c:function:: void DescriptorExtractor::compute( const Mat\& image, vector<KeyPoint>\& keypoints, Mat\& descriptors ) const
Compute the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).
Compute
s
the descriptors for a set of keypoints detected in an image (first variant) or image set (second variant).
:param image:
The i
mage.
:param image:
I
mage.
:param keypoints:
The k
eypoints. Keypoints for which a descriptor cannot be computed are removed.
:param keypoints:
K
eypoints. Keypoints for which a descriptor cannot be computed are removed.
:param descriptors:
The d
escriptors. Row i is the descriptor for keypoint i.
:param descriptors:
D
escriptors. Row i is the descriptor for keypoint i.
.. c:function:: void DescriptorExtractor::compute( const vector<Mat>\& images, vector<vector<KeyPoint> >\& keypoints, vector<Mat>\& descriptors ) const
* **images** The i
mage set.
:param images: I
mage set.
* **keypoints** Input keypoints collection. keypoints[i] is
keypoints
detected in
images[i]
. Keypoints for which a descriptor
can
not be computed are removed.
:param keypoints: Input keypoints collection. ``keypoints[i]`` are
keypoints
detected in
``images[i]``
. Keypoints for which a descriptor
cannot be computed are removed.
* **descriptors** Descriptor collection. descriptors[i] are descriptors computed for
a set keypoints[i].
:param descriptors: Descriptor collection. ``descriptors[i]`` are descriptors computed for a ``keypoints[i]`` set.
.. index:: DescriptorExtractor::read
...
...
@@ -78,9 +77,9 @@ DescriptorExtractor::read
-----------------------------
.. c:function:: void DescriptorExtractor::read( const FileNode\& fn )
Read
descriptor extractor object from
file node.
Read
s the object of a descriptor extractor from a
file node.
:param fn: File node from which
detector will be
read.
:param fn: File node from which
the detector is
read.
.. index:: DescriptorExtractor::write
...
...
@@ -88,30 +87,29 @@ DescriptorExtractor::write
------------------------------
.. c:function:: void DescriptorExtractor::write( FileStorage\& fs ) const
Write
descriptor extractor object to
file storage.
Write
s the object of a descriptor extractor to a
file storage.
:param fs: File storage
in which detector will be
written.
:param fs: File storage
where the detector is
written.
.. index:: DescriptorExtractor::create
DescriptorExtractor::create
-------------------------------
:func:`DescriptorExtractor`
.. c:function:: Ptr<DescriptorExtractor> DescriptorExtractor::create( const string\& descriptorExtractorType )
Descriptor extractor factory that creates of given type with default parameters (rather using default constructor).
Creates a descriptor extractor of a given type with the default parameters (using the default constructor).??
:param descriptorExtractorType: Descriptor extractor type.
Now the following descriptor extractor types are supported
:
The current implementation supports the following types of a descriptor extractor
:
* ``"SIFT"`` -- :func:`SiftFeatureDetector`
,
* ``"SURF"`` -- :func:`SurfFeatureDetector`
,
* ``"BRIEF"`` -- :func:`BriefFeatureDetector`
.
* ``"SIFT"`` -- :func:`SiftFeatureDetector`
* ``"SURF"`` -- :func:`SurfFeatureDetector`
* ``"BRIEF"`` -- :func:`BriefFeatureDetector`
A
lso combined format is
supported: descriptor extractor adapter name ( ``"Opponent"`` --
:
func
:`OpponentColorDescriptorExtractor` ) + descriptor extractor name (see above),
e.g. ``"OpponentSIFT"`` , etc
.
A
combined format is also
supported: descriptor extractor adapter name ( ``"Opponent"`` --
:
ref
:`OpponentColorDescriptorExtractor` ) + descriptor extractor name (see above),
for example, ``"OpponentSIFT"``
.
.. index:: SiftDescriptorExtractor
...
...
@@ -119,8 +117,8 @@ SiftDescriptorExtractor
-----------------------
.. c:type:: SiftDescriptorExtractor
Wrapping class for descriptors computing using
:
func:`SIFT` class.
::
Wrapping class for descriptors computing using
the
:
ref:`SIFT` class
::
class SiftDescriptorExtractor : public DescriptorExtractor
{
...
...
@@ -149,8 +147,8 @@ SurfDescriptorExtractor
-----------------------
.. c:type:: SurfDescriptorExtractor
Wrapping class for
descriptors computing using
:
func:`SURF` class.
::
Wrapping class for
computing descriptors using the
:
ref:`SURF` class
::
class SurfDescriptorExtractor : public DescriptorExtractor
{
...
...
@@ -173,8 +171,8 @@ CalonderDescriptorExtractor
---------------------------
.. c:type:: CalonderDescriptorExtractor
Wrapping class for
descriptors computing using
:
func:`RTreeClassifier` class.
::
Wrapping class for
computing descriptors using the
:
ref:`RTreeClassifier` class
::
template<typename T>
class CalonderDescriptorExtractor : public DescriptorExtractor
...
...
@@ -199,10 +197,10 @@ OpponentColorDescriptorExtractor
--------------------------------
.. c:type:: OpponentColorDescriptorExtractor
Adapts a descriptor extractor to compute descripors in
Opponent Color Space
(refer to
van de Sande et al., CGIV 2008 "Color Descriptors for Object Category Recognition"
).
Input RGB image is transformed in
Opponent Color Space. The
n unadapted descriptor extractor
(set in
constructor) computes descriptors on each of the three channel and concatenate
Class adapting a descriptor extractor to compute descripors in the
Opponent Color Space
(refer to
Van de Sande et al., CGIV 2008 *Color Descriptors for Object Category Recognition*
).
Input RGB image is transformed in
the Opponent Color Space. Then, a
n unadapted descriptor extractor
(set in
the constructor) computes descriptors on each of three channels and concatenates
them into a single color descriptor. ::
class OpponentColorDescriptorExtractor : public DescriptorExtractor
...
...
@@ -227,9 +225,9 @@ BriefDescriptorExtractor
------------------------
.. c:type:: BriefDescriptorExtractor
Class for computing BRIEF descriptors described in paper of Calonder M., Lepetit V.,
Strecha C., Fua P.
: ''BRIEF: Binary Robust Independent Elementary Features.''
11th European Conference on Computer Vision (ECCV), Heraklion, Crete. LNCS Springer, September 2010
.
::
Class for computing BRIEF descriptors described in
a
paper of Calonder M., Lepetit V.,
Strecha C., Fua P.
*BRIEF: Binary Robust Independent Elementary Features* ,
11th European Conference on Computer Vision (ECCV), Heraklion, Crete. LNCS Springer, September 2010 ::
class BriefDescriptorExtractor : public DescriptorExtractor
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment