Writing processed image into new image not working as expected

1 次查看(过去 30 天)
i am trying this:
I(1, 1, :) = [26, 45, 34];
the pixel is white even though the right colors are printed if i check I(1, 1)...

回答(2 个)

Jyothis Gireesh
Jyothis Gireesh 2020-1-20
I am assuming here that the matrix “I” is of datatype double and “imshow()” function is used to display the image. Since the expected range of values for a double image is in between 0 & 1, the values assigned to the pixel at (1,1) are rounded off to the maximum value (1) which using “imshow()”. Hence the particular pixel appears to be white.

Image Analyst
Image Analyst 2020-1-20
You can try
imshow(I, []);
though if your image is double, and all the other pixels are in the range 0-1, all the other pixels will display as very dark. You might try dividing by 255:
I(1, 1, :) = [26, 45, 34] / 255;

类别

Help CenterFile Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by