A Simple PyTorch Implementation of YOLOv3.
이 프로젝트는 C로 구현된 원본 YOLOv3를 PyTorch로 재구현했습니다. YOLOv3의 학습, 테스트, demo를 지원합니다.
Anaconda 또는 Miniconda가 설치되어 있는지 확인하세요.
새 가상환경을 만들고 아래의 개발 환경 섹션에서 언급한 라이브러리를 설치하세요.
conda install python=3.7 matplotlib tqdm
리포지토리를 클론, 포크하거나 압축파일로 코드를 다운로드하세요.
데이터셋을 준비하세요.
COCO: setup_coco_dataset.sh를 읽어보고 사전 준비를 한 후, 아래의 명령을 수행하세요.
$ mv data/setup_coco_dataset.sh ./
$ bash setup_coco_dataset.sh
VOC
voc_label.py의 docs를 읽어보고 YOLOv3에서 사용할 라벨을 만드세요.
사전 훈련된 가중치 파일을 다운로드해서 ./weights 폴더로 옮기세요.
You should check arguments of each Python file and set it according to your environment.
Demo
Train
$ python train.py
You can check the training process with the TensorBoard.
$ bash exec_tensorboard.sh
Test
$ python test.py
Test results are saved as csv files. The table below shows the test results for each method.
Method | mAP (.50 IoU) | Inference time (ms)1 |
---|---|---|
YOLOv3 320 (paper) | 51.5 | 22 |
YOLOv3 320 (implementation) | 52.5 | 32 |
YOLOv3 416 (paper) | 55.3 | 29 |
YOLOv3 416 (implementation) | 55.6 | 36 |
YOLOv3 608 (paper) | 57.9 | 51 |
YOLOv3 608 (implementation) | 57.1 | 48 |
1 Results vary significantly depending on the execution environment.
Developer
Credits
MIT License
You can find more information in LICENSE
.