728x90
- DarkNet은 Yolo4 개발자가 만든 프레임워크로 아주 간편하게 객체 인식을 수행할 수 있다.
- 아무래도 StyleGAN2,3 Pixel2Style2Pixel, DOMIAS 등 올려져있는 깃허브를 활용하는 것 조차 어려움이 많았기 때문에 이번에도 어렵지 않을까 생각했는데 만들어진 툴들이 아주 좋아서 어렵지 않았다.
라벨링
- https://yeko90.tistory.com/entry/free-image-label-tool-labelimg 이블로그에 너무도 설명이 잘 되어있다.
학습 준비
- 먼저 data/list 파일을 하나 만들고 세개의 txt파일을 만든다. 각 txt파일에는 test, train, valid할 이미지의 경로가 있다. 그리고 각 경로에는 라벨링한 txt파일과 이미지 파일이 1대1 대응으로 존재해야한다.
- custom을 위한 파라미터 변경
- 매우 중요한 부분이라 집중해야한다. 여기서 잘못되면 학습이 잘 안되거나 실행이 안될 수 있다.
- darknet/cfg/yolo4-tiny-custom.cfg 파일을 열고 수정한다.
- 7번 줄 subdivisions - 배치사이즈 64를 얼마나 나누어 학습할 것인지의 대한 값을 조정한다. 배치사이즈가 64이고 서브디비전이 16이면 64 / 16 = 4개의 이미지를 한번에 학습하게 된다. 아마 많은 사람들이 코랩에서 학습하게 될탠데 무료 코랩의 메모리는 좋은 편이 아니기 때문에 서브디비전을 16~32로 조정해주는 것이 좋다.
- 20번 줄 max_batches - 클래스의 수 * 2000이 해당 값이다.
- 22번 줄 step - 배치 사이즈의 80%와 90%
- 110,269줄 classes - 각자 설정한 클래스의 수
- 212,263 줄 filters - (n + 5) * 3 으로 변경 만약 클래스 수가 2이면 21
- 학습 명령어
!time ./darknet detector train data/Dental_test.data cfg/yolov4-tiny-custom.cfg yolov4-tiny.conv.29
본인이 설정한 darknet 위치로 이동하여 위 명령어를 실행하면 된다.
'딥러닝' 카테고리의 다른 글
StyleGAN2 Pytorch 사용법 (0) | 2023.10.16 |
---|