레이블이 yolo인 게시물을 표시합니다. 모든 게시물 표시
레이블이 yolo인 게시물을 표시합니다. 모든 게시물 표시

2016년 8월 5일 금요일

darknet train time image resize speed issue

 darknet yolo train을 할때, image size나 net 구조, gpu, cpu 사양에 따라 다르겠지만, 내 환경에서는 아래처럼 gpu 가 idle 되는 시간이 많이 발생 했다.

profiling 을 해보니 image를 random 하게 resize 하는 부분에서 cpu 처리가 오래 걸리는 것이 었다.  

resize 부분을 opencv +ipp +gpu 로 바꾸고 나서 아래처럼 개선 되었다.

내 환경에서는 4배정도 빨리 train되고 있다.

2016년 7월 29일 금요일

darknet window용 소스코드

 CNN 에 대한 분류 외에도 detection 이 필요 하여, caffe를 사용해서 ROI Pooling Layer를 사용한 R-CNN을 사용 하려고 보니, 최근 들어 연구 되고 있는 fast R-CNN 이, faster R-CNN을 좀 찾아 보았다. R-CNN이 가진 단점들이 개선되고 있는거 같다. 특히 속도.. 그 중에 좀 특이한걸 발견했는데 darknet  이 링크를 보면 fast r-cnn 보다 100배 빠르다고 써있다. 그렇다면 당연히 이거 써야지.. 근데... caffe 처럼 ipython notebook 환경에서 쉽게 사용하기에는 작업이 많이 필요할 듯 하다.

 일단 나는 window 에서 작업할 것임으로 기존 소스코드에서 약간의 수정이 필요했다. https://github.com/ttagu99/darknet -> vs2013 + cuda 7.5 + opencv3.1.0 + cudnn ver5 환경으로 수정한 파일.

 darknet train을 위한 sample images와 sample lables들을 http://guanghan.info/blog/en/my-works/train-yolo/  이 링크에서 구해서 컴파일 후 바로 training을 해 볼수 있도록 코드 수정하였다.
 training 하는 방법은 기존 코드에서 조금 변경했다. train 이미지 경로와 모델 저장 경로가 하드코딩 되어있어서 아래처럼 변경하였다.

darknetVs2013 yolo train [cfg경로] [Init weight파일이름] [training 이미지 경로가 저장된 파일] [iter별 모델이 저장될 경로]
e.g.
darknetVs2013 yolo train ../cfg/yolo_448_448.cfg init.weights training_list.txt ./backup