본문 바로가기

Project/Capstone-1

[5주차] 이미지 라벨링 해보기 & 학습 시키기

728x90

저번에 했던 파이참에서 colab으로 갈아탔다

 

 

 

먼저 구글 드라이브에서 새로 만들기 - google Colaboratory 파일을 만든다 (없다면 더보기로 설치)

 

 

 

 

 

우선 내 드라이브와 마운트 시킨다

 

 

 

 

런타임 유형을 GPU로 바꿔준다

 

 

 

!git clone https://github.com/ultralytics/yolov5
%cd yolov5 
!pip install -r requirements.txt

코드 추가해서 두개 따로 실행해줌

yolo 설치하기!

근데 섹션 끊어지면 깔았던 욜로가 사라져서 해결방법을 찾아야 한다

 

728x90

 

 


 

라벨링 할 이미지를 저장하자

테스트용으로 100개정도씩만 저장했다

 

 


 

드디어 이미지를 라벨링 할 차례!!!

labelImg를 설치해야 하는데 아주아주 난항을 겪었다 ㅎㅋ

 

 

cmd로 깔면서 생난리를 쳤다가 결국 아나콘다가 깔려있는 개발용 계정으로 다시 로그인했다

 

 

 

우선 Anaconda Prompt를 관리자 권한으로 실행한다

 

 

 

 

https://github.com/tzutalin/labelImg여기서 우선 zip파일을 다운로드 한다

 

GitHub - tzutalin/labelImg: 🖍️ LabelImg is a graphical image annotation tool and label object bounding boxes in images

🖍️ LabelImg is a graphical image annotation tool and label object bounding boxes in images - GitHub - tzutalin/labelImg: 🖍️ LabelImg is a graphical image annotation tool and label object bounding b...

github.com

 

 

 

압축을 풀고 폴더 경로를 복사한다

그다음에 프롬프트에서 그 폴더로 이동해준다

 

 

 

conda install pyqt=5
conda install -c anaconda lxml
pyrcc5 -o libs/resources.py resources.qrc

세줄의 코드를 실행해준다

 

 

 

잘 실행이 되었다면 

python labelImg.py

이걸 입력한다

 

 

그럼 labelImg가 드디어 실행 됨!!!!!!!!!!!!!

 

SMALL

이미지 라벨링 시작!

 

 

 

우선 라벨 클래스들을 수정해준다

 

 

 

 

실행이 되었으면

이미지들을 저장해놨던 폴더를 열어준다

 

 

 

save 포맷은 yolo

 

 

 

 

저장 폴더를 설정해준다

 

 

 

원하는 부분에 박스를 그려준다

 

 

 

 

분류를 선택하고 세이브 누른 뒤 넥스트 이미지로 넘어가며 계속 진행해준다

 

 

 


 

드디어 학습Time~~~~~

 

 

https://sssbin.tistory.com/163

 

labelImg 이용해서 데이터 만들고 YOLOv5 학습시키기

1. labelImg 실행 2. Open Dir -> 이미지 파일들 저장된 폴더 열기 / Change Save Dir -> 파일 저장할 폴더 지정 3. 처음 작동시키면 yolo 라고 써있는 부분에 PascalVOC 라고 적혀있을텐데 한번 눌러서 yolo로..

sssbin.tistory.com

 

오늘도 수파고의 도움으로 하는 중

 

 

 

colab에서 먼저 욜로 설치 되어있는지 확인하고 사라졌으면 재설치,,,,

 

 

먼저 드라이브에 폴더를 새로 만들고 그 안에 data.yaml파일과 images,labels 폴더를 만든다

 

 

 

 

 

아까 사용한 이미지들과 라벨링 한 파일들을 모두 넣어준다

 

 

 

 

data.yaml파일을 내 라벨 클래스들로 바꿔준다

(저거랑 순서, 이름 동일하게)

 

 

 

 

그 다음엔 yolo폴더의 파일에서 클래스 수를 수정한다

 

 

!python train.py --data /content/drive/MyDrive/sprite/data.yaml --cfg /content/yolov5/models/yolov5s.yaml --weights yolov5s.pt --batch 8 --epochs 200 --name sprite

드디어 학습 시작!!!

명령어 앞에는 %를 넣어야 하고 실행은 앞에 !를 넣어야 한다

 

 

 

실행 중~.~

200번 돌리느라 개오래걸림

 

 

 

200번을 돌고 sprite2폴더가 생성되었다 (왜 2번인지는 모르겠다)

 

 

 

!python val.py --data "/content/drive/MyDrive/sprite/data.yaml" --img 1280 --weights "/content/yolov5/runs/train/sprite2/weights/best.pt"

검증을 해준다

 

 

 

!python detect.py --img 1280 --weights "/content/yolov5/runs/train/sprite2/weights/best.pt" --source "/content/drive/MyDrive/sprite/testsprite.png"

새로운 이미지를 가져와서 테스트 돌려보기!!!

 

 

 

앞모습이라 그런지 예측이 잘 된다

다각도에서 찍은 사진을 학습 데이터에 얼마나 추가하는지가 관건인것 같다

 

 

 

 

 

실행할 때마다 자꾸 폴더 사라지니까 욜로 파일을 zip파일로 다운받자!

!zip -r /content/yolov5.zip /content/yolov5

실행하면 zip파일 생성되고 다운로드가 가능하다

 

 

 

 

 

 

 

728x90
LIST