이미지 처리에서 중요한 기술 중 하나는 **이미지 분할(image segmentation)**입니다. 특히 그래프 기반 알고리즘인 Random Walker와 Graph Cut은 의료 영상, 객체 인식, 컴퓨터 비전 분야에서 널리 사용되고 있습니다. 이 두 알고리즘은 서로 다른 원리와 특성을 가지고 있으며, 상황에 따라 적절히 선택하는 것이 중요합니다.
이번 글에서는 Random Walker와 Graph Cut의 작동 원리와 특징을 정리하고, 그 차이점을 비교해보겠습니다.
Random Walker 알고리즘은 이미지나 데이터를 그래프(graph)로 모델링하고, 일부 픽셀에 라벨(label)을 지정한 뒤 나머지 픽셀의 라벨을 확률적으로 결정하는 방식입니다.
Graph Cut 알고리즘은 그래프의 노드와 엣지를 정의한 뒤, 전체 그래프를 최소 비용으로 두 개 이상으로 나누는(min-cut) 방식으로 이미지 분할을 수행합니다.
픽셀을 노드로, 픽셀 간 유사성을 엣지로 구성합니다.
foreground와 background에 시드를 지정한 뒤, 에너지 함수(Energy Function)를 정의합니다.
이 에너지 함수는 다음과 같은 항들로 구성됩니다:
최종적으로 이 에너지 함수를 최소화하는 컷(min-cut)을 계산합니다.
항목 | Random Walker | Graph Cut |
---|---|---|
기반 원리 | 무작위 산책 확률 기반 | 에너지 최소화 기반 (min-cut) |
출력 성질 | 부드럽고 연속적인 분할 결과 | 날카롭고 선명한 경계 |
수학적 도구 | 라플라시안 행렬, 선형 시스템 | MRF 기반 에너지 모델, min-cut/max-flow 알고리즘 |
라벨 필요 | 일부 픽셀에만 라벨 지정 (시드 기반) | foreground/background 시드 필요 |
노이즈 민감도 | 노이즈에 비교적 강함 | 노이즈에 다소 민감할 수 있음 |
계산 비용 | 선형 시스템 풀기 → 느릴 수 있음 | 빠른 알고리즘 존재 (Boykov–Kolmogorov 등) |
응용 분야 | 의료 영상, 약한 경계 탐지 | 객체 추출, 전경/배경 분할 |
상황에 따라 두 알고리즘 중 적절한 것을 선택하면 더 정확하고 자연스러운 이미지 분할 결과를 얻을 수 있습니다.