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

Сonvert the pointcloud data to laserscan

asked 2015-07-14 11:05:49 -0600

updated 2015-07-14 11:06:24 -0600

Hello, ROS Community! I have a problem in understanding of the nodes from launch file. kinect_to_laser.launch:

<launch>
<include file="$(find openni_launch)/launch/openni.launch"></include>
<node pkg="nodelet" type="nodelet" name="openni_manager" output="screen" respawn="true" args="manager"></node>
<node pkg="nodelet" type="nodelet" name="pointcloud_throttle" args="load pointcloud_to_laserscan/CloudThrottle openni_manager">
<param name="max_rate" value="2"></param>
<remap from="cloud_in" to="/camera/depth/points"></remap>
<remap from="cloud_out" to="cloud_throttled"></remap></node>
<node pkg="nodelet" type="nodelet" name="kinect_laser" args="load pointcloud_to_laserscan/CloudToScan openni_manager">
<param name="output_frame_id" value="/openni_depth_frame"></param>
<remap from="cloud" to="cloud_throttled"></remap>
</node>

When I run the launch file, I get the errors that openni_manager, pointcloud_throttle and kinect_laser nodes are not exist. https://drive.google.com/open?id=0Byu...

I figure out that they are not exist, but what can I use ?

Pls, explain me what I can do and I will be glad to get any other full answer about sensor data manipulation

Distribution: Indigo OS: Ubuntu 14.04 Sensor: Kinect XBOX 360 openni.launch runs without errors

Thank you

edit retag flag offensive close merge delete

Comments

Did you install pointcloud_to_laserscan?

dornhege gravatar image dornhege  ( 2015-07-14 11:37:59 -0600 )edit

Yes, I have the package that is located /opt/ros/indigo/share/pointcloud_to_laserscan.

dyupleks gravatar image dyupleks  ( 2015-07-14 23:54:00 -0600 )edit

does it not matter that my package with launch file is not in catkin workplace?

dyupleks gravatar image dyupleks  ( 2015-07-15 00:07:30 -0600 )edit

According to the list in the error message I suspect the nodelet was renamed. There is only one left in the list named pointcloud_to_laserscan_nodelet. Maybe try this one instead and remove the throttle.

dornhege gravatar image dornhege  ( 2015-07-15 03:33:05 -0600 )edit

1 Answer

Sort by » oldest newest most voted
1

answered 2015-07-15 01:59:13 -0600

updated 2015-07-20 08:05:05 -0600

I was searching the answer to my question and there is tfoote's answer that I paid attention : http://answers.ros.org/question/9450/...

"Sorry the docs were out of date. It has moved from the ni stack to the turtlebot stack. It's a unreviewed/released glue package used in the turtlebot ...."

pointcloud_to_laserscan package belongs to Turtlebot's stack. In the Turtlebot page http://wiki.ros.org/turtlebot_bringup , I found packages as cloud_throttle and others in electric and fuerte distributions that are not listed in indigo and hydro. I would like to say that the packages are not included in last ROS distributions. OR maybe, the packages were renamed ...
Am I right?

As you advised, I removed nodes and my launch file looks like :

<launch>
<include file="$(find openni_launch)/launch/openni.launch"></include>
<node pkg="nodelet" type="nodelet" name="kinect_laser" args="load pointcloud_to_laserscan/CloudToScan openni_manager">
<param name="output_frame_id" value="/openni_depth_frame"></param>
<remap from="cloud" to="cloud_throttled"></remap>
</node>
</launch>

And, the result : https://drive.google.com/open?id=0Byu...

So, it is clear that the launch file runs only openni.launch, that it was not my initial task.

I was trying to follow your advice, but I dont understand what i should write in name=" " and type=" ". I know that I need to run a container for all nodelets, a nodelet for handling frequency of cloud points and a nodelet for cutting horizontal segments. But, I dont know the syntax and what the package I can use.

Here http://answers.ros.org/question/18844... , the question is the same as mine, but author understood the answers without any explanation, not like me. Dont you know how to use depthimage_to_laserscan ?

The problem is solved!

<launch>
<include file="$(find openni_launch)/launch/openni.launch"/>
<remap from="image" to="/camera/depth/image_raw"/>
<node pkg="depthimage_to_laserscan" name="depthimage_to_laserscan" type="depthimage_to_laserscan">
</node>
<node pkg="rviz" type="rviz" name="rviz"/>
</launch>

My fault was in misunderstanding. I thought that depthimage_to_laserscan replaced openni_launch and I cannot use them together... Thank you, dornhege, for your answers

edit flag offensive delete link more

Comments

The nodelet name after load seems to have been renamed. Replace it by the matching one in the long list in your error.

dornhege gravatar image dornhege  ( 2015-07-15 09:39:12 -0600 )edit

In that case I'd just start the node and use that.

dornhege gravatar image dornhege  ( 2015-07-16 09:01:26 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2015-07-14 11:05:49 -0600

Seen: 614 times

Last updated: Jul 20 '15