文章插图
今天几乎所有的数字显示设备都基于某种类型的 RGB(红、绿、蓝)颜色模型 。RGB 是表示人类可以看到的大多数颜色的最有效方式(有一些颜色不能很好地产生 , 但这是另一个讨论) 。相机、手机、电视、计算机屏幕和数字视频都使用 RGB 颜色模型和 RGB 颜色空间显示颜色 。听到这个你可能会感到惊讶 , 毕竟 , 作为一个孩子 , 你没有被教过 RYB(红、黄、蓝)颜色模型吗?
文章插图
虽然您可能已经学习过 RYB 颜色模型 , 但不使用 RYB 的原因有几个 。首先 , 它在创造人类看到的所有颜色方面并不那么有效 。您可以从 RGB 中获得更多颜色 。这实际上就是我们不使用其他随机颜色模型的原因 。例如 , 您可以使用紫色、蓝色和粉红色的颜色模型 。与 RYB 或 RGB 相比 , 您将无法使用它制作很多颜色 , 但如果您愿意 , 您仍然可以这样做 。我们不使用 RYB 的第二个原因是因为人眼对绿色更敏感 。你对绿色最敏感 , 然后是红色 , 对蓝色有一点点 。
因为这些是人眼最能注意到的颜色 , 所以最常使用 RGB 颜色模型来创建不同的颜色空间 。颜色空间是颜色模型和将这些颜色解释或映射到您将看到的颜色的方法的组合 。有许多基于 RGB 的色彩空间 。解释 RGB 颜色模型的一种常见方法是包含一个额外的通道 - 这种颜色空间样式称为 RGBa 。每种颜色都有一个通道 - 红色、蓝色和绿色 , 然后是一个额外的通道 , 用于描述每个通道中每个像素的透明度 。
坚持使用 RGB 表示的基于 RGB 的色彩空间创建了非常高质量的图像和视频表示 。它们通常用于生成计算机图形和捕获视频 。只有一个小问题 - RGB 不适合图像处理或存储 。正如我之前提到的 , 人眼最能看到绿色 。这部分是因为人眼对亮度或物体的亮度最敏感 。绿色与人类视觉中的亮度混合在一起 。不幸的是 , 对于 RGB , 亮度会混合到所有颜色通道中 , 并且没有一种简单的方法可以将其分离出来 。所以大多数时候 , 您会发现 RGB 色彩空间应用于静止图像或非常高端的计算机动画 。对于视频 , 需要另一种更可压缩的解决方案 。
Y'CbCr 和 YUV
有时 Y'CbCr 和 YUV 可以互换使用 , 这是不准确的 。YUV 用于模拟电视 , 而 Y'CbCr 用于数字视频 , 但它们都使用相同的概念来实现颜色压缩 。对于这个颜色空间 , 基于 RGB 颜色模型 , 利用人眼感知色度(颜色)和亮度(亮度)的方式 。因为您看到的亮度比颜色更好 , 所以颜色信息的通道被拆分如下:
- Cb - 蓝色减去亮度
- Cr - 红色减去亮度
- Y' - 亮度
Y'CbCr 和 YUV 中的色度子采样
因为可以分离出亮度 , 所以在剩余的红色和蓝色通道中 , 可以使用色度子采样来压缩数据 。色度子采样使用符号 x:y:z 。x 告诉你要在样本中采用多少亮度像素 。所以如果是 2:y:z , 说明一次采样两个像素 。4 最最为常用 , 因此您更有可能看到 4:y:z 。y 表示要从数据的第一行中采样多少色度像素 , 然后是此后的每条交替行 。所以说最终结果为4:4:z 。这意味着您要获取 4 像素的亮度样本 , 因此转换到视频(或图像)的帧 , 并且在第一行中 , 还要获取 4 像素的色度样本 。所以理论上没有扔掉任何数据 。z 表示从 y 之后的像素行中采样多少色度像素 。通常为4 , 将采样 4 个色度像素 。完整的符号是 4:4:4 。现在对于图像的其余部分 , 将在 4 luma 的块中采样 2 行 , y 是第一行 , z 是第二行 , 直到对所有内容进行二次采样 。4:4:4 很少见 , 因为它保存了所有数据 , 常用于内部处理 , 其他方面应用的不多 。有时这被称为 YUV-9 采样 , 那是用于模拟视频的时候 。
推荐阅读
- 什么是SATA硬盘,什么是SAS硬盘!哪个性能更好
- Python中的五种下划线
- Win10命令大全
- 黑客是如何使用Fping主机扫描工具的?
- 买笔记本,真正懂电脑的人很少会选择苹果,这是为什么呢?
- 人生中的挫折和痛苦是不可避免的,只能坚强的面对?人生,总有一些挫折要面对,生命,总有一些
- 与张辽共同威震逍遥津的是哪个武将?老版三国张辽威震逍遥津是哪一回
- 为什么瑞士在二战可以中立?希特勒为什么不打瑞典
- Win11初体验
- 为什么诸葛亮六次北伐都没有成功?诸葛亮哪次北伐差一点成功