The distance transform provides a metric or measure of the separation of points in the image. The bwdist
function calculates the distance between each pixel that is set to off
(0
) and the nearest nonzero pixel for binary images.
距离变换提供了图像中每个点分离(离散)的度量方法。 bwdist函数计算每个像素到设置为0的像素的距离。
K>> bw = zeros(5,5);
%把(2,2)和(4,4)设置为测试点
bw(2,2) = 1;
bw(4,4) = 1
bw =
0 0 0 0 0
0 1 0 0 0
0 0 0 0 0
0 0 0 1 0
0 0 0 0 0
%计算图像中每个点到测试点之间的距离
K>> [D,IDX] = bwdist(bw)
%返回的D就是每个像素点到测试点的欧几里得距离
D =
5×5 single matrix
1.4142 1.0000 1.4142 2.2361 3.1623
1.0000 0 1.0000 2.0000 2.2361
1.4142 1.0000 1.4142 1.0000 1.4142
2.2361 2.0000 1.0000 0 1.0000
3.1623 2.2361 1.4142 1.0000 1.4142
%返回的IDX 就是每个像素点测试时候选择的测试点的序号
IDX =
5×5 uint32 matrix
7 7 7 7 7
7 7 7 7 19
7 7 7 19 19
7 7 19 19 19
7 19 19 19 19