This project is part of the lecture Applied Artificial Intelligence at the University of Applied Sciences Esslingen. The aim of this project is the automatic recognition of automobiles with machine learning, and the pricing of the vehicle based on them.StoryThe Problem
In 2019 there is a vast amount of different car models and even for car enthusiasts it can be hard to determine every single model correctly. Imagine walking down the street discovering a new car that you are very intrested in. You want to know it's price because you are considering to buy it. You don't know the exact car model and as you don't have any time and motivation to gather all the information, you leave...Our Idea
To support this process of gathering the right information, we thought about creating an application which can be used to take photos or use existing photos to recognise car models and display an approximated price. We started building our application upon a pre-trained neural network which is capable of recognising 196 different car models. To improve usability we decided to move the application in a web-based environment. Furthermore we focussed on creating an even better dataset to recognise much more car models.Implementation
We calculated the average manufacturer's suggested retail price based on a dataset which was originally created by using Edmunds car API. We downloaded over 85.000 google pictures of the car models based on this price list and cropped them into fitting size. This new dataset to distinguishes 930 different car models. For our model we used the ResNet-152 neural network as a base. Our current model is trained on 16,185 images, based on a stanford paper dataset. This model is running with a Top-5 percentage of around 88%. Fun Fact! It would have taken us about 5 days to train the current model on a CPU(i7-8700k)! Luckily with the power of a gaming GPU(GTX 1070) it took us just under 11 hours.How to use
1. Open the app folder and copy path (...Applied-AI-Technologies\app)
2. Open cmd and type "cd ...Applied-AI-Technologies\app"
3. Run server.pyThings for the future
The enhanced dataset needs some data cleansing to get rid of inaccurate images. After that the a new powerful model can be trained. Feel free to so!
Further implementations could be an enhanced approximation of the car price by substracting the value loss based on km/miles.Dependencies
source of inspiration: https://github.com/foamliu/Car-Recognition
car price dataset: https://www.kaggle.com/jshih7/car-price-prediction/data
google image downloader: https://github.com/hardikvasa/google-images-downloadContributors
Sven Habrock, David Le Duy, Marvin Gygas, Sebastian Späth, Sascha Lindner