Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[orb_slam3-2] process has died #4

Open
Cheng-Chih-Hung opened this issue Dec 27, 2022 · 24 comments
Open

[orb_slam3-2] process has died #4

Cheng-Chih-Hung opened this issue Dec 27, 2022 · 24 comments

Comments

@Cheng-Chih-Hung
Copy link

Hi~
I run the euroc_mono, tum_rgbd and those launch file and i get :

[orb_slam3-2] process has died [pid 2417, exit code -11, cmd /home/ace428/catkin_ws/devel/lib/orb_slam3_ros/ros_mono /camera/image_raw:=/cam0/image_raw __name:=orb_slam3 __log:=/home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/orb_slam3-2.log].
log file: /home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/orb_slam3-2*.log

I can run the ORB-SLAM3 with ROS success from 'https://github.com/UZ-SLAMLab/ORB_SLAM3' V1.0, but i'll need the ROS output of pose and map

Did I do some thing wrong?
Thank you very much

############ Full Output ########
$ roslaunch orb_slam3_ros euroc_mono.launch
... logging to /home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/roslaunch-ace428-System-Product-Name-2359.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ace428-System-Product-Name:39841/

SUMMARY

PARAMETERS

  • /orb_slam3/cam_frame_id: camera
  • /orb_slam3/enable_pangolin: True
  • /orb_slam3/settings_file: /home/ace428/catk...
  • /orb_slam3/voc_file: /home/ace428/catk...
  • /orb_slam3/world_frame_id: world
  • /orb_slam3_ros/trajectory_server_orb_slam3/source_frame_name: /camera
  • /orb_slam3_ros/trajectory_server_orb_slam3/target_frame_name: /world
  • /orb_slam3_ros/trajectory_server_orb_slam3/trajectory_publish_rate: 20.0
  • /orb_slam3_ros/trajectory_server_orb_slam3/trajectory_update_rate: 20.0
  • /rosdistro: melodic
  • /rosversion: 1.14.13
  • /use_sim_time: False

NODES
/
orb_slam3 (orb_slam3_ros/ros_mono)
rviz (rviz/rviz)
/orb_slam3_ros/
trajectory_server_orb_slam3 (hector_trajectory_server/hector_trajectory_server)

auto-starting new master
process[master]: started with pid [2384]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to fc4d4438-85bf-11ed-9c6d-f02f7455103d
process[rosout-1]: started with pid [2410]
started core service [/rosout]
process[orb_slam3-2]: started with pid [2417]
process[rviz-3]: started with pid [2418]
process[orb_slam3_ros/trajectory_server_orb_slam3-4]: started with pid [2419]
[ INFO] [1672129514.430482407]: Waiting for tf transform data between frames /world and /camera to become available
[ INFO] [1672129514.531219519]: rviz version 1.13.29
[ INFO] [1672129514.531258498]: compiled against Qt version 5.9.5
[ INFO] [1672129514.531269596]: compiled against OGRE version 1.9.0 (Ghadamon)

ORB-SLAM3 Copyright (C) 2017-2020 Carlos Campos, Richard Elvira, Juan J. Gómez, José M.M. Montiel and Juan D. Tardós, University of Zaragoza.
ORB-SLAM2 Copyright (C) 2014-2016 Raúl Mur-Artal, José M.M. Montiel and Juan D. Tardós, University of Zaragoza.
This program comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it
under certain conditions. See LICENSE.txt.

Input sensor was set to: Monocular
[ INFO] [1672129514.535178826]: Forcing OpenGl version 0.
[orb_slam3-2] process has died [pid 2417, exit code -11, cmd /home/ace428/catkin_ws/devel/lib/orb_slam3_ros/ros_mono /camera/image_raw:=/cam0/image_raw __name:=orb_slam3 __log:=/home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/orb_slam3-2.log].
log file: /home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/orb_slam3-2*.log
[ INFO] [1672129515.346225379]: Stereo is NOT SUPPORTED
[ INFO] [1672129515.346273215]: OpenGL device: NVIDIA GeForce RTX 3090/PCIe/SSE2
[ INFO] [1672129515.346290483]: OpenGl version: 4.6 (GLSL 4.6).
[ WARN] [1672129534.432550771]: No transform between frames /world and /camera available after 20.002048 seconds of waiting. This warning only prints once.

@thien94
Copy link
Owner

thien94 commented Dec 27, 2022

Hi @Cheng-Chih-Hung , thanks for checking out the code.

At first glance, I can't really say what is the real issue. Can you try launching again with 1) enable_pangolin set to False, and 2) disable RViz by comment out this line?

@Cheng-Chih-Hung
Copy link
Author

Hi @thien94
Thank you for reply me so fast
I try to set the enable_pangolin to False and comment the Visualization, but the problem still there.

@thien94
Copy link
Owner

thien94 commented Dec 27, 2022

If possible, can you open the log file (file name stated within the terminal output log file: /home/... and check for any error messages?

Alternatively, since you can use the standalone ORB-SLAM3 library fine, this wrapper can output the pose and map points https://github.com/thien94/orb_slam3_ros_wrapper. There are limitations though, which you can read more in the README.

@Cheng-Chih-Hung
Copy link
Author

@thien94
I try to find out the log file the terminal show, but in the floder /home/ace428/.ros/log/fc4d4438-85bf-11ed-9c6d-f02f7455103d/ there's no orb_slam3-2.log.

And I try the orb_slam3_ros_wrapper https://github.com/thien94/orb_slam3_ros_wrapper, I can run the euroc_mono.launch and tum_rgbd.launch success, but I get the same error here when I try the euroc_monoimu, euroc_stereo, and euroc_stereoimu.

I think I have the same problem like this thien94/orb_slam3_ros_wrapper#6 (comment)

@thien94
Copy link
Owner

thien94 commented Dec 28, 2022

The error might be because of incompatible setting files, specifically voc_file and settings_file. My suggestion for now:

  • Try changing the voc_file and settings_file params in the launch file so that they point to the ones in the ORB-SLAM3/Examples
  • If that works, you can copy the ones in the ORB-SLAM3 folder and replace them in the wrapper's folder or this package.

@Cheng-Chih-Hung
Copy link
Author

Cheng-Chih-Hung commented Dec 28, 2022

@thien94
I do change the voc_file and settings_file to fit, but it still can't work.
Can I ask what's you're success environmet(version of OpenCV, Boost, Eigen3, Pangolin...), I change some of the code of ORB_SLAM3 to match my environmet, will this be able to make the error ?

@thien94
Copy link
Owner

thien94 commented Dec 29, 2022

Hi @Cheng-Chih-Hung , if you are familiar with Docker, I suggest following the instructions here to set it up https://github.com/thien94/orb_slam3_ros#docker
Everything related to environment settings can be found inside. Hence, it would be quicker than me listing all the details.

@Cheng-Chih-Hung
Copy link
Author

@thien94
Okay! Thank you very much : )

@Tlalvani
Copy link

Tlalvani commented Feb 5, 2023

Was this problem ever resolved? Running into the same error. Could it have something to do with the "Stereo is NOT SUPPORTED" line?

@ergys00
Copy link

ergys00 commented Feb 13, 2023

any update? I'm facing the same problem

@thien94
Copy link
Owner

thien94 commented Feb 13, 2023

Hi @Tlalvani and @ergys00 , the problem seems to be system dependent as I couldn't replicate the issue on my computer. Have you tried using the docker method?

Could it have something to do with the "Stereo is NOT SUPPORTED" line?

This line is just a default message from ORB-SLAM3. So you can ignore it.

@Cheng-Chih-Hung
Copy link
Author

Hi @Tlalvani @ergys00
I solved this problem by reinstall Ubuntu 20.04.5 LST, but there's still some problems on pangolin, so I disable it.
Now it works fine with my ZED 2 camera.
I also try with the docker, it works fine too.

@ergys00
Copy link

ergys00 commented Feb 15, 2023

I have to install it on ubuntu 18.04, the normal ros wrapper with standalone orbslam works fine but that one can't work, it always gives me "process had died" error. I can't try the docker solution because, as a base, i've to use a pre-written docker file with ubuntu 18.04 + ros melodic base version + opencv. ORBSLAM3 itself or the ros wrapper with the orbslam standalone version work well with that dockerfile.

@JACKLiuDay
Copy link

JACKLiuDay commented Feb 23, 2023

I have the same problem, my system is ubuntu 20.04, ros noetic, opencv4.2.
image
I just found my error.
error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such file or directory

just use
sudo ldconfig

@ergys00
Copy link

ergys00 commented Feb 23, 2023

By putting some prints in an there in the code i found out that the problem was caused by the line 70 in System.cc in the src folder of ORBSLAM3: "cv::FileStorage fsSettings(strSettingsFile.c_str(), cv::FileStorage::READ);"
That line was giving "segmentation fault" error which was caused by the fact that cv-bridge that comes with ros melodic requires opencv 3.3 and the opencv version that i was using was 4.7.
I solved the problem by installing a custom-made version of cv-bridge made for OpenCV 4.
That's the question in stackoverflow that i followed to solve the problem: https://stackoverflow.com/questions/70127095/conflict-between-opencv-4-and-cv-bridge-in-ros-node

@Tlalvani
Copy link

@ergys00's fix resolved my issue as well :)

@zhousteven
Copy link

By putting some prints in an there in the code i found out that the problem was caused by the line 70 in System.cc in the src folder of ORBSLAM3: "cv::FileStorage fsSettings(strSettingsFile.c_str(), cv::FileStorage::READ);" That line was giving "segmentation fault" error which was caused by the fact that cv-bridge that comes with ros melodic requires opencv 3.3 and the opencv version that i was using was 4.7. I solved the problem by installing a custom-made version of cv-bridge made for OpenCV 4. That's the question in stackoverflow that i followed to solve the problem: https://stackoverflow.com/questions/70127095/conflict-between-opencv-4-and-cv-bridge-in-ros-node
fix and resolved my issue as well

@KhazixW2
Copy link

KhazixW2 commented Apr 8, 2023

By putting some prints in an there in the code i found out that the problem was caused by the line 70 in System.cc in the src folder of ORBSLAM3: "cv::FileStorage fsSettings(strSettingsFile.c_str(), cv::FileStorage::READ);" That line was giving "segmentation fault" error which was caused by the fact that cv-bridge that comes with ros melodic requires opencv 3.3 and the opencv version that i was using was 4.7. I solved the problem by installing a custom-made version of cv-bridge made for OpenCV 4. That's the question in stackoverflow that i followed to solve the problem: https://stackoverflow.com/questions/70127095/conflict-between-opencv-4-and-cv-bridge-in-ros-node

hi, bro

i find a confilt that the method solve [orb_slam3 has died] problem ..

but i find a new problem..

when i make custom method to launch my cameras,, but it is [ camera1 has died]... because i have removed "ros-noetic-cv-bridge" and i install "vision-opencv" from source

fllow my error tip:

`ssz@ssz:~/workspace/catkin_ws_ORBSLAM3$ roslaunch usb_cam usb_cam_ssz.launch camera1_name:=camera1 camera2_name:=camera2
... logging to /home/ssz/.ros/log/f30c8c9a-d51e-11ed-aaea-e77234514fc2/roslaunch-ssz-407096.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ssz:44739/

SUMMARY

PARAMETERS

  • /camera1/camera_frame_id: camera1
  • /camera1/camera_name: camera1
  • /camera1/image_height: 480
  • /camera1/image_width: 640
  • /camera1/io_method: mmap
  • /camera1/pixel_format: mjpeg
  • /camera1/video_device: /dev/video0
  • /camera2/camera_frame_id: camera2
  • /camera2/camera_name: camera2
  • /camera2/image_height: 480
  • /camera2/image_width: 640
  • /camera2/io_method: mmap
  • /camera2/pixel_format: mjpeg
  • /camera2/video_device: /dev/video2
  • /image_view1/autosize: True
  • /image_view2/autosize: True
  • /rosdistro: noetic
  • /rosversion: 1.16.0

NODES
/
camera1 (usb_cam/usb_cam_node)
camera2 (usb_cam/usb_cam_node)
image_view1 (image_view/image_view)
image_view2 (image_view/image_view)

ROS_MASTER_URI=http://localhost:11311

process[camera1-1]: started with pid [407150]
process[camera2-2]: started with pid [407151]
process[image_view1-3]: started with pid [407152]
process[image_view2-4]: started with pid [407153]
[ INFO] [1680922889.988776389]: using default calibration URL
[ INFO] [1680922889.989431493]: camera calibration URL: file:///home/ssz/.ros/camera_info/camera1.yaml
[ INFO] [1680922889.989480831]: Unable to open camera calibration file [/home/ssz/.ros/camera_info/camera1.yaml]
[ WARN] [1680922889.989495792]: Camera calibration file /home/ssz/.ros/camera_info/camera1.yaml not found.
[ INFO] [1680922889.989512213]: Starting 'camera1' (/dev/video0) at 640x480 via mmap (mjpeg) at 30 FPS
[ INFO] [1680922889.989842092]: using default calibration URL
[ INFO] [1680922889.990189013]: camera calibration URL: file:///home/ssz/.ros/camera_info/camera2.yaml
[ INFO] [1680922889.990223326]: Unable to open camera calibration file [/home/ssz/.ros/camera_info/camera2.yaml]
[ WARN] [1680922889.990235559]: Camera calibration file /home/ssz/.ros/camera_info/camera2.yaml not found.
[ INFO] [1680922889.990249560]: Starting 'camera2' (/dev/video2) at 640x480 via mmap (mjpeg) at 30 FPS
[ INFO] [1680922890.183684051]: Initializing nodelet with 20 worker threads.
[ INFO] [1680922890.185668864]: Initializing nodelet with 20 worker threads.
[ INFO] [1680922891.570476700]: Using transport "raw"
[ INFO] [1680922891.572644663]: Using transport "raw"
[image_view2-4] process has died [pid 407153, exit code -11, cmd /opt/ros/noetic/lib/image_view/image_view image:=/camera2/image_raw __name:=image_view2 __log:=/home/ssz/.ros/log/f30c8c9a-d51e-11ed-aaea-e77234514fc2/image_view2-4.log].
log file: /home/ssz/.ros/log/f30c8c9a-d51e-11ed-aaea-e77234514fc2/image_view2-4*.log
[image_view1-3] process has died [pid 407152, exit code -11, cmd /opt/ros/noetic/lib/image_view/image_view image:=/camera1/image_raw __name:=image_view1 __log:=/home/ssz/.ros/log/f30c8c9a-d51e-11ed-aaea-e77234514fc2/image_view1-3.log].
log file: /home/ssz/.ros/log/f30c8c9a-d51e-11ed-aaea-e77234514fc2/image_view1-3*.log
^C[camera2-2] killing on exit
[camera1-1] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
`

@KhazixW2
Copy link

KhazixW2 commented Apr 8, 2023

when i remove "image-view code" , it work find ..

@mgrallos
Copy link

mgrallos commented Jun 5, 2023

sudo ldconfig

hi where do I command this? I have the same setup with yours

@Ab-Tx
Copy link

Ab-Tx commented Jan 25, 2024

I had the same issue solved by cloning https://github.com/ros-perception/vision_opencv/tree/noetic (noetic branch) into the /src folder. The answer above is similar but clones a fork that gives me an issue with a "boost_python3" package.

git clone https://github.com/ros-perception/vision_opencv.git -b noetic

@lvxiangyu11
Copy link

lvxiangyu11 commented Jun 2, 2024

I have the same problem, but as regared to the upper said, "used the docker", so I remake this on docker, the docker images was provieded by @jahaniam https://github.com/jahaniam/orbslam3_docker on nvidia-docker, so fully fullied. Thanks Docker

我也遇到了相同的问题,就像上面有人说的一样,在docker上运行正常。所以我也在docker重试了这个,用的是现成的docker环境 https://github.com/jahaniam/orbslam3_docker,在有nvidia支持的docker上运行成功并且opengl显示其输出调用显卡。感谢Docker!

@wrmhehe
Copy link

wrmhehe commented Jul 22, 2024

I had the same issue solved by cloning https://github.com/ros-perception/vision_opencv/tree/noetic (noetic branch) into the /src folder. The answer above is similar but clones a fork that gives me an issue with a "boost_python3" package.

git clone https://github.com/ros-perception/vision_opencv.git -b noetic

only useful comment, even though don't know why.

@Fan-Zhangg
Copy link

I solved this problem by installing a modified Pangolin from ORB_SLAM3_NOETIC, please make sure to uninstall the old Pangolin before installation, and my running environment is ubuntu 20.04.6.
[https://github.com/RAFALAMAO/ORB_SLAM3_NOETIC]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests