How can I default an array to show either 0's or 1's?

1 Ansicht (letzte 30 Tage)
onamaewa
onamaewa am 4 Mär. 2019
Beantwortet: Guillaume am 4 Mär. 2019
I have an array that is defined by:
pict(i, j) = pict(i, j) + (sum1^2 - sum2)/32;
The array is a 41 x 41 double, and yields the result:
untitled_1.jpg
I'm plotting this figure using:
image(Rx, (Ry-40), pict, 'CDataMapping', 'scaled')
The area (in yellow) at -11 on the y-axis is my maximum point in the image. Is there a way for me to manipulate my array to make a range of maximum values 1 and everything else 0?
  2 Kommentare
Guillaume
Guillaume am 4 Mär. 2019
What is "a range of maximum values" ?
onamaewa
onamaewa am 4 Mär. 2019
The values in the image go from 0 to 17, so a range a maximum values would be, for example, 16.5 to 17.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Guillaume
Guillaume am 4 Mär. 2019
If I understood correctly,
wantedarray = pict >= 16.5; %everything above 16.5 becomes 1, everything else 0
%or
wantedarray = double(pict >= 16.5); %if an array of double instead of logical is required

Weitere Antworten (1)

Steven Lord
Steven Lord am 4 Mär. 2019
If you're using release R2018a or later use the normalize function to normalize your data.

Kategorien

Mehr zu Images 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