首页 > 其他分享 >图像格式总结

图像格式总结

时间:2022-12-26 21:39:55浏览次数:47  
标签:总结 图像格式 存储 YUV YUV422 格式 像素点 分量


本文主要讲一下常见的3种图像格式,RAW, RGB, YUV

目录

​​1、RAW​​

​​2、 RGB​​

​​3、YUV​​

​​3.1、yuv 定义:​​

​​3.2、采样格式:​​

​​3.3、存储格式:​​


 

 

1、RAW

      raw数据是sensor输出的原始数据,一般有raw8, raw10, raw12等,分别表示一个像素点有8bit、10bit、12bit数据。是sensor将光信号转化为电信号时的电平高低的原始记录,单纯地没有进行任何处理的图像数据,即摄像元件直接得到的电信号进行数字化处理而得到的。raw数据在输出的时候是有一定顺序的,主要有四种: GRBG、RGGB、BGGR、GBRG,如下图为BGGR格式:

图像格式总结_存储方式

 

2、 RGB

RGB格式:即每一个像素由三原色R红色、G绿色、B蓝色组成。通过三种颜色的混合,基本就能够混合出人类视力所能感受到的所有颜色。

RGB常见的的几种格式和描述:

  • RGB565 每个像素用16位表示,RGB分量各使用5位、6位、5位;
  • RGB555 每个像素用16位表示,RGB分量都使用5位(剩下1位不用);
  • RGB24 每个像素用24位表示,RGB分量各使用8位;
  • RGB32 每个像素用32位表示,RGB分量各使用8位(剩下8位不用);
  • ARGB32 每个像素用32位表示,RGB分量各使用8位(剩下的8位用于表示Alpha(透明度)通道值);

3、YUV

3.1、yuv 定义:

是被欧洲电视系统所采用的一种颜色编码方法。其中“Y”表示明亮度(Luma),就是灰阶值,而“U”和“V”表示色度(Chroma)。

与我们熟知的RGB类似,YUV也是一种颜色编码方法;主要用于电视系统以及模拟视频领域,它将亮度信息(Y)与色彩信息(UV)分离,没有UV信息一样可以显示完整的图像,只不过是黑白的,

这样的设计很好地解决了彩色电视机与黑白电视的兼容问题。并且,YUV不像RGB那样要求三个独立的视频信号同时传输,所以用YUV方式传送占用极少的频宽。

常用格式有:YUV444,YUV422,YUV420(为什么是4呢?因为这个4,实际上表达了共享的最大单位!也就是最多4个像素进行共享,因此4实际上是隐含的采样全集);

摄像头中最常用的是YUV 422格式,及Y-U-Y-V格式。以YUV422 8bit为例,每个像素点都包含亮度分量(8bit)以及UV两个颜色分量中的某一个(8bit)。

因此每个像素点需要16bit数据。如果使用YUV422 10bit,那每个像素点需要20bit来描述;

 

3.2、采样格式:

从前述定义中,可以了解YUV空间描述RGB空间的像素颜色按“亮度”分量和两个“色度”分量进行了表示。这种编码表示也更加适应于人眼,据研究表明,人眼对亮度信息比色彩信息更加敏感。而YUV下采样就是根据人眼的特点,将人眼相对不敏感的色彩信息进行压缩采样,得到相对小的文件进行播放和传输。

1)YUV 444

一个家庭成员是[yuv],每个Y对应一组UV,一个YUV占24bits 3个字节;

图像格式总结_存储方式_02

2)YUV 422

一个家庭成员是[yu][yv],也就是2个Y公用一个UV,一个YUV占8+4+4=16bits 2个节;

图像格式总结_像素点_03

3)YUV 420

yuv420的意思似乎是在yuv422的基础上,再拿掉两个v,这样不就没有v了吗?其实yuv420的取名方式不是很高明,更确切的命名为yuv420yuv402也就是第一行只有两个u,而第二行只有两个v,如下图;

图像格式总结_存储方式_04

对于yuv420而言,这个家庭的成员如下图所示,显然4个Y公用一组UV,每个YUV占用8+2+2=12bits,1.5个字节;

图像格式总结_存储方式_05

4)yuv不同采样格式对图像画质的影响

根据前述的YUV采样格式分析,这里我们分析一下对图像画质的影响。我们将一个原始图像为8*8像素的红蓝相间的图案,分别按YUV444、YUV422、YUV420不同的采用格式采样,然后再还原输出。

图5(a):我们可以看到YUV444的色度信号的分辨率和亮度信号的分辨率无损失,我们获得了与原始图案一致的还原画面图案。

图5(b):YUV422获得还原图案在水平方向上,已经出现了丢失,从绿色所框选的像素来看,YUV422在水平方向上丢失了另一个像素点的色彩值,故在画面还原时仅是对前一个像素值简单的复制重构

图5(c):YUV420获得还原图案在水平方向以及垂直方向上,均出现了丢失,获得的还原图像与原始图像出现很大的失真。

图像格式总结_像素点_06

由图5所示的直观观测,对图像高频细节的图像表达上,YUV444优于YUV422,YUV422优于YUV420。

在信号传输带宽的节省上,YUV420效率优于YUV444,YUV422优于YUV444。因此在普通的视频编解码算法上,为节省传输带宽开销,普遍采用YUV420或者YUV422的采样格式。

3.3、存储格式:

planar 平面格式:指连续存储所有像素点的Y分量,然后存储U分量,最后是V分量。packed 打包模式:指每个像素点的Y、U、V分量是连续交替存储的。

下面用图的形式给出常见的YUV码流的存储方式,并在存储方式后面附有取样每个像素点的YUV数据的方法,其中,Cb、Cr的含义等同于U、V。

1)基于YUV4:2:2采样的格式

YUV 4:2:2 采样规定了 Y 和 UV 分量按照 2: 1 的比例采样,两个 Y 分量公用一组 UV 分量;

  • YUYV 格式

YUYV是采用打包格式存储的,相邻的两个Y共用其相邻的两个Cb、Cr,分析,对于像素点Y'00、Y'01 而言,其Cb、Cr的值均为 Cb00、Cr00,其他的像素点的YUV取值依次类推。

图像格式总结_数据_07

  • UYVY格式

UYVY也是采用打包格式存储的,它的顺序与YUYV相反,还原其每个像素点的YUV值的方法与上面一样。

图像格式总结_存储方式_08

  • YUV422P格式

YUV422P也属于YUV422的一种,它是一种Plane模式,即平面模式,并不是将YUV数据交错存储,而是先存放所有的Y分量,然后存储所有的U(Cb)分量,最后存储所有的V(Cr)分量,如上图所示。其每一个像素点的YUV值提取方法也是遵循YUV422格式的最基本提取方法,即两个Y共用一个UV。比如,对于像素点Y'00、Y'01 而言,其Cb、Cr的值均为 Cb00、Cr00。

图像格式总结_像素点_09

2)基于YUV4:2:0采样的格式

基于 YUV 4:2:0 采样的格式主要有 YUV 420P 和 YUV 420SP 两种类型,YUV420P 和 YUV420SP 都是基于 Planar 平面格式 进行存储的,先存储所有的 Y 分量后,YUV420P 类型就会先存储所有的 U 分量或者 V 分量,而 YUV420SP 则是按照 UV 或者 VU 的交替顺序进行存储了,具体查看看下图:

图像格式总结_存储方式_10

  • YUV420P ___ YU12

在android平台下也叫作I420格式,首先是所有Y值,然后是所有U值,最后是所有V值;

图像格式总结_像素点_11

  • YUV420P ___ YV12

YV12格式与YU12基本相同,首先是所有Y值,然后是所有V值,最后是所有U值;

图像格式总结_数据_12

  • YUV420SP ___ NV21

android手机从摄像头采集的预览数据一般都是NV21,存储顺序是先存Y,再VU交替存储,NV21存储顺序是先存Y值,再VU交替存储;

图像格式总结_数据_13

  • YUV420SP ___ NV12

NV12与NV21类似,也属于YUV420SP格式,NV12存储顺序是先存Y值,再UV交替存储;

图像格式总结_存储方式_14

 

 


扫描下方二维码 关注我

图像格式总结_存储方式_15

标签:总结,图像格式,存储,YUV,YUV422,格式,像素点,分量
From: https://blog.51cto.com/u_15699736/5971049

相关文章

  • 学习方法总结
     ......
  • 2022年中总结
    时间过的巨快,转眼间22就过去了,一整年365天,31536000秒从中划过,值得庆幸多半时间不是庸碌无为。停下仔细回想一下整个年度,在今天这个特殊的日子里为这一年做个结束,当然今天不......
  • 关于保险的基础知识总结
    目录​​1、学习目标​​​​2、关于保险的一些疑问​​​​2-1、保险要不要买​​​​2-2、有社保,为什么还要买保险​​​​3、关于保险的一些常识​​​​3-1、保险的分类......
  • 关于团队管理过程中的一些总结
    “ 在职场当中要想升职、加薪,除了岗位相关的必备硬技能,一些通用的软技能也是必须要掌握的,比如沟通、管理..... 毕竟是人多力量大,要想把事情做好,还是需要有个好的团队,那就......
  • 实习总结(第五天)
    为了更好的理解业务的逻辑以及后面对SQL语句的优化,今天我打算再把数据库的数据表详细的阅读一遍熟悉一下表与表之间的关系,以及表的结构。通过仔细地阅读,表中主要的主体有......
  • 试卷审批管理信息系统总结
    这是我们期末考试的上机考试题,考试的时候功能只实现了勉勉强强的一半。这次考试真正的意识到时间才是卡住我们完成的关键原因,所以还是要加强代码的熟悉程度。抛开时间谈......
  • 地震储层预测笔记—AVO近似公式总结
    地震储层预测笔记—AVO近似公式总结(一).Zeoppritz方程AVO地球物理基础是平面弹性波在层状介质下推倒得出的Zeopprizt方程,在两层介质下(如图1所示)其Zeopprizt方程可以写......
  • 如何写一个好的测试?总结起来就这两点……
     背景在上一个项目上,由于项目成员大部分是新入职的同事,所以对于测试不是很熟悉,这就导致了在项目前期,项目上的很多测试都不太makesense,虽然没有什么定量的东西来描述,但......
  • Java基础知识总结
    Java​​C​​C++​​C#​​OS ​​JVM​​W3CJAVA教程​JAVA考古学​​StringBuffer和StringBuilder中的两个函数://int indexOf(String......
  • 关于UTF-8、GBK编码以及编译时charset的指定的一些总结
    首先分清两个概念:C文件中(转换为16进制)汉字的编码,编译后bin文件中汉字的编码。gcc的-finput-charset和-fexec-charset两个选项的存在就是为了实现这两者的转换。默认......