diff --git a/doc/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.markdown b/doc/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.markdown index 656f5423c5..dee4df774a 100644 --- a/doc/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.markdown +++ b/doc/py_tutorials/py_feature2d/py_sift_intro/py_sift_intro.markdown @@ -20,10 +20,10 @@ scale invariant. ![image](images/sift_scale_invariant.jpg) -So, in 2004, **D.Lowe**, University of British Columbia, came up with a new algorithm, Scale +In 2004, **D.Lowe**, University of British Columbia, came up with a new algorithm, Scale Invariant Feature Transform (SIFT) in his paper, **Distinctive Image Features from Scale-Invariant Keypoints**, which extract keypoints and compute its descriptors. *(This paper is easy to understand -and considered to be best material available on SIFT. So this explanation is just a short summary of +and considered to be best material available on SIFT. This explanation is just a short summary of this paper)*. There are mainly four steps involved in SIFT algorithm. We will see them one-by-one. @@ -102,16 +102,17 @@ reasons. In that case, ratio of closest-distance to second-closest distance is t greater than 0.8, they are rejected. It eliminates around 90% of false matches while discards only 5% correct matches, as per the paper. -So this is a summary of SIFT algorithm. For more details and understanding, reading the original -paper is highly recommended. Remember one thing, this algorithm is patented. So this algorithm is -included in [the opencv contrib repo](https://github.com/opencv/opencv_contrib) +This is a summary of SIFT algorithm. For more details and understanding, reading the original +paper is highly recommended. SIFT in OpenCV -------------- -So now let's see SIFT functionalities available in OpenCV. Let's start with keypoint detection and -draw them. First we have to construct a SIFT object. We can pass different parameters to it which -are optional and they are well explained in docs. +Now let's see SIFT functionalities available in OpenCV. Note that these were previously only +available in [the opencv contrib repo](https://github.com/opencv/opencv_contrib), but the patent +expired in the year 2020. So they are now included in the main repo. Let's start with keypoint +detection and draw them. First we have to construct a SIFT object. We can pass different +parameters to it which are optional and they are well explained in docs. @code{.py} import numpy as np import cv2 as cv