#2020征文-开发板#【AI Camera试用】摄像头色散与紫边现象总结
在视觉领域中,相机的选择与调试是非常深的一门学问,将环境的各种光源信息和色彩信息保存下来,不仅与CMOS和CCD的硬件参数息息相关,而且在软件层对数据的处理也非常重要,原生相机的拍照效果往往存在诸多的缺陷,因为最近虫虫在调试摄像头时遇到了这类问题,本文就相机拍照经常出现的两种现象:色散和紫边,做一个总结梳理,如果有不正确的地方欢迎大家指正,在此虫虫先谢谢大家了。
色散是一种光学现象,在光学仪器里色散是一种缺陷,“色散”顾名思义就是光通过光学镜片后不同颜色的光出现分离散开的现象。除了激光类比较纯的光源外,自然界里大多数光源都是由多种不同颜色的光混合而成,如太阳光就是由七色可见光和红外紫外等组合的混合光。造成的色散的主要原因是:不同颜色的光有着不同的波长,普通光学元件的折射率会因光的波长不同而改变。具体表现在照相上,色散会影响到成像的色纯度和间接的成像锐度,也就是说色散大的相机镜头拍出的照片颜色不正不浓郁和清晰度差。而那些高价的相机镜头就是使用了昂贵的低色散材料加工成的镜片,所以拍出的照片就色彩纯正清晰耐看,目前非常火的光刻机镜头就属于非常高端的的工艺了。
紫边现象:
数码相机的紫边是指数码相机在拍摄取过程中由于被摄物体反差较大,在高光与低光部位交界处出现的色斑的现象即为数码相机的紫色(或其它颜色)。紫边出现的原因与相机镜头的色散、ccd成像面积过小(成像单元密度大)、相机内部的信号处理算法等有关。
在色散现象中出现的颜色异常边缘线条通常是紫色的。然而,“紫边”要说明的东西并不仅仅于此。紫边还表示了数码相机在是使用微型镜头导致的一种典型现象。在一幅照片中,紫边比其他色散现象更加显而易见。特别当逆光拍摄或拍摄对比极强烈的物体时,紫边尤其容易出现。高光溢出也是导致紫边清晰可见的原因之一。
紫边现象是所有数码相机的“通病”,需要长期改善。
(一)“紫边”问题的出现
使用数码相机或者数码摄像机,可能常常会发现,在拍摄高反差大背光物体的照片中,物体边缘出现了刺眼的“紫边”,这一点,几乎绝大部分DC和DV都存在此问题,无一幸免,差别只是程度问题,有的格外严重有的程度稍轻。
(二)争论和解释
这个困扰大家N长时间的问题,想解决它,就首先得弄清楚问题产生的根源到底在哪儿,罪魁祸首到底是谁?
百花齐放百家争鸣,各种各样的解释出现了,有的说是镜头质量问题,有的说是光学色散问题,有的说是软件算法问题,各持一词,莫衷一是,每一种说法,听起来都有点道理,但又不能完美的解释所有的现象和问题。你说是镜头问题吧,那传统银盐胶卷相机上却从来没有出现此类问题,哪怕是100多元塑料镜头的Tom相机;你说是光学色散问题吧,色散的表现又不是这个样子的,很勉强;你说是软件算法问题吧,有点道理,可似乎不是根本原因,算法问题不至于这么难以解决。
开始,我也很迷惑,当时,在dpreivew(可以算是数码摄影器材第一权威网站了吧)上看到了PhilAsky对紫边的定义和解释——ChromaticAberration(色差),乍一看很有道理,可是问题是为什么只有DC。DV才有这个问题,Phil的解释没能解答这个问题。慢慢地,随着对DC、DV成像原理的深入了解,尤其是PMA2002上Foveon公司的X3CMOS技术的提示,我发现Phil的解释可以说是误入歧途。
ChromaticAberration(色差),有着很清晰的定义,就是镜头光学上的误差,原理上简单说,镜头成像因为光或者其他辐射的波长不同而变化的一种光学缺陷,色差有两种,一种是AxialChromaticAberration,另一种是TransverseChromaticAberration,都会导致白光“分散”成光斑或者彩虹状的光边。具体体现在照片上,就是影像的边缘原本是单纯白色,因为色差而变成RGB三原色不能重叠在同一线。
从现象上来说,ChromaticAberration可以解释紫边问题,但是ChromaticAberration说不能解释的是,为何采用同样的镜头,DC/DV和传统银盐相机相比会有截然不同地表现。
(三)抓出“紫边”的真凶
其实,DC/DV上出现的紫边现象,正确的理解,根源原因有如下两点:
1。衍射
2。Mosaic遮罩滤镜式CCD的彩色插值
这两点,衍射是导火索,真凶是CCD!
就这两点挨个分析:
衍射,学过大学普通物理-光学的都明白,一种光波的基本特性,其理论基础是——光线是一种波,有一定的波长。
当光线通过一些小孔或者窄缝时,在物体的边缘出现的光波分散现象。由此可得,高反差大背光景物,当强光通过其边缘时,就已经产生了衍射现象(颜色化边),然后才会经过镜头成像。所以,把出现颜色花边归罪于镜头品质是错误的。
但是 同样的光学衍射,为什么偏偏在DC/DV上变成了刺眼的紫边呢?
其实,与其叫做紫边,科学的来说,应该叫做洋红边,HEhe,通过Photoshop中对“紫边”的色彩分析,可以发现,大部分紫边的主要构成就是洋红(Magenta,CMYK四色之一),这些紫边(抑或洋红边)到底如何出现的呢?
——紫边,是由于高反差大背光静物边缘,产生光学衍射,加上DC/DV的CCD在色彩插值时的固有缺陷造成!
分析现在现在的CCD(除了FoveonX3CMOS)都是Mosaic遮罩式,CCD本身不感知色彩,透过CCD每个象素前面的RGB(或者CYGM)滤镜,一个象素只测R,G,B其中一种原色的密度,再由相机内部软件进行彩色化插值处理,利用周边象素信息“猜测”插值出其他颜色。(详细的CCD成像原理不是这篇文章的重点,感兴趣的可以参考其他专业文章论述),注意!产生紫边的关键点就在这个彩色插值过程中!这个插值过程并不可能完全反映真实的色彩分布(就紫边而言就是那部分边缘产生的衍射部分),相机里的算法只能通过周边的象素“推测”出真正的全色分布,这也造成了边缘不清晰,色彩干扰等一系列问题,也产生了刺眼的紫边。