import cv2 
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np

mage_left = Image.open('./image_left.png').convert('L')  
image_left = np.asarray(image_left)

image_right = Image.open('./image_right.png').convert('L')  
image_right = np.asarray(image_right)


#keypoints
sift = cv2.xfeatures2d.SIFT_create()
keypoints_left, descriptors_left = sift.detectAndCompute(image_left,None)
keypoints_right, descriptors_right = sift.detectAndCompute(image_right,None)

img_kpts_left = cv2.drawKeypoints(image_left, keypoints_left, image_left)
img_kpts_right = cv2.drawKeypoints(image_right, keypoints_right, image_right)

fig, axes = plt.subplots(1, 2, figsize=(16, 16))
plt_left = axes[0]
plt_left.imshow(img_kpts_left)
plt_left.set_title('Left image with keypoints')

plt_right = axes[1]
plt_right.imshow(img_kpts_right)
plt_right.set_title('right image with keypoints')