How To: USB Web Cam with ROS Indigo

There’s no clear instructions for how to actually get your usb webcam image in ROS.

Steps:

1. Install usb_cam ros package ($sudo apt-get install ros-indigo-usb-cam)

2. Create a launch file. Visit this link for launch file and instructions.

3. Then $ roslaunch usb_cam-test.launch

8 Comments

  1. P Kishore Kumar said:

    I tried this tutorial with my logitech E2500 quickcam. I am getting the following error.

    [ INFO] [1435745300.104515727]: using default calibration URL
    [ INFO] [1435745300.104758956]: camera calibration URL: file:///home/robotics/.ros/camera_info/head_camera.yaml
    [ INFO] [1435745300.104896909]: Unable to open camera calibration file [/home/robotics/.ros/camera_info/head_camera.yaml]
    [ WARN] [1435745300.104989836]: Camera calibration file /home/robotics/.ros/camera_info/head_camera.yaml not found.
    [ INFO] [1435745300.105081596]: Starting ‘head_camera’ (/dev/video0) at 640×480 via mmap (yuyv) at 30 FPS
    [ INFO] [1435745300.287583635]: Press ‘q’ on the window to stop the node
    [ WARN] [1435745302.024780786]: unknown control ‘white_balance_temperature_auto’

    [ WARN] [1435745302.030843629]: unknown control ‘focus_auto’

    [usb_cam-1] process has died [pid 11268, exit code -11, cmd /opt/ros/indigo/lib/usb_cam/usb_cam_node __name:=usb_cam __log:=/home/robotics/.ros/log/0dbb282a-1fd4-11e5-9a70-00270e30caa5/usb_cam-1.log].
    log file: /home/robotics/.ros/log/0dbb282a-1fd4-11e5-9a70-00270e30caa5/usb_cam-1*.log
    Can you clarify me this error.

    July 1, 2015
    Reply
    • sauravagarwal said:

      If you look at the console log carefully, your camera calibration file is missing. Try calibrating your camera and setting the right path for your calibration (.yml) file. See if that solves your problem. You should also read the full log file (the path at the end of the message).

      July 29, 2015
      Reply
    • Maih said:

      hello,i have the same problem,can you tell me how to solve it?

      October 19, 2016
      Reply
  2. dave said:

    I found this to helped “http://answers.ros.org/question/9098/usb_cam-vidioc_s_fmt-error-22/”.
    I was having issues getting the test to run but once I changed the pixel format from mjpeg to yuyv it was good.

    September 20, 2015
    Reply
    • sauravagarwal said:

      Thanks for sharing the tip Dave 🙂

      September 22, 2015
      Reply
    • Michael Wolfram said:

      This did also work for me! Thanks!

      January 25, 2016
      Reply
  3. soheila said:

    Hi, when I execute roslaunch usb_cam-text.launch my built-in webcam starts working instead of my external working? Why it happens?Moreover, I run cheese my external webcam turns on!!

    July 25, 2016
    Reply
    • sauravagarwal said:

      It probably has something to with your device ID that you put in the launch file. Use lspci / lsusb to see which device your external camera is. Should be something like /dev/videoxx
      You can also use $ v4l2-ctl –list-devices

      July 25, 2016
      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *