simulated stereo camera fails when remapping topics
Dear all, I'm trying to simulate the Multisense SL device in Gazebo. I've started by modifying the plugin available here: https://bitbucket.org/osrf/drcsim/src...
The Gazebo-related URDF is the following:
<?xml version="1.0"?>
<robot xmlns:xacro="http://ros.org/wiki/xacro">
<xacro:macro name="multisense_sl_sensor" params="prefix robot_name">
<gazebo reference="head_root">
<mu1>0.9</mu1>
<mu2>0.9</mu2>
</gazebo>
<gazebo reference="head">
<mu1>0.9</mu1>
<mu2>0.9</mu2>
</gazebo>
<gazebo reference="${prefix}/hokuyo_link">
<mu1>0.9</mu1>
<mu2>0.9</mu2>
</gazebo>
<gazebo reference="${prefix}/head_hokuyo_frame">
<mu1>0.9</mu1>
<mu2>0.9</mu2>
</gazebo>
<gazebo reference="${prefix}/motor_joint">
<implicitSpringDamper>1</implicitSpringDamper>
</gazebo>
<gazebo reference="${prefix}/head_hokuyo_frame">
<sensor type="gpu_ray" name="head_hokuyo_sensor">
<pose>0 0 0 0 0 0</pose>
<visualize>false</visualize>
<update_rate>40</update_rate>
<ray>
<scan>
<horizontal>
<samples>1081</samples>
<resolution>1</resolution>
<min_angle>-2.356194</min_angle>
<max_angle>2.356194</max_angle>
</horizontal>
</scan>
<range>
<min>0.10</min>
<max>30.0</max>
<resolution>0.01</resolution>
</range>
<noise>
<type>gaussian</type>
<!-- Noise parameters based on published spec for Hokuyo laser
achieving "+-30mm" accuracy at range < 10m. A mean of 0.0m and
stddev of 0.01m will put 99.7% of samples within 0.03m of the true
reading. -->
<mean>0.0</mean>
<stddev>0.0</stddev>
</noise>
</ray>
<plugin name="${prefix}/head_hokuyo_controller" filename="libgazebo_ros_gpu_laser.so">
<topicName>${prefix}/lidar_scan</topicName>
<frameName>${prefix}/head_hokuyo_frame</frameName>
</plugin>
</sensor>
</gazebo>
<gazebo reference="${prefix}/left_camera_frame">
<sensor type="multicamera" name="${prefix}/stereo_camera">
<!-- see MultiSenseSLPlugin.h for available modes -->
<update_rate>10.0</update_rate>
<camera name="left">
<!-- Spec sheet says 80deg X 45deg @ 1024x544pix. Based on feedback
from teams, we're instead doing 80deg X 80deg @ 800x800pix. -->
<horizontal_fov>1.3962634</horizontal_fov>
<image>
<width>1024</width>
<height>1024</height>
<format>R8G8B8</format>
</image>
<clip>
<near>0.02</near>
<far>300</far>
</clip>
<noise>
<type>gaussian</type>
<!-- Noise is sampled independently per pixel on each frame.
That pixel's noise value is added to each of its color
channels, which at that point lie in the range [0,1].
The stddev value of 0.007 is based on experimental data
from a camera in a Sandia hand pointed at a static scene
in a couple of different lighting conditions. -->
<mean>0.0</mean>
<stddev>0.007</stddev>
</noise>
</camera>
<camera name="right">
<pose>0 -0.07 0 0 0 0</pose>
<!-- Spec sheet says 80deg X 45deg @ 1024x544pix. Based on feedback
from teams, we're instead doing 80deg X 80deg @ 800x800pix. -->
<horizontal_fov>1.3962634</horizontal_fov>
<image>
<width>1024</width>
<height>1024</height>
<format>R8G8B8</format>
</image>
<clip>
<near>0.02</near>
<far>300</far>
</clip>
<noise>
<type>gaussian</type>
<!-- Noise is sampled independently per pixel on each frame.
That pixel's noise value is added to each of its color
channels, which at that point lie in the range [0,1].
The stddev value of 0.007 is based on experimental data
from a camera in a Sandia hand pointed at a static scene
in a couple of different ...