【转】 ISP-黑电平校订(BLC)

转自:https://blog.csdn.net/xiaoyouck/article/details/72824534算法

介绍
黑电平(Black Level Correction)也就是黑色的最低点,以8bit数据来讲,指在通过必定校准的显示装置上,没有一行光亮输出的视频信号电平。定义图像数据为0时对应的信号电平。ide

缘由
那么为何要进行黑电平校订呢?缘由以下:spa

CMOS传感器采集的信息通过一系列转换生成原始RAW格式数据。以8bit数据为例,单个pixel的有效值是0~255,可是实际AD芯片(模数转换芯片)的精度可能没法将电压值很小的一部分转换出来,所以,sensor厂家通常会在AD的输入以前加上一个固定的偏移量,使输出的pixel value在5(非固定)~255之间,目的是为了让暗部的细节彻底保留,固然同时也会损失一些亮部细节,因为对于图像来讲,咱们的关注度更倾向于暗部区域,ISP后面会有不少增益模块(LSC、AWB、Gamma等),所以亮区的一点点损失是能够接受的。
sensor的电路自己会存在暗电流,致使在没有光线照射的时候,像素单位也有必定的输出电压,暗电流这个东西跟曝光时间和gain都有关系,不一样的位置也是不同的。所以在gain增大的时候,电路的增益增大,暗电流也会加强,所以不少ISP会选择在不一样gain下减去不一样的bl的值。.net


Optical Black
每一个sensor都有OB区域,CCD sensor初期成像效果较差,它会把top OB 和 side OB暴露给isp使用,这样isp能够本身估算不一样区域不一样的black level值,再分别处理。然而ob并不能真实的反映黑电平的值,所以目前不多有ISP或sensor去使用ob区域进行计算。设计

校订
如今的主流cmos sensor都是本身把black level已经处理完了。在isp部分减掉的其实不是black level,而是sensor统一作出来的pedestal。sensor端不会将bl减完,由于sensor输出不能为负数,若将bl减完,就等于小于0的部分直接就丢掉了,这样作会改变noise的分布。视频

算法
通常BLC模块会放在ISP比较靠前的位置,由于咱们但愿图像在进入其余模块以前可以还原最为真实的图像。有些sensor会在sensor内部集成BLC的模块,那么此时ISP里的BLC模块只作微调便可。blog

因为硬件设计人员在设计BLC模块时须要考虑效果和成本,所以目前市场上使用的ISP通常采用的方法是在sensor输出的图像上减去一个数值。it

BLC各个通道均须要校订,目前比较经常使用的方法有:io

中值
全局均值
局部均值
自定义
计算较为简单,这里不附代码了。class

tuning
因为电源、PCB等各个缘由,咱们遇到的黑平衡并非那么理想,以下两种状况,固然还有更糟的,这里不一一列举。

 

校订前须要根据图像的具体状况进行分析,若图像平面趋于平整,则推荐使用全帧均值;若图像出现一些峰值,有明显突出山峰等,推荐使用中值的方法;若出现某个角的值比较高,可能因为电源或者其余的缘由引发的,则推荐使用局部计算的方法;此外,还有自定义、最大值等方法,须要根据不一样图像的状况去选择方法,终其目的都是同样的。

以单通道为例,如下是黑电平校订的示意图:

相关文章
相关标签/搜索