depth_registration produces all 0's on turtlebot
Hello, this has been bugging me for a few days. I am attempting to run roslaunch openni_launch openni.launch depth_registration:=true
on my turtlebot (which is on hydro). It produces depth images fine with depthregistration:=false, but as soon as you relaunch it with this argument set to true, or reconfigure it through `rosrun rqtreconfigure rqtreconfigure, the values from
rostopic echo camera/depthregistered/image_raw` all turn to 0.
Here's what I see when launching openni_launch on the turtlebot:
turtlebot@blood:~$ roslaunch openni_launch openni.launch depth_registration:=true
... logging to /home/turtlebot/.ros/log/52916138-1d98-11e4-9f6e-446d57b4fd52/roslaunch-blood-26303.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://blood:42438/
SUMMARY
========
PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads
* /camera/depth_rectify_depth/interpolation
* /camera/depth_registered_rectify_depth/interpolation
* /camera/disparity_depth/max_range
* /camera/disparity_depth/min_range
* /camera/disparity_registered_hw/max_range
* /camera/disparity_registered_hw/min_range
* /camera/disparity_registered_sw/max_range
* /camera/disparity_registered_sw/min_range
* /camera/driver/depth_camera_info_url
* /camera/driver/depth_frame_id
* /camera/driver/depth_registration
* /camera/driver/device_id
* /camera/driver/rgb_camera_info_url
* /camera/driver/rgb_frame_id
* /rosdistro
* /rosversion
NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
debayer (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
rectify_color (nodelet/nodelet)
rectify_ir (nodelet/nodelet)
rectify_mono (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
/
camera_base_link (tf/static_transform_publisher)
camera_base_link1 (tf/static_transform_publisher)
camera_base_link2 (tf/static_transform_publisher)
camera_base_link3 (tf/static_transform_publisher)
ROS_MASTER_URI=http://localhost:11311
core service [/rosout] found
process[camera/camera_nodelet_manager-1]: started with pid [26345]
process[camera/driver-2]: started with pid [26346]
[ INFO] [1407350133.732268212]: Initializing nodelet with 4 worker threads.
process[camera/debayer-3]: started with pid [26381]
process[camera/rectify_mono-4]: started with pid [26402]
process[camera/rectify_color-5]: started with pid [26421]
process[camera/rectify_ir-6]: started with pid [26443]
process[camera/depth_rectify_depth-7]: started with pid [26457]
process[camera/depth_metric_rect-8]: started with pid [26471]
process[camera/depth_metric-9]: started with pid [26485]
process[camera/depth_points-10]: started with pid [26501]
process[camera/register_depth_rgb-11]: started with pid [26524]
process[camera/points_xyzrgb_sw_registered-12]: started with pid [26540]
[ INFO] [1407350136.335208164]: Number devices connected: 1
[ INFO] [1407350136.336207107]: 1. device on bus 001:07 is a SensorV2 (2ae) from PrimeSense (45e) with serial id '0000000000000000'
[ INFO] [1407350136.340973471]: Searching for device with index = 1
[ INFO] [1407350136.444154844]: Opened 'SensorV2' on bus 1:7 with serial number '0000000000000000'
process[camera/depth_registered_rectify_depth-13]: started with pid [26587]
process[camera/points_xyzrgb_hw_registered-14]: started with pid [26615]
process[camera/disparity_depth-15]: started with pid [26637]
process[camera/disparity_registered_sw-16]: started with pid [26651]
process[camera/disparity_registered_hw-17]: started with pid [26665]
process[camera_base_link-18]: started with pid [26687]
process[camera_base_link1-19]: started with pid [26720]
process[camera_base_link2-20]: started with pid [26733]
[ INFO] [1407350139.170002162]: rgb_frame_id = '/camera_rgb_optical_frame'
[ INFO] [1407350139.170713613]: depth_frame_id = '/camera_depth_optical_frame'
[ WARN] [1407350139.195398086]: Camera calibration file /home/turtlebot/.ros/camera_info/rgb_0000000000000000.yaml not found.
[ WARN] [1407350139.196498964]: Using default parameters for RGB camera calibration.
[ WARN] [1407350139.197017959]: Camera calibration file /home/turtlebot/.ros/camera_info/depth_0000000000000000.yaml not found.
[ WARN] [1407350139.197896238]: Using default parameters for IR camera calibration.
process[camera_base_link3-21]: started with pid [26770]
The odd part is that I have another kinect that I can run into my computer and, running roscore locally, can produce correct depthregistered images. However, if I plug that kinect into my turtlebot laptop, the image is incorrect again. I tried this in reverse too; I plugged in the turtlebot's kinect into my computer, ran opennilaunch, and the image was produced correctly. Because of this I ran sudo apt-get update
and sudo apt-get dist-upgrade
on the turtlebot, which didn't solve the issue.
Let me know if I can provide any more info, or if someone has had this problem. Thanks
Asked by ahubers on 2014-08-06 13:42:43 UTC
Comments