why pixels values are unaltered even though after applying double?

11 ビュー (過去 30 日間)
gayathri rajkumar
gayathri rajkumar 2018 年 1 月 11 日
コメント済み: Walter Roberson 2018 年 1 月 11 日
when i have applied double to my image the pixel values are not changing they are not coming in the range [0,1]?

採用された回答

Walter Roberson
Walter Roberson 2018 年 1 月 11 日
You need im2double for that.
  2 件のコメント
gayathri rajkumar
gayathri rajkumar 2018 年 1 月 11 日
thank u but whats the difference between im2double and double?
Walter Roberson
Walter Roberson 2018 年 1 月 11 日
double() applied to an integer converts to the double precision number with the same signed magnitude as the integer. For example A = uint8(17); B = double(A); then afterwards B would be 17.0 -- same numeric value.
im2double() applied to an integer converts to the double precision number with the same relative value for the purposes of images. Images in MATLAB can be represented by uint8, uint16, int16, single, or double. For uint8 and uint16, the values are understood to designate fractions compared to the maximum value of that integer class, so for A = uint8(17); then in an image, A would be interpreted as designating 17/255 of maximum intensity, and im2double() would convert it to 17.0/255.0 = approximately 0.0667 . uint16(17) would represent 17/65535 of maximum intensity and im2double() would convert it to 17.0/65535.0.

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

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by