rgbdslam doesn't work if it has launched before
I am following the instructions and compile all the packages successfully. Then I excute
roslaunch rgbdslam kinect+rgbdslam.launchIt works just fine (a window pops out and show the RGB image and the depth image) Then I close the window and shut down the terminal. But then when I open the terminal and redo the roslaunch again, it shows
openni_node: /usr/include/boost/smart_ptr/shared_ptr.hpp:412: boost::shared_ptr<t>::reference boost::shared_ptr<t>::operator*() const [with T = xn::NodeInfo, boost::shared_ptr<t>::reference = xn::NodeInfo&]: Assertion `px != 0' failed. [openni_node1-1] process has died [pid 2939, exit code -6]. log files: /home/chong/.ros/log/1ca4f8da-a515-11e1-be93-74e50b030cfa/openni_node1-1*.log
But this log file does not exit in the directory. I found another log file named roslaunch-ubuntu-3307.log and this is the part where the error possibly appears:
[roslaunch][INFO] 2012-05-23 16:28:44,034: ... successfully launched [rgbdslam-7] [roslaunch][INFO] 2012-05-23 16:28:44,034: ... launch_nodes complete [roslaunch.pmon][INFO] 2012-05-23 16:28:44,035: registrations completed <processmonitor(processmonitor-1, started="" daemon="" 139844188399360)=""> [roslaunch.parent][INFO] 2012-05-23 16:28:44,035: ... roslaunch parent running, waiting for process exit [roslaunch][INFO] 2012-05-23 16:28:44,035: spin [roslaunch][ERROR] 2012-05-23 16:28:52,215: [openni_node1-2] process has died [pid 3346, exit code -6]. log files: /home/chong/.ros/log/e41573d6-a515-11e1-8e5f-74e50b030cfa/openni_node1-2*.log [roslaunch.pmon][INFO] 2012-05-23 16:28:52,216: ProcessMonitor.unregister[openni_node1-2] starting [roslaunch.pmon][INFO] 2012-05-23 16:28:52,216: ProcessMonitor.unregister[openni_node1-2] complete
The interesting thing is, when I restart the system and try this again, it works the first time, but if I try roslaunch the second time, tthen the same error appears. Seems it only works at the first time after the system is booted. I guess I didn't shut down everything executed by the first time roslaunch but I don't know how to do it. Anybody knows how to solve this? I will appreciate any suggestions !
Edit: after I type ^C in the window, it says
[rgbdslam-7] killing on exit [kinect_base_link3-6] killing on exit [kinect_base_link2-5] killing on exit [kinect_base_link1-4] killing on exit [kinect_base_link-3] killing on exit [rosout-1] killing on exit [master] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done
What does roslaunch say after you type ^C in its window?
Hi joq, I've posted the output in the "edit" part in my post above. Thanks !
Is ^C what you did when you "shut down the terminal"?
yes. and by "close the window", i mean close the window showing up when i run the roslaunch command
any idea how to solve this?
Provide more information on why openni_node died?