OpenCV 3.x содержит только одну библиотеку - opencv_world.lib?

Я пытаюсь обновить мою версию OpenCV с 2.4.9 до последней версии, 3.10. Я скачал бинарный файл Windows отсюда, перейдя туда с официального сайта OpenCV. Затем я запустил установщик, но opencv\build\x64\vc12\lib каталог содержит только пару файлов:

  • opencv_world310.lib
  • opencv_world310d.lib
  • OpenCVConfig.cmake
  • OpenCVModules.cmake
  • OpenCVModules-debug.cmake
  • OpenCVModules-release.cmake

Однако в прошлых выпусках этот каталог содержал необходимые библиотеки, такие как opencv_calib3d249d.lib, opencv_contrib249d.lib, opencv_core249d.lib и т. Д.

Я представляю, что мне нужно что-то сделать с CMake, но я не могу понять это - старые двоичные файлы, используемые для компиляции всего для вас. Я также не могу найти ничего в документации, объясняющей это. Кто-нибудь еще сталкивался с этим в последнее время и есть решение?

1 ответ

Решение

По умолчанию бинарная версия OpenCV-3.x не содержит отдельных библиотек, таких как opencv_core.lib, Вместо этого эти модули интегрированы в opencv_world.lib, так что вам нужно только ссылку на него.

С другой стороны, если вам нужны отдельные библиотеки, то есть унифицированные API с OpenCV-2.x, вы можете создать его самостоятельно с помощью CMake, включив необходимые библиотеки. подобно

Это сгенерирует opencv_core.lib,

Или запустите cmake с -D BUILD_opencv_world=OFF ключ

Другие вопросы по тегам