Vipul Jain

@jnvipul

Image Recognition Vs Object Detection — The Difference

“AI is one of the most important things humanity is working on. It is more profound than, I dunno, electricity or fire” — Sundar Pichai, CEO Google
“I visualise a time when we will be to robots what dogs are to humans, and I’m rooting for the machines.” — Claude Shannon
“There is no reason and no way that a human mind can keep up with an artificial intelligence machine by 2035.” — Gray Scott
Enough has been said about the fact that we are moving towards an age of AI; it could be a blessing or an evil. Nobody knows; but what we know is that it will be thrilling for sure!

AI is a considerably massive field. Today we will try to understand an application of Deep Learning; which is a kind of Machine Learning, which is in turn a kind of Artificial Intelligence(just look at the picture below)

In recent years, with the extensive on-going research, generation of massive data sets and availability of massive computing power, Deep Learning has become one of most exciting fields of this era.

Lets have a look at one of the foremost and supreme applications of Deep Learning which at the forefront of innovation and technology.

Image Recognition and Object Detection

Image Recognition is at the sweet intersection b/w Deep Learning and Computer Vision.

I have seen a lot of people using these two terms interchangeably. Well, its not the same thing. Lets see what the difference is! :)

Image Recognition(also called Image Classification)

This is the process of taking an image as input and outputting a class label out of a set of classes.
Input — An Image
Output — A class label to which the image belongs

For instance, we have 3 class labels — { Lion, Lion, Laptop, Pen, Phone}

Now if we give an image to the algorithm, it will tell if that image is a Lion, a Lion, a Laptop or Nothing.

Input

Output - Laptop

Image Classification with Localization

This process takes an image as input, outputs a class label and also draws a bounding box around the object to locate it in the image
Input — An Image
Output — A class label + A bounding box

Example-:

Input
Output

As you can see, with localization we also know the location of object within the image.

Object Detection

In this process, Image localization has to be applied on all the objects in the Image, which results in multiple bounding boxes
Input — An Image
Output — Class labels + Bounding boxes for all the objects

These objects could belong to different classes(obviously it will only determine the classes on which the model is trained)

Example -:

Input
Output

This is how a typical result of object detection looks like. You can see that it has identified a Pen, and a Phone along with the Laptop.

Now we know the difference between Image Recognition, Image Localization and Object Detection, lets take a look at the applications :)

Applications

One of the application of Object Detection is Self Driving Cars — undoubtedly one of the hottest innovation of the century.

Some other applications are -:

  • Face Detection
  • Pedestrian detection
  • Automating Checkouts in stores like Amazon Go

So where do we go next? Now we know what these techniques are, next we can look at how can we build a simple model for Object Detection.

Stay Tuned!

If you like and understood the article, hit the clap icon 👏.

More by Vipul Jain

Topics of interest

More Related Stories