본문 바로가기

딥러닝

[YOLO]yolov7을 이용한 오토 라벨링

 

오늘은 yolov7을 이용하여 오토라벨링을 해볼려고 합니다.

 

오토라벨링이라고 표현하기는 조금 어색한감이있지만 데체할 다른 용어가 없네요ㅜ

 

기본셋팅 환경은 아래와 같이 진행 하였습니다.

 

anaconda 가상환경(python=3.10.13)

CUDA=11.4

cudnn=8.5

pytorch=1.12.0

torchvision=0.13.0

 

https://jin-00.tistory.com/2

 

[YOLOv7]ubuntu환경에서 YOLOv7 실시간 객체 인식

저의 컴퓨터 환경은 ubuntu 20.04.02 환경에서 진행하였습니다. 기본셋팅 환경은 아래와 같이 진행 하였습니다. anaconda 가상환경(python=3.10.13) CUDA=11.4 cudnn=8.5 pytorch=1.12.0 torchvision=0.13.0 github를 참고 하

jin-00.tistory.com

https://jin-00.tistory.com/7

 

[YOLOv7] yolov7에서 커스텀 학습하기

안녕하세요. 오늘은 yolov7에서 제가 직접 라벨링한 사진들을 이용하여 커스텀학습을 진행 할 예정입니다. 저의 컴퓨터 구성환경은 아래와 같습니다. anaconda 가상환경(python=3.10.13) CUDA=11.4 cudnn=8.5 p

jin-00.tistory.com

 

오토라벨링을 하기전 인식하고 싶은 객체가 학습된 가중치 파일이 필요합니다.

위 2개의 링크를 참고하여 작업을 완료하시면 됩니다.

 

 

위 작업을 완료하면 내가 인식하고싶은 객체가 학습된 가중치파일이 생성됩니다.

ex) best.pt

 

우선 이 가중치파일을 이용하여 라벨링이 되지 않은 raw data를 detect할 것입니다.

(raw data는 이미지 파일로 준비 되어야합니다.)

 

 

yolov7 폴더 내부

 

yolov7/images

 

 

 

저는 라벨링을 하고 싶은 raw data를 yolov7/images 폴더 내부에 위치 하였습니다.

 

 

 

아래와 같이 명령어를 입력합니다.

 

best.pt는 사용자가 오토라벨링 하고싶은 객체가 학습되어 있어야 합니다.

python  detect.py --weights best.pt --source images/ --save-txt

 

명령어 입력

 

위 사진과 같이 명령어를 입력해주게 되면 yolov7/images 안에 있는 여러장의 raw data 이미지들을 객체 인식을 하게 됩니다.

 

 

 

 

 

인식된 라벨링 데이터 값은 yolov7/runs/detect/exp58/labels의 위치에 저장되어 있습니다.

 

 

 

바운딩 박스 값

 

위 사진과 같이 각각의 raw data 이미지에 대응되는 라벨링 값이 저장되어 있습니다.

 

 

이제 검증을 위해서는 Yolo_mark를 사용하면 됩니다.

 

 

Yolo_mark 사용방법은 아래의 링크를 참고 하시면 됩니다.

https://jin-00.tistory.com/5

 

[Yolo_mark] yolomark 설치 및 사용법

이번 포스팅에서는 라벨링 작업을 위해 ubuntu환경에서 yolomark설치 방법과 사용법에 대해 다루겠습니다. 먼저 cmake는 필수적으로 설치되어 있어야 하므로 설치가 안되신분은 아래링크를 클릭하여

jin-00.tistory.com

 

 

Yolo_mark를 이용하여 바운딩 박스가 잘못된부분이나 인식못한부분을 사용자가 직접 수정해주어야 합니다.

 

그래도 이전처럼 처음부터 하나하나 라벨링 하는 방법보다는 시간이 많이 단축되었습니다.