Computer Vision in Robotics

Computer Vision in Robotics

by Bharath Kumar P. Last updated on 11/Oct/2021

Posted on 11/Oct/2021

Computer vision is the capability of a computer to perceive the environment. One or more video cameras are used with analog-to-digital conversion and digital signal processing. The image data is sent to a computer or robot controller.

Computer vision is usually linked with a computer's ability to see. The term, computer vision, is used to designate the technology in which a computer digitizes an image, processes the data, and takes some type of action.

A Computer vision system uses a sensor in the robot for viewing and recognizing an object with the help of a computer. Computer vision is used in a variety of industrial processes, such as material inspection, object recognition, pattern recognition, electronic component analysis, along with the recognition of signatures, optical characters, and currency.

Vehicle detection:

Vehicle detection processes on roads are used for vehicle tracking, counts, the average speed of each individual vehicle, traffic analysis, and vehicle categorizing objectives and may be implemented under different environmental changes.

HOG features extraction for learning:

HOG or Histogram of Oriented Gradients is a technique that maps all the locations of the gradients (change in color or luminosity) in a picture, as well as their orientation.

No alt text provided for this image

Image Credits:?nrsyed

Spatial binning:

Spatial binning discretizes the location values into a small number of groups associated with geographical areas. This allows us to filter out some of the noise and only retain the most important features of the car while making the algorithm run faster as the resulting images are smaller.

No alt text provided for this image

Image Credits:?medium

No alt text provided for this image

Image Credits:?Github

Color channel histograms:

This will give us pixel intensity for each image, allowing us to use the common car colors as a feature for recognition.

No alt text provided for this image

Image Credits:?medium

Training a classifier:

We start by reading in all the vehicle and non-vehicle images. Here is an example of one of each of the vehicle and non-vehicle classes:

No alt text provided for this image

Image Credits:?medium

Then, we build a function to extract the spatial binning, the color histogram, and the HOG for a list of images. The final vectors are the concatenation of the three pieces: spatial binning, color, and HOG. Next, we train a machine learning model to detect if an image contains a car or not.

Image Credits:?medium

Robotic arms pick and place of objects:

An intelligent robot is expected to not only be able to perceive the environment, but also interact with the environment. Among all these abilities, object grasping is fundamental and significant in that it will bring enormous productivity to society. For example, an industrial robot can accomplish the pick-and-bin task which is laborious for human laborers, and a domestic robot is able to provide assistance to disabled people in their daily grasping tasks.

In order to accomplish the robotic grasping task, a robot needs to perceive the objects first. With the development of sensor devices, robots nowadays are equipped with RGB cameras as well as depth cameras to capture the rich information of the environment. However, raw RGB-D images are simple grids of numbers to the robot, where high-level semantic information should be extracted to enable vision-based perception. The high-level information of the target object to grasp usually contains the location, the orientations, and the grasp positions. The grasp planning is then computed to execute the physical grasp.

No alt text provided for this image

Image Credits:?Github

Object Segmentation:

In digital image processing and computer vision, image segmentation is the process of partitioning a digital image into multiple segments. The goal of segmentation is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze. Image segmentation is typically used to locate objects and boundaries (lines, curves, etc.) in images. More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain characteristics.

No alt text provided for this image

Image Credits:?mdpi

Object Classification:

Object detection is a computer technology related to computer vision and image processing that deals with detecting instances of semantic objects of a certain class (such as humans, buildings, or cars) in digital images and videos. Object classification is performed using CNN. CNN's are able to learn how to extract features from images effectively for image classification.

Image Credits:?YouTube

The detailed approach to machine learning for mechanical engineers is taught in this course by the Decibels lab.

The detailed approach for building robots using python and ROS is taught in this course by the Decibels lab.


References:


要查看或添加评论,请登录

Decibels Lab的更多文章