文章目录

  • 前言
  • 存储格式
  • 采样方式
    • 4:4:4
    • 4:2:2
    • 4:2:0
    • 4:1:1
  • 映射点
    • 4:4:4
    • 4:2:2
    • 4:2:0
  • 格式别称
    • YUVY 格式
    • UYVY 格式
    • YUV422P 格式
    • YV12/YU12 格式
    • NV12/NV21 格式
  • 内存大小

前言

 这篇文章主要是介绍车载前置摄像头(Front Camera)的输出信号的格式。YUV,是一种颜色编码方法。YUV是编译true-color颜色空间(color space)的种类,Y’UV, YUV, YCbCr,YPbPr等都可以称为YUV。Y 代表明亮度(Luminance或Luma);U 和 V 则代表色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。

存储格式

 之前,YUV和Y’UV通常用来编码电视的模拟信号,而YCbCr则是用来描述数字的视频信号,适合视频与图片压缩以及传输,例如MPEG、JPEG。从现在的使用情况来看,YUV通常已经在电脑系统上广泛使用。YUVFormats分成两个格式:
  1. Packed formats:每个像素点的Y,U,V是连续交叉存储的。
  2. Planar formats:先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。
  3. Semi-planar fromat:先连续存储所有像素点的Y,紧接着U,V是连续交叉存储的。
  这里以完全取样来介绍这三种方式的存储情况:
  1. Packed

  2. Planar

  3. Semi-planar

采样方式

 通常来说,YUV的格式会有24位。但是在实际的情况中,大多数YUV格式平均使用的每像素位数都少于24位。主要的抽样(subsample)格式有YCbCr4:2:0、YCbCr4:2:2、YCbCr4:1:1和YCbCr4:4:4。具体的抽样格式如下:

4:4:4

4:2:2

 表示2:1的水平取样,垂直完全采样。

4:2:0

 表示2:1的水平取样,垂直2:1采样。下方的采样格式微软定义为 MPEG-1 scheme。

 在微软的介绍里,还有另外一种采样格式(MPEG-2 scheme)。按照我个人的理解,我认为具体的采样形式如下:

 如果哪位大拿可以告诉正确的采样格式,请评论或者私信告诉我,不胜感激。

4:1:1

 就这种采样格式来讲,并不是一种主流的采样格式。相比于其他三种采样格式,这种格式的介绍也十分少。目前就我了解的情况来讲,只有百度百科和前面提到的微软介绍中由提及这种采样格式。但是,这两处介绍的采样格式确实完全相反。百度百科说是4:1的水平取样,垂直完全采样,微软介绍里介绍的是 4:1的水平取样,无垂直采样。 我比较倾向于微软介绍的那种采样方式。因为个人技术有限,这里无法给大家展开介绍。

映射点

 由于上一章节中提及到的4:1:1 采样格式无法为大家展开,那么在分析映射点的情况我将省略这一采样方式的映射介绍。

4:4:4

4:2:2

4:2:0

格式别称

YUVY 格式

  YUVY 格式属于4:2:2采样方式的一种格式。具体为相邻的两个Y共用其相邻的两个U、V。还原方式的请参考映射点章节所介绍的 4:2:2 方式还原。

UYVY 格式

  UYVY 格式属于4:2:2采样方式的一种格式。与YUYV格式不一样的地方在于UV的排列顺序不一样,还原方式的请参考映射点章节所介绍的 4:2:2 方式还原。

YUV422P 格式

 从这种名称来讲,是属于4:2:2采样方式的一种格式。这与前两种的区别在于,这种格式采用的是Planar 格式的存储。具体的存储格式请看前面的章节。还原方式的请参考映射点章节所介绍的 4:2:2 方式还原。

YV12/YU12 格式

 YU12 和 YV12 属于属于4:2:0 采样方式的一种格式。存储方式与 YUV422P 格式一样,也是一种Planar模式,将Y、U、V分量分别打包,依次存储。还原方式的请参考映射点章节所介绍的 4:2:0 方式还原。

NV12/NV21 格式

  NV12 和 NV21属于属于4:2:0 采样方式的一种格式。存储方式则是 Semi-planar 格式,这种格式也在前面的存储格式章节介绍了。

内存大小

各种采样方式的内存大小计算
采样方式 存放码流 大小计算
4:4:4 Y0 U0 V0 Y1 U1 V1 Y2 U2 V2 Y3 U3 V3
Y4 U4 V4 Y5 U5 V5 Y6 U6 V6 Y7 U7 V7
6 bytes
4:2:2 Y0 U0 Y1 V1 Y2 U2 Y3 V3
Y4 U4 Y5 V5 Y6 U6 Y7 V7
4 bytes
4:2:0 Y0 U0 Y1 Y2 U2 Y3
Y4 V4 Y5 Y6 V6 Y7
3 bytes

车载前视摄像头学习笔记 ———— 摄像头输出数据格式(YUV)相关推荐

  1. 车载前置摄像头学习笔记 ———— 摄像头输出数据格式(JPEG)

    文章目录 介绍 类型 标准JPEG 渐进式JPEG JPEG2000 压缩类型 顺序式编码(SequentialEncoding) 递增式编码(ProgressiveEncoding) 无失真编码(L ...

  2. 物联网外设学习笔记-摄像头(一)

    物联网外设学习笔记-摄像头(一) Camera 简介 摄像头(CAMERA)又称为电脑相机.电脑眼等,它作为一种视频输入设备,在过去被广泛的运用于视频会议.远程医疗及实时监控等方面.近年以来,随着互联 ...

  3. 【STM32】OV2640摄像头学习笔记 转

    [STM32]OV2640摄像头学习笔记 2019年03月03日 13:01:35 淹死的大白鲨 阅读数 4736更多 分类专栏: [STM32] 版权声明:本文为博主原创文章,遵循 CC 4.0 B ...

  4. mybatis学习笔记(7)-输出映射

    2019独角兽企业重金招聘Python工程师标准>>> mybatis学习笔记(7)-输出映射 标签: mybatis [TOC] 本文主要讲解mybatis的输出映射. 输出映射有 ...

  5. 前后端分离学习笔记(5) ---[表单的增删改操作;以及为管理员上传头像]

    上一篇案例中也是查询到了表单的内容–>前后端分离学习笔记(4) -[路由嵌套, 查询表单显示] 文章目录 1.前端组件页面 添加管理员操作 修改管理员信息 删除管理员 为管理员上传头像 修改密码 ...

  6. 【STM32】OV2640摄像头学习笔记

    目录: 一.OV2640 Camera 二.读取OV2640模块图像数据过程: 三.DCMI(Digital camera interface)接口 四.SCCB协议 1.起始信号 2.停止信号 五. ...

  7. 立创梁山派学习笔记——GPIO输出控制

    梁山派 前言 开发板简介 GD32F407ZGT6官方资源 数据手册 1.系统框图 2. 引脚复用表 3.命名规则 4.其他 用户手册 固件库与PACK包 开发环境搭建 立创官方的资料包 资料齐活,开 ...

  8. C语言如何加缓冲,C语言学习笔记之输出缓冲

    在c语言中经常用到输出函数printf,当我们像往常一样在输出函数中输入我们的想要的输出的东西后加\n换行 验证结果如我们输出的一样 如果我们在后面加入死循环会不会出现这些语句呢 结果卡死了,可还是输 ...

  9. 车载前摄像头学习笔记 ———— 视频编码格式

    文章目录 简介 格式 H.26X H.261 H.263 H.264/AVC NALU Header NALU Payload SODB RBSP EBSP MPEG-X MPEG-1 MPEG-2 ...

  10. STM32 F4 OV2640摄像头学习笔记(一)

    //尝试写作,记录学习过程. 一.OV2640摄像头简介 本节将主要讲解OV2640摄像头基础部分和一些引脚配置. OV2640传感器简介 OV2640是Omni Vision公司生产的一颗1/4寸的 ...

最新文章

  1. 为什么要假设变量为正态分布?
  2. 51单片机C语言波特率十六进制,理解51单片机串口通信的波特率与USB转串口通信...
  3. 因 Redis 分布式锁造成的 P0 级重大事故,整个项目组被扣了绩效。。。
  4. ResNet才是YYDS!新研究:不用蒸馏、无额外数据,性能还能涨一波
  5. python获取中文字体点阵坐标_点阵汉字显示 - freecamel的个人空间 - OSCHINA - 中文开源技术交流社区...
  6. android 立体 流量球,Android自定义View——实现水波纹效果类似剩余流量球
  7. Youtube深度学习推荐系统
  8. 使用SMART监控Ubuntu
  9. CF496E-Distributing Parts【平衡树,贪心】
  10. Computer Vision Review Incompletely
  11. OSPF的虚链路配置
  12. geotools绘制椭圆API
  13. vbs获取程序窗体句柄_VBS调用windows api函数(postmessage)实现后台发送按键脚本...
  14. 聊一聊2D地图的迷雾效果
  15. Object-c 内存管理
  16. html 数据库 留言板,使用html5本地数据库留言本代码分享
  17. Tomcat下载安装及配置
  18. python数组冒号使用_python矩阵冒号
  19. 从头开始训练一个依存分析器
  20. 字节跳动岗位薪酬体系曝光,看完感叹:不服不行,想高薪还得是学这个。。。。

热门文章

  1. 数据结构-顺序表基本操作的实现(含全部代码)
  2. base64原理+base64隐写
  3. 电商大促作战指南之全链路压测
  4. 嵌入式Linux开发简介
  5. 23种设计模式——适配器模式
  6. 2021年国内四大 IoT 物联网平台选型对比综合评估报告
  7. Node.js详细安装教程(2021)
  8. 如何在iPhone和Android上使用Instagram效果
  9. laravel 中Predis使用手册
  10. 苹果计算机 win10,图文教程!苹果电脑和WIN10的完美融合井井有条的美