AI/Jetson Xavier NX

Yolov4와 Yolov4_tiny 비교

cdjiwon 2022. 3. 8. 16:11

모델 구성의 문제이다. 사용자 정의 Yolo 모델을 구성하기 위해 중간 구성을 실험할 수 있다. 이렇게 하려면 cfg폴더를 살펴보고 네트워크 아키텍처 및 계층을 변경한다. 고려해야할 점은 개체 모양이 coco data set와 크게 다른 경우 사용자 지정 앵커 상자를 구현하는 것이다.

 

기존 yolov4 명령 (이미지)

./darknet detect cfg/yolov4.cfg yolov4.weights data/dog.jpg

yolo에서 기본적으로 저장되어 있는 dog.jpg 파일을 이용하여 정확도 예측

 

yolov4_tiny 명령 (이미지)

 ./darknet detect cfg/yolov4-tiny.cfg yolov4-tiny.weights data/dog.jpg

yolo를 초기에 설치했을 때 cfg파일안에 yolov4-tiny.cfg 파일이 이미 들어있기 때문에 따로 yolov4-tiny.weights라는 가중치 값만 받아주었다. (구글링을 통해 쉽게 받을 수 있다.)

 

dog.jpg의 사진 파일을 yolov4와 yolov4-tiny와 비교했을 때는 yolov4의 모델이 훨씬 정확도가 높았다.

 

동영상 비교 

yolov4_tiny

./darknet detector demo cfg/coco.data cfg/yolov4-tiny.cfg yolov4-tiny-weights -ext_output testset/cartest.mp4

따로 darknet 폴더 안에 testset이라는 폴더를 만들어 유튜브에서 cartest 관련 영상을 저장 받은 것을 yolov4-tiny를 이용하여 구현. 

yolov4

- ./darknet detector demo cfg/coco.data cfg/yolov4.cfg yolov4-weights -ext_output testset/cartest.mp4

이와 같이 두 영상을 tiny와 yolov4로 비교해서 출력할 때, 정확도는 yolov4가 훨씬 더 높지만, FPS는 tiny가 상대적으로 훨씬 많이 높아진 것을 볼 수 있다.

 

yolov4의 AVG_FPS : 2.8 ... ( 3.0 미만의 값으로 나온다. )

yolov4_tiny의 AVG_FPS : 28 .. ( 30 근사값으로 나온다. )

 

 

yolo에서 학습 완료된 데이터 저장

./darknet detector demo cfg/coco.data cfg/yolov4-tiny.cfg yolov4-tiny-weights -ext_output testset/cartest.mp4 -out_filename test.mp4

-out_filename을 이용해 특정 위치에 원하는 형식으로 파일을 저장할 수 있다.

 

기존 yolov4는 fps값이 너무 낮기에 사용하기에 부적절하다고 판단해서 yolov4-tiny로 사용하기로 함.

 

 

실시간 웹 캠 비교

test2.mp4
0.31MB

- yolov4로 웹 캠을 돌렸을 때 정확도가 높은 것 을 확인할 수 있다.

 

test3.mp4
1.53MB

- yolov4-tiny로 웹 캠을 돌렸을 때는 정확도는 비교적 낮지만 프레임속도가 상대적으로 빠른 30 이상이 나온다.