Car Recognition
This repository is to do car recognition by fine-tuning ResNet-152 with Cars Dataset from Stanford.
Dependencies
Dataset
We use the Cars Dataset, which contains 16,185 images of 196 classes of cars. The data is split into 8,144 training images and 8,041 testing images, where each class has been split roughly in a 50-50 split.
You can get it from Cars Dataset:
$ cd Car-Recognition
$ wget http://imagenet.stanford.edu/internal/car196/cars_train.tgz
$ wget http://imagenet.stanford.edu/internal/car196/cars_test.tgz
$ wget --no-check-certificate https://ai.stanford.edu/~jkrause/cars/car_devkit.tgz
ImageNet Pretrained Models
Download ResNet-152 into models folder.
Usage
Data Pre-processing
Extract 8,144 training images, and split them by 80:20 rule (6,515 for training, 1,629 for validation):
$ python pre_process.py
Train
$ python train.py
If you want to visualize during training, run in your terminal:
$ tensorboard --logdir path_to_current_dir/logs
Analysis
Update "model_weights_path" in "utils.py" with your best model, and use 1,629 validation images for result analysis:
$ python analyze.py
Validation acc:
88.70%
Confusion matrix:
Test
$ python test.py
Submit predictions of test data set (8,041 testing images) at Cars Dataset, evaluation result:
Test acc:
88.88%
Demo
Download pre-trained model into "models" folder then run:
$ python demo.py --i [image_path]
If no argument, a sample image is used:
$ python demo.py
class_name: Lamborghini Reventon Coupe 2008
prob: 0.9999994
1
2
3
4
Hyundai Azera Sedan 2012, prob: 0.99
Hyundai Genesis Sedan 2012, prob: 0.9995
Cadillac Escalade EXT Crew Cab 2007, prob: 1.0
Lamborghini Gallardo LP 570-4 Superleggera 2012, prob: 1.0
BMW 1 Series Coupe 2012, prob: 0.9948
Suzuki Aerio Sedan 2007, prob: 0.9982
Ford Mustang Convertible 2007, prob: 1.0
BMW 1 Series Convertible 2012, prob: 1.0
Mitsubishi Lancer Sedan 2012, prob: 0.4401
Cadillac CTS-V Sedan 2012, prob: 0.9801
Chevrolet Traverse SUV 2012, prob: 0.9999
Bentley Continental GT Coupe 2012, prob: 0.9953
Nissan Juke Hatchback 2012, prob: 0.9935
Chevrolet TrailBlazer SS 2009, prob: 0.987
Hyundai Accent Sedan 2012, prob: 0.9826
Ford Fiesta Sedan 2012, prob: 0.6502
Acura TL Sedan 2012, prob: 0.9999
Aston Martin V8 Vantage Coupe 2012, prob: 0.5487
Infiniti G Coupe IPL 2012, prob: 0.2621
Ford F-150 Regular Cab 2012, prob: 0.9995