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

Revision history [back]

click to hide/show revision 1
initial version

I am using libDepthCameraPlugin.so and libgazebo_ros_openni_kinect.so and I am able to publish images from this camera. My .sdf looks like this:

<sensor type="depth" name="camera1"> <always_on>1</always_on>

    <update_rate>30.0</update_rate>
    <camera name="head">
    <horizontal_fov>1.3962634</horizontal_fov>
    <image>
      <width>800</width>
      <height>800</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]. -->
      <mean>0.0</mean>
      <stddev>0.007</stddev>
    </noise>
  </camera>
  <plugin name="camera_controller" filename="libDepthCameraPlugin.so">
    <updateRate>0.0</updateRate>
    <frameName>camera_link</frameName>
    <hackBaseline>0.07</hackBaseline>
    <distortionK1>0.0</distortionK1>
    <distortionK2>0.0</distortionK2>
    <distortionK3>0.0</distortionK3>
    <distortionT1>0.0</distortionT1>
    <distortionT2>0.0</distortionT2>
  </plugin>
 <plugin name="kinect" filename="libgazebo_ros_openni_kinect.so">

    <updateRate>10.0</updateRate>
    <image_topic_name>image_raw</image_topic_name>
    <point_cloud_topic_name>points</point_cloud_topic_name>
    <camera_info_topic_name>camera_info</camera_info_topic_name>
    <cameraName>depth_cam</cameraName>
    <frameName>base_link</frameName>
    <point_cloud_cutoff>0.001</point_cloud_cutoff>
    <distortionK1>0.00000001</distortionK1>
    <distortionK2>0.00000001</distortionK2>
    <distortionK3>0.00000001</distortionK3>
    <distortionT1>0.00000001</distortionT1>
    <distortionT2>0.00000001</distortionT2>
  </plugin>
</sensor>
</link>

  <joint name="kinect_joint" type="revolute">
    <child>kinect::link</child>
    <parent>chassis</parent>
    <axis>
      <xyz>0 0 1</xyz>
      <limit>
        <upper>0</upper>
        <lower>0</lower>
      </limit>
    </axis>
  </joint>

But I have a problem with the frames time stamp and I can not do much with this camera image right know, I am looking for the solution: http://answers.ros.org/question/66800/tf-transformation-for-simulated-kinect-gazebo/

I am using libDepthCameraPlugin.so and libgazebo_ros_openni_kinect.so and I am able to publish images from this camera. My .sdf looks like this:

<sensor < sensor type="depth" name="camera1"> <always_on>1</always_on>name="camera1">

   <always_on>1</always_on>
    <update_rate>30.0</update_rate>
    <camera name="head">
    <horizontal_fov>1.3962634</horizontal_fov>
    <image>
      <width>800</width>
      <height>800</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]. -->
      <mean>0.0</mean>
      <stddev>0.007</stddev>
    </noise>
  </camera>
  <plugin name="camera_controller" filename="libDepthCameraPlugin.so">
    <updateRate>0.0</updateRate>
    <frameName>camera_link</frameName>
    <hackBaseline>0.07</hackBaseline>
    <distortionK1>0.0</distortionK1>
    <distortionK2>0.0</distortionK2>
    <distortionK3>0.0</distortionK3>
    <distortionT1>0.0</distortionT1>
    <distortionT2>0.0</distortionT2>
  </plugin>
 <plugin name="kinect" filename="libgazebo_ros_openni_kinect.so">

    <updateRate>10.0</updateRate>
    <image_topic_name>image_raw</image_topic_name>
    <point_cloud_topic_name>points</point_cloud_topic_name>
    <camera_info_topic_name>camera_info</camera_info_topic_name>
    <cameraName>depth_cam</cameraName>
    <frameName>base_link</frameName>
    <point_cloud_cutoff>0.001</point_cloud_cutoff>
    <distortionK1>0.00000001</distortionK1>
    <distortionK2>0.00000001</distortionK2>
    <distortionK3>0.00000001</distortionK3>
    <distortionT1>0.00000001</distortionT1>
    <distortionT2>0.00000001</distortionT2>
  </plugin>
</sensor>
</link>

  <joint name="kinect_joint" type="revolute">
    <child>kinect::link</child>
    <parent>chassis</parent>
    <axis>
      <xyz>0 0 1</xyz>
      <limit>
        <upper>0</upper>
        <lower>0</lower>
      </limit>
    </axis>
  </joint>

But I have a problem with the frames time stamp and I can not do much with this camera image right know, I am looking for the solution: http://answers.ros.org/question/66800/tf-transformation-for-simulated-kinect-gazebo/

I am using libDepthCameraPlugin.so and libgazebo_ros_openni_kinect.so and I am able to publish images from this camera. My .sdf looks like this:

< sensor type="depth" name="camera1">

   <always_on>1</always_on>
    <update_rate>30.0</update_rate>
    <camera name="head">
    <horizontal_fov>1.3962634</horizontal_fov>
    <image>
      <width>800</width>
      <height>800</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]. -->
      <mean>0.0</mean>
      <stddev>0.007</stddev>
    </noise>
  </camera>
  <plugin name="camera_controller" filename="libDepthCameraPlugin.so">
    <updateRate>0.0</updateRate>
    <frameName>camera_link</frameName>
    <hackBaseline>0.07</hackBaseline>
    <distortionK1>0.0</distortionK1>
    <distortionK2>0.0</distortionK2>
    <distortionK3>0.0</distortionK3>
    <distortionT1>0.0</distortionT1>
    <distortionT2>0.0</distortionT2>
  </plugin>
 <plugin name="kinect" filename="libgazebo_ros_openni_kinect.so">

    <updateRate>10.0</updateRate>
    <image_topic_name>image_raw</image_topic_name>
    <point_cloud_topic_name>points</point_cloud_topic_name>
    <camera_info_topic_name>camera_info</camera_info_topic_name>
    <cameraName>depth_cam</cameraName>
    <frameName>base_link</frameName>
<image_topic_name>image_raw</image_topic_name> #-->element not working
    <point_cloud_topic_name>points</point_cloud_topic_name> #-->element not working
    <camera_info_topic_name>camera_info</camera_info_topic_name> #-->element not working
    <cameraName>depth_cam</cameraName> #--> element not working
    <frameName>base_link</frameName> #-->element not working
    <point_cloud_cutoff>0.001</point_cloud_cutoff>
    <distortionK1>0.00000001</distortionK1>
    <distortionK2>0.00000001</distortionK2>
    <distortionK3>0.00000001</distortionK3>
    <distortionT1>0.00000001</distortionT1>
    <distortionT2>0.00000001</distortionT2>
  </plugin>
</sensor>
</link>

  <joint name="kinect_joint" type="revolute">
    <child>kinect::link</child>
    <parent>chassis</parent>
    <axis>
      <xyz>0 0 1</xyz>
      <limit>
        <upper>0</upper>
        <lower>0</lower>
      </limit>
    </axis>
  </joint>

Hope this helps! But I have a problem with the frames time stamp and I can not do much with this camera image right know, I am looking for the solution: http://answers.ros.org/question/66800/tf-transformation-for-simulated-kinect-gazebo/

I am using libDepthCameraPlugin.so and libgazebo_ros_openni_kinect.so and I am able to publish images from this camera. My .sdf looks like this:

< sensor type="depth" name="camera1">

   <always_on>1</always_on>
   <visualize>true</visualize>
    <update_rate>30.0</update_rate>
    <topic>camera</topic>
    <camera name="head">
name="depth_cam">
         <horizontal_fov>1.3962634</horizontal_fov>
     <image>
       <width>800</width>
       <height>800</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]. -->
       <mean>0.0</mean>
       <stddev>0.007</stddev>
     </noise>
        <save enabled=true>  <!-- Nose que es esto -->
            <path>Gazebo_camera</path>
        </save>
  </camera>
  <plugin name="camera_controller" filename="libDepthCameraPlugin.so">
    <updateRate>0.0</updateRate>
    <frameName>camera_link</frameName>
<CxPrime>0</CxPrime>
    <updateRate>10.0</updateRate>
    <cameraName>depth_cam1</cameraName>
    <frameName>/base_link</frameName>
    <hackBaseline>0.07</hackBaseline>
    <distortionK1>0.0</distortionK1>
    <distortionK2>0.0</distortionK2>
    <distortionK3>0.0</distortionK3>
    <distortionT1>0.0</distortionT1>
    <distortionT2>0.0</distortionT2>
<distortionK1>1.0</distortionK1>
    <distortionK2>1.0</distortionK2>
    <distortionK3>1.0</distortionK3>
    <distortionT1>1.0</distortionT1>
    <distortionT2>1.0</distortionT2>
  </plugin>
 <plugin name="kinect" filename="libgazebo_ros_openni_kinect.so">
     <CxPrime>0</CxPrime>
    <updateRate>10.0</updateRate>
    <image_topic_name>image_raw</image_topic_name> #-->element not working
    <point_cloud_topic_name>points</point_cloud_topic_name> #-->element not working
    <camera_info_topic_name>camera_info</camera_info_topic_name> #-->element not working
    <cameraName>depth_cam</cameraName> #--> element not working
    <frameName>base_link</frameName> #-->element not working
    <point_cloud_cutoff>0.001</point_cloud_cutoff>
<imageTopicName>image_raw</imageTopicName>
    <pointCloudTopicName>points</pointCloudTopicName>
    <depthImageTopicName>image_depth</depthImageTopicName>
    <depthImageCameraInfoTopicName>depth_camera_info</depthImageCameraInfoTopicName>
    <pointCloudCutoff>0.001</pointCloudCutoff>
    <cameraName>kinect</cameraName>
    <frameName>/base_link</frameName>
    <distortionK1>0.00000001</distortionK1>
    <distortionK2>0.00000001</distortionK2>
    <distortionK3>0.00000001</distortionK3>
    <distortionT1>0.00000001</distortionT1>
    <distortionT2>0.00000001</distortionT2>
  </plugin>
</sensor>
</link>

  <joint name="kinect_joint" type="revolute">
    <child>kinect::link</child>
    <parent>chassis</parent>
    <axis>
      <xyz>0 0 1</xyz>
      <limit>
        <upper>0</upper>
        <lower>0</lower>
      </limit>
    </axis>
  </joint>

Hope this helps! But I have a problem with the frames time stamp and I can not do much with this camera image right know, I am looking for the solution: http://answers.ros.org/question/66800/tf-transformation-for-simulated-kinect-gazebo/