[19일 차] YOLO Mini Project

Kimsoohyun·2022년 4월 16일
0
post-thumbnail

Intro

오늘은 수업을 진행하지 않고 프로젝트를 진행하면서 완료하지 못한 부분이나 개선할 사항을 적용해보라고 하셨다.
평일에 시간이 없는 사람들도 있어서 그렇게 하신 것 같았다.
진행하는 중간중간 질문 사항에 대한 피드백을 해주시고, 이제 교육 과정을 마무리하는 단계라서 사후평가와 설문조사를 진행했다.

Model selection

보고서까지 작성한 상태라 크게 바꾸진 못할 것 같고, 여러가지 모델을 돌려보고 각 모델의 성능을 비교하는 파트를 추가했다.
처음에는 Fast R-CNN과 같은 다른 모델을 돌려보려고 MMdetection을 사용해보려고 했는데, label file의 형식이 json 형식이라 빠른 시간안에는 불가능 할 것 같아서 YOLOv5 모델에서 다른 가중치값을 적용해보기로 했다.

v6.0과 v6.1의 yolov5s와 yolov5n을 비교했으며, 결과는 다음과 같다.
timew0+F1scorew1+mAPw2time * w_0 + F1 score * w_1 + mAP * w_2
성능 지표는 다음과 같은 식으로 도출했으며, 성능 지표 결과가 가장 좋은 YOLOv5s 모델을 채택하였다.

Note

피드백 관련하여 이야기하신 내용을 정리해봤다.

협업할 때 주의해야할 사항

  • YOLO 라벨링에 있어 labelImg 툴을 사용한다면, Class의 순서에 따라서 Class 번호가 부여되기 때문에 predefined_classes 파일이 동일해야 함
  • Data consistency를 맞춰야 한다.
    같은 객체에 대해 Bounding Box의 범위가 동일해야함
  • 옆모습이나 뒷모습을 인식하지 못하는 경우 → 데이터의 다양성이 부족한 것
    더 많은 데이터를 수집해야 한다. 특히, 사람은 정면 사진처럼 사람이 물체를 인식하기 좋은 이미지를 수집하는 경향이 있는데, 옆모습과 뒷모습 사진이 적절히 섞여있어야 모델 학습이 잘 된다.

내 경우에도 정면에서 촬영한 옷 사진을 주로 사용했는데 때문에 측면 사진은 잘 인식되지 않는 것 같았다. 다음번 프로젝트 때는 사람이 인식하기 편한 사진 뿐만 아니라 모든 방향에서의 사진을 모아야 한다는 것을 깨달았다.

Outro

역시 혼자 하는 것보다 여러사람이 협업하는 것이 더 어려운 것 같다. 다행히 프로젝트 초반에 이런 저런 기준들을 세워두고, 내용을 공유하며 진행해서 강사님께서 말씀하신 Data consistency나 그런 부분들은 모두 고려해서 프로젝트를 진행한 것 같아 기분이 좋았다.

profile
어제보다 나은

0개의 댓글