Deep Learning

YOLO에 적용할 COCO Json을 txt로 바꾸자!

해시브라우니 2024. 1. 10. 22:29

 

이번 프로젝트로 진행중인 Yolo를 학습시키기 위해서 COCO Dataset의 Annotation파일인 json을 txt로 바꾸는 과정이 필요했는데 어디 잘 밝혀진 곳들이 없는 것 같더라구요.. YOLO쪽에서 만들어놓은 JSON2YOLO도 README에는 어떻게 적용하는지 잘 안써져 있었고 아마 코딩 고수들은 보고 딱 알았을거같은데 전 아무리 python general_json2yolo.py 를 해도 실행이 안되더라구요..

 

그래서 직접 import해서 사용했습니다. 

 

먼저 https://github.com/ultralytics/JSON2YOLO 해당 링크에서 clone할 링크를 복사해주고

anaconda로 가상환경 하나 파준다음에 pip install -r requirements.txt 실행해 줍니다. 여기까지가 기본적인 단계이고. python 파일을 뜯어서 경로가 다르면 수정을 해주어야합니다. 저 같은 경우는 annotation이 들어있는 (기존 JSON) 경로를 일부 수정하였습니다. 

 

아마 python general_json2yolo.py 로 하는게 분명 있을텐데 그 부분을 왜 못해결했는지 모르겠습니다. ( if __name__ = __main__도 있는데 말이지) 

 

쨌든 그래서 다시 돌아와서 저는 아래 코드를 사용했습니다. . .

from general_json2yolo import convert_coco_json
json_dir=" ../ ~~~ " #경로 입력해주셔요
convert_coco_json(json_dir=json_dir, use_segments=False, cls91to80=True)
#전 Segment필요없어서 False했어요

 

정말 간단하게 끝났네요... 

 

직접 파일 열어보면

 잘 완성된것을 확인할 수 있습니다.

분명 이 방법이 아닐거같긴하다만 도저히 못찾겠는 분들에게 최악의 상황 차선책이 되었으면 합니다..