我是 OpenCV 的新手,并嘗試將 SIFT 和 SURF 用于專案。
在我的筆記本電腦上,我有 OpenCV 版本 = 4.5.1.48 并且還添加了版本 4.5.1.48 的 OpenCV-contrib-python
目前我面臨的問題是我在遵循檔案后遇到的錯誤 SIFT 在遵循檔案但 SURF 后完美運行不作業并給我以下代碼錯誤
代碼 1
surf = cv.xfeatures2d.SURF_create()
AttributeError: 模塊 'cv2.cv2' 沒有屬性 'xfeatures2d'
代碼 2
surf = cv2.SURF_create()
AttributeError: 模塊 'cv2.cv2' 沒有屬性 'SURF_create'
對堆疊閱讀很多答案之后溢位我改的OpenCV的版本,并做了很多事情,但沒有什么作業對我來說
我是新來的這請人指導我通過這個
我讀到有關專利到期太多,但沒有什么作業在我的情況請告訴如果我在某個地方錯了,請提前致謝
uj5u.com熱心網友回復:
OpenCV 版本= 4.5.1.48
這可能來自 pypi,并且不包含任何“非自由”代碼
(SURF 仍然獲得專利,如果你絕對需要,你必須從 src(使用 contrib 模塊)構建,使用 OPENCV_ENABLE_NONFREE=ON cmake 標志)
但是,由于 SIFT 專利去年到期,請改用該專利
sift = cv2.SIFT_create() # it's in main, no more xfeatures2d
順便說一句,不要安裝兩個OpenCV的-蟒蛇,和OpenCV-contrib請-蟒蛇,只有后者(否則前者將“影子”它,你不能使用了contrib的模塊。這是為理由AttributeError: module 'cv2.cv2' has no attribute 'xfeatures2d')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/363194.html
