如何根据与另一个图像匹配的图像特征来变换图像?

2024-10-06 03:37:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两张照片。一个原始的img1和另一个是相同的图像,但压缩了img2。
我使用SIFT和FLANN matcher提取并匹配了两者之间的特征https://i.imgur.com/9WzEAKm.png.
我还发现了基于以下代码匹配特征的单应性

src_pts = np.float32([kp1[m.queryIdx].pt for m in good]).reshape(-1, 1, 2)

dst_pts = np.float32([kp2[m.trainIdx].pt for m in good]).reshape(-1, 1, 2)

M, mask = cv2.findHomography(src_pts, dst_pts, cv2.RANSAC, 5.0)

所以我的问题是,我该如何使用单应性来将img2转换成img1,或者尽可能接近它? 我使用了cv2.warpPerspective(),但是得到的图像非常奇怪

 img2_warped = cv2.warpPerspective(img2, M, img1.shape)  

https://i.imgur.com/WKybXZs.png

我该怎么办


Tags: https图像srccomptpngnp特征