Introduction to Computer Vision

computer vision
 

Do you ever think, how Facebook can automatically tag your friend when you upload an image, how your smart phone can recognize you, using it's very advanced and accurate Face recognition feature. Have you ever thought how a picture is processed by computer, how a picture  is stored in computer etc. These are very few examples, many more will be discussed as we go on, of Computer Vision. Well, In this post we are going to discuss about Computer Vision. So let's get started.

What is Computer Vision?

Computer Vision is a interdisciplinary field that helps computer to make high-level understanding from digital images and videos to automate the task that human visuals do.

It use some techniques  by which computer can understand many useful information from an image and perform some action based on that information. We see an image and our brain can understand the message, delivered by the image. Machines do exactly the same thing.

Various applications of Computer Vision

The concept of computer vision was first introduced in the 1970s.  computer vision plays a crucial role in the advancement of technologies, especially AI. The applications of computer vision, in particular, are very versatile and never-ending. Some of the domain where it is extensively used are -

  • Event Detection

We are surrounded by CCTV camera in office, school, college, airport, in short everywhere. It is difficult to monitor manually everything. Computer vision allows us to monitor and detect anomalies or any specific actionsAutomatic number plate detection and recognition ( ANPR ) is one of the example of  Event detection.

  • Industrial automation

 Manual inspection of objects in industry is very monotonous. Automatic object inspection is also an important role of Computer Vision. It can separates the objects in various categories like objects are labeled or not and if not then reject the object etc. 

  • Medical image processing

The use of computer vision to process the medical imaging data has brought a huge change in medical science. It helps to predict, diagnosis, and treatment efficiently. For example,  detection of tumors, measurement of organ size, blood flow rate, processing X-ray image etc.

  • Self driving vehicles

Artificial intelligence is one of the trending technologies now-a-days. Companies are investing a huge amount of money in self-driving technologies. Computer Vision techniques along with sensor data, are used to make the decision that needs to be taken on presence of obstacles, traffic light etc.

  • Military application

The military is probably one of the largest areas for computer vision. More advanced systems for missile guidance are developed to make dynamic decisions based on the information provided by various sensors including image sensors. Modern military concepts are emerging like “Battlefield awareness” in which strategic decisions are made after analyzing the information provided by sensors, detecting enemy soldiers or vehicles.

  • Agricultural equipment

In agriculture, a AI robots can can help to perform various tasks like planting, weeding, harvesting and plant health detection. To know more on this please go through this post.


Difference Between Computer Vision and Image Processing

Image processing, a subset of Computer vision,  a process by which we can extract information from image. Scaling, Resizing, Cropping, Merging two or more images are some basic image processing techniques. On the other hand Computer Vision deals with real time digital images and videos. It use various Image processing algorithms, along with deep learning techniques, and make a decision based on that. The ultimate goal of Computer Vision to help  computer to imitate human vision, think like human and take actions accordingly. 
relationship between computer vision with Image processing
Relationship between Computer Vision and AI

AI ( Artificial Intelligence ) helps machines to imitate human nature, think like human, and work based on the previous results. Computer vision helps machines to imitate human vision and take decision based on the output of very complex algorithms, like human brain works. AI robots can detect objects ( Object detection ), measure distance between two objects ( Distance measurement ), speed and acceleration of object, and many more which human can not do only just by visualizing. From the image, we can see that Language processing and speech recognition are also a dominant field of AI where machines can talk and listen to others like human. 
subsets of Artificial intelligence
Projects on Computer Vision

We can use Computer vision in various projects. such as-

  • Color detection

In this project the main goal is to detect color in an image. This helps to edit the image after recognizing the color and the segment where it is present. One popular project is INVISIBLE CLOAK on color detection. I have written each and every steps to do. please go through this post

Invisible cloak

  • Edge detection, object detection

It is a very useful to detect the edges i.e. boundaries of an object in an image. It work by detecting  discontinuities in brightness in an image. There are many algorithms that detect the edges of an object. Some of the most popular edge detection algorithms are - canny, fuzzy logic method etc. This is used to detect the objects present in image.

object detection

  • Face detection and recognition, Facial emotion detection

This is a very common project to detect the face of a human and then recognize it from the database. Like this one, facial emotion like angry, love, joy, fear, surprise are very common emotions to be detected.

  • Object tracking, people counting, vehicle counting, Path prediction

People counting, vehicle counting are very interesting projects. But for both, The main thing is to track the object in the image. By tracking the object we can count them, predict the next position of the object (Path prediction). These are some use case of object tracking.

  • Dimension measurement of a object
Dimension measurement is also very cool project by which we can measure the dimension (height and  width) using perspective transformation. It can measure dimension of simple object only. But we can measure dimension of complex object also by adding some advanced concept also. I have also done this, if you are interested in, then comment down "YES" in the comment section.

Dimension measurement

       Dimension measurement

  • Image Segmentation

Image segmentation is an essential technology for image processing. This technique can be applied for computer graphics, synthesis of objects, etc. The purpose of this project is to design, implement and test on several regions on a set of images based on the segmentation algorithms.

  • Image classification

This project is used to classify images where a set of target classes is pre-defined. It is a supervised learning problem where a model is trained to identify the classes using labelled images. We can make facial mask recognition system which will recognize the masked faced or not, Hand written digit classifier is also an example of image classification. I have also done this, if you are interested in, then comment down "YES" in the comment section.

Hand written digit classification
Hand-written digit classifier

  • Perspective transformation image

When human eyes see near things they look bigger as compare to those who are far away. This is called perspective in a general way. Whereas transformation is the transfer of an object from one state to another. So overall, the perspective transformation deals with the conversion of 3d world into 2d imageThis is also a very interesting project where a segment of image will be transformed to an another image. I have also done this, if you are interested in, then comment down "YES" in the comment section.

Perspective transformation of image
Input image
Perspective transformation of image
output image

  • Distance measurement 

The main idea is to measure the distances between all the objects. We can make a social distancing checker tool using this distance measurement concept. I have also done this, if you are interested in, then comment down "YES" in the comment section.
social distancing checker
Based on the min-distance the 'red' dot will appear - Maintain Social distancing

Conclusion

In this post we have learnt what is computer vision, Image processing, some applications of computer vision, some projects on computer vision.

Comments

Popular posts from this blog

Distance measurement using opencv

Object Detection (Part I)

Invisible Cloak using OpenCV