*********work in progress*******
Image Classification defines the task of classifying image from a fixed set of categories. Object detection and Image segmentation can also be reduced to Image Classification.
In this project, I start by exploring the dataset, gaining useful data insights-which will be used later in the process of modelling, followed by preprocessing which converts the images into valuable inputs for the learning algorithms. Finally the implementation of machine learning techniques for image classification has been explained briefly.
Machine Learning Algorithms used for Image Classification:
K-Nearest Neighbor(KNN), Support Vector machines(SVM), Multi Layer Perceptron(MNP) and Convolutional Neural Networks(CNN).
2. Dataset
The COCO dataset sponsored by Microsoft contains a large scale object detection, segmentation and captioning dataset. This dataset has images, labels and bounding boxes.
COCO defines 91 classes but the data only uses 80 classes and some images don’t have annotations. There are two versions of COCO available. In this project, I picked the 2017 validation dataset which is about 5000 images.
Through COCO API, its been found out that most images have more than one object with annotations for the same or different category. That leads to make use of this property by cropping the objects using the bounding boxes annotation and considering them as independent images in order to overcome the multi classes in the same image problem so we can feed the models with a single class image which makes it easier to classify. As a result, the number of images multiplied more than 20 times as shown in the chart below.