Revision 6 as of 2012-02-21 01:34:01

Clear message

This experimental package is available from http://github.com/ktossell/libuvc_ros/.

  Show EOL distros: 

libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

  • Maintainer status: developed
  • Maintainer: Ken Tossell <ken AT tossell DOT net>, ROS Orphaned Package Maintainers <ros-orphaned-packages AT googlegroups DOT com>
  • Author:
  • License: BSD
  • Source: git https://github.com/ktossell/libuvc_ros.git (branch: master)
libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

  • Maintainer status: unmaintained
  • Maintainer: Ken Tossell <ken AT tossell DOT net>, ROS Orphaned Package Maintainers <ros-orphaned-packages AT googlegroups DOT com>
  • Author:
  • License: BSD
  • Source: git https://github.com/ros-drivers/libuvc_ros.git (branch: master)
libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

  • Maintainer status: unmaintained
  • Maintainer: Ken Tossell <ken AT tossell DOT net>, ROS Orphaned Package Maintainers <ros-orphaned-packages AT googlegroups DOT com>
  • Author:
  • License: BSD
  • Source: git https://github.com/ros-drivers/libuvc_ros.git (branch: master)
libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

  • Maintainer status: unmaintained
  • Maintainer: Ken Tossell <ken AT tossell DOT net>, ROS Orphaned Package Maintainers <ros-orphaned-packages AT googlegroups DOT com>
  • Author:
  • License: BSD
  • Source: git https://github.com/ros-drivers/libuvc_ros.git (branch: master)
libuvc_ros: libuvc_camera

Package Summary

USB Video Class camera driver

  • Maintainer status: unmaintained
  • Maintainer: Ken Tossell <ken AT tossell DOT net>, ROS Orphaned Package Maintainers <ros-orphaned-packages AT googlegroups DOT com>
  • Author:
  • License: BSD
  • Source: git https://github.com/ros-drivers/libuvc_ros.git (branch: master)

Overview

This package provides a ROS interface for digital cameras meeting the USB Video Class standard using libuvc.

Road Map

libuvc_camera and libuvc are under heavy development. A stable release is expected at some point in the Fuerte release cycle.

Limitations

Controls manipulation is incomplete. There is no support for UVC extension units, which are sometimes used to implement behavior such as pan-tilt and zoom.

Features

Current features include:

HOWTO

Under Linux, the user that runs camera_node must have write permissions to the /dev/bus/usb/... device that corresponds to the camera. You may run the node as root:

$ sudo -E rosrun libuvc_camera camera_node vendor:=...

However, use of udev rules is recommended. In /etc/udev/rules.d/99-uvc.rules, to give every user camera access:

# UVC cameras
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", SYSFS{idVendor}=="046d", SYSFS{idProduct}=="08cc", MODE="0666"
# ^ Change the vendor and product IDs to match your camera.

To give only one user access:

# UVC cameras
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", SYSFS{idVendor}=="046d", SYSFS{idProduct}=="08cc", OWNER="myuser"
# ^ Change the owner and the vendor and product IDs to match your camera.

Alternatively, set GROUP="mygroup" to grant access for any user in that group.

These settings will be applied the next time the camera is connected.

ROS API

camera_node

UVC webcam driver.

Published Topics

image_raw (sensor_msgs/Image)
  • A stream of images from the camera.
camera_info (sensor_msgs/CameraInfo)
  • Camera intrinsics for images published on camera/image_raw with matching time stamps and frame IDs. If CameraInfo calibration is not available or is incompatible with the current video_mode, uncalibrated data will be provided instead.

Services

set_camera_info (sensor_msgs/SetCameraInfo)
  • Set the camera's calibration.

Parameters

Dynamically Reconfigurable Parameters
See the dynamic_reconfigure package for details on dynamically reconfigurable parameters.
~vendor (str, default: )
  • Vendor ID, hex digits (use camera of any vendor if null).
~product (str, default: )
  • Product ID, hex digits (use camera of any model if null).
~serial (str, default: )
  • Serial number, arbitrary string (use camera of any serial number if null).
~index (int, default: 0)
  • Index into the list of cameras that match the above parameters. Range: 0 to 2147483647
~width (int, default: 640)
  • Image width. Range: 0 to 2147483647
~height (int, default: 480)
  • Image height. Range: 0 to 2147483647
~video_mode (str, default: uncompressed)
  • Format of video stream from camera. Possible values are: uncompressed (uncompressed): Use any uncompressed format, yuyv (yuyv): YUYV, uyvy (uyvy): UYVY, rgb (rgb): RGB, jpeg (jpeg): JPEG/MJPEG
~frame_rate (double, default: 15.0)
  • Camera speed, frames per second. Range: 0.1 to 1000.0
~timestamp_method (str, default: start)
  • Method for determining the timestamp. Possible values are: PubTime (pub): Time of publication, FrameStartTime (start): Time when raw frame capture began, FrameStopTime (stop): Time when raw frame capture ended, HostReceiptTime (hostrcpt): Time when camera-to-host transfer completed
~frame_id (str, default: camera)
  • ROS tf frame of reference, resolved with tf_prefix unless absolute.
~camera_info_url (str, default: )
  • Path to camera calibration file.
~scanning_mode (int, default: 0)
  • Scanning mode. Possible values are: Interlaced (0): , Progressive (1):
~auto_exposure (int, default: 1)
  • Auto exposure mode. Possible values are: Manual (0): Manual exposure, manual iris, Auto (1): Auto exposure, auto iris, Shutter_Priority (2): manual exposure, auto iris, Aperture_Priority (3): auto exposure, manual iris
~auto_exposure_priority (int, default: 0)
  • In auto mode or shutter priority mode, allow the device to vary frame rate. Range: 0 to 1
~exposure_absolute (double, default: 0.0)
  • Length of exposure, seconds. Range: 0.0001 to 10.0
~iris_absolute (double, default: 0.0)
  • Aperture, f. Range: 0.0 to 655.35
~auto_focus (bool, default: False)
  • Maintain focus automatically.
~focus_absolute (int, default: 0)
  • Absolute focal distance, millimeters. Range: 0 to 65536
~pan_absolute (int, default: 0)
  • Pan (clockwise), arc seconds. Range: -648000 to 648000
~tilt_absolute (int, default: 0)
  • Tilt (up), arc seconds. Range: -648000 to 648000
~roll_absolute (int, default: 0)
  • Roll (clockwise), degrees. Range: -180 to 180
~privacy (bool, default: False)
  • Image capture disabled.
~backlight_compensation (int, default: 0)
  • Backlight compensation, device-dependent (zero for none, increasing compensation above zero). Range: 0 to 65536
~brightness (int, default: 0)
  • Brightness, device dependent. Range: -32768 to 32767
~contrast (int, default: 0)
  • Contrast, device dependent. Range: -32768 to 32767
~gain (int, default: 0)
  • Gain, device dependent. Range: 0 to 65536
~power_line_frequency (int, default: 0)
  • Power line frequency anti-flicker processing. Possible values are: Disabled (0): Disabled, Freq_50 (1): 50 Hz, Freq_60 (1): 60 Hz
~auto_hue (bool, default: False)
  • Automatic hue control.
~hue (double, default: 0.0)
  • Hue, degrees. Range: -180.0 to 180.0
~saturation (int, default: 0)
  • Saturation, device dependent (zero for grayscale). Range: 0 to 65536
~sharpness (int, default: 0)
  • Image sharpness, device dependent. Range: 0 to 65536
~gamma (double, default: 1.0)
  • Gamma. Range: 0.01 to 5.0
~auto_white_balance (bool, default: False)
  • Automatic white balance.
~white_balance_temperature (int, default: 0)
  • White balance temperature, degrees. Range: 0 to 65536
~white_balance_BU (double, default: 0.0)
  • Blue or U component of white balance, device-dependent. Range: 0.0 to 65536.0
~white_balance_RV (double, default: 0.0)
  • Red or V component of white balance, device-dependent. Range: 0.0 to 65536.0