surf = cv.xfeatures2d.SURF_create(400) python运行报错 cv2.error: OpenCV(4.7.0) D:\a\opencv-python\opencv-python\opencv_contrib\modules\xfeatures2d\src\surf.cpp:1028: error: (-213:The function/feature is not implemented) This algorithm i
时间: 2023-07-21 09:41:34 浏览: 356
这个错误通常是由于你的 OpenCV 版本不支持 SURF 算法引起的。在 OpenCV 4.x 版本中,SURF 算法已经被移动到了 opencv-contrib-python 包中。因此,你需要先安装 opencv-contrib-python 包,然后才能使用 SURF 算法。你可以使用以下命令在终端中安装:
```
pip install opencv-contrib-python
```
如果你已经安装了 opencv-contrib-python 包,但仍然出现此错误,请确保你的 OpenCV 版本正确,并且已正确安装 opencv-contrib-python 包。如果问题仍然存在,请尝试使用其他算法或特征,例如 ORB 或 AKAZE。这些实现是开源的,不受专利限制,因此在 OpenCV 4.x版本中始终可用。
```
import cv2 as cv
# Create ORB object
orb = cv.ORB_create()
# Create AKAZE object
akaze = cv.AKAZE_create()
```
如果问题仍然存在,请提供更多的代码和错误信息,以便我能够更好地帮助你解决问题。
相关问题
cv2.error: OpenCV(4.7.0) D:\a\opencv-python\opencv-python\opencv_contrib\modules\xfeatures2d\src\surf.cpp:1028: error: (-213:The function/feature is not implemented) This algorithm i
这个错误通常是由于你使用的版本的 OpenCV 不支持所选的算法或特征。在这种情况下,你需要检查你的代码,确保你选择的算法和特征在你的 OpenCV 版本中是可用的。你可以查看 OpenCV 的文档,了解每个版本支持哪些算法和特征。
如果你正在使用 OpenCV 4.x 版本,你可以尝试使用 SIFT 或 SURF 的另一种实现,例如 ORB 或 AKAZE。这些实现是开源的,不受专利限制,因此在 OpenCV 4.x版本中始终可用。
如果你正在使用 OpenCV 3.x 版本,则可以尝试安装 opencv-contrib-python 包以获取更多的算法和特征。
如果问题仍然存在,请提供更多的代码和错误信息,以便我能够更好地帮助你解决问题。
阅读全文