영상 기반 객체 탐지 기술을 조사하다보면 COCO dataset을 이용한 기술이 많은 것을 알 수 있다. 이 COCO dataset은 뭘까?
1. COCO 데이터셋 조사
우선 cocodataset.org 사이트에 접속해서 알아봤다.
첫 화면에서 내가 궁금해했던 내용이 등장한다.
굳이 번역해보면,
COCO는 객체 탐지, 세그멘테이션, 캡셔닝을 위한 대규모의 데이터셋이다. COCO는 다음과 같은 특징을 가지고 있다.
- 객체 세그멘테이션
- 컨텍스트 내의 인식
- 슈퍼픽셀 stuff segmentation(뭔지 모르겠는데)
- 330K 개의 이미지(200k이상이 레이블되어있다)
- 1.5 백만개의 객체 수
- 80개의 객체 카테고리
- 91개의 stuff 카테고리 (객체와 stuff의 차이가 뭘까? "task addresses thing classes (person, car, elephant), this task focuses on stuff classes" 라는 문구를 이용하여 추정해보자.)
- 이미지마다 5개의 캡션이 달려있음
- keypoints가 달려있는 250,000 사람들의 이미지
뉴스란에도 흥미가 가는 내용이 있다.
FiftyOne이라는 오픈소스 툴이 코코데이터 리소스에 접근하고 가시화를 해주면서 동시에 평가 툴 또한 재공해준다는 것이다. 알고리즘을 개발하게 된다면 주의깊게 볼만한 툴인 것 같다. 커스텀 데이터셋에 대한 평가 툴로 활용할 수도 있을듯..
실제로 어떤 데이터가 있는지 확인해보자.
COCO 2017 데이터셋에 들어있는 카테고리다. 매우 다양한 카테고리의 객체들에 대한 데이터를 가지고 있다.
카테고리를 골라서 서치를 하면 이런 형태의 결과물이 나온다. 이미지 위에 객체별 세그멘테이션 되어있는 이 형태가 바로 COCOdataset의 구성요소이다.
2. 커스텀 COCO Dataset 만들기
일단 툴이 있는지 먼저 조사해본다.
https://github.com/jsbroks/coco-annotator
이런게 있긴 한데.. 이슈를 보니 잘 작동안하는 모양...
옆자리 동료를 보니 비슷한 작업을 하고 있다.
https://github.com/PaddlePaddle/PaddleSeg
이 툴을 이용해서 작업하고 있는데 이걸로 편하게 작업할 수 있을 것 같다. 진행해보자.
위 툴이 아니라면
GIMP 등으로 레이어를 만들고 원본 이미지와 세그먼트를 입력한 레이어 이미지를 저장하고 이걸 파싱해서 자동으로 coco format으로 만들어주는 pycoco 같은걸 이용하면 되는 것 같은데.. 이 과정이 상당히 귀찮아보인다.
https://ukayzm.github.io/cocodataset/
https://blog.naver.com/prkim99/221981158599
https://www.youtube.com/watch?v=jftZBfMZj8k&ab_channel=MatthewHowlett
이상으로 COCO 데이터셋 조사 및 커스텀 데이터 만들기 포스팅을 마친다.
'인공지능 공부' 카테고리의 다른 글
EISeg running guide [win10] (0) | 2023.07.13 |
---|---|
PaddleSeg Running guide (0) | 2023.07.11 |
Physical Inertial Poser (PIP) 읽어보기 (0) | 2023.06.29 |
SOMA: Solving Optical Marker-Based MoCap Automatically 읽어보기 (0) | 2023.06.29 |
Openpose를 사용해보자 (0) | 2023.03.17 |