Substituting values in a matrix

3 Ansichten (letzte 30 Tage)
med-sweng
med-sweng am 23 Feb. 2013
Say I have the following two matrices:
>> 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];
Where you can think of `x` as some image, and `y` the *degree of membership* of of each element of `x` to some region of interest.
Say I set those elements in `x` that have degree of membership = 1 to `1` and the other elements to `0` as follows:
x = zeros(size(y));
x(y==1) = 1;
In which case I will have the following output:
0 0 1
1 1 0
1 1 0
0 1 1
0 0 0
1 1 1
0 0 0
Now, for the elements of `0`, how can I substitute their values with the value of `y` in the corresponding location?
Thanks.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 23 Feb. 2013
x(x==0) = y(x==0)

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by