Появляется ошибка, говорящая об этом,
opencv_core245.dll
и онаopencv_ml245.dll
отсутствует.
Они связаны с библиотекой OpenCV (Open Source Computer Vision). Вы можете попробовать установить это в первую очередь.
Замечания по установке
Средство извлечения OpenCV для Windows (в настоящее время упаковано как
.exe
) будет запрашивать путь для извлечения при запуске.opencv
Папка создается автоматически в этом месте.В широком смысле, не должно иметь значения, где вы решили извлечь эти файлы. Однако ваша программа может иметь особые требования (которые вам нужно будет проверить) в отношении размещения отсутствующих DLL-файлов.
Некоторые программы могут требовать, чтобы путь к библиотеке был определен в их настройках, в то время как другие могут требовать, чтобы вы вручную помещали файлы, например, в их программную папку (и) (или другие места). Вам нужно будет подтвердить, какой из этих вариантов применим, через документацию к вашей программе или дальнейшие исследования.
OpenCV поставляется с рядом
builds
. Вы должны сопоставить «битность» выбранных вами библиотек .dll с «битностью» вашей программы (то есть 32-битной или 64-битной).
TITARL
Для TITARL недостающие .dll должны быть помещены в ту же папку, что и TITARL.exe
:
opencv_core245.dll
А также opencv_ml245.dll
К сожалению, OpenCV 2.4.5 (и эти .dll) больше не кажутся легко доступными в виде предварительно скомпилированных двоичных файлов. Однако библиотека OpenCV 2.4.5 по-прежнему доступна в виде исходного кода из официального репозитория GitHub. Недостающие .dll должны быть скомпилированы из этого исходного кода перед запуском программы.
Если вы доверяете незнакомцам в Интернете, я собрал для вас 64-битные версии этих двух .dll . Казалось, они правильно работают с example_learning.bat
предоставленным TITARL. Тем не менее, они не были тщательно проверены каким-либо образом.
Предостережения
Эти .dll были созданы с помощью Visual Studio 14 (2015) в Windows 7 без поддержки Python.
Поддержка FFmpeg и DirectShow была включена в параметры сборки, но напрямую не тестировалась.
Никаких других .dll не было построено кроме
opencv_core245.dll
иopencv_ml245.dll
.
Если вы решите попробовать их и столкнетесь с проблемами (например, необъяснимым поведением или другими проблемами), вам может понадобиться просто скомпилировать их. Я даю обзор шагов, которые я предпринял ниже.
Руководство по миникомпиляции для Visual Studio
Основываясь на этом общем руководстве по компиляции OpenCV 3 с Visual Studio, которое вы упомянули в комментариях, следующие шаги должны позволить вам получить хотя бы минимально работающую установку TITARL путем создания необходимых отсутствующих DLL-файлов.
подготовка
Загрузите и установите Microsoft Visual Studio Community Edition (бесплатно). Они также имеют более старые версии, в зависимости от ваших потребностей. Имейте в виду, что для старых версий в настоящее время требуется доступ к бесплатной учетной записи Dev Essentials .
Скачайте и установите CMake . CMake - это утилита, которая помогает компиляции пройти немного проще и OpenCV 2.4.5. имеет необходимые файлы для работы с ним.
Загрузите и извлеките исходный код, связанный ранее (если вы еще этого не сделали). Где вы извлекаете исходный код - ваш выбор.
Предполагая, что CMake установлен, откройте графический интерфейс (например, с помощью значка на рабочем столе).
Вверху главного окна введите путь к исходному коду в первом поле. В дополнительном поле чуть ниже, добавьте путь, где вы хотели бы хранить файлы, связанные с компиляцией (расположение этого второго пути на ваш выбор). На всех этих этапах я буду использовать папку с именем
build
, расположенную в том же каталоге, что и исходный код:После ввода этих путей нажмите кнопку « Настроить» в нижней части главного окна. Новое диалоговое окно должно появиться.
В этом диалоговом окне выберите правильный «генератор» для ваших .dll. Для Visual Studio это будет имя издания, за которым следует либо ничего (что создает 32-разрядные двоичные файлы), либо
Win64
(что создает 64-разрядные двоичные файлы). TITARL - это 64-битная программа (TITARL 1.7 [Win x64 - Public release]
), поэтому вы можете выбрать, например,Visual Studio 14 2015 Win64
илиVisual Studio 15 2017 Win64
создать соответствующие 64-битные .dll:Нажмите Finish, чтобы закрыть диалоговое окно. CMake автоматически начнет обработку исходного кода OpenCV 2.4.5. В главном окне кнопка « Настройка» изменится на кнопку « Стоп», а кнопки « Генерирование ...» и « Открыть проект ...» рядом с ней будут выделены серым цветом. Обратите внимание, что эта первоначальная обработка может занять несколько минут.
Как только эта обработка будет завершена, верхняя панель в главном окне CMake будет отображать большое количество информации красным цветом (это новые обнаруженные опции). Нижняя панель должна гласить «Конфигурирование выполнено»:
Найдите параметры сборки, помеченные
BUILD_opencv_*
(где*
такое имя, какapps
). Все они должны быть в одном блоке. Снимите флажок рядом с каждым элементом, исключаяBUILD_opencv_core
иBUILD_opencv_ml
. Нажмите Настроить снова. После обработки заканчивается еще раз, нажмите кнопку Generate ... . После завершения главное окно CMake должно выглядеть примерно так:
Исправление OpenCV 2.4.5
Обычно на этом этапе все будет готово для компиляции недостающих .dll. Тем не менее, OpenCV 2.4.5. имеет общую проблему с Visual Studio 12+, где он генерирует большое количество "max" : is not a member of "std"
ошибок, которые препятствуют созданию необходимых DLL-файлов.
К счастью, как подробно описано в ответе на этот вопрос StackOverflow, компиляция может быть достигнута с небольшими изменениями исходного кода.
Чтобы исправить эту проблему:
Найдите
OpenCV.sln
решение, сгенерированное CMake ранее (например, подC:\path\to\opencv-2.4.5\build
).Дважды щелкните файл, чтобы открыть его в Visual Studio. Поскольку это, вероятно, первый раз, когда вы открыли это решение, Visual Studio может потребоваться минута или две, чтобы полностью проанализировать его. Посмотрите на синюю полосу активности в нижней части главного окна Visual Studio и подождите, пока она не скажет «Готово», прежде чем продолжить.
Когда Visual Studio установится, нажмите Ctrl+, Hчтобы открыть диалоговое окно « Найти и заменить », а затем выполните следующие действия:
составление
После того, как все вышеперечисленные шаги выполнены, вы должны быть готовы к компиляции с CMake. Откройте окно командной строки в вашем build
каталоге (например C:\path\to\opencv-2.4.5\build
) и введите, например:
C:\path\to\cmake.exe --build . --config Release --target INSTALL
Через короткое время (до 15 минут) компиляция должна быть завершена, а недостающие .dll должны быть доступны в install\bin
папке build
каталога (например C:\path\to\opencv-2.4.5\build\install\bin
). Как отмечалось ранее, .dll в этой папке необходимо поместить в ту же папку, что и TITARL.exe
.
Главные примечания
Выполнив описанные выше шаги, я не столкнулся с серьезными ошибками, кроме необходимости исправления кода в Visual Studio. Однако я не пытался собрать всю библиотеку.
Не каждый шаг, представленный здесь, точно отражает шаги, указанные в ссылках руководства. Вы можете обратиться к этим ссылкам для получения дополнительной информации.
Visual Studio Notes
Visual Studio может быть большой установкой и может нуждаться в самостоятельной настройке. Поэтому этап подготовки 1 может занять больше времени, чем вы думаете.
Если вы планируете возиться с поддержкой Python в OpenCV, возможно, потребуется установить Visual Studio
Python Tools for Visual Studio
вместе с его поддержкойVisual C++
.Желтые предупреждающие сообщения во время компиляции часто можно игнорировать. Красные сообщения об ошибках, с другой стороны, указывают на проблемы, которые приведут к сбою сборки (т. Е. Не будут создаваться DLL-файлы). Однако это не то же самое, что потенциально «безопасные» красные ошибки, которые CMake генерирует ниже.
CMake Notes
CMake
/
не использует\
пути Windows в своем интерфейсе GUI. Тем не менее, вставленные пути должны быть автоматически\
переключены/
.Если вы не хотите вводить полный путь к
cmake.exe
последнему шагу компиляции, выберите опцию, чтобы добавить CMake в ваш PATH во время его установки.Опция для сборки .dll с поддержкой Python в CMake требует шагов, которые здесь не перечислены.
Подготовка Шаг 7 может привести к созданию неправильных двоичных файлов, если вы выберете неправильный генератор (то есть 32-битные .dll не будут работать с 64-битной программой). Однако, оставив переключатели, как и
Use default native compilers
должно быть хорошо.Если вы допустили какие-либо ошибки в CMake и т. Д., Просто удалите
build
папку и начните заново с шага 4 подготовки.В CMake с приведенными шагами красные «ошибки» в интерфейсе, похоже, не вызывали серьезных проблем. Тем не менее, вероятно, стоит вообще отметить любую ошибку или предупреждение, с которым вы столкнулись.
Если есть какие-либо серьезные проблемы, настройка не будет завершена, и будет записан журнал ошибок.