민프

[AI] 나만의 데이터 셋 만들기 - 1 (feat. labelme, jupyter notebook) 본문

[AI | ML]

[AI] 나만의 데이터 셋 만들기 - 1 (feat. labelme, jupyter notebook)

민프야 2022. 5. 12. 11:52

순서는

1. 데이터 셋을 만들기 위해서 다운로드를 하는 부분

2. Labelme에서 Polygon 작업하는 부분

3. jupyter notebook에서 라벨링 한 부분이 잘 적용되었는지 확인하는 부분

으로 나누겠습니다.

 

 

1 - 아나콘다 다운로드

https://www.anaconda.com/products/distribution

 

Anaconda | Anaconda Distribution

Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine.

www.anaconda.com

아나콘다를 사용하는 이유? 
인공지능 프로젝트를 하다보면 여러 라이브러리들을 다운받게 되는데 이떄 라이브러리들 간의 의존성이 복잡하게 되어서 잘 동작하는 코드의 오류를 일으킬 수 있다. 
따라서 아나콘다는 가상환경을 만들어서 각 가상환경 별로 독립적인 패키지 버전 관리가 가능하다는 장점이 있기에 사용한다. 

 

1 - 아나콘다에서 git install 하기

1 - 라벨링 데이터를 저장해 줄 폴더로 이동 후
labelme 라벨링을 coco 포멧으로 변환해주는 코드 실행을 위해 깃헙을 클론
git clone http://github.com/Tony607/labelme2coco.git

파일 경로에 git clone한 폴더가 생성 되었는지 확인

1 - Labelme 툴 다운로드 (Install Anaconda, then in an Anaconda Prompt run:)

https://github.com/wkentaro/labelme#windows

conda create --name=labelme python=3
conda activate labelme
pip install labelme

2 - Labelme 툴 실행

아나콘다를 실행 후 

labelme

명령어 실행하면 (왼쪽 사진) labelme 프로그램이 실행된다. (오른쪽 사진)

Labelme 툴 파일 경로 설정 및 Polygons 작업하기

-Open Dir 클릭 후 파일 경로 설정

경로 설정을 git clone한 기준으로 한다면 
git clone에서 받아온 coco Image데이터셋이 나오게 되는데 (위 사진 참고)

 

이미 라벨링이 되어있는 것을 확인할 수 있다. (아래 사진 참고)

coco Dataset

만약 나만의 라벨링 데이터를 만들고 싶다면 이 이미지와 JSON파일들을 전부 삭제시키고 라벨링 작업물 들을 여기에다 저장시키면 된다. 
그럼 이제 모든 Image 데이터를 삭제하고 나만의 라벨링 데이터를 만들어보자

 

왼쪽 사진과 같이 폴리곤 작업을 하고 난 뒤 저장을 눌러주면 해당 라벨링에 대한 정보를 JSON 파일로 저장되게 된다.

 

이 사진 파일과 JSON 파일을 같이 labelme2coco\images 에 넣어주자. 

그 다음 아나콘다의 경로를 labelme2coco로 이동한 다음

coco형식으로 변환해주는 파이썬을 실행해주면 trainval.json파일이 잘 생성된 것을 확인할 수 있다.


anaconda prompt -> labelme2coco폴더로 이동 jupyter notebook 실행 -> COCO_Image_viewer.ipynb 클릭

Jupyter Notebook에서 한줄한줄 실행하면 이렇게 라벨링 된 결과를 확인할 수 있다. 

Comments