Main Content

이진 영상의 거리 변환

거리 변환은 영상에 있는 점 간의 분리 정도를 측정하는 메트릭을 제공합니다. bwdist 함수는 off(0)로 설정된 각 픽셀과 이진 영상의 0이 아닌 최근접 픽셀 사이의 거리를 계산합니다.

bwdist 함수는 몇 가지 거리 측정법을 지원합니다.

거리 측정법

거리 측정법

설명

그림

유클리드

유클리드 거리는 두 픽셀 사이의 직선 거리입니다.

Image data and distance transform for Euclidean distance

도시 블록

도시 블록 거리 측정법은 4-연결 이웃을 기준으로 픽셀 간의 경로를 측정합니다. 경계가 서로 닿는 픽셀은 간격이 1 단위이고, 경계가 대각으로 닿는 픽셀은 간격이 2 단위입니다.

Image data and distance transform for city block distance

체스보드

체스보드 거리 측정법은 8-연결 이웃을 기준으로 픽셀 간의 경로를 측정합니다. 경계 또는 코너가 서로 닿는 픽셀은 간격이 1 단위입니다.

Image data and distance transform for chessboard distance

준유클리드

준유클리드 측정법은 가로, 세로 및 대각 선분 집합을 따라 총 유클리드 거리를 측정합니다.

Image data and distance transform for quasi-Euclidean distance

이 예제에서는 교차하는 2개의 원형 객체를 포함하는 이진 영상을 만듭니다.

center1 = -10; 
center2 = -center1; 
dist = sqrt(2*(2*center1)^2); 
radius = dist/2 * 1.4; 
lims = [floor(center1-1.2*radius) ceil(center2+1.2*radius)]; 
[x,y] = meshgrid(lims(1):lims(2)); 
bw1 = sqrt((x-center1).^2 + (y-center1).^2) <= radius; 
bw2 = sqrt((x-center2).^2 + (y-center2).^2) <= radius; 
bw = bw1 | bw2; 
figure
imshow(bw)

이진 영상의 반전 영상에 대한 거리 변환을 계산하기 위해 bwdist 함수를 사용합니다. 거리 변환 영상에서 두 원형 영역의 중심이 얼마나 흰지 확인합니다.

D = bwdist(~bw); 
figure
imshow(D,[])

Grayscale image in which objects are white and pixels become darker as the distance from the objects increases.

참고 항목

관련 항목