All Projects → USC-InfoLab → Rddc2020

USC-InfoLab / Rddc2020

Licence: gpl-3.0
road damage detection challenge 2020

Projects that are alternatives of or similar to Rddc2020

Nltk Python Cn
创建《Python自然语言处理》学习代码的中文注释版本。
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Tensorflow 1x Deep Learning Cookbook
TensorFlow 1.x Deep Learning Cookbook, published by Packt
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Convergent learning
Code for paper "Convergent Learning: Do different neural networks learn the same representations?"
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Coreml Training
Source code for my blog post series "On-device training with Core ML"
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Reinforcement Learning
Reinforcement learning material, code and exercises for Udacity Nanodegree programs.
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Download Large File From Google Drive Using Python
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Deepfakedetection
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Curso aeropython
Curso de iniciación a Python orientado a la ingeniería
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Nlp
Generic codes related to NLP
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Machinelearningformedicalimages
Example code on how to apply machine learning methods to medical images. Contains code (python and python notebooks) and data (DICOM)
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Tadam
The implementation of https://papers.nips.cc/paper/7352-tadam-task-dependent-adaptive-metric-for-improved-few-shot-learning
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Predictive Models
A repo of the Data Scientist team's open source predictive models.
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Hyperlearn
50% faster, 50% less RAM Machine Learning. Numba rewritten Sklearn. SVD, NNMF, PCA, LinearReg, RidgeReg, Randomized, Truncated SVD/PCA, CSR Matrices all 50+% faster
Stars: ✭ 1,204 (+1443.59%)
Mutual labels:  jupyter-notebook
Nds
On Network Design Spaces for Visual Recognition
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Rhodium
Python Library for Robust Decision Making and Exploratory Modelling
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Math And Ml Notes
Books, papers and links to latest research in ML/AI
Stars: ✭ 76 (-2.56%)
Mutual labels:  jupyter-notebook
Applied Social Network Analysis In Python
Course - 5; Specialization: Applied Data Science with Python; University Of Michigan
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Tweeteval
Repository for TweetEval
Stars: ✭ 78 (+0%)
Mutual labels:  jupyter-notebook
Nosebook
a nose plugin for finding and running IPython notebooks as nose tests
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook
Python High Performance Second Edition
Python High Performance – Second Edition, published by Packt
Stars: ✭ 77 (-1.28%)
Mutual labels:  jupyter-notebook

rddc2020

road damage detection challenge 2020

road damage detection challange 2020 IMSC submission

This repository contains source code and trained models for Road Damage Detection and Classification Challenge that was held as part of 2020 IEEE Big Data conference.

The best model achieved mean F1-score of 0.674878682854973 on test1 and 0.666213894130645 on test2 dataset of the competition.

Sample predictions:

Table of contents

Prerequisites

You need to install:

  • Python3 >= 3.6

  • Use requirements.txt to install required python dependencies

    # Python >= 3.6 is needed
    pip3 install -r requirements.txt
    

Quick-start

  1. Clone the road-damage-detection repo into $RDD:

    git clone https://github.com/USC-InfoLab/rddc2020.git
    
  2. Install python packages:

    pip3 install -r requirements.txt
    

RDCC Dataset Setup for YOLOv5

NOTE: Entire process (step 1-4 explained in this section) of downloading and preparing GRDDC 2020 dataset can be done by executing yolov5/scripts/dataset_setup_for_yolov5.sh

    bash yolov5/scripts/dataset_setup_for_yolov5.sh

OR

  1. Go to yolov5 directory

    cd yolov5
    
  2. execute download_road2020.sh to downlaod train and test dataset

    bash scripts/download_road2020.sh
    
  3. Detection: strcutre test datasets for inference using yolov5

    bash scripts/prepare_test.sh
    
  4. Training: Generate the label files for yolov5 using scripts/xml2Yolo.py

    python3 scripts/xml2yolo.py
    
    • Use python3 scripts/xml2Yolo.py --help for command line option details

IMSC YOLOv5 Model zoo

  1. Go to yolov5 directory

    cd yolov5
    
  2. download YOLOv5 model zoo:

    bash scripts/download_IMSC_grddc2020_weights.sh
    

Detection / Submission

  1. Download weights as mentioned in IMSC YOLOv5 Model zoo

  2. Go to yolov5 directory

    cd yolov5
    
  3. Execute one of the follwoing commands to generate results.csv(competition format) and predicated images under inference/output/:

    # inference using best ensemble model for test1 dataset
    python3 detect.py --weights weights/IMSC/last_95_448_32_aug2.pt weights/IMSC/last_95_640_16.pt weights/IMSC/last_120_640_32_aug2.pt --img 640 --source datasets/road2020/test1/test_images/ --conf-thres 0.22 --iou-thres 0.9999 --agnostic-nms --augment
    
    # inference using best ensemble model for test2 dataset
    python3 detect.py --weights weights/IMSC/last_95_448_32_aug2.pt  weights/IMSC/last_95_640_16.pt  weights/IMSC/last_120_640_32_aug2.pt weights/IMSC/last_100_100_640_16.pt --img 640 --source datasets/road2020/test2/test_images/ --conf-thres 0.22 --iou-thres 0.9999 --agnostic-nms --augment
    
    # inference using best non-ensemble model for test1 dataset
    python3 detect.py --weights weights/IMSC/last_95.pt --img 640 --source datasets/road2020/test1/test_images/ --conf-thres 0.20 --iou-thres 0.9999  --agnostic-nms --augment
    
    # inference using best non-ensemble model for test2 dataset
    python3 detect.py --weights weights/IMSC/last_95.pt --img 640 --source datasets/road2020/test2/test_images/ --conf-thres 0.20 --iou-thres 0.9999  --agnostic-nms --augment
    

Performance on RDDC test datasets

YOLOv5x_448_32_aug2 YOLOv5x_640_16_95 YOLOv5x_640_16_100 YOLOv5x_640_32 YOLOv5x_640_16_aug2 YOLOv5x_640_32_aug2 test1 F1-score test2 F1-score
✔️ 0.66697383879131 0.651389430313506
✔️ ✔️ ✔️ 0.674878682854973 0.665632401648316
✔️ ✔️ ✔️ ✔️ 0.674198239966431 0.666213894130645

Training

  1. download pre-trained weights from yolov5 repo

    bash weights/download_weights.sh
    
  2. run following command

    python3 train.py --data data/road.yaml --cfg models/yolov5x.yaml --weights weight/yolov5x.pt --batch-size 64
    

visit yolov5 official source code for more training and inference time arguments

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].