Невозможно добавить дополнительные модули в OpenCV (даже с соответствующими версиями opencv/opencv_contrib)

Я пытаюсь установить OpenCV с дополнительными модулями на компьютер под управлением Ubuntu 14.04.2 (мне нужна эта конкретная версия Ubuntu, так как я использую другое оборудование, которое требует этого). Я смог сделать это на Raspberry Pi 3 только на прошлой неделе (с Ubuntu Mate 16.04.3), но сейчас я просто не могу понять, как это правильно.

Я знаю, что opencv_contrib-версия должна совпадать с opencv-версией, и я попытался собрать много разных версий без удачи (3.4.0, 3.3.0, 3.2.0, 3.1.0).

После загрузки соответствующих версий opencv и opencv_contrib я выполняю следующие команды из терминала:

$ cd opencv

$ mkdir build

$ cd build

$ cmake -D OPENCV_EXTRA_MODULES_PATH =../../opencv_contrib/modules..

где обе папки opencv и opencv_contrib расположены на рабочем столе, поэтому "../../opencv_contrib/modules"-path должен быть правильным.

Но дополнительные модули не построены. Вот части вывода cmake:

- Модули OpenCV:

- Будет построен: основной фланг imgproc ml objdetect фото видео dnn imgcodecs shape videoio highgui superres ts features2d calib3d шить videotab

- Отключено: мир

- Отключено по зависимости: -

- Недоступно: cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev java python2 python3 viz

И, как вы можете видеть, включены только стандартные модули. Я видел много людей, имеющих ту же проблему, но решение всегда заключалось в том, чтобы иметь соответствующие версии opencv / opencv_contrib. Теперь, когда я знаю, что версии верны, я понятия не имею, что я делаю неправильно.

1 ответ

Решение

У вас есть дополнительные пробелы вокруг = в вашем cmake вызов, поэтому путь не будет установлен правильно. Удалите два пробела, и у вас все будет хорошо:

cmake -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ..
Другие вопросы по тегам