Giter VIP home page Giter VIP logo

mjpeg_cam's Introduction

mjpeg_cam

Overview

This package captures MJPEG video stream from usb cameras. Unlike the usb_cam package, this driver copies the JPEG data to the CompressedImage message directly. There is no extra overhead from decoding and re-encoding the image. So, only compressed images are published. This driver is suitable for applications where the images are captured by a low power device (e.g. the Raspberry Pi) and sent to a remote node for further processing.

Installation

Building from Source

Dependencies

  • Robot Operating System (ROS) (middleware for robotics),
  • libv4l-dev (for accessing the usb camera)
    sudo apt-get install libv4l-dev
    
  • v4l-utils (for changing camera settings)
    sudo apt-get install v4l-utils
    

Building

To build from source, clone the latest version from this repository into your catkin workspace and compile the package using catkin_make.

Usage

Run the main node with

roslaunch mjpeg_cam mjpeg_cam_run.launch

Nodes

mjpeg_cam

Captures video stream from a usb camera and publishes the images.

Published Topics

  • image/compressed (sensor_msgs/CompressedImage, default: "/mjpeg_cam/image/compressed')

Parameters

  • device_name (string, default: "/dev/video0")

    The name of the usb camera device.

  • width (int, default: 640)

    The width of the image.

  • height (int, default: 480)

    The height of the image.

  • framerate (int, default: 30)

    The framerate of the video.

  • exposure (int, default: 128)

    The exposure of the camera.

  • brightness (int, default: 128)

    The brightness of the image.

  • autoexposure (bool, default: true)

    Turns auto exposure on/off.

The exposure, brightness, and autoexposure settings are dynamically reconfigurable. Simply run rosrun rqt_reconfigure rqt_reconfigure and select the node name (default: "mjpeg_cam") to access these settings.

mjpeg_cam's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.