第八章:图像像素格式的深度理解

1、颜色的学问

       (1)颜色是主观还是客观存在?颜色的本质是光的波长,但是因为有人去看才有了颜色这个概念

       (2)颜色的三个关键:
       亮度:顾名思义就是亮度。
       色度:红黄绿(蓝)所占的比例。

       饱和度:颜色的厚重与否。

       这三个概念是人的眼睛对颜色的直观感受而解析出来的。 

       (3)人的眼睛并非理想完美的颜色识别器件,图像表达也有清晰度和质量高低的差异。

       (4)科学研究如何定义(或者表达、记录、计算)一种颜色?色彩空间的概念。

       RGB、YUV色彩空间。色彩空间是一种技术,一种放大,也就是如何用数字来表达颜色。这两种格式有各自的优势,可以互相转换、

2、rawRGB和图像采集过程

       (1)图像采集的过程:光照在成像物体被反射->镜头汇聚->Sensor光电转换->ADC为rawRGB

       rawRGB就是原始的RGB,就是由光电转换器原始转换出来的RGB,有些好点的相机,拍照完可以输出这种RGB格式,这种格式是未被压缩的,所以生成的文件挺大的。

       (2)sensor上每个像素只采集特定颜色的光的强度,因此sensor每个像素只能为R或G或B。

       (3)rawRGB和RGB都是用来描述图像的,图像采集时RGB是由rawRGB计算而来的。

       (4)因为图像颜色本身有一定连贯性,而且人眼是非理想的,因此图像采集和再显示给人这整个构成中有三个要素:分辨率、pitch、观看距离。

       (5)如果是视频,质量好坏还要加上帧率framerate。

       (6)图像的表达、压缩、修整等相关技术,就发生在rawRGB进来以后的各个环节。

3、RGB

       RGB方式表示颜色

       (1)RGB有RGB565和RGB888,ARGB等多种子分类。

       RGB565也就是5位R、6位G、5色位B组成16位的颜色数据。

       RGB888真彩

       (2)RGB的本质:将色度分解为R、G、B三部分,然后记录下亮度数据

       (3)RGB的优势:方便数字化表达,广泛用于数字化彩色显示器,计算机编程等领域。

       (4)RGB的劣势:和传统的灰度图兼容不好,表达颜色的效率不高,只是记录了颜色的亮度。

4、YUV

       (1)YUV是一种色彩空间,Y表示亮度,U和V表示色度。只有Y就是黑白图像,再加上UV就是彩色图像了。YUV的一个好处就是让彩色系统和传统黑白系统很好的兼容。

       (2)YUV和RGB的相同点是:都是用来表达颜色的数学方法;不同点是:对颜色的描述思路和方法不同。RGB将一个颜色拆解为3个纯色的亮度组合,YUV将一个颜色分解为一个亮度和2个色度的组合。

       (3)RGB和YUV之间可以用数学方法互相换算,是个典型的浮点运算过程。

       (4)YUV和YCbCr几乎可以看做一个概念,详细的区分以后再去慢慢体会。

       (5)YUV分为packed和planar两种。具体参考:http://blog.csdn.net/sunnylgz/article/details/7580628

       其中packed的是将yuv数据,按像素进行分组,也就是[Y0,U0,V0]、[Y1,U1,V1]、[Y2,U2,V2]..........

       而planar则是将YUV数据抽取出来,分类封装起来,也就是[Y0,Y1,Y2],[U0,U1,U2......],[V0,V1,V2.....]

这两种格式各有各的好处。

       (6)有多种YUV相关的概念需要弄清楚
       YUV
       YUYV
       YUV422
       YUV420(YUV411)
       YUV422 planar(YUV422P)
       YUV420 Planar(YUV420P)
       YUV422 semi planar(YUV422SP)

       YUV420 semi Planar(YUV420SP)

       参考:http://blog.csdn.net/bingqingsuimeng/article/details/50716390

       和https://www.2cto.com/kf/201303/198023.html

       yuv420、422都是yuv的子格式

       主要由于颜色比较少突变,亮度比较容易突变,人眼也是,对亮度比较敏感,所以y必须一个像素有一个。

       那么等到转换完之后,每个像素中缺少的u和v由前面的uv进行计算再补充到缺少的那部分去。

猜你喜欢

转载自blog.csdn.net/tainjau/article/details/80220134