OpenCV + Realsense: ошибка Visual Studio Link 2019

Я не могу интегрировать 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:

  1. откройте решение Intel Realsense SDK в Visual Studio (это .sln называется librealsense2)

  2. перейти к проекту realsense-vewier на панели «Solution Explorer» в Visual Studio

  3. щелкните правой кнопкой мыши по проекту ‘realsense-viewer’ и выберите свойства

  4. убедитесь, что 2 раскрывающихся списка выше имеют «x64» и «все конфигурации»

  5. Перейдите к опции C / C ++ -> General (из белого поля слева), а затем перейдите к «Дополнительные каталоги включения».

  6. Добавьте в каталог% OpenCVDownloadRoot% / build / include и% OpenCVDownloadRoot% / build / include / opencv (это конфигурация примеров проектов OpenCV

Теперь на этом этапе некоторые функции из openCV не были должным образом связаны внутри проекта realsense-viewer (что странно, потому что работа в проектах OpenCV в SDK, даже если свойства одинаковы. следующим образом:
введите описание изображения здесь

Тогда я сделал несколько дополнительных шагов, чтобы посмотреть, смогу ли я заставить это работать.

  1. Внутри диалогового окна свойств (в котором мы только что были) вместо выбора C / C ++ выберите «Linker»

  2. в разделе «Дополнительные каталоги библиотек» добавьте% OpenCVDownloadRoot% / build / x64 / vc15 / lib

  3. в свойствах ‘Linker’ ищите Ввод (Linker -> Ввод)

  4. добавьте opencv_world341d.lib в поле «Дополнительные зависимости».

Теперь мы получаем совершенно другую ошибку:
введите описание изображения здесь

В настоящее время библиотеки Realsense не распознаются. Никакие другие свойства не были изменены, за исключением вышеуказанного. Я могу подтвердить, что шаг 10 вызывает все эти ошибки. Даже если я выполню действия шага 10 после выполнения всех шагов, вышеприведенная ошибка все равно останется -> это должна быть визуальная ошибка студии.

Любая помощь или советы о том, как я могу заставить OpenCV 3.4.1 + realsense-viewer (из SDK) работать в visual studio 2017?

РЕДАКТИРОВАТЬ: Я уже читал:
Что такое неопределенная ссылка / неразрешенная внешняя ошибка символа и как ее исправить?

Но я правильно связал glfw и все остальное, что нужно связать, чтобы сообщение об ошибке исчезло. Я полагаю, что проблема может быть ошибкой, которая есть у Intel, или ошибкой, которая имеет против, которая требует обходного пути

0

Решение

Решение, найденное после приятной прогулки по парку (при условии, что вы используете 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

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]