我想知道如何使用这些给定的数据项计算图片的颜色深度:
- 图片的分辨率。
- 图片中颜色的数量。
我实际上需要以 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)