![](/img/trans.png)
[英]AttributeError: module 'cv2.cv2' has no attribute 'SURF_create' , 2. module 'cv2.cv2' has no attribute 'xfeatures2d'
[英]module 'cv2.cv2' has no attribute 'xfeatures2d' and module 'cv2.cv2' has no attribute 'SIFT'
我的 python 版本 = 3.7.4 cv2 版本 = 4.2.0
這些是我在 python 和 open cv 上的版本,我嘗試使用 SIFT 函數,我得到了著名的錯誤模塊cv2.cv2' has no attribute 'SIFT'
,所以我嘗試了pip install opencv-contrib-python
和python -m pip install --user opencv-contrib-python
,我將detector=cv2.SIFT()
更改為detector=cv2.xfeatures2d.SIFT_create()
並且錯誤剛剛更改為 AttributeError: module 'cv2.cv2' has no attribute 'xfeatures2d'
我嘗試了我發現的類似問題,但對我不起作用,我沒有找到最近的問題,這就是我打開這個新問題的原因,因為也許版本不同,這可能是對我不起作用的原因
我還能做什么?
SIFT 和 SURF 是專有的專利算法。 您需要從源代碼編譯 OpenCV 和 OpenCV-contrib,啟用非自由包,構建 python 庫。 我無法使其正常工作,因此我使用 pip 查找未刪除非自由庫的舊版本 (3.4.2)。 我可能不得不回滾 python,但我不確定。 我正在使用 python 3.6.8
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.