ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

registered depth only works sometimes with openni_launch

asked 2011-11-21 01:23:07 -0600

pbeeson gravatar image

updated 2016-10-24 09:00:13 -0600

ngrennan gravatar image

I've noticed that when I use openni_launch, I can examine the depth_registered/image_raw, the rgb image, and even the IR image (if the rgb image topic is not also subscribed to). But, the depth_registered/points topic often reports nothing. Sometimes, I have to retry openni_launch up to 10 times before I finally get out a point cloud. I looked through this, and I can't see where any nodelet would have a race condition, but it seems that that might be the case. At first, I thought unplugging the Kinect helped -- but that doesn't seem to be a consistent fix. I also can run the openni_viewer that is installed with openni, and I get out the correct pointcloud, so I'm not sure why openni_launch doesn't always publish on depth_registered/points.

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
4

answered 2011-11-21 09:55:44 -0600

Patrick Mihelich gravatar image

There actually are various race conditions in the nodelets and in the OpenNI ROS driver, which I've been trying to stamp out lately. You can try the latest version with this rosinstall:

- other: {local-name: /opt/ros/electric/ros}
- other: {local-name: /opt/ros/electric/stacks}
- hg: {local-name: nodelet_core, uri: 'https://kforge.ros.org/common/nodeletcore'}
- svn: {local-name: image_pipeline, uri: 'https://code.ros.org/svn/ros-pkg/stacks/image_pipeline/trunk'}
- hg: {local-name: openni_kinect, uri: 'https://kforge.ros.org/openni/openni_ros'}

I'm working to release the affected stacks this week, but it would be helpful if you tried this out and reported whether there's any improvement.

edit flag offensive delete link more

Comments

Works MUCH better. The only problem I have is that I still get tons of annoying warnings that /camera/depth_registered/image_raw and /camera/depth_registered/camera_info do not appear to be synchronized. But I can live with that for now. Thanks
pbeeson gravatar image pbeeson  ( 2011-11-22 05:44:40 -0600 )edit
Patrick, I'm having a similar problem while using a Turtlebot. If I install the updated code as described above, the problem goes away. Thanks for the work on this!
Alaina gravatar image Alaina  ( 2011-11-24 00:39:10 -0600 )edit
Patrick, can you let us know when these changes make the electric .deb packages?
pbeeson gravatar image pbeeson  ( 2011-11-28 09:11:57 -0600 )edit
I finally released all the stacks today, however it will take some time for the new debs to build.
Patrick Mihelich gravatar image Patrick Mihelich  ( 2011-12-05 11:52:12 -0600 )edit
0

answered 2011-11-24 00:47:14 -0600

Alaina gravatar image

By the way, my load average was running above 4 before I did the update. I thought it was my crappy netbook, so I didn't give it much thought, but it turns out that it's running at 0.3 post-update.

edit flag offensive delete link more
0

answered 2011-11-24 02:38:37 -0600

Alaina gravatar image

More news:

Even with the update, I'm still seeing curious behavior. The first time I ran openni_launch, it worked. Then I ran the turtlebot kinect.launch and it worked. After the Turtlebot version had been running for a few minutes, I got messages like:

[ WARN] [1322144717.802973318]: Camera Info for rgb stream has subscribers, but stream has stopped.
[ WARN] [1322148935.064305326]: Camera Info for rgb stream has subscribers, but stream has stopped.
[ WARN] [1322148966.416502492]: Camera Info for rgb stream has subscribers, but stream has stopped.
[ WARN] [1322149924.350446490]: Camera Info for rgb stream has subscribers, but stream has stopped.

A rostopic hz running on the rgb camera_info starts showing "no new messages", it disappeared from rviz, and nothing happened any more. At that point, the turtlebot kinect.launch stopped working and hasn't worked since. Disconnecting and reconnecting the Kinect's USB to the netbook doesn't fix it, and neither does a reboot.

But, I can roslaunch openni_launch openni_launch and it works for a while. If it stops publishing, I can just cancel and relaunch it.

Hope this helps.

edit flag offensive delete link more

Comments

Aaaaand now I'm seeing high load again: 10.60 5-second average, with nodelets being the top two processes at %CPU of >100% on one and >80% on the other. (False alarm: this was a result of me accidentally launching with the turtlebot kinect.launch file in another terminal window.)
Alaina gravatar image Alaina  ( 2011-11-24 02:48:05 -0600 )edit

Question Tools

Stats

Asked: 2011-11-21 01:23:07 -0600

Seen: 1,896 times

Last updated: Nov 24 '11