RV1126——YUV原理

前言

不管是做 IPC 摄像头、RV1126 嵌入式音视频开发,还是日常接触视频编码,YUV 都是绕不开的基础知识点。摄像头 Sensor 输出原始画面、VI 采集图像、RGA 图像处理、VENC 编码 H.264/H.265,全程数据都是 YUV 格式。很多初学嵌入式的同学分不清 YUV 和 RGB,搞不懂 444/422/420 区别,本篇用通俗的大白话,从原理、优势、采样规则、实际大小计算、存储分类全方位讲解 YUV。

一、什么是 YUV?

我们熟知的 RGB 依靠红绿蓝三原色混合出各种色彩,而 YUV 把画面拆分成亮度 Y色度 U、V两大部分:

  1. Y(亮度分量):代表画面明暗灰阶,只保留 Y 数据,图片就是黑白画面,和老式黑白电视画面原理一致;
  2. U(蓝色色差):蓝色信息剔除亮度后的数据;
  3. V(红色色差):红色信息剔除亮度后的数据。

U 和 V 组合决定图像的色彩与饱和度,只有同时具备 Y、U、V 三种数据,画面才能正常显示彩色。正是基于亮色分离的设计,YUV 才有了压缩空间,也是音视频领域抛弃 RGB、选用 YUV 的核心原因。

二、YUV 对比 RGB 的核心优势

RGB 每个像素 R/G/B 各占 1 字节,三个分量完整保存,无任何压缩空间,数据体积庞大。而 YUV 利用人眼对亮度敏感、对色彩细节不敏感的生理特点,对 U、V 色度分量做降采样压缩,优势集中在三点:

  1. 占用存储空间更小:最常用的 YUV420 格式,数据体积只有 RGB 的一半左右,同等分辨率下能节省一半存储;
  2. 传输带宽更低:IPC 摄像头实时推流、网络流媒体传输,小体积数据能大幅降低带宽开销;
  3. 适配硬件编码:H.264、H.265 编码器原生适配 YUV 数据,RV1126 等各类编码芯片只支持 YUV 输入编码,RGB 无法直接送入 VENC 编码模块。

所以在摄像头采集、图像编码、流媒体行业,YUV 是行业通用标准格式。

三、三种主流 YUV 采样格式(附 1080P 实际大小计算)

采样格式本质就是Y、U、V 三个分量按照不同比例取值 ,行业主流分为 YUV444、YUV422、YUV420 三种,全部以 1Byte (8bit) 存储单个分量数据,统一用1920×1080(1080P)分辨率计算单帧大小,换算规则:1Byte=8bit,1MB=1024×1024Byte

1.YUV444:1:1:1 完整采样,无压缩

采样规则:每 4 个 Y 对应 4 个 U、4 个 V,Y/U/V 分量尺寸完全一致,没有任何色度压缩。

  • Y 尺寸:w×h
  • U 尺寸:w×h
  • V 尺寸:w×h 单帧总字节:\(1920×1080×3≈6220800Byte≈5.94MB\) 特点:画质无损、数据量大,体积和 RGB 持平,RV1126 开发几乎不用,仅用于专业图像处理。

2.YUV422:横向 2:1 采样,一半色度压缩

采样规则:横向每 2 个 Y 共用一组 UV,也就是 4 个 Y 搭配 2 个 U、2 个 V,仅在水平方向压缩色度,垂直方向完整采样。

  • Y 尺寸:w×h
  • U 尺寸:w×h/2
  • V 尺寸:w×h/2 单帧总字节:\(1920×1080×2≈4147200Byte≈3.96MB\) 特点:压缩适中、画质损耗小,多用于工业相机采集。

3.YUV420:横竖双 2:1 采样,项目最常用(NV12 属于此类)

采样规则:横向、纵向都做 2:1 压缩,4 个 Y 共用 1 组 UV,一行存 Y+U、下一行存 Y+V,U、V 分量尺寸均为原图 1/4,是 RV1126 摄像头默认输出格式。

  • Y 尺寸:w×h
  • U 尺寸:w×h/4
  • V 尺寸:w×h/4 单帧总字节:\(1920×1080×1.5≈3110400Byte≈2.97MB\) 特点:体积最小、画质肉眼无损耗,是 IPC、视频编码首选格式,我们做 RV1126 音视频开发全程接触 NV12(YUV420)。

拓展小知识:30 帧 / 秒的 1080P NV12 画面,每秒数据量≈2.97×30≈89MB,选型芯片 DDR 内存时就要参考这个数据。

四、YUV 两大存储分类:Planar 平面 & Packed 打包

同样的采样格式,还分两种数据存放方式,也是实际调试抓 YUV 数据的关键知识点:

1.Planar(平面存储)

Y、U、V 三块数据分开连续存放,先存完整全部 Y 数据,再连续存 U,最后连续存 V,数据分三块。 例:YU12:YYYY...UUUU...VVVV,YV12:YYYY...VVVV...UUUU

2.Packed(打包存储)

Y、U、V 数据穿插排列,所有像素数据挤在同一段内存里,不分三块,典型代表:YUYV、UYUV。 例:YUYV 排列:Y0 U0 Y1 V0 Y2 U2 Y3 V2

五、项目高频 YUV 格式汇总(RV1126 必记)

YUV420 系列(VI 输出主流)

  1. NV12:项目标配 :平面存储,全 Y→UV 交替排布YYYY U0V0U1V1,RV1126 摄像头默认输出;
  2. NV21:平面存储,全 Y→VU 交替排布YYYY V0U0V1U1,安卓设备常用;
  3. YU12:全 Y→全 U→全 V;YV12:全 Y→全 V→全 U。

YUV422 系列

  1. YUYV、UYUV:打包交错存储,常用于 USB 摄像头;
  2. YUV422P:平面分开存储 Y、U、V。

六、总结

  1. 从原理记:Y 管亮度,UV 管色彩,靠 UV 压缩实现体积优化;
  2. 从选型记:444 不用、422 少用、420 (NV12) 项目天天用
  3. 从调试记:RV1126 VI 出 NV12,RGA、VENC 全部基于 NV12 处理。

后续学习 VI 视频输入、VENC 编码时,所有参数配置的分辨率、图像格式,全部围绕 NV12/YUV420 展开。

相关推荐
weixin_495248401 小时前
AI视频翻译总对不上?字幕配音时间轴是关键
人工智能·音视频
lqqjuly1 小时前
视频理解与生成解析(Video Understanding & Generation)
深度学习·音视频
Deitymoon2 小时前
RV1126——音视频开发环境搭建、固件烧录、网络调试、demo运行
音视频
西安同步高经理2 小时前
国产音频频谱分析仪使用案例,多通道音频分析仪,音频频谱分析仪
大数据·人工智能·音视频
chenying9981792 小时前
掩码扩散语音克隆:参考音频为什么会被噪声“污染“?
人工智能·音视频·语音合成
古道青阳2 小时前
构建工业级短视频生成流水线:Playwright + FFmpeg 自动化指南
运维·自动化·音视频
夏夏夏果2 小时前
部署视频生成模型-美团LongCat-Video
ai·音视频
川冰ICE14 小时前
⑮ AI音乐与音频:工具详解与创作流程
人工智能·音视频
oort12315 小时前
VLStream:全开源决策式AI视频平台,赋能企业构建自主可控、降本增效的智能视觉应用介绍
大数据·开发语言·人工智能·开源·音视频·数据库架构