Hi, I am a freshman in SLAM and Oak product. Recently I try to reproduce some experiment on VSLAM, with
- modified RTAB-Map 0.21
- Oak-D-Pro-W FF USB 3.0
- Depthai_ros v2.11.2-noetic
- Jetson AGX Orin with Ubuntu 20.04, Jetpack 5.1, OpenCV 4.5
I have some issue with data from ros driver. I need rgbd data for VSLAM.
I use camera.launch at first roslaunch depthai_rosdriver camera.launch, rostopic hz oak/rgb/image_raw and rostopic hz oak/stereo/image_rawcome with only 20hz and 22hz, which is set default (720p 30hz). But when i try checking hz or image on rviz or recoding rosbag withoak/rgb/image_rect, it sometimes show bond broken. The pipeline seems to be fine in online slam.
[oak_nodelet_manager-3] process has died [pid 11979, exit code -11, cmd /opt/ros/noetic/lib/nodelet/nodelet manager /nodelet_manager/load_nodelet:=oak/nodelet_manager/load_nodelet /nodelet_manager/unload_nodelet:=oak/nodelet_manager/unload_nodelet /nodelet_manager/list:=oak/nodelet_manager/list __name:=oak_nodelet_manager __log:=/home/scutauto/.ros/log/cf12d6d2-f758-11f0-9eea-b48c9d34e815/oak_nodelet_manager-3.log].
log file: /home/scutauto/.ros/log/cf12d6d2-f758-11f0-9eea-b48c9d34e815/oak_nodelet_manager-3*.log
[INFO] [1769064277.101903327]: Bond broken, exiting
================================================================================REQUIRED process [oak-4] has died!
process has finished cleanly
log file: /home/scutauto/.ros/log/cf12d6d2-f758-11f0-9eea-b48c9d34e815/oak-4*.log
Initiating shutdown!
At the same time, I found closing nn model camera_i_nn_type: none in camera.yaml because I don't need redundant detection model or anything else and only need rectfied rgb and stereo data. Sometimes it shows 30hz rgb and stereo depth, but sometimes stereo depth may show no new massages with ros ropic.
So I use rgbd_stereo.launch with simple pipeline: roslaunch depthai_examples rgbd_stereo.launch, rostopic hz oak/rgb/image_raw and rostopic hz oak/stereo/image_raw with 25hz, which is set 1080p 30hz. Here are my modifed part of rgb_stereo_node.cpp
- 62 stereo->setDepthAlign(dai::CameraBoardSocket::CAM_A);
- 84 static inline void getParamWithWarning(ros::NodeHandle& pnh, const char* key, T& val) {
- 101 bool lrcheck = true;
- 102 bool extended = false;
- 103 bool subpixel = false;
- 126 auto rgbCameraInfo = depthConverter.calibrationToCameraInfo(calibrationHandler, dai::CameraBoardSocket::CAM_A, 1920, 1080);
The pipeline seems to be fine(well refleshing speed and rgbd alignment) on rviz or RTAB-Map BUT I still need rectified rgb image for SLAM. I try to transplant the rectified pipeline but fail.
I guess maybe the opencv version may conflict. The ros-noetic uses default opencv 4.2 and I build the whole workspace (including depthai_ros and else) with opencv 4.5 from AGX for better performance.
What can I do?