Show EOL distros:
Launch files
openni.launch
Launches in one process the device driver and many processing nodelets for turning the raw RGB and depth images into useful products, such as point clouds. Provides default tf tree linking the RGB and depth cameras.
Arguments
camera (string, default: camera)
- Descriptive name for your device. All published topics are pushed down into the <camera> namespace, and this also affects tf frame ids and some node names. If you are using multiple cameras, use this argument to disambiguate them.
Device driver
- Specifies which device to open. The following formats are recognized:
#1 Use first device found 2@3 Use device on USB bus 2, address 3 B00367707227042B Use device with given serial number
- Calibration URL for the RGB camera. By default, looks in your ROS home directory for calibration identified by the device serial number, e.g. $HOME/.ros/camera_info/rgb_B00367707227042B. If no calibration is found, uses a default camera model with a typical focal length and distortion unmodeled.
- Calibration URL for the IR/depth camera. By default, looks in your ROS home directory for calibration identified by the device serial number, e.g. $HOME/.ros/camera_info/depth_B00367707227042B. If no calibration is found, uses a default camera model with the focal length reported by OpenNI and distortion unmodeled.
depth_registration (bool, default: false)
- If true, use OpenNI's factory-calibrated depth->RGB registration.
- If true, load the OpenNI device driver. Set to false if raw data is provided by another source, e.g. bag file playback.
tf frames
- The tf frame id of the RGB camera.
- The tf frame id of the IR camera.
publish_tf (bool, default: true)
- If true, publish the default (uncalibrated) tf tree. Set to false if extrinsics are provided by another source, e.g. calibration or bag file playback.
Remapping
- Remap the rgb namespace.
- Remap the ir namespace.
- Remap the depth namespace.
- Remap the depth_registered namespace.
- Remap the projector namespace.
Launch configuration
- If true, launches nodelet manager in GDB for debugging.
respawn (bool, default: false)
- If true, enables bond topics between nodelet loaders and the managers and respawns any nodes (manager or loader) that die. This makes the system robust to any node dying, but the proliferation of bond topics can overwhelm introspection tools like rxgraph.
Published Topics
RGB camera
- Camera calibration and metadata.
- Raw image from device. Format is Bayer GRBG for Kinect, YUV422 for PSDK.
- Monochrome unrectified image.
- Color unrectified image.
- Monochrome rectified image.
- Color rectified image.
Depth camera
- Camera calibration and metadata.
- Raw image from device. Contains uint16 depths in mm.
- Unrectified depth image. Contains float depths in m.
- Rectified depth image. Contains float depths in m.
- Disparity image (inversely related to depth), for interop with stereo processing nodes.
- XYZ point cloud. If using PCL, subscribe as PointCloud<PointXYZ>.
Registered depth camera (aligned with RGB camera)
See Registration.- Camera calibration and metadata. Same as camera/rgb/camera_info but time-synced to depth images.
- Raw image from device. Contains uint16 depths in mm.
- Unrectified depth image. Contains float depths in m.
- Rectified depth image. Contains float depths in m.
- Disparity image (inversely related to depth), for interop with stereo processing nodes.
- XYZRGB point cloud. If using PCL, subscribe as PointCloud<PointXYZRGB>.
IR camera
- Camera calibration and metadata.
- Raw uint16 IR image.
- Rectified IR image.
IR projector
- Faked calibration for the IR projector. Identical to depth/camera_info, but with the baseline encoded in the P matrix. Stereo processing nodes can use the depth and projector infos as a left/right pair.
Provided tf Transforms
/<camera>_rgb_optical_frame → /<camera>_depth_optical_frame- Default estimate for the transform between the RGB and IR cameras. If OpenNI registration is disabled, this is used with the calibrated camera intrinsics to perform registration.