数字图像处理—Bayer初学(小记)

        RAW格式、Bayer阵列、RGB格式、HSV格式、YUV格式、JPG格式、JPEG格式等这些专业名词都是什么意思?相信很多刚开始学习数字图像处理的小伙伴和我一样都是一头雾水,这些都是什么鬼东西?然后上百度一个一个搜索,结果也没办法很好的联系到一起去,感觉不到他们之间的关联性。

        那么我从网上找到的资料对这些专业名词进行一一解释,然后用通俗的方式进行相互之间的联系,方便我自己以后也能巩固一下,如果里面有不正确的地方还请指正。

JPG、JPEG格式:Joint Photographic Experts Group

        二者没有本质的区别,即都是联合图像专家组,是用于连续色调静态图像压缩的一种标准,文件后缀名为.jpg或.jpeg,是最常用的图像文件格式。通俗的说就是我们保存一张照片的格式,这种格式里面有一些特点:用有损压缩方式去除冗余的图像数据,用较少的磁盘空间得到较好的图像品质。而且JPEG是一种很灵活的格式,具有调节图像质量的功能,它允许用不同的压缩比例对文件进行压缩等等。

RAW格式:RAW Image Format

        原意就是“未经加工”。可以理解为:RAW图像就是CMOS或者CCD图像感应器将捕捉到的光源信号转化为数字信号原始数据RAW文件是一种记录了数码相机传感器的原始信息,同时记录了由相机拍摄所产生的一些元数据(Metadata,如ISO的设置、快门速度光圈值白平衡等)的文件。RAW是未经处理、也未经压缩的格式,可以把RAW概念化为“原始图像编码数据”或更形象的称为“数字底片”。

        通俗的说,就是照相机按下快门之后,光信号到达Sensor之后产生的数字信号,等同于以前的老式机械相机的底片,你还看不到里面的图案,只不过是将里面的元素给数字化了。

Bayer阵列:Bayer格式图片是伊士曼·柯达公司科学家Bryce Bayer发明的,被广泛运用数字图像。

        对于彩色图像,需要采集多种最基本的颜色,如rgb三种颜色,最简单的方法就是用滤镜的方法,红色的滤镜透过红色的波长,绿色的滤镜透过绿色的波长,蓝色的滤镜透过蓝色的波长。如果要采集rgb三个基本色,则需要三块滤镜,这样价格昂贵,且不好制造,因为三块滤镜都必须保证每一个像素点都对齐。当用bayer格式的时候,很好的解决了这个问题。bayer 格式图片在一块滤镜上设置的不同的颜色,通过分析人眼对颜色的感知发现,人眼对绿色比较敏感,所以一般bayer格式的图片绿色格式的像素是是r和g像素的和。

  另外,Bayer格式是相机内部的原始图片, 一般后缀名为.raw。很多软件都可以查看, 比如PS。我们相机拍照下来存储在存储卡上的.jpeg或其它格式的图片, 都是从.raw格式转化过来的。如下图,为bayer色彩滤波阵列,由一半的G,1/4的R,1/4的B组成。

        通过后缀为.raw我们就能知道Bayer阵列就和RAW格式有很大的关系了。借鉴内容图像bayer格式介绍_bingqingsuimeng的博客-CSDN博客

RGB格式、HSV格式、YUV格式:三种颜色空间

        这个用大白话来说就是我们平常看到的图像,在他们之间进行分类的方式。

        RGB 是我们接触最多的颜色空间,由三个通道表示一幅图像,分别为红色(R),绿色(G)和蓝色(B)。这三种颜色的不同组合可以形成几乎所有的其他颜色。RGB 颜色空间是图像处理中最基本、最常用、面向硬件的颜色空间,比较容易理解。利用三个颜色分量的线性组合来表示颜色,任何颜色都与这三个分量有关,而且这三个分量是高度相关的。

        在图像处理中使用较多的是 HSV 颜色空间(H:Hue色调、色相 S:Saturation饱和度、色彩纯净度 V:Value明度),它比 RGB 更接近人们对彩色的感知经验。非常直观地表达颜色的色调、鲜艳程度和明暗程度,方便进行颜色的对比。

        YUV 是一种彩色编码系统,主要用在视频、图形处理流水线中(pipeline)。相对于 RGB 颜色空间,设计 YUV 的目的就是为了编码、传输的方便,减少带宽占用和信息出错。

        对以上名词都进行了解释,接下来就是进行串联之间的关系

图像传感器

         这是一块图像传感器,它上面有很多个感光单元,用于采集光信号,为了捕获彩色图像,必须在每个感光元上方放置一个滤镜,该滤镜仅允许特定颜色的光。 实际上,当前所有的数码相机只能在每个感光元中捕获三种原色之一,因此它们会丢弃大约2/3的入射光。我们将它放大之后观察。

传感器感光元示意图

         这就是图像传感器上面的感光单元,为一个个红绿蓝的滤光片阵列按照某种规则排布的,这种格式的一般规律是:

        奇数扫描行输出 RGRG……

        偶数扫描行输出 GBGB……

这种格式也就是所说的专业名词:Bayer格式

        很多人会说,一个像素不是由三基色组成吗?为什么这一个像素只有一种颜色呢?那不是不合理吗?很好!我已开始也是这么觉得的,这就是为什么人家较科学家,而我们只能叫工程师。以下面这张图片举例Picture Source:https://www.hisour.com/bayer-filter-24546/

1.人眼观察到的图像    2.RAW原始图像
                 3.Bayer格式输出图像  4.运用插值计算后输出图像

        对1人眼观察到的图像(也可以说是保存在存储设备当中的.JPEG格式的图片)进行放大,我们能观察到其中的每个像素点,也就是RGB颜色空间

         然后使用相机对着这个景色拍照,得到的RAW数据就是2所示,也就是非常原始的图像信息,其中只有亮度分量,而没有色度、色调、饱和度等其他分量(这里就是没有Y、U分量,只有V的意思吧?应该可以这么理解吧?引出YUV颜色空间知识点),这个图像相对应就是之前所说的老式机械照相机的黑白底片。

        经过Bayer阵列的采集之后就得到了图3所示相机传感器获取到的原始图像信息,粗略看好像是和人眼看到的大致相同,但是放大之后观察

Bayer图像放大效果

        放大后效果其实是和上述所说的Bayer格式一样的,奇数扫描行输出 RGRG……,偶数扫描行输出 GBGB……,每一个像素点只有RGB通道当中的一个分量,也就是说有2/3的颜色分量是没有的,那问题来了,这怎么能够构成一幅完整的图像呢?

        这就接着要学习Bayer格式插值算法了......这个呢就不多说了,开始学习开始卷起来,放一段关于拜尔的段子吧!摘抄自ISP(图像信号处理)之Bayer Raw 简介_乐正倩彦的博客-CSDN博客

拜尔在天堂遇见了上帝。
上帝:拜尔,你这个骗子!看看你在下面做的好事,现在还有脸来见我?

拜尔:我的主啊,我是您忠实的信徒,我怎么会是骗子呢?

上帝:你在下面发明了个什么“拜尔阵列”,这玩意儿几乎垄断了人类的数码相机行业,这是你干的吗?!

拜尔:是啊,我的主。我发明了这种传感器,让数码摄影技术在人类中得到了普及,这难道不是干了个大好事吗?

上帝:普及数码摄影技术当然是好事,但关键是,你的传感器偷工减料啊!我在创世纪的时候,说要有光,于是就有了光,我创造的光里面包含了红、绿、蓝三种基本色。但是你的传感器里面根本就没有完整记录我这三种颜色,你每个像素只记下了一种颜色的亮度值,然后通过后期处理(Bayer格式插值算法?),胡乱猜出像素里另两个基本色,再弄出图像来糊弄人,一张照片里只有1/3的色彩是真实的,这还不算骗子啊你!

拜尔:我的主啊,您看我一脸老实相,会是骗子吗!我的传感器这么干,是有苦衷的啊!您得听我慢慢道来。

上帝:好,那你说吧。要是说得有道理,能说服我,那才能让你进入名人堂。否则的话,你还得回到人间去,自己去收拾你的烂摊子。

拜尔手臂一挥,上帝面前出现了一个大屏幕,结合着屏幕上的图文,拜尔开上给上帝解释起来。
拜尔:那是上个世纪的70年代,我在柯达公司从事科研工作,其中一个重要课题,就是怎么样才能将影像转换成数字信号储存下来。我们都是凡人啊,凡人没有您那样无边法力,所以我们的光电传感器只能够记录光的强度,而无法分辨光的颜色,即使是现在21世纪了,依然是这样。但是凡人也是贪心的,我们不满足于只能拍黑白数码照片,只能在有限的条件下想尽办法,去尽可能的获得色彩。我绞尽了脑汁,要想办法解决颜色的记录问题,直到有一天我的小狗菲儿帮我解决了这个问题。

上帝:你的狗?

拜尔:是的,我的小狗狗菲儿。这天它嘴里咬着一件东西,跑到我面前,是一个黄色滤镜。就是我以前拍黑白照片时常用的那种滤镜,黄色的滤镜可以滤除或减小红、蓝光对照片的影响。
看到这个滤镜,我脑中顿时灵光一闪,如果我在每个像素上分别装上这三种滤镜,不就能得到三种光的亮度了吗,然后一合成,色彩就重现了!上帝啊,难道不是您指示我的小狗来帮助我的吗?

上帝:咳咳,嗯,这倒是我干的……

拜尔:但是,我们凡人做不到。我们的元器件制造水平达不到这个要求。我们无法轻易地在一个像素里造进去三个滤镜和感光元件。即使勉强能做到,这个成本也不是绝大多数人能够承受的。无法商业化的东西,对于我们商业化的公司而言,没有现实价值。
        在随后的日子里,我又尝试了各种方法,最后,发明了一种基于单个颜色微小滤镜的影像传感器系统,就是现在被人们称为“拜尔阵列”的传感器系统。                                                                      这只用一块图像传感器,就解决了颜色的识别。做法是在图像传感器前面,设置一个滤光层(Color filter array),上面布满了一个个滤光点,与下层的像素一一对应。每个滤光点只能通过红、绿、蓝之中的一种颜色,这意味着在它下层的像素点只可能有三种颜色:红、绿、蓝,或者什么也没有(黑)。不同颜色的滤光点的排列是有规律的:每个绿点的四周,分布着2个红点、2个蓝点、4个绿点。这意味着,整体上,绿点的数量是其他两种颜色点的两倍。这是因为研究显示人眼对绿色最敏感,所以滤光层的绿点最多。这也是为什么Bayer图像整体偏绿的原因)                       每个摄影者在完成光圈、快门、对焦设置等前期工作后,按下快门,于是光线经过镜头,被传感器上的为滤镜分解成一个个单色的光,由传感器记录下每个点的光强度数值,这就得到了RAW数据。                                                                                                                                             有人会对这样的照片感到满意吗?显然人心是不满足的!于是后期工作开始了,后期就由计算机软件来进行处理,可以是全自动(相机直出),也可以是人工参与(操纵后期软件)。

上帝:慢着慢着,难道不经过后期处理的RAW,就只有这样的黑白马赛克吗?

拜尔:是的您那,没有计算机系统的后期处理,您最多就只能看到这个黑白马赛克,没有完整的图像!如果我们对它微处理一下,把每个像素对应点的颜色加上后,计算机进行后期处理的第一步就是猜色,也叫去马赛克。如果一个像素只可能有三种颜色,那么怎么能拍出彩色照片呢?前面说了,每个滤光点周围有“规律”地分布其他颜色的滤光点,那么就有可能结合它们的值,判断出光线本来的颜色。以黄光为例,它由红光和绿光混合而成,那么通过滤光层以后,红点和绿点下面的像素都会有值,但是蓝点下面的像素没有值,因此看一个像素周围的颜色分布——有红色和绿色,但是没有蓝色——就可以推测出来这个像素点的本来颜色应该是黄色。

在得到每个像素的RGB颜色后,后期软件还要加入白平衡矫正、gamma校正,并应用风格曲线、降噪锐化设置等参数,这些参数多数可以人为去设定,这个参数设定的过程,就是俗称的ps,准确地讲就是人工地后期处理。
处理完后最后生成一幅位图,可以用TIFF、JPG等位图格式保存在磁盘上。

上帝:不对,不对!你说是要完成后期处理后才能看到图像,但是多数相机都有实时取景模式,我都没拍呢,哪来的后期!还有我看到我们天国摄协里也在玩LR什么的,这不是在做后期调整前就看到图了?还是看着图一点一点地调呢!这你怎么解释?

拜尔:我的主啊,人类是很狡猾的!实时取景和LR等软件里给先你看到的图像,都是先用它内部默认的后期参数进行粗略后处理,先糊弄一下人眼,满足一下心理。当你全部后期参数设置完后,这不还有一个“导出”的过程吗?这才是真正在进行完整全面的图像后处理呢!

上帝:我的上帝啊!哦,也就是我的我啊!弄出个照片还有这么多花花肠子!

拜尔:在您还未赐予我们人类全色彩的感光器件前,我也是没办法才想出这么个主意,通过计算去猜测颜色的啊!

上帝:那后来不是有个适马公司搞出个叫FOVEON X3的全色彩图像传感器吗?有了这个怎么还在用你的老拜尔?

拜尔:我的主啊,FOVEON X3的全色彩传感器是好,但是一来有专利权的限制,难以推广,二来也是由于技术水平限制,这个FOVEON X3传感器在高感光度下的表现实在是不行,所以多数厂家还是在沿用我的老拜尔阵列。
哦,还有一家富士公司,改进了我拜尔阵列的颜色滤镜的排列方式,也取得了很好的效果。据说佳能公司也有了全色彩的传感器专利。不知道今后那天,我的老拜尔阵列也会和我一起进入天堂,存入天堂博物馆了。

  • 6
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值