What is Computer Vision? A Gentle Introduction (Beginner’s Guide)

Computer Vision for Technology Companies
Contents

Computer Vision Technology is becoming increasingly popular for use by large-scale companies to solve problems that require vision similar to the human eye. In this article, you will learn about:

  1. What is Computer Vision? How it became popular and Use Cases.
  2. List of the Important Computer Vision Fields
  3. What makes Computer Vision complex

What is Computer Vision

Computer Vision is a field of Artificial Intelligence (AI) that deals with techniques to help computers understand and “see” the content of digital images. Computer Vision is often abbreviated as CV.

While the problem of “vision” is trivially solved by humans (even by children), it remains one of the most challenging fields in computer science, especially due to the enormous complexity of the varying physical world. AI vision technology utilizes image processing or deep learning methods to allow computers to classify or analyze objects and their surroundings.

Using computer vision, computers can take in an image of the environment around them and process that image. Analytics such as objects classified within an image, size of objects, and relative distance between them are returned to the user.

How AI Vision Became Popular

Computer Vision came to light in the 1960’s, where computer scientists tried to mimic human eyesight using computing mechanics. As Artificial Intelligence became more prominent in later years, this foundation was used to develop more sophisticated and modern techniques. For example, such techniques include Convolutional Neural Networks.

Despite computer vision being developed at such an early time, it only rose to popularity in the last ten years. When the technology became more easily accessible by programmers of all experience levels, it started being used in a variety of Computer Vision applications. AI vision has been implemented in thousands of computer programs and products since 2010.

Popular Computer Vision Use Cases

Vision systems can be seen in retail analytics, security, automated vehicles, healthcare, agriculture crop and animal monitoring, banking, and industrial technologies. For example, cameras placed in stores can detect when an object has been taken and replaced from the shelf or track the movement patterns of customers (footfall analytics). A popular vision application in healthcare is human fall detection.

As an application of AI that allows computers to recognize and mark pictures, Computer Vision technology is useful in all industries. Any use that requires human eyesight can theoretically be solved using the technology.

 

Computer Vision used in Livestock Farming
Computer Vision used in Livestock Farming for animal monitoring

 

Important Computer Vision Fields

Computer Vision can emulate basic human tasks such as face detection, face recognition or object detection. More complex applications stemming from these basic tasks include detecting infrastructure faults, product maintenance, surveillance, agricultural solutions, routine diagnostics in healthcare, and more. The tech is meant to let machines “see” like a human, but implement that input with advanced computing power.  The following are outlined as the major components of computer vision which are vastly being used today.

1.) Image Classification

Image classification forms the fundamental building block of Computer Vision. Computer Vision engineers often start with training a Neural Network to identify different objects in an image (object detection). Training a network to identify the difference between two objects in an image implies building a binary classification model. On the other hand, if it is more than two objects in an image, then it is a multi-classification problem.

It is important to note that to successfully build any image classification model that can scale or be used in production, the model has to learn from enough data. Transfer learning is an image classification technique that leverages the use of existing architectures that have been trained to learn enough from huge data samples. The learned feature or task is then utilized to identify similar samples. Another term for this is knowledge transfer.

With the idea of transfer learning, Computer Vision engineers have been able to build scalable solutions in the business world, with a small amount of data. Existing architectures for image classification include ResNet-50, ResNet-100, ImageNet, AlexNet, VggNet and more.

2.) Image Processing

Image processing is a key aspect of vision systems because it deals with transforming images in order to extract certain information. Basic image processing techniques include smoothing, sharpening, contrasting, denoising or colorization.

Image preprocessing is used to remove unnecessary information and help the AI model to learn the features of the images effectively. The goal is to improve the image features by eliminating unwanted falsification and achieve better classification performances.

A common application of image processing is super-resolution. This technique typically transforms low-resolution images into high-resolution images. Super-resolution is a major challenge most computer vision engineers encounter because they often get the model information from images of low quality.

3.) Character Recognition

Optical character recognition or optical character reader (OCR) is a Computer Vision technique that converts any kind of written or printed text from an image into a machine-readable format.

Existing architectures for OCR extractions include EasyOCR, Python-tesseract or Keras-OCR. This technology is widespread and used for Number Plate Recognition as an example.

4.) Image Segmentation

While image classification aims to identify the labels of different objects in an image, instance segmentation tries to find the exact boundary of the objects in the image.

There are two types of image segmentation techniques: Instance segmentation and semantic segmentation. Instance segmentation differs from semantic segmentation in the sense that it returns a unique label to every instance of a particular object in the image.

5.) Object Detection

This aspect of computer vision deals with detecting an object in an image and then tracking the object through a series of frames.

Object Detection is often applied to video streams, whereby the user is trying to track multiple objects at the same time with unique identities. Popular architectures of object detection include YOLO, R-CNN, or MobileNet.

6.) Pose Estimation

Pose Estimation makes computers understand the human pose. Popular architectures around Pose Estimation include PoseNet, DensePose or MeTRAbs. These have been applied to solve real-world problems like for example crime detection via poses.

What makes AI vision complex?

Rather than discern and process the world in images and objects (like humans do), machines see through numbers that represent individual pixels. Given the plethora of data that can be pulled from an image, visual AI needs to learn how to process all of it in order to perform complex visual tasks. Read more about why computer vision is difficult to implement).

To respond to different conditions as humans would, systems that implement computer vision need immense, various amounts of data. For example, in order for an automated vehicle to drive safely, it would need to understand the typical behavior of a cyclist, pedestrian, etc., and act appropriately; however, this behavior can vary depending on the individual.

What’s Next?

Computer vision is an imperative aspect of companies using AI today. If you enjoyed this article, we suggest you read more about the topic:

Share on linkedin
Share on twitter
Share on whatsapp
Share on facebook
Share on email
Related Articles

Want to use Computer Vision applications?

Get the all-in-one Suite to build and deliver Computer Vision Applications. 
Learn more

This website uses cookies. By continuing to browse this site, you agree to this use.