이미지 주석화 과정 상세 설명은 이미지 주석화 작업에서 확인할 수 있다
기본 설정
- polygon형태의 주석화를 이용해 확인한다
- json 파일 형식이 필요함으로 labelme 주석화 툴을 이용한다
- labelme를 이용해 주석화 한 파일(이미지, json파일)을 하나에 폴더에 정리 후 👇 실행
데이터셋의 양이 많을수록 인식이 잘되지만 예시를 위해 하나의 데이터로 실습한다 많은 양의 데이터 주석화 후 실행이 원칙
anaconda prompt(관리자권한) 실행
>pip install pyqt5
>conda install git
>cd C:\Users\user\Desktop\기타\polygon #정리한 폴더 경로
>git clone http://github.com/Tony607/labelme2coco.git
<생성된 labelme2coco 폴더>
생성된 labelme2coco 폴더 안에 images 폴더 안에 임의로 들어있는 파일을 모두 삭제 해준다
labelme2coco > images > 파일 전체 삭제 > 주석화 한 파일(이미지, json파일) 넣어주기
👉3에있는 파일을 모두 삭제해준 후 1에있는 파일을 3에 넣어준다.(이미지, json 파일)
👉실행 후
>cd labelme2coco
>python labelme2coco.py images
trainval.json 파일 생성
🖐unicode 오류가 생기는 경우 코드 수정이 필요하다
오른쪽과 같이 31번째 줄에 아래 코드를 삽입해준 후 다시 실행시킨다
, encoding='UTF8'
anaconda prompt(관리자권한) 실행
>cd labelme2coco #labelme2coco 파일이 있는 경로
>jupyter notebook
COCO_Image_Viewer.ipynb 폴더 실행
👉모든 코드 Shitf+enter 실행 후 주석화가 잘 되었는지 확인해준다
🖐이때 오류가 발생하는 경우
trainval.json 내의 파일 경로를 확인해준다.
파일 경로의 경우 절대경로와 상대경로가 있다
1) 절대경로
trainval.json 폴더는 유니코드 형태로 파일명 표시
ex) 아래와 같이 하나의 옳은 경로만 되어있는지 확인한다 (여러 번 중첩되어 오류가 나는 경우가 발생 )
"file_name":"\uacbd\ubcf5\uad81_\uac74\uc219\ubb38_\uac74\uc219\ubb38_13.JPG"
2)상대경로
현재 내 경로에서 시작되는 파일명으로 경로나 이름이 안맞을시 오류가 난다
ex)"file_name": "ice-cream-926426_640.jpg"
파일명 확인
4번째 코드 실행시 나타나는 파일명과 trainval.json 폴더의 파일명이 일치한지 확인해준다
이때 아래 코드에서 확인하는 이미지 번호가 위의 실행 결과에 존재하는지 확인해야한다
html = coco_dataset.display_image(0, use_url=False)
IPython.display.HTML(html)