[ros-users] Images from openni_nodelet sometimes cannot be retrieved within a nodelet mgr
K Chen
chk0105 at gmail.com
Wed Nov 23 14:38:49 UTC 2011
Hi all,
I am writing something using nodelet to process images from kinect, using
openni_nodelet under openni_camera package to retrieve images from kinect,
and my nodelet to subscribe it.
I wrote a launch file to start the nodelet_mgr, openni_nodelet and my
nodelet, and I use openCV windows to display images got from
openni_nodelet, I wrote something like this as the callback:
onRGBDImage(const pcl::PointCloud<pcl::PointXYZRGB>::ConstPtr& cloud_msg)
{
cv::Mat mat_rgb;
// Convert from cloud_msg to cv::Mat
//...
cv::imshow(mat_rgb);
cv::waitKey(5);
}
But when I start all nodes using the launch file, sometimes it can display
images properly, but sometimes it cannot, and the openCV window goes
grey(Not responding because no call to cv::waitKey() for some time)
I don't know whether there exists some rules that I should follow when
using nodelet, e.g. subscribers should start after publishers? How can I
make it work every time?
I am using electric under ubuntu 10.10.
Thanks for any help.
P.S. Here is my launch file:
<launch>
<node pkg="nodelet" type="nodelet" name="nodelet_mgr" args="manager"
output="screen"/>
<!-- openni_camera nodelet -->
<node pkg="nodelet" type="nodelet" name="openni_camera" args="load
openni_camera/OpenNINodelet nodelet_mgr">
<param name="device_id" value="#1"/> <!-- this line uses first
enumerated device -->
<rosparam command="load" file="$(find
openni_camera)/info/openni_params.yaml" />
<param name="rgb_frame_id" value="/openni_rgb_optical_frame" />
<param name="depth_frame_id" value="/openni_depth_optical_frame" />
<param name="depth_registration" value="true" />
<param name="image_mode" value="2" />
<param name="depth_mode" value="2" />
<param name="debayering" value="2" />
<param name="depth_time_offset" value="0" />
<param name="image_time_offset" value="0" />
</node>
<include file="$(find openni_camera)/launch/kinect_frames.launch"/>
<node pkg="nodelet" type="nodelet" name="TabletopObj" args="load
vision/TableTopObjNodelet nodelet_mgr" output="screen">
</node>
</launch>
--
Regards
University of Science and Technology of China
School of Computer Science and Technology
Multi-Agent System Lab
K.Chen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/ros-users/attachments/20111123/4cffd18f/attachment-0003.html>
More information about the ros-users
mailing list