Computer Vision for Robotics

This guide is for implementing Computer Vision in the robotics . If you have been involve in th robotics and to uplift your skill or make robot intelligence , this course can be beneficial for you .

All the code are found at : Github .

Syllabus

Computer Vision for Robotics steps

This Course syllabus is designed as follows :

(adsbygoogle = window.adsbygoogle || []).push({});
  1. Image Acquisition:

    Getting images form various source such as camera , video or images . Creating blank images and saving it for future usage

  2. Image Representation:

    Represent Images in a suitable data format so , it can be processed easily . Mostly it is represented as n-d array using numPY .

  3. Basic Operation:

    Modifying Images for displaying different effects which are done in Image editing software . Changing color scheme , Bluring, smoothing and generating shapes

  4. Detection:

    • Color Detection
    • Contour Detection
    • Line Detection
    • Corner Detection
    • Face Recognization
    • Sub Image Detection
    • Feature Detection
    • Object Detection
  5. Object Tracking:

    Track object using Optical Flow , CamShift and meanShift

  6. Robot Vision:

    This control the motion of robot based on the basic object detection

    • Line Following
    • Lane Detection and Tracking

DISCLAIMER

This Computer Vision for Robotics course is a getting start with computer vision in robotics so , we can develop more intelligence machine to assist human race in future.

I hope to collaborate with you

Santosh Dahal

Requirement and Resource

This guide requires basic understanding of python . You can check yourself at learn python programming for robotics

All the code are found at : Github .

Getting started

1. Download Code

Download or clone the GitHub repository Download .

If you downloaded the zipped version, unzip the directory somewhere you can access it.

2. Installing python

This simulator work with python 2.7.X.

Linux, BSD and Unix users

You are probably lucky and Python is already installed on your machine. To test it type python on a command line.

If you have to install Python, just use the operating system's package manager or go to the repository where your packages are available and get Python.

Windows users

Python doesn’t come prepackaged with Windows.

  1. Go to Python Download page .
(adsbygoogle = window.adsbygoogle || []).push({});
  1. Download python 2.7.x version
  2. Double-click the icon labeling the file python-2.7.x.exe.

3. Running code

In order to run code , Just move to code directory and type

python filename.py
1

What is Computer Vision

Computer vision is the science of machines, robots, computer systems, and artificial intelligence analyzing images, recognizing objects, and acting accordingly.

In simple terms , In computer vision we extract data from images , videos, and high dimensional data and we make decision based on these data.

It is closely related to

  1. Physic
  2. Mathematics
  3. Signal Processing
  4. Machine Vision
  5. Data Science
  6. Machine Learning
  7. Artificial Intelligence
  8. Robotics

Steps Involved in Computer Vision for Robotics

Manual Process

Computer Vision for Robotics steps

Deep Learning Process

(adsbygoogle = window.adsbygoogle || []).push({});

Basic Terms

Python

Python is an interpreted high-level programming language for general-purpose programming. Created by Guido van Rossum and first released in 1991, Python has a design philosophy that emphasizes code readability, notably using significant whitespace.

PIP

pip is a package management system used to install and manage software packages written in Python. Many packages can be found in the default source for packages and their dependencies — Python Package Index. Python 2.7.9 and later, and Python 3.4 and later include pip by default

Colorspaces

A color space is a specific organization of colors. In combination with physical device profiling, it allows for reproducible representations of color, in both analog and digital representations.

Thresholding

Thresholding is the simplest method of image segmentation. From a grayscale image, thresholding can be used to create binary images.

Image processing

The analysis and manipulation of a digitized image, especially in order to improve its quality.

Gray-scale

In digital photography, computer-generated imagery, and colorimetry, a grayscale or greyscale image is one in which the value of each pixel is a single sample representing only an amount of light, that is, it carries only intensity information.

Binary image

Binary image is a digital image that has only two possible values for each pixel. Typically, the two colors used for a binary image are black and white. The color used for the object in the image is the foreground color while the rest of the image is the background color.

Optical Flow

Optical flow or optic flow is the pattern of apparent motion of objects, surfaces, and edges in a visual scene caused by the relative motion between an observer and a scene. Optical flow can also be defined as the distribution of apparent velocities of movement of brightness pattern in an image.