1203
[15주차 - Day5] Visual Recognition
Custom YOLO v3 제작 과제
# 강의에서 배운 Custom YOLO제작방법과
# 유튜브(https://www.youtube.com/watch?v=saDipJR14Lc)에 나오는 OpenCV를
# GPU와 같이 사용하는 방법을 같이 이용하여
# 로컬에서 GPU로 동작하는 Custom YOLO v3를 제작해보기
# 예를 들어 ‘총’을 들고 있는 사람을 인지하는 실시간 위험감시 프로그램 제작
# GPU로 OpenCV가 돌아가지 않으면 CPU로라도 제작
드디어 실습 과제 수행
# darknet 불러오고 데이터셋 다운로드받는 건 이전 포스팅과 동일한 방식
# 대신 클래스를 'Beer' 데이터셋 하나로 줄여서 수행
# cfg 파일을 내가 만들고 싶은 데이터의 클래스 수에 맞춰서 변형
# 이번 실습 과제에서는 클래스를 하나만 쓸 거라서
# max_batches = 4000 (클래스 하나라고 해도 최소 4000)
# steps = 320, 360
# classes = 1
# filters = 18 (클래스 수 + 5) * 3
# 커스텀 .cfg 파일을 다시 클라우드로 올림
!cp /mydrive/dl/yolov3_custom.cfg ./cfg
!cp /mydrive/dl/obj.names ./data
!cp /mydrive/dl/obj.data ./data
- names 내용을 'Beer' 하나로 바꾸고 data 내용의 클래스 수를 1로 수정
# generate_train.py 실행한 뒤
# 사전학습된 convolutional layer weights를 다운로드하기
!wget http://pjreddie.com/media/files/darknet53.conv.74
# 커스텀 detector를 학습시키기. 기존에 학습하다 말았으면 backup에 있는 weight를 불러서 학습하는 셀로 이동하기
!./darknet detector train data/obj.data cfg/yolov3_custom.cfg darknet53.conv.74 -dont_show
~ 아홉 시간 학습 시작 ~
# 구글 드라이브로 원하는 영상을 업로드한 후에 커스텀 detector를 돌리기. 여기서 -thresh 0.3은 Accuracy가 0.3이하가 되는 Object의 Bounding Box는 보이지 않게 하겠다는 뜻임
!./darknet detector test data/obj.data cfg/yolov3_custom.cfg /mydrive/backup/yolov3_custom_last.weights /mydrive/images/test.jpg -thresh 0.3
imShow('predictions.jpg')
- 내 드라이브에 images라는 폴더를 만들어 test.jpg 파일을 넣어서 실행하면 내 모델이 잘 작동하는지 확인할 수 있다.
'프로그래머스 데브 코스 > TIL' 카테고리의 다른 글
[6기] 프로그래머스 인공지능 데브코스 96일차 TIL (0) | 2023.12.05 |
---|---|
[6기] 프로그래머스 인공지능 데브코스 95일차 TIL (0) | 2023.12.04 |
[6기] 프로그래머스 인공지능 데브코스 93일차 TIL (1) | 2023.12.02 |
[6기] 프로그래머스 인공지능 데브코스 92일차 TIL (1) | 2023.12.01 |
[6기] 프로그래머스 인공지능 데브코스 91일차 TIL (1) | 2023.11.30 |