imsmile2000 / Recycling-Product-classification-Project

level2_objectdetection-cv-11 created by GitHub Classroom

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Recycling Product classification Competition

This project is the Naver Boost Camp CV11 team's submission code for the trash object detection competition. Given an image containing a garbage object, it is a matter of specifying the location of the garbage and classifying the class.

Untitled

Team Members


Environment

  • OS : Linux Ubuntu 18.04.5
  • GPU : Tesla V100 (32GB)

Folder Structure

├─eda
├─ensemble
├─mmdetection
├─mmdetection3
├─UniverseNet
├─yolov8
├─multilabel_kfold.py
└─streamlit



Usage

Install Requirements

  • pip install -r requirements.txt

Multilabel_Kfold.py

You can enter the multilabel_kfold.py folder path and enter the command or enter the multilabel_kfold directly into the command

python3 level2_objectdetection-cv-11/multilabel_Kfold.py --K {kfold split count}



train.sh

  1. Move the path to the tools folder where the train.sh file is located

  2. Write python3 main.py command in train.sh file

    python3 main.py --model {.py name} --folder {folder_name} --resize {size} --max_epoch {epoch} --inference_epoch {best/latest}
  3. Run

    nohup sh train.sh

Result

Augmentation experiment result

Metric : mAP score

augmentation mAP50 General trash(0) Plastic(5) total
Normalize 0.346174 0.173843 0.280453 0.80047
HorizontalFlip 0.317365 0.17596 0.254375 0.7477
Mosaic 0.328192 0.16313 0.252239 0.743561
RGBShift 0.324352 0.152785 0.248293 0.72543
MedianBlur 0.317173 0.145847 0.25099 0.71401
HueSaturation 0.310931 0.163762 0.238093 0.712786
Cutout 0.311202 0.157962 0.2429 0.712064
CLAHE 0.308945 0.158813 0.240687 0.708445
JpegCompression 0.32155 0.16028 0.22024 0.70207
RandomBrightnessContrast 0.312545 0.144382 0.238167 0.695094
Multiresize 0.29278 0.15752 0.235295 0.685595

Final Solution

Metric : mAP score

Library TYPE Method Backbone Neck Datasets Scheduler Runtime Optimizer mAP(public)
mmdetection2 2stage Cascade RCNN Swin transformer base FPN albu_coco_detection schedule default_runtime AdamW 0.6671
UniverseNet 1stage UniverseNet Res2Net_101 FPN / SEPC albu_coco_detection schedule_20e default_runtime AdamW 0.61
UniverseNet 1stage ATSS Swin transformer large FPN / Dyhead albu_coco_detection schedule_20e default_runtime AdamW 0.6237
UniverseNet 2stage GFLv2 PVT_v2 FPN albu_coco_detection schedule_2x default_runtime SGD 0.5693
UniverseNet 1stage TOOD Swin transformer v2 tiny FPN albu_coco_detection schedule_adamw default_runtime AdamW 0.54
YOLOv8 1stage YOLOv8_l Darknet - recycle.yaml - - - 0.3822

Ensemble

image

  • Final submission : Public : 0.6878(5th) / Private : 0.6720(5th)

About

level2_objectdetection-cv-11 created by GitHub Classroom


Languages

Language:Python 96.7%Language:Jupyter Notebook 3.3%Language:Shell 0.0%