background preloader

ROS

Facebook Twitter

General tutorials

ROS workshop. Related Pages: In these series of tutorials, we introduce the Robot Operating System (ROS) an open-source meta-operating system for programming your favorite robot in C++, Python and Matlab.

ROS workshop

Essential concepts, rules and tricks will be shown. For hands-on, participants will experience writing simple example codes, calling useful functions and compiling them within the ROS environment. Codes can be tested directly on the UMD-CVL Erratic robot platform. Pre-requisites ¶ Threaded listener. Package. Sound. Stack: audio_common. Play a sound file in a python node. Concepts. ROS has three levels of concepts: the Filesystem level, the Computation Graph level, and the Community level.

Concepts

These levels and concepts are summarized below and later sections go into each of these in greater detail. In addition to the three levels of concepts, ROS also defines two types of names -- Package Resource Names and Graph Resource Names -- which are discussed below. Note: since ROS Groovy these wiki pages describe concepts as they relate to the new catkin buildsystem.

For older versions of ROS or when using the rosbuild buildsystem, see: rosbuild/ROS/Concepts ROS Filesystem Level The filesystem level concepts mainly cover ROS resources that you encounter on disk, such as:

OpenCV

Installation ubuntu. OpenCV 2.4 on Ubuntu 12.04. Edit (August 2013): Just used these steps to install OpenCV 2.4.6.1 on Ubuntu 12.10 without problems.

OpenCV 2.4 on Ubuntu 12.04

OpenCV 2.4.0 was released on May 2012 providing, a lot of improvements and bug fixes. For a complete change log see here. This post will hopefully make your life easier to configure, compile, install and test it out. This time I tried to categorize and explain the dependencies, so that it is easier to configure it for your needs.

As always, comments and suggestions are welcome. How to create a binary image mat? Boundary extraction + region filling. This entry is part 2 of 5 in the series Practical uses of image morphology In the first article of this series, we looked at how basic image morphology operations –erosion, dilation, and hit-or-miss transform– can have many practical uses. In this post, we are going to explore the first two practical uses: boundary extraction & region filling. Boundary extraction Given an image A, we can obtain the boundary of the foreground object with: Where B is the structuring element of 1′s.

Cv::Mat src = cv::imread("image.png", 0); if (! How to detect simple geometric shapes using OpenCV. Background subtraction. Background subtraction (BS) is a common and widely used technique for generating a foreground mask (namely, a binary image containing the pixels belonging to moving objects in the scene) by using static cameras.As the name suggests, BS calculates the foreground mask performing a subtraction between the current frame and a background model, containing the static part of the scene or, more in general, everything that can be considered as background given the characteristics of the observed scene.

background subtraction

Background modeling consists of two main steps:Background Initialization;Background Update.In the first step, an initial model of the background is computed, while in the second step that model is updated in order to adapt to possible changes in the scene.In this tutorial we will learn how to perform BS by using OpenCV. As input, we will use data coming from the publicly available data set Background Models Challenge (BMC) .

Goals. Objective c - OpenCV C++/Obj-C: Proper object detection. Color Detection & Object Tracking. Object detection and segmentation is the most important and challenging fundamental task of computer vision.

Color Detection & Object Tracking

It is a critical part in many applications such as image search, scene understanding, etc. However it is still an open problem due to the variety and complexity of object classes and backgrounds.The easiest way to detect and segment an object from an image is the color based methods . The object and the background should have a significant color difference in order to successfully segment objects using color based methods. Simple Example of Detecting a Red Object In this example, I am going to process a video with a red color object and create a binary video by thresholding the red color. You can download this OpenCV visual c++ project from here. Explanation OpenCV usually captures images and videos in 8-bit, unsigned integer, BGR format. Usually, one can think that BGR color space is more suitable for color based segmentation. Arguments - Simple Example of Tracking Red objects. Tutorial: Background detection with OpenCV « Mateusz Stankiewicz. UPDATE: This tutorial is written for OpenCV 2.3 and as one of the commenters pointed out, from OpenCV 2.4 the nmixtures are protected instead of public, so you might have to set the values for nmixtures and bShadowDetection using the constructor.

Tutorial: Background detection with OpenCV « Mateusz Stankiewicz

This is a first post from what hopefully will become series of tutorials so stay tuned. Those tutorials aren't exactly intended for complete beginners, although I try to explain as much things as possible. I presume that you have at least basic grasp of C++ and have already configured OpenCV. Harris corner detector. Goal In this tutorial you will learn: What features are and why they are importantUse the function cornerHarris to detect corners using the Harris-Stephens method.

Harris corner detector

Theory What is a feature? In computer vision, usually we need to find matching points between different frames of an environment. Types of Image Features. [OpenCV] Corner Detection. Stack: vision_opencv. Image_geometry. Electric: Documentation generated on Unknownfuerte: Documentation generated on December 28, 2013 at 05:53 PMgroovy: Documentation generated on April 24, 2014 at 04:07 PM (job status).hydro: Documentation generated on April 23, 2014 at 11:09 AM (job status).indigo: Documentation generated on April 24, 2014 at 04:52 PM (job status).

image_geometry

No API documentation `image_geometry` contains C++ and Python libraries for interpreting images geometrically. It interfaces the calibration parameters in sensor_msgs/CameraInfo messages with OpenCV functions such as image rectification, much as cv_bridge interfaces ROS sensor_msgs/Image with OpenCV data types. Cv_bridge. Ubuntu, Eclipse, OpenCV.

MPEG-7 feature description

ROS ANSWERS. ROS & opencv. Openni_kinect asked Apr 22 '11 Hello all, I am new to ROS and I would like to know how to subscribe to a topic and save the data in python.

ROS & opencv

I understand how to log data using rosbag or to echo the data on the topic, but I do not know how to save the data to a variable. I am trying to modify the tutorial code to simply display the raw data. #! ROS: kinect & opencv & pcl. Stacks. Object recognition stack. Papers. IROS2012-Hands-on-1. ROS and Kinect- Ubuntu Installation. ROS- Installation 1.0 Install ROS 1.1 check/add repositories 1.2 Setup your sources.list For Ubuntu 10.10 (Maverick) sudo sh -c ‘echo “deb maverick main” > /etc/apt/sources.list.d/ros-latest.list’ 1.3 Set up your keys wget -O – | sudo apt-key add -

ROS and Kinect- Ubuntu Installation

Kinect drivers

Freenect stack. Freenect_camera. Electric: Cannot load information on name: freenect_camera, distro: electric, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.fuerte: Documentation generated on May 01, 2013 at 10:40 AMgroovy: Documentation generated on April 23, 2014 at 10:11 AM (job status).hydro: Documentation generated on April 22, 2014 at 08:20 PM (job status).indigo: Cannot load information on name: freenect_camera, distro: indigo, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index. Cannot load information on name: freenect_camera, distro: electric, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index. freenect_stack Released Continuous integration Documented A libfreenect based ROS driver for the Microsoft Kinect.

New in Fuerte Overview. Openni_kinect. Electric: Documentation generated on March 01, 2013 at 04:19 PMfuerte: Documentation generated on August 19, 2013 at 10:41 AMgroovy: Cannot load information on name: openni_kinect, distro: groovy, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.hydro: Cannot load information on name: openni_kinect, distro: hydro, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.indigo: Cannot load information on name: openni_kinect, distro: indigo, which means that it is not yet in our index.

Please see this page for information on how to submit your repository to our index. Cannot load information on name: openni_kinect, distro: groovy, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index. Overview Installation.

Openni_launch

Openni Quickstart (visualization etc.) Quick start guide Description: Begin here. This tutorial demonstrates how to open a Kinect (or other OpenNI device) in ROS, introduces ROS tools for visualization and configuration, and explains how to get registered (depth + RGB) outputs like color point clouds. ROS:kinect calibration. Description: Technical aspects of the Kinect device and its calibration.