Object detection is a computer vision technique for labeling what is seen in images or videos. The labels assigned to images are also given a level of confidence so that downstream processing can make decisions based on those labels. The algorithms used for classification typically use machine learning or deep learning techniques to produce meaningful results.
Some of the challenges in image classification are:
- changes in the orientation of the images;
- changes in the scale of the images;
- small or large variations within a class;
- parts of the image being hidden other less important objects;
- lighting conditions; and
- clutter and noise in the image background or scene.
An example of image classification would be classifying the emotions of customers in a retail setting. An object detection algorithm is first used to find people’s faces in a camera’s field of view. The detected faces define a region of interest that is based to the algorithm for classifying the emotion being expressed.
Another popular use case for image classification is an automatic organization of images. In this use case as a user classifies and organizes their images. An algorithm learns the different labels (classes) used to organize the images, called a training dataset. That way, when new images arrive they can automatically be organized without user intervention.