我之前已經看到過這樣的問題,但那些是指影像縮放,這意味著縱橫比始終相同。我的目標是分析每張影像(影像 1 影像 2)并確定模板位置(X 和 Y 坐標)和大小(識別出的影像的寬度和高度盡可能精確),并使用單個非扭曲參考將它們寫入變數。我不是很喜歡編程,這只是我的專案需要的東西。我知道基礎知識,所以沒有必要解釋太多,如果沒什么大不了的。我真的很感激任何幫助。解釋
升級版:
import cv2
import numpy as np
img1 = cv2.imread('template.png')
img1 = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY)
img2 = cv2.imread('image.png')
img2 = cv2.cvtColor(img2, cv2.COLOR_BGR2GRAY)
orb = cv2.ORB_create(nfeatures=500)
kp1, des1 = orb.detectAndCompute(img1, None)
kp2, des2 = orb.detectAndCompute(img2, None)
bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
matches = bf.match(des1, des2)
matches = sorted(matches, key=lambda x: x.distance)
match_img = cv2.drawMatches(img1, kp1, img2, kp2, matches[:50], None)
cv2.imshow('', match_img)
cv2.waitKey()
uj5u.com熱心網友回復:
我想你可以參考我的github。
我在 Fastest_Image_Pattern_Matching repo 上實作了一個快速影像對齊演算法。
https://github.com/DennisLiu1993/Fastest_Image_Pattern_Matching
將 C 代碼傳輸到 python 代碼對您來說可能是個問題,但只需找到相應的函式即可。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/471819.html
