관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

CNN 5 - 객체 탐지를 하는 YOLO v6 모델 실습 1 : 객체 탐지 이론 및 roboflow에서 chinchilla 라벨링하기 본문

인공지능/딥러닝

CNN 5 - 객체 탐지를 하는 YOLO v6 모델 실습 1 : 객체 탐지 이론 및 roboflow에서 chinchilla 라벨링하기

huenuri 2024. 10. 29. 18:50

개와 이미지 분류하는 실습이 잘 안 되는 게 많아서 많은 에너지를 소진했더니 공부할 의욕이 상실되었다. 잠시 놀고 싶은 마음에 사로잡혔지만 그래도 오늘 하기로 한 목표를 조금이나마 채워가기로 마음을 바꾸었다. 원래 오늘 목표는 이틀치 수업 분량을 다 듣고 내일 아침까지 CNN 공부를 대부분 마치려고 했었다.

하지만 딥러닝 공부가 만만치 않아서 막히는 부분이 많다. 그래도 지난 6월부터 인사교에 와서 공부를 하면서 별로 막히는 부분은 없었다. 게임 개발을 할 때는 이런 부분이 참 많았는데 말이다.

 

어쨌든 오늘 저녁에는 영어 공부도 1시간 반 하기로 스스로와 약속을 했으니 꼭 지킬 것이다. 매일 미루고 미룬 게 벌써 몇 달이 훌쩍 지났다. 이제 객체 탐지 수업을 들으며 공부를 시작해볼 것이다. 


 

 

 

객체 탐지에 대하여

 

 

Detection과 Segmentation의 차이점은 Detecton은 객체가 있는지를 탐지하는 것이고, Segmentation은 객체를 자세히 관찰하며 보여준다.

 

 

 

 

 

 

이런 식으로 어떤 데이터가 친칠라인지 라벨링 작업을 하며 표시해주어야 한다.


 

 

 

 

 

 

 

욜로 모델을 설치하면 이렇게 폴더가 생기며 이 안에 많은 데이터가 담겨있다. 친칠라 파일은 압축을 풀어서 준비한다.


 

 

 

 

 

ROBOFLOW에서 객체 탐지 실습해보기

 

roboflow는 데이터를 라벨링 해주는 곳이다. 전에는 일일이 라벨링을 해주었지만 최근에는 자동으로 하는 기능을 탑재했다. 이 기능을 가져다가 사용해 볼 것이다.

 

roboflow 사이트

 

Roboflow: Computer vision tools for developers and enterprises

Everything you need to build and deploy computer vision models, from automated annotation tools to high-performance deployment solutions.

roboflow.com

 

 

 

 

가입을 하고 개인 워크 스페이스도 열어준다.

 

 

 

 

그런 다음에 프로젝트를 하나 만드는데 Project 이름은 다음과 같이 작성하였다. Annotation은 프로젝트에 대한 설명을 쓰는 것이다. 그리고 프로젝트 이름대로 구글 드라이버에 폴더가 생성된다. 프로젝트 타입은 Objcet Detection으로 한다.

 

 

 

 

그러면 하나의 공간이 생기는데 여기에 조금 전에 압축을 풀었던 폴더를 끌어다 놓으면 된다. 그리고 오른쪽에 Save and Continue를 클릭하면 이미지가 업로드된다.

 

 

 

 

 

이 중에서 우리는 Start Auto Label을 사용할 것이다.

 

 

 

 

 

 

Get Start를 클릭하면 이런 창이 나타난다. 그리고 클래스 이름을 chinchilla로 작성해 준다.

 

 

 

 

 

 

이름을 생성하고 저장해 주면 이처럼 chinchilla라는 라벨링이 나타난다. 하지만 가끔 보면 아무것도 표시가 되어 있지 않은 사진도 있는데 이럴 때는 Confidence Threshold를 바꾸어준다.

이것은 신뢰하는 임계치를 말한다. 점수가 낮을수록 친칠라가 아닌 것에도 맞다고 표시할 확률이 높다. 점수를 높였을 때는 친칠라에 표시될 확률이 낮아진다.

 

 

 

 

 

이렇게 높였을 때는 라벨 표시가 되어 있지 않다.

 

 

 

 

 

 

잘 선택이 되었으면 Auto 라벨을 선택한다.

 

 

 

 

 

 

라벨링이 잘 되면 오른쪽으로 이동한다.

 

 

 

 

 

 

라벨링이 잘 되었다.

 


 

 

 

학습을 마치고

이렇게 1시간이 조금 넘는 시간 동안 객체 탐지를 하는 YOLO 모델과 roboflow에서 라벨링을 하는 방법을 학습해 보았다. 공부를 하다 보니 다시 할만해졌고 오후 시간도 잘 보냈다는 뿌듯한 마음이 들었다. 이제 남은 1시간 분량의 수업은 조금 쉬었다가 해볼 것이다.