Skip to content

This is a machine learning (Image Classifier) web app, that lets the user upload an image of a sports celebrity (Lionel Messi, Maria Sharapova, Roger Federer, Serena Williams, Virat Kohli) and predicts whose image is uploaded.

Notifications You must be signed in to change notification settings

nidhikh477/Image-classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sports Celebrity Image Classifier

Image Classifier Demo

In this data science and machine learning project, I have classified sports personalities. I have restricted classification to only 5 people,

  1. Maria Sharapova
  2. Serena Williams
  3. Virat Kohli
  4. Roger Federer
  5. Lionel Messi

Technologies used in this project

  1. Python 3.8
  2. Numpy and OpenCV for data cleaning
  3. Matplotlib & Seaborn for data visualization
  4. Sklearn for model building
  5. Jupyter notebook, visual studio code and pycharm as IDE
  6. Python flask for http server
  7. HTML/CSS/Javascript for UI

Folder structure

  • UI : This contains ui website code
  • server: Contains the Python flask server related code
  • model: Contains python notebook for model building
  • google_image_scrapping: Contains the code to scrap google for images
  • images_dataset: Dataset used for training our model

Model Selection and Methodology

image
In this project, OpenCV haarcascade was used to detect face and two eyes. Wavelet transform was used to extract these features from the images. Finally after processing and cleaning the data, it was given as input to models. Various models were tried using GridSearchCV and Logistic Regression was found to give the best resutls with a score of 84.15%.


Above is the heatmap showing the results of Logistic regression on test data. For test images, Logistic regression was found to give a score of 95%. The model accuracy could be improved by using a bigger dataset. Also deep learning may give better results for image classificaion

About

This is a machine learning (Image Classifier) web app, that lets the user upload an image of a sports celebrity (Lionel Messi, Maria Sharapova, Roger Federer, Serena Williams, Virat Kohli) and predicts whose image is uploaded.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages