简介
D455作为新一代的英特尔RealSense深度摄像头,网上的资料很少,同时除了官方的资料以外,我们很难找到相关的ROS相关的文档。同时由于D455支持的是realsense SDK2.0。所以SDK1.0的数据也不适用。本文档主要提供了一套完整的Ubuntu 18.04 + Realsense D455 + ROS melodic 的代码。
详细步骤
1.环境依赖
依赖环境 |
版本号 |
ROS |
melodic |
Opencv |
3.2.0 |
C++ |
11+ |
2.树形图
src ├── CMakeLists.txt ├── real_sense_multi │ ├── CMakeLists.txt │ ├── include │ ├── launch │ │ └── realsense_multi_cam.launch #launch 启动文件 │ ├── package.xml │ └── src │ └── realsense_multi_cam.cpp
CMakeLists.txt
cmake_minimum_required(VERSION 3.0.2) project(real_sense_multi) ## Compile as C++11, supported in ROS Kinetic and newer # add_compile_options(-std=c++11) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g ") set (CMAKE_VERBOSE_MAKEFILE ON) set(OpenCV_DIR /usr/local/share/OpenCV) ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages find_package(OpenCV REQUIRED) find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs cv_bridge image_transport sensor_msgs ) catkin_package( # INCLUDE_DIRS include # LIBRARIES real_sense_multi CATKIN_DEPENDS roscpp rospy std_msgs cv_bridge image_transport sensor_msgs # DEPENDS system_lib ) if(CMAKE_COMPILER_IS_GNUCC) ADD_DEFINITIONS ( -std=c++11 ) endif(CMAKE_COMPILER_IS_GNUCC) ## Your package locations should be listed before other locations include_directories( include ${catkin_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS} /opt/ros/melodic/include ) link_directories(/opt/ros/melodic/lib) add_executable(realsense_multi_cam_node src/realsense_multi_cam.cpp) target_link_libraries(realsense_multi_cam_node ${catkin_LIBRARIES} ${OpenCV_