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

1 回表示 (過去 30 日間)
onamaewa
onamaewa 2019 年 3 月 4 日
回答済み: Guillaume 2019 年 3 月 4 日
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 件のコメント
Guillaume
Guillaume 2019 年 3 月 4 日
What is "a range of maximum values" ?
onamaewa
onamaewa 2019 年 3 月 4 日
The values in the image go from 0 to 17, so a range a maximum values would be, for example, 16.5 to 17.

サインインしてコメントする。

採用された回答

Guillaume
Guillaume 2019 年 3 月 4 日
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

その他の回答 (1 件)

Steven Lord
Steven Lord 2019 年 3 月 4 日
If you're using release R2018a or later use the normalize function to normalize your data.

カテゴリ

Help Center および File ExchangeImages についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by