Image dataset comes with large number of pixels, also can be called as a parameters in langauge of machine learning. while working with ML models for image dataset,often it is the case where you will have less data available to train models that generalise well for a new data input, you need more and more training data to build highly accurate model.
That's when data augementation or data generation comes into picture. data augementation nothing but variations of images that we already have. to generate more data out of existing data we leverage image manipulation techniques to transform, rotate, realign, rescale and crop data to generate more of them to feed to the algorithm.
In this notebook, I have shown some of the techniques to get familiar with image data and manipulate them which are used in data augmetation. keras has pre-defined methods to generate more images while building models.
-
Importing libraries
-
Reading image data
-
Image reader function
-
Image manipulation techniques
-
Image similarity techniques
-
Image grouping techniques
-
Image classification
- Skimage
- Sklearn
- Numpy
- pandas
- matplotlib
- tqdm
In this notebook, we will build image classification models to classify 6 categories of images; namely buildings, forest, glacier, mountain, sea, and street. image classification is one of the popular problems of computer vision challanges.
In this project of image classification we will try to build model from training dataset to classify and label images of six categories by users.
Use-case: Popular use-case of such model is image collections in mobile app wherein user captures images of scenaries, and model correctly labels & classifies into their respective class.
- Load the dataset and label them
- Preprocess the Image dataset
- Build Image classification model using keras sequential API
- Plot the loss and accuracy curve
- Loaded the dataset
- Labeled the dataset
- Visualized and explored the dataset
- Trained the Deep neural net with CNN layers
- Trained using pre-trained model VGG16 from keras models with feature extraction method
- Classify unseen dataset of images into their respective class and label them
- I built 2 neural network models using CNN layers
- first model's accuracy was at around 78% and second model's accuracy improved to 87% which is significant in this problem.
- I learned aboout image classification techniques and feature extraction process of CNN from this project
- I also deployed model using streamlit cloud to use this model for real world use-cases.