我想知道如何使用这些给定的数据项来计算图片的颜色深度:
- 图片的分辨率。
- 图片中的颜色数量。
我实际上需要计算显示图片所需的存储空间(以 MB 为单位),但我在计算中遗漏了颜色深度。
谢谢!
最佳答案
2^16
颜色并不代表 RGB这意味着像素颜色信息有
16bits -> 2^16 -> 65536
种可能性。它可以是RGB、YUV、灰度或其他任何形式。图片大小(以字节为单位)
size = width[pixels] * height[pixels] * pixel size[BYTE]
对于 16 位像素,每个像素 2 字节,因此:
size = width*height*2 [Bytes]
要获得以 MB 为单位的大小,只需将其除以
1024*1024
(或右移 20 位)颜色数量的像素大小(以字节为单位)
pixel size = ceil(log2(num of colors)/8)
关于colors - 颜色深度计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14839052/