same intensity values populated if gpu_ray is used

Issue #13 new
Former user created an issue

Even though the objects in the Gazebo world has different Retro values, the published pointclouds has the same values. if sensor type="gpu_ray" and <plugin name="gazebo_ros_laser_controller" filename="libgazebo_ros_velodyne_gpu_laser.so"> is used.

In the same world if sensor type="ray" and <plugin name="gazebo_ros_laser_controller" filename="libgazebo_ros_velodyne_laser.so"> is used the points in the pointclouds has different intensities.

Comments (4)

  1. Kevin Hallenbeck

    All the worlds and models I tried produced the same intensity on CPU and GPU. Do you have an example world or model to reproduce this?

  2. Karthick Ramachandran

    If the material has the the laser_retro property, the intensity of the reflected ray changes.
    Example -> <laser_retro> 200 </laser_retro> .

    An example world is as follows.

    <sdf version='1.6'>
      <world name='default'>
        <light name='sun' type='directional'>
          <cast_shadows>1</cast_shadows>
          <pose frame=''>0 0 10 0 -0 0</pose>
          <diffuse>0.8 0.8 0.8 1</diffuse>
          <specular>0.2 0.2 0.2 1</specular>
          <attenuation>
            <range>1000</range>
            <constant>0.9</constant>
            <linear>0.01</linear>
            <quadratic>0.001</quadratic>
          </attenuation>
          <direction>-0.5 0.1 -0.9</direction>
        </light>
        <model name='ground_plane'>
          <static>1</static>
          <link name='link'>
            <collision name='collision'>
              <geometry>
                <plane>
                  <normal>0 0 1</normal>
                  <size>100 100</size>
                </plane>
              </geometry>
              <surface>
                <friction>
                  <ode>
                    <mu>100</mu>
                    <mu2>50</mu2>
                  </ode>
                  <torsional>
                    <ode/>
                  </torsional>
                </friction>
                <contact>
                  <ode/>
                </contact>
                <bounce/>
              </surface>
              <max_contacts>10</max_contacts>
            </collision>
            <visual name='visual'>
              <cast_shadows>0</cast_shadows>
              <geometry>
                <plane>
                  <normal>0 0 1</normal>
                  <size>100 100</size>
                </plane>
              </geometry>
              <material>
                <script>
                  <uri>file://media/materials/scripts/gazebo.material</uri>
                  <name>Gazebo/Grey</name>
                </script>
              </material>
            </visual>
            <self_collide>0</self_collide>
            <enable_wind>0</enable_wind>
            <kinematic>0</kinematic>
          </link>
        </model>
        <gravity>0 0 -9.8</gravity>
        <magnetic_field>6e-06 2.3e-05 -4.2e-05</magnetic_field>
        <atmosphere type='adiabatic'/>
        <physics name='default_physics' default='0' type='ode'>
          <max_step_size>0.001</max_step_size>
          <real_time_factor>1</real_time_factor>
          <real_time_update_rate>1000</real_time_update_rate>
        </physics>
        <scene>
          <ambient>0.4 0.4 0.4 1</ambient>
          <background>0.7 0.7 0.7 1</background>
          <shadows>1</shadows>
        </scene>
        <wind/>
        <spherical_coordinates>
          <surface_model>EARTH_WGS84</surface_model>
          <latitude_deg>0</latitude_deg>
          <longitude_deg>0</longitude_deg>
          <elevation>0</elevation>
          <heading_deg>0</heading_deg>
        </spherical_coordinates>
        <model name='unit_box'>
          <pose frame=''>-1.03598 -0.346687 0.5 0 -0 0</pose>
          <link name='link'>
            <inertial>
              <mass>1</mass>
              <inertia>
                <ixx>0.166667</ixx>
                <ixy>0</ixy>
                <ixz>0</ixz>
                <iyy>0.166667</iyy>
                <iyz>0</iyz>
                <izz>0.166667</izz>
              </inertia>
              <pose frame=''>0 0 0 0 -0 0</pose>
            </inertial>
            <collision name='collision'>
              <geometry>
                <box>
                  <size>1 1 1</size>
                </box>
              </geometry>
          <laser_retro> 200 </laser_retro>
              <max_contacts>10</max_contacts>
              <surface>
                <contact>
                  <ode/>
                </contact>
                <bounce/>
                <friction>
                  <torsional>
                    <ode/>
                  </torsional>
                  <ode/>
                </friction>
              </surface>
            </collision>
            <visual name='visual'>
              <geometry>
                <box>
                  <size>1 1 1</size>
                </box>
              </geometry>
              <material>
                <script>
                  <name>Gazebo/Grey</name>
                  <uri>file://media/materials/scripts/gazebo.material</uri>
                </script>
              </material>
            </visual>
            <self_collide>0</self_collide>
            <enable_wind>0</enable_wind>
            <kinematic>0</kinematic>
          </link>
        </model>
        <model name='unit_sphere'>
          <pose frame=''>2.70316 -0.305091 0.5 0 -0 0</pose>
          <link name='link'>
            <inertial>
              <mass>1</mass>
              <inertia>
                <ixx>0.1</ixx>
                <ixy>0</ixy>
                <ixz>0</ixz>
                <iyy>0.1</iyy>
                <iyz>0</iyz>
                <izz>0.1</izz>
              </inertia>
              <pose frame=''>0 0 0 0 -0 0</pose>
            </inertial>
            <collision name='collision'>
              <geometry>
                <sphere>
                  <radius>0.5</radius>
                </sphere>
              </geometry>
          <laser_retro> 100 </laser_retro>
              <max_contacts>10</max_contacts>
              <surface>
                <contact>
                  <ode/>
                </contact>
                <bounce/>
                <friction>
                  <torsional>
                    <ode/>
                  </torsional>
                  <ode/>
                </friction>
              </surface>
            </collision>
            <visual name='visual'>
              <geometry>
                <sphere>
                  <radius>0.5</radius>
                </sphere>
              </geometry>
              <material>
                <script>
                  <name>Gazebo/Grey</name>
                  <uri>file://media/materials/scripts/gazebo.material</uri>
                </script>
              </material>
            </visual>
            <self_collide>0</self_collide>
            <enable_wind>0</enable_wind>
            <kinematic>0</kinematic>
          </link>
        </model>
        <model name='unit_cylinder'>
          <pose frame=''>1.31435 -2.97957 0.5 0 -0 0</pose>
          <link name='link'>
            <inertial>
              <mass>1</mass>
              <inertia>
                <ixx>0.145833</ixx>
                <ixy>0</ixy>
                <ixz>0</ixz>
                <iyy>0.145833</iyy>
                <iyz>0</iyz>
                <izz>0.125</izz>
              </inertia>
              <pose frame=''>0 0 0 0 -0 0</pose>
            </inertial>
            <collision name='collision'>
              <geometry>
                <cylinder>
                  <radius>0.5</radius>
                  <length>1</length>
                </cylinder>
              </geometry>
              <max_contacts>10</max_contacts>
              <surface>
                <contact>
                  <ode/>
                </contact>
                <bounce/>
                <friction>
                  <torsional>
                    <ode/>
                  </torsional>
                  <ode/>
                </friction>
              </surface>
            </collision>
            <visual name='visual'>
              <geometry>
                <cylinder>
                  <radius>0.5</radius>
                  <length>1</length>
                </cylinder>
              </geometry>
          <laser_retro> 250 </laser_retro>
              <material>
                <script>
                  <name>Gazebo/Grey</name>
                  <uri>file://media/materials/scripts/gazebo.material</uri>
                </script>
              </material>
            </visual>
            <self_collide>0</self_collide>
            <enable_wind>0</enable_wind>
            <kinematic>0</kinematic>
          </link>
        </model>
        <state world_name='default'>
          <sim_time>43 677000000</sim_time>
          <real_time>44 49156399</real_time>
          <wall_time>1542705850 570566060</wall_time>
          <iterations>43677</iterations>
          <model name='ground_plane'>
            <pose frame=''>0 0 0 0 -0 0</pose>
            <scale>1 1 1</scale>
            <link name='link'>
              <pose frame=''>0 0 0 0 -0 0</pose>
              <velocity>0 0 0 0 -0 0</velocity>
              <acceleration>0 0 0 0 -0 0</acceleration>
              <wrench>0 0 0 0 -0 0</wrench>
            </link>
          </model>
          <model name='unit_box'>
            <pose frame=''>-1.03598 -0.346687 0.499995 0 1e-05 0</pose>
            <scale>1 1 1</scale>
            <link name='link'>
              <pose frame=''>-1.03598 -0.346687 0.499995 0 1e-05 0</pose>
              <velocity>0 0 0 0 -0 0</velocity>
              <acceleration>0.010615 -0.006191 -9.78231 0.012424 0.021225 1.8e-05</acceleration>
              <wrench>0.010615 -0.006191 -9.78231 0 -0 0</wrench>
            </link>
          </model>
          <model name='unit_cylinder'>
            <pose frame=''>1.31435 -2.97957 0.499997 3e-06 4e-06 -0</pose>
            <scale>1 1 1</scale>
            <link name='link'>
              <pose frame=''>1.31435 -2.97957 0.499997 3e-06 4e-06 -0</pose>
              <velocity>0 0 0 0 -0 0</velocity>
              <acceleration>0 0 -9.8 0 -0 0</acceleration>
              <wrench>0 0 -9.8 0 -0 0</wrench>
            </link>
          </model>
          <model name='unit_sphere'>
            <pose frame=''>2.70316 -0.305091 0.5 0 -0 0</pose>
            <scale>1 1 1</scale>
            <link name='link'>
              <pose frame=''>2.70316 -0.305091 0.5 0 -0 0</pose>
              <velocity>0 0 0 0 -0 0</velocity>
              <acceleration>0 0 0 0 -0 0</acceleration>
              <wrench>0 0 0 0 -0 0</wrench>
            </link>
          </model>
          <light name='sun'>
            <pose frame=''>0 0 10 0 -0 0</pose>
          </light>
        </state>
        <gui fullscreen='0'>
          <camera name='user_camera'>
            <pose frame=''>6.03451 -1.78 1.90323 0 0.331643 -3.05499</pose>
            <view_controller>orbit</view_controller>
            <projection_type>perspective</projection_type>
          </camera>
        </gui>
      </world>
    </sdf>
    
  3. Log in to comment