本文共 1109 字,大约阅读时间需要 3 分钟。
本节书摘来自华章计算机《嵌入式系统数字视频处理权威指南》一书中的第2章,第2.3节,作者:(美)Michael Parker Suhel Dhanani 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
颜色空间就是我们指定、产生和可视化颜色的方法。每个像素具有一定的颜色,简单地说,其为红色、绿色和蓝色的组合。我们用8比特表示每个颜色的值。如果像素是纯红的,像素的红色分量将会是11111111,且另外的两个分量(蓝和绿)将是00000000。
当这些值加到一起的时候,我们看到红色。如果另外两个颜色的值不为0,那么得到的颜色是红色和一些绿色及一些蓝色的混合。这个颜色空间是相加的——得到的像素颜色是每个颜色的强度的和,如图2.2所示。
RGB颜色模型用于旧式的CRT电视以及现在的液晶电视上显示颜色。每个值激发CRT面板上的红色、绿色和蓝色的荧光粉。然而对数字电视,得到的像素值存储在硬件中,然后被转换成电压,再点亮屏幕上的像素。还有包括伽马校正等其他问题,我们将在后面研究。
印刷机通过青色、紫色、黄色和黑色墨水在纸上的反射率和吸收率来描述颜色刺激。因而,它们工作在不同的颜色空间。
颜色空间有许多,其中更感兴趣的是YCrCb颜色空间,这种颜色空间通过明度(亮度)和Cr,Cb来表示编码的像素值,其中Y和Cr,Cb是RGB的组合,因为人眼对明度或亮度信号比较敏感,而对彩色不敏感,所以这种表示颜色的方法很有用。当像素值被分解成亮度和彩色时,我们能用较少的比特(低分辨率)来编码彩色信息,而且人眼不会觉得有差别。
YCrCb是编码RGB彩色的另一种方法,并且在处理中能用较少的比特,但是在视频显示前,我们必须将其重新转换成RGB。
从一个颜色空间(RGB)到另一个颜色空间(YCrCb)转换像素值的方法是将RGB空间中的每个分量乘以一个固定的常数——见图2.3。
当你开始从一个颜色空间到另一个颜色空间转换像素值时,每个步骤都有多个转换。
例如:
转换RGB到YCrCb→传输
→转换回RGB→处理视频→转换回YCrCb→传输→转换回RGB→显示转载地址:http://vtwzo.baihongyu.com/