Я не могу интегрировать OpenCV с Intel Исходный код Realsense Viewer.
Заметки:
Я в настоящее время на Windows 10.
Я использую Visual Studio 2017. MSVC 14.12
Версия opencv — это 3.4.1 (Windows Pack), это версия, которая предварительно создана для вас.
Я построил и установил Intel Realsense SDK от GitHub. Это было успешно. Я также построил и успешно установил Примеры OpenCV с помощью openCV я скачал .
Проблема возникает, когда я пытаюсь связать OpenCV к Realsense Viewer Project
Шаги, которые я выполнил, чтобы попытаться связать openCV с Intel Realsense Viewer:
откройте решение Intel Realsense SDK в Visual Studio (это .sln называется librealsense2)
перейти к проекту realsense-vewier на панели «Solution Explorer» в Visual Studio
щелкните правой кнопкой мыши по проекту ‘realsense-viewer’ и выберите свойства
убедитесь, что 2 раскрывающихся списка выше имеют «x64» и «все конфигурации»
Перейдите к опции C / C ++ -> General (из белого поля слева), а затем перейдите к «Дополнительные каталоги включения».
Добавьте в каталог% OpenCVDownloadRoot% / build / include и% OpenCVDownloadRoot% / build / include / opencv (это конфигурация примеров проектов OpenCV
Теперь на этом этапе некоторые функции из openCV не были должным образом связаны внутри проекта realsense-viewer (что странно, потому что работа в проектах OpenCV в SDK, даже если свойства одинаковы. следующим образом:
Тогда я сделал несколько дополнительных шагов, чтобы посмотреть, смогу ли я заставить это работать.
Внутри диалогового окна свойств (в котором мы только что были) вместо выбора C / C ++ выберите «Linker»
в разделе «Дополнительные каталоги библиотек» добавьте% OpenCVDownloadRoot% / build / x64 / vc15 / lib
в свойствах ‘Linker’ ищите Ввод (Linker -> Ввод)
добавьте opencv_world341d.lib в поле «Дополнительные зависимости».
Теперь мы получаем совершенно другую ошибку:
В настоящее время библиотеки Realsense не распознаются. Никакие другие свойства не были изменены, за исключением вышеуказанного. Я могу подтвердить, что шаг 10 вызывает все эти ошибки. Даже если я выполню действия шага 10 после выполнения всех шагов, вышеприведенная ошибка все равно останется -> это должна быть визуальная ошибка студии.
Любая помощь или советы о том, как я могу заставить OpenCV 3.4.1 + realsense-viewer (из SDK) работать в visual studio 2017?
РЕДАКТИРОВАТЬ: Я уже читал:
Что такое неопределенная ссылка / неразрешенная внешняя ошибка символа и как ее исправить?
Но я правильно связал glfw и все остальное, что нужно связать, чтобы сообщение об ошибке исчезло. Я полагаю, что проблема может быть ошибкой, которая есть у Intel, или ошибкой, которая имеет против, которая требует обходного пути
Решение, найденное после приятной прогулки по парку (при условии, что вы используете windows 10, visual studio 2017 для проекта):
перейдите в локальную папку проекта librealsense
идти к C: \ Users \ ВашеИмя \ к \ вашей \ Local \ realsense \ папка \ librealsense \ Tools \ CMakeLists.txt
Добавьте это в конец файла:
find_package (OpenCV ТРЕБУЕТСЯ)
список (APPEND DEPENDENCIES realsense2 $ {OpenCV_LIBS})
так что весь файл такой:
проект (RealsenseTools)
include (CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG («- std = c ++ 11» COMPILER_SUPPORTS_CXX11) CHECK_CXX_COMPILER_FLAG («- std = c ++ 0x» COMPILER_SUPPORTS_CXORX_CXXXX)
установить (CMAKE_CXX_FLAGS «$ {CMAKE_CXX_FLAGS} -std = c ++ 11») elseif (COMPILER_SUPPORTS_CXX0X)
set (CMAKE_CXX_FLAGS «$ {CMAKE_CXX_FLAGS} -std = c ++ 0x») endif ()если (BUILD_GRAPHICAL_EXAMPLES)
find_package (OpenGL)
если (НЕ OPENGL_FOUND)
сообщение (FATAL_ERROR «\ n \ n Пакет OpenGL отсутствует! \ n \ n»)
ENDIF ()set(DEPENDENCIES realsense2 ${OPENGL_LIBRARIES}) if(WIN32) list(APPEND DEPENDENCIES glfw3) else() # Find glfw header find_path(GLFW_INCLUDE_DIR NAMES GLFW/glfw3.h PATHS /usr/X11R6/include /usr/include/X11 /opt/graphics/OpenGL/include /opt/graphics/OpenGL/contrib/libglfw /usr/local/include /usr/include/GL /usr/include ) # Find glfw library find_library(GLFW_LIBRARIES NAMES glfw glfw3 PATHS /usr/lib64 /usr/lib /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE} /usr/local/lib64 /usr/local/lib /usr/local/lib/${CMAKE_LIBRARY_ARCHITECTURE} /usr/X11R6/lib ) if(APPLE) find_library(COCOA_LIBRARY Cocoa) find_library(IOKIT_LIBRARY IOKit) find_library(COREVIDEO_LIBRARY CoreVideo) LIST(APPEND DEPENDENCIES ${COCOA_LIBRARY} ${IOKIT_LIBRARY} ${COREVIDEO_LIBRARY}) endif() list(APPEND DEPENDENCIES m ${GLFW_LIBRARIES} ${LIBUSB1_LIBRARIES}) include_directories(${GLFW_INCLUDE_DIR}) endif() else() set(DEPENDENCIES realsense2) if(NOT WIN32) list(APPEND DEPENDENCIES m ${LIBUSB1_LIBRARIES}) endif() endif()
find_package (OpenCV ТРЕБУЕТСЯ)
набор (DEPENDENCIES realsense2 $ {OpenCV_LIBS})add_subdirectory (терминал) add_subdirectory (fw-logger)
add_subdirectory (enumerate-devices) add_subdirectory (realsense-viewer)
add_subdirectory (сбор данных) add_subdirectory (глубина качества)
add_subdirectory (rosbag-инспектор)
Затем пересоберите проект с помощью cmake gui
Других решений пока нет …