Ubuntu 18.04에서 이미지를 학습시키기 전 Yolo_mark를 사용하여 Yolov3와 v2 학습을 위한 이미지에 bounded boxes 마킹을 할 것이다.
학습 시킬 이미지 데이터는 (Crawler) selenium으로 이미지 크롤링에서 소개한 방법과 인터넷 사이트에서 제공해주는 데이터셋 등을 이용해도 된다.
이번 포스트에서는 인터넷 사이트에서 제공해주는 데이터셋을 이용하여 이미지를 학습시킬 것이다.
참고한 사이트는 http://pascal.inrialpes.fr/data/human/ 에서 person 이미지를 다운받았다.
해당 사이트에서 받은 이미지 포맷은 bmp 파일이다.
이미지 학습을 위해서 포맷을 jpg로 변경해준다.
Window의 경우 알씨 프로그램을 사용한다.
Linux의 경우 다음 명령어를 통해 변경한다.
1 | mogrify -format jpg *.bmp | cs |
1. Yolo_mark
YOLO_MARK는 이미지 파일에 직접 Bounding Box를 마킹하여 Box의 좌표를 지정해준다.
Window와 Linux에서 모두 사용 가능하다.
YOLO_MARK 사용법은 https://github.com/AlexeyAB/Yolo_mark 에서 확인 가능하다.
Yolo_mark 설치
1 | git clone https://github.com/AlexeyAB/Yolo_mark | cs |
컴파일 및 예제 실행
1 2 3 4 | cd Yolo_mark cmake . make ./linux_mark.sh | cs |
이미지 마킹
1 | ./linux_mark.sh | cs |
2. 이미지 학습
⑴ cfg 파일 설정
1 2 3 | cd darknet/cfg cp yolov3.cfg ./yolov3-obj.cfg vi yolov3-obj.cfg | cs |
convolutional 3개의 filters=18로 변경
(변경해야 되는 갹 convolutional은 yolo layer 위에 있다.)
⑵ data 파일 생성
1 | vi obj.data | cs |
⑶ names 파일 생성
1 2 | cd ../data vi obj.names | cs |
⑷ darknet convolution layer 다운
1 | wget https://pjreddie.com/media/files/darknet53.conv.74 | cs |
⑸ 학습 이미지 및 train.txt 이동 및 수정
1 | cp -r /home/jremind/Yolo_mark/x64/Release/data/img /home/jremind/darknet/data/ | cs |
1 2 3 | cp -/home/jremind/Yolo_mark/x64/Release/data/train.txt /home/jremind/darknet/data/ cd /home/jremind/darknet/data/ vi train.txt | cs |
⑹ valid.txt 생성
1 | vi valid.txt | cs |
⑺ 학습 실행
1 | ./darknet detector train cfg/coco.data cfg/yolov3.cfg darknet53.conv.74 | cs |
※ gpu를 사용하여 학습을 하고자 한다면 Makefile을 아래와 같이 수정하고 실행합니다.
gpu 버전에 따른 ARCH는 https://github.com/tpruvot/ccminer/wiki/Compatibility 에서 참고했습니다.
실행이 끝나면 backup 폴더에 weight 파일이 생깁니다.
⑻ Test
1 | ./darknet detect cfg/yolov3-obj.cfg backup/yolov3_6000.weights data/person.jpg | cs |
'머신러닝&딥러닝 > YOLO' 카테고리의 다른 글
6. (Python) 라즈베리파이3 에서 Ubuntu로 webcam 화면 TCP socket 통신 (11) | 2019.01.25 |
---|---|
5. (YOLO) Ubuntu 18.04에 YOLO 설치 (1) | 2019.01.25 |
4. (YOLO) Ubuntu 18.04에 OpenCV 3.4.0 설치 (13) | 2019.01.22 |
3. (YOLO) 라즈베리파이3에 YOLO 설치 (12) | 2019.01.10 |
2. (YOLO) 라즈베리파이3에 OpenCV 3.2 설치 (1) | 2019.01.09 |