大家好,欢迎来到IT知识分享网。
在上一篇文章中,我们已经知道了Sensor的构造,Sensor的成像原理。但是从光信号转换为图像,其中还有许多的工作,OBC就是其中之一。
在之前的文章中,我们已经知道了,每一个像素点都是由一个光电二极管控制的,由二极管将电信号,转换为数字信号。
那么,我们知道了,图像的像素值是与电信号强度相关的。但是,我们得知道,每一个光电二极管要想工作,都得有一定的电压。这就是的,即使在外部没有光线照射的时候,Sensor也会有一定的电压。
那这不就会在成像时叠加到电信号中,影响成像了吗?
这可不兴加啊,宝友!
这就是Optical Black Correct(OBC)存在的意义。
OBC 指的是光学暗区矫正,是在成像时,将一部分暗电流减去,这部分电流也称之为黑电平。
那么,要如何获取黑电平的数值呢?
如上图所示,Sensor上预留了一些完全没有曝光的像素,通过读取这些像素值的大小,可以实时得到optical black level,此时sensor的输出RAW = Sensor input – optical black level 。
尽管这些black lines已经充分考虑到了不同column的OB不同,但因为在sensor边缘的black lines会受到PCB layout、电源纹波、模组结构设计等等因素的影响,故此时OB扣除的还是可能不准确,导致部分相机厂商不使用这个功能,但是在安防类或车载类摄像头上,部分厂商还是使能了OBC功能的。
然后考虑到sensor输出的信噪比,所以一般Sensor在输出数据时又会垫上一个基底(pedestal),此时sensor的RAW = sensor input – optical black level + pedestal。对于芯片处理来说,一般拿到的就是这个数据,此时需要在ISP处理流程的起始部分减去这个基底。在芯片内部一般叫做BLC,即Black Level Correct(黑电平校正)。
Again与OB分布
单纯的从Again上,OB的分布满足如下规律:
随着增益的增加,OB的均值可能不变,但是方差会变大。主要是因为sensor内OB扣除是在Again之后做的,所以随着Again的增加,噪声的影响增大,导致了OB的方差增加。
这个时候如果还是按照OB的均值扣除,画面暗处就有可能出现偏色的问题。例如下图所示:
可以看到右图在强行提亮后,暗处出现了很严重的偏紫问题。主要是因为OB方差的变大,如果ISP再按照OB平均值扣除,那么就可能会有较多的黑电平残留,受白平衡(Rgain、Bgain)的影响,故画面暗处会偏紫。
此时的解决方法为:
1.多扣一点OB,缺点为破坏了噪声形态会引入较多噪点。
2.分通道扣除OB,缺点为偏色的情况会受环境色温影响。
而且OB还会随着温度的变化而发生变化,如果OB的扣除没有跟随温度变化的话,也会出现偏色问题。
而且OB扣除可以在成RAW域前或后两个时间节点进行,而这也各有优缺点:
1、OB在成RAW域图像之前扣除清晰度更优
1、OB在成RAW域图像之后扣除则噪声更优
在ISP处理中,OB一般为第一个模块,当然也可以放在RAW域去噪之后。
最简单扣除OB的方法是减去均值,然后再对G通道做线性拉伸,举例来说就是Goutput = Ginput*255/(255-Black Level)。做线性拉伸的原因是扣除OB后RGB通道均不饱和,而R、B通道因为白平衡增益(Rgain、Bgain)的存在可以达到饱和,Ggain的增益一般为1,这样在画面接近过曝的地方就会偏紫。
除了减去均值,还可以使用最大值、中值、局部均值等等方法扣除OB。
此外,因为OB跟增益相关,故可以根据不同的增益扣除不同的OB。
今天为什么想聊一聊OB,主要是因为在工作中,夜景算法遇到了暗处提亮偏紫的问题,得知OB扣除的问题与偏色有着很大的关系,所以想聊一下,也记录一下。感谢大佬给我开的小灶~
欢迎关注我的个人公众号,这里有更多好康的喔~
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/30818.html