在上一篇文章中,我们已经知道了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扣除的问题与偏色有着很大的关系,所以想聊一下,也记录一下。感谢大佬给我开的小灶~

欢迎关注我的个人公众号,这里有更多好康的喔~

ISP--Black Level Correction(黑电平矫正)相关推荐

  1. BLC(BlackLevel Correction)------黑电平校正

    底电流, Black Level 也叫暗电流,意思是说环境全黑的时候的电流.是用来定义图像数据为 0 时对应的信号电平.由于暗电流的影响, 传感器出来的实际原始数据并不是我们需要的黑平衡( 数据不为0 ...

  2. ISP之BLC(黑电平校正)

    ISP之BLC(黑电平校正) 目录 ISP之BLC(黑电平校正) 一.黑电平定义 二.黑电平形成原因 三.校正位置 四.校正方法 五.实际应用校正方法 关于黑电平调试部分参考一下博客 https:// ...

  3. ISP BLC(BlackLevel Correction) -ISP端 BLC 黑电平矫正的学习理解

    个人理解:BLC(BlackLevel Correction)简单来说就是对全黑状态下对各通道不为0值的矫正(全黑状态下各通道值应该为0) 那么,要了解Black Leve Correction,首先 ...

  4. ISP——黑电平矫正(Black Level correction, BLC)

    文章目录 一.产生原因 二.矫正方法 1.减去固定值法 2.ISO联动法 3.曲线拟合法 一.产生原因 1.暗电流:暗电流是目标物体无光照的条件下观测到的电流.意味着无光照情况下产生电压,不是纯黑. ...

  5. ISP算法学习之BLC(黑电平校正)

    BLC--black level correction黑电平校正 在ISP算法中进行黑电平校正的目的是消除图像中的暗电流噪声和感光器非均匀性引起的色彩偏差. 一.产生的原因 暗电流(Dark Curr ...

  6. ISP-BLC(Black Level Correction)

    ISP-BLC(Black Level Correction) 1. BL 的定义 BL 一般翻译为黑电平.实际AD芯片的精度不足以将电压值很小的一部分转换出来,芯片厂会刻意添加一个固定的偏移量ped ...

  7. 黑电平校正(BLC-Black Level Correction)

    黑电平产生的原因 Sensor的电路本身会存在暗电流. 暗电流(dark current),也称无照电流,指在没有光照射的状态下,在太阳电池.光敏二极管.光导电元件.光电管等的受光元件中流动的电流,一 ...

  8. ISP——BLC(Black Level Correction)

    ISP--BLC(Black Level Correction) BL产生的原因 暗电流 暗电流(dark current),也称无照电流,指在没有光照射的状态下,在太阳电池.光敏二极管.光导电元件. ...

  9. ISP中调试黑电平(BLC)的图像现象

    ISP中调试黑电平(BLC)的图像现象 黑电平处理是 ISP 处理的第一个环节,因此必 要首先进行标定.若黑电平减的不够,图像会偏紫:减太多,图像会偏绿. 关于黑电平的调试可以参考以前博客,这里主要讲 ...

最新文章

  1. R语言Logistic回归模型亚组分析森林图(forest plot)绘制
  2. Linux 应用程序 嵌汇编,Linux下嵌入汇编代码调用API(using fork())
  3. 21.使用委托表达回调
  4. JS根据日期比较显示时分或者月日
  5. mysql数据库5.7配置文件_MySQL 5.7配置文件参考
  6. 体验 PHP under .NET Core
  7. python为何排名越来越前_为何python现在越来越多的人在用了?
  8. android拍照截图组件,Android截图命令screencap与视频录制命令screenrecord(示例代码)...
  9. a as as big rat_超好玩!12句英语绕口令,你能一口气读完几句?
  10. 马斯克圣诞节晒太空飞船:明年4月测试,5年后飞火星
  11. 大数据时代背景下智能工厂的能源管理系统
  12. visio安装后导致excel滑动滚动条闪退的问题
  13. JS对象定义和基本方法
  14. 小明的爷爷108岁了,而我30岁才开始学编程
  15. 接力和隔空投送无效、handoff airdrop无效
  16. 大家都在讲敏捷开发模型,但是落地又是迭代模型,迭代模型有哪些优势呢?
  17. 为什么我不建议你将python作为入门编程语言
  18. 项目实践--广告排期系统
  19. 软件测试前景怎么样?大概要学什么?
  20. C#批量转CSV到Excel

热门文章

  1. linux pppd ip up 脚本,pppd拨号脚本配置
  2. 1024程序员节CSDN活动征文:数据结构之顺序表
  3. 微信小程序显示当前时间
  4. 【原创】PID控制算法模拟器
  5. 图片文字介绍滑动效果代码介绍
  6. 若说耳机世界里有一股清流,那这款QCY耳机肯定是其中之一
  7. 第六期:如何通过知晓云将数据表导出为 Excel 文件
  8. minecraft兑换码领取!
  9. 想不到好的标题,所以决定摆烂。
  10. 试验数据管理系统TDM与SDM