Computer Vision/실습, 세미 프로젝트
[Object Detection] YOLO v4 custom 데이터로 학습 후 webcam으로 확인하기
Orange57
2020. 10. 23. 11:25
728x90
반응형
SMALL
리눅스 우분투 18.04 환경
1. YOLO_MARK로 이미지 라벨링하고 데이터 학습
[6] YOLO 데이터(이미지) 학습
지금까지 많은 Deep Learning Detection Algorithm중에서 왜 YOLO를 사용해야 하는지, 또 YOLO를 사용하기 위해선 어떠한 환경설정을 해야하는지, 그리고 YOLO의 예제사용 및 YOLO의 분석까지 포스팅 했습니다
pgmrlsh.tistory.com
./linux_mark.sh 대신에 chmod a+x ./linux_mark.sh
(실행 권한 주기 위해서 www.clien.net/service/board/cm_mac/1989900)
마스크 데이터 다운 받아서 맞는 경로에 위치시켜 주고,
yolo_mark/x64/Release/data -경로에서
$ vi obj.data
yolo_mark/x64/Release/data -경로에서
$ vi obj.names
YOLO mark로 눈과 마스크 라벨링 작업
$ ./linux_mark.sh
2. 데이터 학습하기 ( 학습된 가중치파일 만들기 )
yolo_mark/x64/Release 경로에서
$ vi yolo-obj.cfg
classes = 2
filters = 5 * (classes+5) = 5 * (2+5) = 35
학습
$ cd darknet
$ ./darknet detector train data/obj.data yolo-obj.cfg darknet19_448.conv.23
윈도우 10 환경
3. 소스 clone
$ git clone https://github.com/hunglc007/tensorflow-yolov4-tflite
앞 포스팅에서 demo돌린 폴더와 헷갈리지 않도록 새로 받은 폴더명을 tensorflow-yolov4-tflite-custom로 변경해주었다.
학습된 가중치 weights파일을 tensorflow-yolov4-tflite-custom\data에 복사해 넣기
yolov4로 이름 변경
$ cd tensorflow-yolov4-tflite-custom
1) Convert to TensorRT
# yolov4
$ python save_model.py --weights ./data/yolov4.weights --output ./checkpoints/yolov4.tf --input_size 416 --model yolov4
$ python convert_trt.py --weights ./checkpoints/yolov4.tf --quantize_mode float16 --output ./checkpoints/yolov4-trt-fp16-416
에러 발생
2) Convert to TensorFlow
$ python save_model.py --weights ./data/yolov4.weights --output ./checkpoints/yolov4-416 --input_size 416 --model yolov4
실시간 Webcam 실행
$ python detectvideo_webcam.py weights ./checkpoints/yolov4-416 size 416 model yolov4
728x90
반응형
LIST