0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

YUV是什么

工程师邓生 来源:超能网 作者:倪嘉声 2019-12-29 09:42 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

说到用来表达颜色的系统,大家或许第一个会想到的就是RGB。是的,在数字时代,屏幕上每一个像素点都是由红绿蓝三种颜色混合而成的,它可以用RGB值来描述。不过有时我们还是会看到或听闻所谓的YUV,那么它又是什么呢?

首先说说色彩模型(Color Model),你可以将其简单理解为是色彩编码方式,比如RGB就是其中常用的一种。每一种色彩模型都有自己对颜色的定义,我们看到的同一种颜色在不同的颜色模型中有着不一样的“值”。YUV就是与RGB平行的一套色彩模型系统,它并不像RGB那样使用基色混合的办法来描述颜色,而是用了另外一套截然不同的描述办法。

YUV模型首先将亮度这一人眼最为敏感的要素抽离了出来,形成一个只有亮度信息的平面,然后才是描述具体色彩的U和V平面,分别具有色度(Chrominance)和浓度(Chroma)信息。下图就是一个比较好的例子:

YUV三个通道的不同信息从上到下分别为Y、U、V图片来自于Wikipedia

那么为什么有了RGB我们仍然需要YUV呢?我们要回到人类刚拥有彩色电视的时候,在那段从黑白电视向彩色电视的过渡期,电视系统需要提供对黑白电视的兼容性,另外还要考虑到电视广播系统那有限的带宽,如果使用RGB颜色模型,那么传输带宽就是原来的三倍。主要是以上两个原因,能够兼容黑白电视系统和更为节省带宽的YUV色彩模型就被发明了出来,它与RGB之间是无损转换的。

亮度信息与色彩信息相分离的设计使得YUV可以减少一些色彩信息以达到节省传输带宽和保存体积的目的。因为相较于色彩,人眼对于亮度信息更为敏感,所以可以在色彩信息上面进行取舍来达到节约大小的目的,通过引入采样的方式,YUV对原始的RGB信息进行重编码,目前在视频中最常见的就是YUV420式编码,Y平面的信息完全保留,而UV这两个色度平面的信息交错保留,并且精度只有Y平面的一半,最终图像、视频的体积也就少了很多,而画质损失实际是被控制在一个合理的范围内。

YUV下还有很多不同的具体编码方式,比如视频中常见的NV12、YV12等,而JPEG这个常见的图片压缩编码也使用了YUV作为处理和存储图像时使用的色彩模型,可以说,我们虽然没有直接接触到YUV色彩模型,但是几乎是时时刻刻都在用它。而YPbPr、YCbCr只是YUV在不同领域中的具现化罢了,其实就是一个东西。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编码
    +关注

    关注

    6

    文章

    1040

    浏览量

    57118
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    是否有显示控制器真正可以处理的 DRM 像素格式列表?

    : UYVY, VYUY, YUYV, YVYU Semiplanar YCbCr: NV12, NV21 Planar YCbCr: YUV420 但: NV12: chrominance plane
    发表于 03-31 07:43

    发一款使用的国产Cameralink采集卡转USB3.0,便携式Cameralink采集卡,功能齐全才1千多

    /16; 彩色:BAYER8/YUV411/YUV422/RGB888/RGB30/RGB36等; 线阵/面阵图像类型可配置。 支持tap数 1/2/3/4/6/8/10 支持图像大小 各种任意分辨率
    发表于 12-19 20:31

    【EASY EAI Nano-TB(RV1126B)开发板试用】AI手部21关键点识别

    # 替换原有的格式转换代码(仅修改这一段) if channels == 3: try: # 方案 1:尝试 YUV420(NV12)→ BGR(RKISP 最常用格式) frame_bgr
    发表于 11-21 11:31

    【EASY EAI Nano-TB(RV1126B)开发板试用】驱动摄像头

    YUV420(NV12)→ BGR(RKISP 最常用格式) frame_bgr = cv2.cvtColor(frame, cv2.COLOR_YUV2BGR_NV12) except: try
    发表于 11-17 13:35

    STM32N6的DCMIPP能直接把接收到的YUV422数据转化成RGB565吗?

    1、问题描述 在使用XS9950解码器芯片向STM32N6发送CSI图像时,获取的YUV数据经DCMIPP转换。若转出格式设置为YUV422_1,则获取的图像为黑白色;若转出的格式设置为
    发表于 08-01 08:06

    K230 RTOS Only SDK使用c语言开发,如何将摄像头存图转为jpeg?

    ,对这个图片的格式有什么要求吗?目前是读取yuv420sp格式的图片,未实现会报错,目前不确定是不支持还是代码问题,麻烦问下这块有参考案例代码吗?
    发表于 07-31 06:34

    K230 ISP Tuning Tool导出数据错误的原因?

    : {isStream : RET_WRONG_STATE 另外,如果设置读取raw数据,返回的数据类型都是YUV420; 期待结果和实际结果 不出错,返回数据与设置的一致; 软硬件版本信息 固件
    发表于 07-29 09:14

    MIPI发射器能否在此 CSI 时钟频率下与 CYUSB3065 连接?

    我们有时钟频率为 600Mhz 的 MIPI 发射器,处理后的图像以 30fps YUV422 8 位、2 通道输出,分辨率为 1510x1510。 该发射器能否在此 CSI 时钟频率下
    发表于 07-16 06:54

    K230在同时使用H265编码与yolo进行检测时出现错误怎么解决?

    1、单独使用H265编码时或者yolo检测没有问题 2.一旦将二者结合,因为H265编码时YUV格式,所以我另外开了一个RGB平面格式来运行yolo推理 3.报错信息显示:两者的空间会冲突然后导致
    发表于 07-11 08:15

    使用K230开发板在CanMV_IDE中运行双摄像头示例时报错无法找到传感器,为什么嘛?

    = 960, height = 540) # set chn0 out format sensor0.set_pixformat(Sensor.YUV420SP) # bind sensor chn0
    发表于 06-24 06:11

    这4K120HZ的USB-C口方案,最受高端客户喜欢了。

    /555/444 RGB、10b/8b YUV422、YUV420_8b(传统)格式,并支持 CSI 专有模式包括 YUV420_10b/YUV420_12b(传统)、
    发表于 06-10 19:54

    雷卯针对易百纳海鸥派海思SD3403 SS928智能视觉AI视觉国产化4K视频开发板防雷防静电方案

    1080p30 的 H.265/H.264 解码 图片编码 3840 x2160@60fps (YUV420) 图片解码3840 x2160@75fps (YUV420) 三、 扩展接口 l RAM:板载 4GB LPDDR4X(可选 8GB) l ROM:板载 32G
    的头像 发表于 06-10 17:16 674次阅读
    雷卯针对易百纳海鸥派海思SD3403 SS928智能视觉AI视觉国产化4K视频开发板防雷防静电方案

    CYUSB3065的CSI clock如何计算?

    这边需要配置4lane的mipi,YUV422,16bit,1920X720X30fps,请问改如何计算这个CSI Clock (Mhz)?配置有哪些注意事项?
    发表于 05-13 07:09

    CX3上的AR0245传感器的探头控制分辨率错误怎么解决?

    1200 的分辨率,但以 100.0 fps 提供 1920 x 1080 的分辨率也可以。 相机的传感器是单色的, my-d™希望输出无损。也许 YUV 4:4:4 或 YUV 4:2:2 是正确
    发表于 05-12 07:02

    test_ff_video_encode编码报bmvpu_malloc_device_byte_heap failed怎么解决?

    linaro@sophon:~$ test_ff_video_encode zxf.yuv zxf.mp4 H264 384 288 1 I420 3000 25 0 [h264_bm
    发表于 04-22 11:06