【音视频原理】图像相关概念 ③ ( RGB 色彩简介 | RGB 排列 | YUV 色彩简介 | YUV 编码好处 )

文章目录

  • [一、RGB 色彩](#一、RGB 色彩)
    • [1、RGB 色彩简介](#1、RGB 色彩简介)
    • [2、RGB 排列](#2、RGB 排列)
  • [二、YUV 色彩](#二、YUV 色彩)
    • [1、YUV 色彩简介](#1、YUV 色彩简介)
    • [2、YUV 编码好处](#2、YUV 编码好处)

一、RGB 色彩


1、RGB 色彩简介

RGB 是 计算机 中的 颜色编码方法 , 红 ( R ) / 绿 ( G ) / 蓝 ( B ) 三个颜色通道 可以设置不同的值 , 每个 通道 的 颜色值都可以取值 0 ~ 255 , 这样 三个通道 叠加 , 可以表示出

25 6 3 = 16777216 256 ^3 = 16777216 2563=16777216

种颜色值 ;

红 ( R ) / 绿 ( G ) / 蓝 ( B ) 三个颜色通道 都取值 255 , 表示当前颜色时 白色 ;

红 ( R ) / 绿 ( G ) / 蓝 ( B ) 三个颜色通道 都取值 0 , 表示当前颜色值是 黑色 ;

2、RGB 排列

一个像素点中 , 会有 RGB 三个通道的值 ,

如果颜色格式是 AV_PIX_FMT_RGB24 ,

表示 当前 像素中 颜色值 排列顺序是 : 红 Red -> 绿 Green -> 蓝 Blue ,

每个像素 1 字节 Byte , 8 位 , RGB24 表示一个像素有 24 位 , 3 字节 ,

如下图所示 :

如果颜色格式是 AV_PIX_FMT_BGR24 ,

表示 当前 像素中 颜色值 排列顺序是 : 蓝 Blue -> 绿 Green -> 红 Red ,

每个像素 1 字节 Byte , 8 位 , RGB24 表示一个像素有 24 位 , 3 字节 ,

如下图所示 :

带透明度通道的颜色排列 :

  • AV_PIX_FMT_ARGB : 透明度通道在 RGB 颜色值前面 ;
  • AV_PIX_FMT_RGBA : 透明度通道在 RGB 颜色值后面 ;
  • AV_PIX_FMT_ABGR : 透明度通道在 BGR 颜色值前面 ;
  • AV_PIX_FMT_BGRA : 透明度通道在 BGR 颜色值后面 ;

二、YUV 色彩


1、YUV 色彩简介

YUV 也是 计算机 中的 颜色编码方法 , 常用于 模拟视频 编码 , 电视就是使用 YUV 编码 ;

  • " Y " 是 亮度信息 , 表示 " 明亮度 " , 英文名称 Luminance 或 Luma , 即 灰度值 ;
  • " UV " 是 色彩信息 , 表示 " 色度 " , 英文名称 Chrominance 或 Chroma , 即 像素颜色 ;

下图中 , 中间的图像是 Y 灰度图像 , 只有 Y 也可以成像 , 右侧是 UV 色度信息 , Y 和 UV 信息 进行叠加显示 , 就可以达到 作色 彩色图像的效果 ;

2、YUV 编码好处

YUV 编码的好处是 ,

  • 亮度 Y 和 色度 UV 分开进行编码 , 两个信息的编码 , 互不干扰 ;
  • 黑白电视 , 只使用 Y 编码即可 , 只需要 灰度值 就可以成像 ;
  • 彩色电视 , 使用 YUV 编码 , 这样可以同时兼容 黑白电视 和 彩色电视 ;
  • 降低 UV 色度 的编码频率 , 多个 Y 灰度 使用 1 个 UV 色度 , 也不会影响太大 , 这样可以节省传输带宽 ;

如 : YUV 是 3 个字节 ,

  • 正常情况下 , 2 个像素点 占 6 字节 ;
  • 如果 两个 Y 灰度 使用 一个 UV 色度 , 这样 2 个像素点是 4 字节 ;
相关推荐
yunteng5211 小时前
音视频(二)ffmpeg编译及推流
ffmpeg·音视频·h264·媒体推流
_乐多_6 小时前
python:将mp4视频快进播放,并保存新的视频
开发语言·python·音视频
DogDaoDao7 小时前
视频编码器的抉择:x264、x265、libaom、vvenc 对比测试实验
音视频·视频编解码·x264·x265·h266·libaom·vvenc
DogDaoDao7 小时前
从零开始:Windows 系统中 PowerShell 配置 FFmpeg 的详细步骤
windows·ffmpeg·音视频·ffplay·powershell·视频直播·ffprobe
智联视频超融合平台9 小时前
智能巡检机器人:2025年企业安全运维的“数字哨兵“
运维·安全·机器人·音视频·实时音视频·视频编解码
许野平9 小时前
Manim 输出视频尺寸设置
音视频·动画·视频·manim
hanpfei9 小时前
PipeWire 音频设计与实现分析二——SPA 插件
算法·音视频
孤舟簔笠翁18 小时前
【Audio开发一】android音频问题排查指南
android·音视频
魑魅魍魉都是鬼1 天前
音视频 一 看书的笔记 基础视频知识
笔记·音视频
李是啥也不会1 天前
如何通过JavaScript实现点击播放音频
开发语言·javascript·音视频