Since we are assuming that the object of our interest is planar (that is, an image) and rigid, we can find the homography transformation between the feature points of the two images.
In the following steps, we will explore how homography can be used to calculate the perspective transformation required to bring matched feature points in the object image (self.key_train) into the same plane as corresponding feature points in the current image frame (key_query):
- First, we store the image coordinates of all the keypoints that are good matches in lists for convenience, as shown in the following code snippet:
train_points = [self.key_train[good_match.queryIdx].pt for good_match in good_matches]query_points = [key_query[good_match.trainIdx].pt ...