write documentation for BRISK

pull/427/head
Vincent Rabaud 12 years ago
parent 2a669555de
commit 0b1599d88a
  1. 1
      modules/features2d/doc/common_interfaces_of_descriptor_extractors.rst
  2. 2
      modules/features2d/doc/common_interfaces_of_descriptor_matchers.rst
  3. 1
      modules/features2d/doc/common_interfaces_of_feature_detectors.rst
  4. 52
      modules/features2d/doc/feature_detection_and_description.rst

@ -79,6 +79,7 @@ The current implementation supports the following types of a descriptor extracto
* ``"SIFT"`` -- :ocv:class:`SIFT`
* ``"SURF"`` -- :ocv:class:`SURF`
* ``"ORB"`` -- :ocv:class:`ORB`
* ``"BRISK"`` -- :ocv:class:`BRISK`
* ``"BRIEF"`` -- :ocv:class:`BriefDescriptorExtractor`
A combined format is also supported: descriptor extractor adapter name ( ``"Opponent"`` --

@ -269,7 +269,7 @@ Brute-force matcher constructor.
.. ocv:function:: BFMatcher::BFMatcher( int normType=NORM_L2, bool crossCheck=false )
:param normType: One of ``NORM_L1``, ``NORM_L2``, ``NORM_HAMMING``, ``NORM_HAMMING2``. ``L1`` and ``L2`` norms are preferable choices for SIFT and SURF descriptors, ``NORM_HAMMING`` should be used with ORB and BRIEF, ``NORM_HAMMING2`` should be used with ORB when ``WTA_K==3`` or ``4`` (see ORB::ORB constructor description).
:param normType: One of ``NORM_L1``, ``NORM_L2``, ``NORM_HAMMING``, ``NORM_HAMMING2``. ``L1`` and ``L2`` norms are preferable choices for SIFT and SURF descriptors, ``NORM_HAMMING`` should be used with ORB, BRISK and BRIEF, ``NORM_HAMMING2`` should be used with ORB when ``WTA_K==3`` or ``4`` (see ORB::ORB constructor description).
:param crossCheck: If it is false, this is will be default BFMatcher behaviour when it finds the k nearest neighbors for each query descriptor. If ``crossCheck==true``, then the ``knnMatch()`` method with ``k=1`` will only return pairs ``(i,j)`` such that for ``i-th`` query descriptor the ``j-th`` descriptor in the matcher's collection is the nearest and vice versa, i.e. the ``BFMathcher`` will only return consistent pairs. Such technique usually produces best results with minimal number of outliers when there are enough matches. This is alternative to the ratio test, used by D. Lowe in SIFT paper.

@ -127,6 +127,7 @@ The following detector types are supported:
* ``"SIFT"`` -- :ocv:class:`SIFT` (nonfree module)
* ``"SURF"`` -- :ocv:class:`SURF` (nonfree module)
* ``"ORB"`` -- :ocv:class:`ORB`
* ``"BRISK"`` -- :ocv:class:`BRISK`
* ``"MSER"`` -- :ocv:class:`MSER`
* ``"GFTT"`` -- :ocv:class:`GoodFeaturesToTrackDetector`
* ``"HARRIS"`` -- :ocv:class:`GoodFeaturesToTrackDetector` with Harris detector enabled

@ -98,6 +98,58 @@ Finds keypoints in an image and computes their descriptors
:param useProvidedKeypoints: If it is true, then the method will use the provided vector of keypoints instead of detecting them.
BRISK
-----
.. ocv:class:: BRISK : public Feature2D
Class implementing the BRISK keypoint detector and descriptor extractor, described in [LCS11]_.
.. [LCS11] Stefan Leutenegger, Margarita Chli and Roland Siegwart: BRISK: Binary Robust Invariant Scalable Keypoints. ICCV 2011: 2548-2555.
BRISK::BRISK
------------
The BRISK constructor
.. ocv:function:: BRISK::BRISK(int thresh=30, int octaves=3, float patternScale=1.0f)
:param thresh: FAST/AGAST detection threshold score.
:param octaves: detection octaves. Use 0 to do single scale.
:param patternScale: apply this scale to the pattern used for sampling the neighbourhood of a keypoint.
BRISK::BRISK
------------
The BRISK constructor for a custom pattern
.. ocv:function:: BRISK::BRISK(std::vector<float> &radiusList, std::vector<int> &numberList, float dMax=5.85f, float dMin=8.2f, std::vector<int> indexChange=std::vector<int>())
:param radiusList: defines the radii (in pixels) where the samples around a keypoint are taken (for keypoint scale 1).
:param numberList: defines the number of sampling points on the sampling circle. Must be the same size as radiusList..
:param dMax: threshold for the short pairings used for descriptor formation (in pixels for keypoint scale 1).
:param dMin: threshold for the long pairings used for orientation determination (in pixels for keypoint scale 1).
:param indexChanges: index remapping of the bits.
BRISK::operator()
-----------------
Finds keypoints in an image and computes their descriptors
.. ocv:function:: void BRISK::operator()(InputArray image, InputArray mask, vector<KeyPoint>& keypoints, OutputArray descriptors, bool useProvidedKeypoints=false ) const
:param image: The input 8-bit grayscale image.
:param mask: The operation mask.
:param keypoints: The output vector of keypoints.
:param descriptors: The output descriptors. Pass ``cv::noArray()`` if you do not need it.
:param useProvidedKeypoints: If it is true, then the method will use the provided vector of keypoints instead of detecting them.
FREAK
-----
.. ocv:class:: FREAK : public DescriptorExtractor

Loading…
Cancel
Save