[ 의료영상 ] Medical Image Segmentation (3.Region Growing / Watershed Algorithm)
MOOC 강좌 '컴퓨터비전, 머신러닝, 딥러닝을 이용한 의료영상분석' 강의를 리뷰 및 정리한 게시물입니다.
Region Growing
왼쪽 사진은 Thresholding Method의 결과물이고, 오른쪽 사진은 해당 사진에 Morphological Processing을 진행한 결과물이다. Noise와 Hole이 제거되었음을 확인할 수 있다.
(마크업으로 칠한 사진이다. 실제로 해당 프로세싱 진행한 사진 아니다,,)
해당 이미지를 인풋으로 하여 사용자 입력 지점을 받으면 해당 지점으로부터 퍼져나가면서
픽셀값이 255가 아닌 지점까지 그 영역을 넓힌다.
Region Growing에 해당하는 부분만 Labeling 되어 원하는 부분만
Segmentation 이 진행된 Binary Map을 얻을 수 있다.
Binary Segmentation이 아닌 우측과 같은 예시를 들어보자. 검은색 면의 특정 위치가 사용자의 입력, 우리가 원하는 Segmented Area는 보라색을 제외한 나머지 부분 이라고 가정하자. 이때 원하는 영역을 얻으려면 Threshold가 필요하다.
ㅣIntensity(i) - Intensity(j)ㅣ < Threshold 면 Region Growing
이렇게 조건을 걸어두면 그 색이 비슷한 옅은 파란색과 짙은 파란색에서는 Region Growing을 지속하고, 보라색 계열이 닿는 순간 그 픽셀값의 차이가 임계치를 넘어 Region Growing을 중지할 것이다.
Watershed Algorithm
Region Growing과 연관성이 있는 기법 중 하나로 Watershed Algorithm이 있다.
해당 알고리즘은 Cell Segmentation과 같이 일일이 Region Growing을 진행할 입력값을 입력하기 까다로운 Task에 적용된다.
해당 이미지의 특정 행을 그래프로 그려본다고 생각하자.
그림으로 봐야 이해가 쉽다.
Cell의 중심부에 해당하는 밝기가 가장 낮은 부분으로부터 Region Growing을 해나간다고 생각해도 괜찮을 것 같다. Intensity의 높낮이만으로도 Segmentation이 가능하지만 Marker를 인풋으로 정의함으로써 붙어있지만 두 개의 서로 다른 Cell을 구분하는 등 보다 정교하게 Segmentation을 진행할 수 있다는 점에서 장점이 있다.
지금까지는 영상의 Intensity 정보를 바탕으로 Segmentation을 진행하였다.
다음 게시물부터는 조금 더 발전된 형태의 기법을 공부하자.