How do RGB values from 0 to 1 get converted to a number from 0 to 255?

53 vues (au cours des 30 derniers jours)
Anna
Anna le 28 Août 2014
Réponse apportée : Tabitha le 28 Août 2014
Is the RGB value simply scaled to a number from 0 to 255 to determine the colour of a pixel on the screen?

Réponses (2)

Image Analyst
Image Analyst le 28 Août 2014
RGB images have 3 color channels (planes). The values in each plane can be in the range of 0-255 if you want to display them.
  3 commentaires
Adam
Adam le 28 Août 2014
It is a simple linear mapping. I don't know off-hand whether [0.5 0.5 0.5] maps to [128 128 128] or [127 127 127], but the scaling is definitely linear.
Image Analyst
Image Analyst le 28 Août 2014
Modifié(e) : Image Analyst le 28 Août 2014
The color of the pixel is 3 numbers for R, G, and B. If you're displaying them on the screen, they must be uint8 which means they'll be in the range 0-255. Of course you can work with any range you want (0-1 or -999 to +12345 or whatever) or even floating point values internal to your program - nothing wrong with that. But to display you'll need to scale into the range 0-255 and cast to uint8.

Connectez-vous pour commenter.


Tabitha
Tabitha le 28 Août 2014

Catégories

En savoir plus sur Red dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by