Hi,
The function imshow(I,[low high]) allows you to set the display range for a grayscale color based on the parameters low and high. Can the same be done for an RGB color without manually editing the array?
Thanks!

 Respuesta aceptada

Image Analyst
Image Analyst el 26 de Dic. de 2011

0 votos

No, it can't. It happens automatically. Even for 16 (48) bit color images, it automatically scales them to 8(24) bit for display on your 8(24 or 32) bit computer monitor. If you didn't want that or like how that looks you'll have to actually change your array before you display it.

3 comentarios

Dan
Dan el 26 de Dic. de 2011
Yeah, when a Google search wasn't coming up with anything I figured as much. Thanks for the confirmation.
Felipe Bayona
Felipe Bayona el 3 de Mayo de 2021
Hello Image Analyst
How must be the array changed to allow the [low high] intensity definition in RGB?
Thanks
Image Analyst
Image Analyst el 4 de Mayo de 2021
You would have to scale the image before passing it to imshow(). Use rescale() and then cast it to either uint8 or uint16 or have it be a single or double within the range 0 to 1.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Display Image en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

Dan
el 26 de Dic. de 2011

Comentada:

el 4 de Mayo de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by