だから私は使用しようとしています:
sift = cv2.xfeatures2d.SIFT_create()
そして、このエラーが出ています:
cv2.error: OpenCV(3.4.3) C:\projects\opencv-python\opencv_contrib\modules\xfeatures2d\src\sift.cpp:1207: error: (-213:The function/feature is not implemented)
This algorithm is patented and is excluded in this configuration; Set OPENCV_ENABLE_NONFREE CMake
option and rebuild the library in function 'cv::xfeatures2d::SIFT::create'
Python 3.5.0
とopencv(3.4.3)
を使用していますが、アイドルを使用しています。これは、TensorFlowをインストールしようとした後、opencv-contrib-pythonをインストールしてみましたが、同じエラーが引き続き発生しています。事前に感謝し、十分な情報が含まれていない場合は謝罪します
同じ問題がありました。他のopencv-pythonおよびopencv-contrib-pythonバージョンを変更し、この問題を解決します。ここにopencv-pythonの履歴バージョンがあります。
https://pypi.org/project/opencv-python/#history 、次のコードを使用します:
pip install opencv-python == 3.4.2.16
pip install opencv-contrib-python == 3.4.2.16
編集
Anacondaユーザーの場合、pipではなくこれだけ
conda install -c menpo opencv
これにより、cv2 3.4.1とSIFTの実行に必要なすべてがインストールされます。
がんばって〜
Opencvバージョンとopencv-contribバージョンの不一致が原因である可能性があります。 CMakeを使用してソースからopencvをインストールし、ソースバージョンがopencv-contrib-pythonのバージョンと異なる場合、現在のopencv-contrib-pythonをアンインストールし、pip install opencv-contrib-python==<version of the source>.X
または別の互換バージョンを実行します。私が実行しているバージョンセットアップの1つは、opencv source(3.2)、opencv-python(3.4.0.14)、opencv-contrib-python(3.4.2.17)です。