2.2.1 图像的位深

对于灰度图像,在每个像素点上只有一个分量,即该点的亮度值。常用的表示像素值所需的数据长度有8 bit或10 bit两种,即图像的位深为8 bit或10 bit。

◎ 8 bit:即用8 bit(1 Byte)表示一个像素值,取值范围为[0,255]。

◎ 10 bit:即用10 bit表示一个像素值,取值范围为[0,1023]。

在目前的实际应用场景中,8 bit位深已经足够满足多数需求,且由于处理代价低、运算速度快,因此应用范围非常广泛。而10 bit位深表示的数据范围更广,可以对像素值进行更精细的表达,因此在特定场合下,10 bit位深的图像比8 bit位深的图像更具优势。

图2-3简单表示了像素值变化与亮度变化的关系。纯黑色与纯白色像素值分别定义为像素0和1,由于10 bit位深可表示的像素值数约为8 bit位深的4倍,因此对纯黑色与纯白色之间的灰度级别表现得更加精细,即图像质量更好。

图2-3

对于彩色图像,其每个像素点都包含多个颜色分量,每个颜色分量被称为一个通道(Channel)。图像中所有像素的通道数是一致的,即每个通道都可以表示为一幅与原图像内容相同但颜色不同的分量图像。以RGB格式的彩色图像为例,一幅完整的图像可以被分割为蓝(B分量)、绿(G分量)、红(R分量)三基色的单色图,如图2-4所示。

图2-4

对于RGB图像,每个分量都可以类比为灰度图像,即如果每个通道的位深为8 bit,则RGB图像中每个像素需要用24 bit(8 bit×3)表示。如果图像中包含用来表示图像透明度的Alpha通道,即图像为ARGB格式,则每个像素需要用32 bit(8 bit×4)表示。

在确定图像的位深后,根据图像的宽、高尺寸即可确定图像的数据体积。例如,RGB图像的宽、高为 1920像素×1080像素,每个颜色通道的图像位深为8 bit,则图像的数据体积为1920×1080×3×8bit,即49,766,400bit,约为6.22MB左右。