본문 바로가기

프로젝트 기록

YOLO Object Detector 쓰기 (1)

캡디, 모델선정

KIST Europe Intern 막바지에 Yolo Image Detection을 사용할 일이 있었다. 그때 Object Detection Model을 처음 건드려 봤는데, 예상보다 너무 쓰기에도 간편하고 실행 속도도 빠르고 해서 놀랐다.

그리고 이번학기 캡스톤디자인 프로젝트에서 Object Detection을 사용해야 했다.

일련의 회의 끝에 다음과 같은 이유로 Yolo를 사용하기로 했다.


  1. 실시간으로 처리해야 하는 프로젝트 특성상 빠른 연산속도가 필요했다.
    Yolo가 빠릅니다~ Plot은 Yolo간 비교긴 해도 진짜 빠르다.
  1. 응용을 하더라도 최대한 단순하게, 모델에 대한 Fine Tuning 할 시간이 부족했다.
  1. 내가 써봤다.

3번 이유가 가장 크게 다가오기는 했지만, 촉박한 시간에 한번이라도 써본게 낫지 않을까... 했다.


구현체 찾기

Yolo는 모델 이름이고, 이걸 코드로 구현하는건 할 시간도 없고 능력도 없어(논문보고 하나씩 구현해보는게 실력을 가장 잘 늘리는 방법이라고는 하는데... 언제해볼까) 구현체를 찾아봤다.

Github에 Yolo로 검색하면 주르륵 뜨는데, 아는 프레임워크 따라서 많이 Star 받은걸 테스트해봤다. 하지만 코드 테스트 해보면 돌아가는게 몇 없다. 역시.

 

물론 다 되는 코드지만 어떤건 데이터가 없고, 어떤건 Weight가 없고, 내 환경 Cuda version과 차이가 난다거나 너무 오래된 Framework 버전을 사용하고 있어서 감히 건드리기가 힘들거나 한 이유로 거르고 나니 몇 안남는다. 그 중 Darknet 구현체가 많이 쓰이는 것 같아 사용하기로 했다.
Usage 보니 Compile 을 하고 사용하는거 같은데, 한번 컴파일 하면 팀원들끼리 공유해서 쓰기도 편할 것 같은 이점을 보고 선정했다.

하지만 이 잇점을 활용할 일은 없었다고 한다

 

To be continued...