3

我有一个包含一些点(或对象)的图像。我想基于此图像创建另一个图像,以显示与这些对象的距离。例如,这个新图像应该在对象位置处具有最大值。matlab有什么解决办法吗?

在此处输入图像描述

4

1 回答 1

6

您可以使用bwdist它来计算二进制图像中每个像素与信号的距离。

%# read the image
img = imread('http://i.stack.imgur.com/Hc7ay.png');
%# convert to grayscale
gs = im2bw(img);
%# segment the objects
sig = gs~=1;
%# remove the border
sig = sig(5:end-4,5:end-4);

%# calculate the distance
distFromObjects = -bwdist(sig);

在此处输入图像描述

于 2012-12-05T19:13:18.413 回答