본문 바로가기
AIML 분야/Segmentation

[데이터셋 논문] CholecSeg8k: A Semantic Segmentation Dataset for Laparoscopic Cholecystectomy Based on Cholec80

by 포숑은 맛있어 2021. 10. 29.
반응형

읽는다 논문

 

 

CholecSeg8k: A Semantic Segmentation Dataset for Laparoscopic Cholecystectomy Based on Cholec80
https://arxiv.org/pdf/2012.12453.pdf

 

IPCAI 2021 논문이다.

https://www.kaggle.com/newslab/cholecseg8k 데이터셋 다운로드 링크

그런데 아직 kaggle에 정의된 task도 없고, 스타터 코드는 그냥 데이터 불러오고, 데이터 통계량 플랏해주는 내용 외에 없다. discussion 등을 뒤져봐도 마찬가지. 논문에도 baseline method같은게 전혀 없어서 성능이 어느정도 나와야 하는지는 미지수이다.

 

https://www.youtube.com/watch?v=pcSXRGGcMjQ 유투브 링크

 

 

뭐하는 논문인가요?

  • 데이터셋을 릴리즈 하였음
  • Task: Semantic Segmentation
  • Domain: 담낭적출 수술 (복강경)

 

데이터셋 관련 정보

정보

  • Cholec80 Dataset에 포함된 프레임이다.
  • 13개의 클래스

클래스 정보

  • 8080장의 이미지, 3GB, 17개의 비디오 클립에서 추출
  • 각 비디오에서 (전부는 아니고 선택한 구간에 한해) 80 프레임씩 연속적으로 어노테이션 되어있음.
    총 101개의 뭉텅이가 있기 때문에 8080장의 이미지인 것.
  • 854*480 resolution
  • 각 프레임마다 3장의 mask가 있음.
    • color mask (visualization 용)
    • annotation mask used by annotation tool
    • watershed mask (학습하는 용도)
  • Pixel Annotation Tool 사용하였음. output format PNG, 위에 언급한 3가지 마스크를 만들어줌.
    https://github.com/abreheret/PixelAnnotationTool 
  • 데이터 imbalance 문제가 있다.
    아래 그래프는 픽셀단위로 통계를 냈는데, 수술에서 자주 등장하는 도구(L hook electrocautery and grasper)임에도 차지하는 면적 자체는 작다.

이건 픽셀단위로 통계낸 것

 

어디서 만들었지? + 어노테이션 tmi

  • 일단 Cholec80의 경우, CAMMA (Computational Analysis and Modeling of Medical Activities) research group, as the base.
  • 위 그룹이 the University Hospital of Strasbourg, IHU Strasbourg, and IRCAD 와 협력해서 만듦
  • Surgeon 13명, 25 fps.
  • 이 논문을 쓴 곳에서는 Cholec80에서 프레임 선별하고 어노테이션하는 등의 작업을 했음.
    대만의 과학기술부 지원을 받아 진행된 연구이다.

  • liver와 gallbladder를 인식하려고 만든 데이터셋. 그래서 뭉뚱그려놓은 클래스도 2가지 있다.
  • gastrointestinal tract: stomach, small intestine, 주변 tissues.
  • liver ligament: coronary ligament, triangular ligament, falciform ligament, ligamentum teres (hepatis), ligamentum venosum, and lesser omentum.

 

아래는 예시.

 

 

왜 segmentation dataset을 만들었지?

논문 Introduction 파트에 설명되어있다.

내시경 검사는 보통 위, 식도, 대장 처럼 수술없이는 보기 어려운 장기를 진단하기 위해서 많이들 한다.

카메라를 넣어서 이리저리 움직여가며 녹화를 할건데, 결과를 분석하는데 영상의 퀄리티가 중요할 것이다. 이게 operator의 숙련도에 굉장히 의존적이다.

그래서 컴퓨터를 활용하여 (CAS) endoscopic surgery에 도움이되는 정보를 수술중에 제공한다. 이런 시스템은 magnetic이나 radio-based 외부 센서를 활용하여 사람 몸에 endoscope location을 추정한다. 그런데 이게 어려운게, 논문 [2]의 경우에는 센서를 16개를 사용하여 5.6mm localization accuracy를 확보하는 수준이기 때문.

한편으로는 SLAM이라는 분야가 있는데, Simultaneous Localization and Mappling의 약자로, 카메라 위치를 localization 하기 위한 기법이며 이미지 기반으로 수행한다. real-time으로 3D map을 생성하는 것이 최종 목적이며, 미리 reference data를 준비해둔 것과 현재 sensed data를 같이 활용하여 3d location을 알 수 있다. 여기서 reference 데이터를 미리 얻는다는게 어떤 느낌이냐면, 256 beam LiDAR(라이다 센서. 레이저 쓰는 그거.)와 GPS-RTK(GPS기반인데 오차보정 하는거. 암튼 비쌈)를 통해서 point cloud map을 얻어놓고 시작하는 것. 어쨌거나 SLAM을 잘 하려면 reference data가 아주 정확해야함. 그런데 우리가 다루려는건 endoscopy라서 GPS같은걸 활용하기가 어려움. 그러면 reference data를 endoscopy에서는 어떻게 해야할까? 

그래서 semantic segmentation, object detection등을 활용할 수 있겠는데, 역시나 이 분야에는 데이터셋이 잘 없다.

 

유투브 링크 들어가보면 intro에 설명한 SLAM이라든가 non rigid object registration을 하는 예시도 있다!

 

 

 

반응형

댓글