Advertisement
PowerSl1de

Untitled

Apr 6th, 2021
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.38 KB | None | 0 0
  1. import cv2
  2. import numpy as np
  3.  
  4.  
  5. def main():
  6.     lhs_camera = cv2.imread('stereo_images/frame_00113_0.bmp')
  7.     rhs_camera = cv2.imread('stereo_images/frame_00113_1.bmp')
  8.  
  9.     sift = cv2.xfeatures2d.SIFT_create()
  10.  
  11.     lhs_camera = cv2.cvtColor(lhs_camera, cv2.COLOR_BGR2GRAY)
  12.     rhs_camera = cv2.cvtColor(rhs_camera, cv2.COLOR_BGR2GRAY)
  13.  
  14.     key_points_of_lhs_image, descriptors_of_lhs_image = sift.detectAndCompute(lhs_camera, None)
  15.     key_points_of_rhs_image, descriptors_of_rhs_image = sift.detectAndCompute(rhs_camera, None)
  16.  
  17.     bf = cv2.BFMatcher_create(cv2.NORM_L2, crossCheck=True)
  18.  
  19.     matches = bf.match(descriptors_of_lhs_image, descriptors_of_rhs_image)
  20.  
  21.     matches = sorted(matches, key=lambda x: x.distance)
  22.  
  23.     good_key_points_query_index = []
  24.     good_key_point_train_index = []
  25.     for i, (m) in enumerate(matches):
  26.         if m.distance < 20:
  27.             good_key_points_query_index.append(key_points_of_rhs_image[m.queryIdx].pt)
  28.             good_key_point_train_index.append(key_points_of_lhs_image[m.trainIdx].pt)
  29.  
  30.     good_key_points_query_index = np.asarray(good_key_points_query_index)
  31.     good_key_point_train_index = np.asarray(good_key_point_train_index)
  32.  
  33.     fundamental_mat, _ = cv2.findFundamentalMat(good_key_points_query_index, good_key_point_train_index, cv2.FM_RANSAC)
  34.     print(fundamental_mat)
  35.  
  36.  
  37. if __name__ == '__main__':
  38.     main()
  39.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement