March 2020
Intermediate to advanced
366 pages
9h 8m
English
A robust way of extracting important features from an image is by using the SIFT detector. In this chapter, we want to use it for two images, self.img1 and self.img2:
def _extract_keypoints_sift(self): # extract keypoints and descriptors from both images detector = cv2.xfeatures2d.SIFT_create() first_key_points, first_desc = detector.detectAndCompute(self.img1, None) second_key_points, second_desc = detector.detectAndCompute(self.img2, None)
For feature matching, we will use a BruteForce matcher, so that other matchers (such as FLANN) can work as well:
matcher = cv2.BFMatcher(cv2.NORM_L1, True) matches = matcher.match(first_desc, second_desc)
For each of the matches, we need to recover ...