How to create a gray scale image

24 次查看(过去 30 天)
Hi, i want to create a gray scale image in matlab so I write a matrix 5x7 lets say A=[0 0 0 0 0 0 0; 80 80 80 80 80 80 80;200 200 200 200 200 200 200; 110 110 110 110 110 110 110; 160 160 160 160 160 160 160;255 255 255 255 255 255 255] . Then i use the imshow command and I expect an image where every row has a different intensity, the first black, the last white and the others with intermediate values. Instead of that i get a picture where only the first row is black and the rest of them are white. what am i doing wrong?

采纳的回答

Image Analyst
Image Analyst 2013-11-29
A is a double. Cast it to uint8:
imshow(uint8(A));
or else use [] if you want to keep A as a double:
imshow(A, []);
  7 个评论
Image Analyst
Image Analyst 2013-12-1
It's fine if it's a double. You'll get more accuracy that way. You only need to convert it to an integer if you want to do certain things, like store it in a standard image format.
maria
maria 2013-12-1
oh ok, thank you so much for your help :)

请先登录,再进行评论。

更多回答(0 个)

类别

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