2D Features framework (feature2d module) {#tutorial_table_of_content_features2d}
=========================================

Learn about how to use the feature points detectors, descriptors and matching framework found inside
OpenCV.

-   @subpage tutorial_harris_detector

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    Why is it a good idea to track corners? We learn how to use the Harris method to detect
    corners.

-   @subpage tutorial_good_features_to_track

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    Where we use an improved method to detect corners more accurately.

-   @subpage tutorial_generic_corner_detector

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    Here you will learn how to use OpenCV functions to make your personalized corner detector!

    *Languages:* C++, Java, Python

-   @subpage tutorial_corner_subpixels

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    Is pixel resolution enough? Here we learn a simple method to improve our corner location accuracy.

-   @subpage tutorial_feature_detection

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    In this tutorial, you will use *features2d* to detect interest points.

-   @subpage tutorial_feature_description

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    In this tutorial, you will use *features2d* to calculate feature vectors.

-   @subpage tutorial_feature_flann_matcher

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    In this tutorial, you will use the FLANN library to make a fast matching.

-   @subpage tutorial_feature_homography

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    In this tutorial, you will use *features2d* and *calib3d* to detect an object in a scene.

-   @subpage tutorial_detection_of_planar_objects

    *Languages:* C++

    *Compatibility:* \> OpenCV 2.0

    *Author:* Victor Eruhimov

    You will use *features2d* and *calib3d* modules for detecting known planar objects in
    scenes.

-   @subpage tutorial_akaze_matching

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 3.0

    *Author:* Fedor Morozov

    Using *AKAZE* local features to find correspondence between two images.

-   @subpage tutorial_akaze_tracking

    *Languages:* C++

    *Compatibility:* \> OpenCV 3.0

    *Author:* Fedor Morozov

    Using *AKAZE* and *ORB* for planar object tracking.

-   @subpage tutorial_homography

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 3.0

    This tutorial will explain the basic concepts of the homography with some
    demonstration codes.
