Преобразование расстояния бинарного изображения

Преобразование расстояния обеспечивает метрику или меру разделения точек в изображении. bwdist функция вычисляет расстояние между каждым пикселем, для которого задано значение off (0) и ближайший ненулевой пиксель для бинарных изображений.

The bwdist функция поддерживает несколько метрик расстояния.

Метрики расстояния

Метрика расстояния

Описание

Рисунок

Евклидов

Евклидово расстояние является прямолинейным расстоянием между двумя пикселями.

Городской блок

Метрика расстояния блока города измеряет путь между пикселями на основе 4-связного района. Пиксели, ребра которых касаются друг от друга на 1 модуль; пиксели диагонального касания 2 модули разнесены.

Шахматная доска

Метрика расстояния шахматной доски измеряет путь между пикселями на основе 8-связного района. Пиксели, ребра или углы которых касаются, расположены на расстоянии 1 модуля.

Квазиевклидово

Квазиевклидова метрика измеряет общее евклидово расстояние вдоль набора горизонтальных, вертикальных и диагональных линий сегментов.

Этот пример создает бинарное изображение, содержащее два пересекающихся округлых объекта.

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,[])