-1

我有两个矩阵,一个矩阵的值范围为0-1,另一个矩阵的值仅为01。我有兴趣仅计算与等于 的像素的距离1。在这种情况下,我想创建一个新矩阵,该矩阵仅包含具有1来自第二个对象的值的像素,然后获取到这些对象的距离。但是,在这种情况下,尺寸会有所不同。

注意:这两个矩阵原本是相同维度的。但是,有许多不感兴趣的细胞(即;那些有价值的细胞0

如何对不同尺寸的物体进行这种距离计算?

谢谢。

4

1 回答 1

0

如果像素的位置对计算不重要,那么您可以像这样使用逻辑索引:

A = [0 1 0 0 1 1 0 0 1 1 1]; 
B = rand(size(A));
nonZeroInd = A == 1;
Anz = A(nonZeroInd);
Bnz = B(nonZeroInd);
dist = Bnz - Anz;

如果您需要矩阵中的结果与原始位置相同,那么您可以这样做

C = zeros(size(A));
C(nonZeroInd) = dist;
于 2013-03-23T12:38:27.607 回答