Skip to content

Codestates collaboration project with NEXTLab to detect, classify, and track car in cameras using EfficientNetv2

Notifications You must be signed in to change notification settings

Klassikcat/project-NEXTLab-CNN-EfficientNet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NEXTLab Car Detection Project

Example

Open In Colab

Main Contributers

  • Jeongtae Shin(@Klassikcat): Project Management, Model build, Engineering
  • Jaewoong Lee(@colin19950703): Augmentation, model build, Enigeering
  • Hongkyun Kim(@ghdrbs0302): Data Inspection, Test data Labeling, Engineering

Installation

!pip install -U git+https://github.com/Klassikcat/project-NEXTLab-CNN-EfficientNet

pre-trained Weights

https://drive.google.com/file/d/1UyVnR5Pi7NvzD3LPnkllGEyn8afMi5jF/view?usp=sharing

Structure

project-NEXTLabcoreconfig.py               # Tensorflow Configurationutils.pymodelEfficientNet.py         # Model block and builderinitializers.py         # from EfficientNetv2 (https://arxiv.org/abs/2104.00298)layer.py                # from EfficietnNetv2model.py                # from EfficientNetv2params.py               # from EfficientNetv2utilsaugmentation            # Data augmentation toolsaugmentation.pylauncher_augment.pylauncher_classname.pyfrom_folderloader.py             # get train/valid/test dataset from directorytfrecordtfrecordMaker         # Make TFRecordtfrecordViewer        # Visualize, Load TFRecord unicodeUtil.py          # Korean utilities assemble jamovisuialization.py       # Plots(data distribution, heatmap)
setup.py                    # installer
readme.md

Stack

Python TensorFlow sklearn

Objective

  • Making EfficientNetv2 application that distinguish 322 cars by using photos captured by traffic camera
  • Traffic enforcement, Parking lot management.

Data

Train/Validatation Data

  • Uses modified "자동차 차종/연식/번호판 인식용 영상" from AIHub: https://aihub.or.kr/aidata/27727
  • Uses 522 classes in "세단", "SUB", "해치백", "승합"

Test Data

Data Distribution

approximately 82% of data is korean cars(hyundai, KIA)

approximately 75% of data is korean cars(sonata, etc...)

51% sedan, 28.8% SUV, 10% Hatchback, 9% van

mainly consists with 2010~2018 cars

Data Augmentation

  • use these augmentations taking the possible road situations into account.
  • Drop the class with less than 30 pieces of data in order to avoid data leakage
  • randomly pick 300 data. if the class has less than 30 data, proceed Data Augmentation for equal distribution of data

Model Structure

  • EfficientNetB0(224, 224) with 30 layer freeze

Train_validation accuracy/loss

top 1 accuracy/loss

  • train: 0.9051/0.2755
  • valid: 0.8960/0.3769

top 3 accuracy

  • train: 0.9880
  • valid: 0.9717

Further Work

[ ] Increase valid/test accuracy by making Ensemble model

[ ] Label Smoothing

[ ] Fix all false label

About

Codestates collaboration project with NEXTLab to detect, classify, and track car in cameras using EfficientNetv2

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages