где найти opencv-contrib-python-nonfree сейчас?

#python

#python

Вопрос:

Я попытался установить opencv-contrib-python-nonfree с помощью pip install opencv-contrib-python-nonfree. и в нем говорится об ошибке ниже. Я погуглил и обнаружил, что на приведенном ниже веб-сайте говорится, что он исчез. так есть ли альтернатива? Я могу установить opencv-contrib-python без проблем. Причина, по которой мне нужна несвободная версия, заключается в ошибке при вызове алгоритма SURF следующим образом: surf = cv2.xfeatures2d.SURF_create(8000). Итак, как это решить? Мне нужно использовать алгоритм SURF. Спасибо

https://github.com/skvark/opencv-python/issues/348

 
the error when install opencv-contrib-python-nonfree:

ERROR: Could not find a version that satisfies the requirement opencv-contrib-python-nonfree (from versions: none)
ERROR: No matching distribution found for opencv-contrib-python-nonfree

The error when using SURF

import cv2

img = cv2.imread('../images/varese.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

surf = cv2.xfeatures2d.SURF_create(8000)
keypoints, descriptors = surf.detectAndCompute(gray, None)

error: OpenCV(4.5.1) C:UsersappveyorAppDataLocalTemp1pip-req-build-i1s8y2i1opencv_contribmodulesxfeatures2dsrcsurf.cpp:1029: 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::SURF::create'

 

Ответ №1:

Существует проблема: https://github.com/opencv/opencv-python/issues/126

Вы можете установить с помощью pip-сборки пакета с установленным флагом NONFREE.

 CMAKE_ARGS="-DOPENCV_ENABLE_NONFREE=ON" pip install -v --no-binary=opencv-contrib-python opencv-contrib-python==4.5.3.56
 

Поскольку последняя версия установлена неправильно, попробуйте установить предыдущую версию.

Комментарии:

1. Спасибо, Кевин, мне нужно удалить CMAKE_ARGS=»-DOPENCV_ENABLE_NONFREE=ON»? в нем говорится: ‘CMAKE_ARGS’ не распознается как внутренняя или внешняя команда, спасибо

2. Нет, вам это нужно. Это переменная среды, которая cmake требует, чтобы вы могли использовать алгоритмы SURF.