1

假设我有以下两个矩阵:

>> x = [1 4 3; 6 4 3; 6 9 3; 2 4 3; 5 4 0; 5 3 1; 6 4 7];
>> y = [0 0 1; 1 1 0; 1 1 0; 0 1 1; 0.2 0.8 0.54; 1 1 1; 0 0 0];

您可以将其x视为某个图像,以及每个元素对某个感兴趣区域的y隶属程度。x

假设我将那些x具有隶属度 = 1的元素设置为1,将其他元素设置0为如下:

x = zeros(size(y));
x(y==1) = 1;

在这种情况下,我将得到以下输出:

     0     0     1
     1     1     0
     1     1     0
     0     1     1
     0     0     0
     1     1     1
     0     0     0

现在,对于 的元素0,如何将它们的值替换y为相应位置的值?

谢谢。

4

1 回答 1

1

试试这个:

x(x==0)=y(x==0);

答:

x =

     0         0    1.0000
1.0000    1.0000         0
1.0000    1.0000         0
     0    1.0000    1.0000
0.2000    0.8000    0.5400
1.0000    1.0000    1.0000
     0         0         0
于 2013-02-23T20:07:20.207 回答