How to draw high-resolution images on client-side?

Any libraries, API, or tips are welcome. I am trying to draw Landsat 8 images using Canvas utility of Javascript on my browser. The grayscale reflectance values for Landsat 8 bands are from minimum -32768 and maximum +32767(int16). The Canvas utility offers RGBA for range 0-255. If I scale (-32768, 32767) range to (0,255), I am essentially missing the point of Landsat satellite taking good details pictures.

Answer

None. No browser can display more than an 8 bit color per channel in 0-255 range. No affordable monitor can actually display more than 10-12 bits of color per channel, most if not all consumer monitors out there have an 8 bit limitation. So you have no option other than somehow precondition the image.

I am essentially missing the point of Landsat satellite taking good details pictures.

No, just because you have high resolution does not mean that you cannot use it for edits even if you cannot display it. I use 32 bit float pictures all the time and I don’t feel like I’m losing out when converting them to 8 bits per channel.

Hell, all cameras record more than 8 bits per channel, but it’s then used to make HDR or otherwise better images when reducing to 8 bits per channel.

Attribution
Source : Link , Question Author : gaurav tripathi , Answer Author : Zach Saucier

Leave a Comment