ISP PIPLINE (一) BLC 以及 线性化
what is the BlackLevel?
暗电流来源1、raw8为例,单个pixel的有效值是0~255,但是实际AD芯片的精度可能无法将电压值很小的一部分转换出来,芯片厂会刻意添加一个固定的偏移量以达到阈值转换电压,使输出的pixel value在5(阈值电压,非固定)~255之间,目的是为了让暗部的细节完全保留,当然同时也会损失一些亮部细节。
暗电流来源2、sensor的电路本身会存在暗电流,导致在没有光线照射的时候,像素单位也有一定的输出电压,暗电流这个东西跟 曝光时间和gain 都有关系,不同的位置也是不一样的。因此在gain增大的时候,电路的增益增大,暗电流也会增强并且sensor各处的暗电流会不均匀,因此很多ISP会选择在不同gain下减去不同的bl的值。
why does subtract the BlackLevel?
暗电流不是我们图像真实的光电转换信号,所以为了得到真实的图片,我们必须减去这个blackleve,虽然每个pixel的bl值不同,但是一般情况下我们认为基本相同,通过求平均的方法确定一个bl.
how to subtract the BlackLevel?
若图像平面趋于平整,则推荐使用全帧均值;若图像出现一些峰值,有明显突出山峰等,推荐使用中值的方法;若出现某个角的值比较高,可能由于电源或者其他的原因引起的,则推荐使用局部计算的方法;此外,还有自定义、最大值等方法,需要根据不同图像的情况去选择方法,终其目的都是一样的。
如果blacklevel计算错误在每个通道去扣除的时候会整体偏色,主要原因在于r,g,b各通道扣除blacklevel后比例发生变化。
比如下面的图:


顺便讲一下何为线性化:

细线为真实的r,b,g的曲线,而箭头为线性的曲线,可看出sensor在不同曝光下R,B,G的增加幅度并不大。
这样的结果就是造成局部偏色,如下:

那么如果解决这种问题呢?通过对sensor输出的真实曲线进行线性化拟合,分区域进行线性化拟合,使用lut进行查表输出。
ISP PIPLINE (一) BLC 以及 线性化的更多相关文章
- ISP PIPLINE (十四) AE(自动曝光)
自动曝光可以可以通过调节 模拟增益,数字增益,曝光时间,光圈大小来调剂曝光. 曝光在ISP PIPLINE的位置. (先介绍一个额外的知识点: ) gamma compression(也就是de-ga ...
- ISP PIPLINE (六) 3A 综述
前言: 上一篇文章: ISP PIPLINE (五) Denoise 下一篇文章: (1)3A定义包括什么 Iris:自动光圈,根据环境自动调节光圈. 既然讲到光圈,就先看一下光圈是什么,以及它如何影 ...
- ISP PIPLINE(零) 知识综述预热
本文为camera isp pipline概述 ISP,即image signal processing.为图像成型做的处理工作.适应不同光学环境下图像的还原. pipline流程如下: 光通过LEN ...
- ISP PIPLINE (七) gamma
what is the gamma? CCD.CMOS成像方式是通过像点中的"硅"感受光线的强弱而获得画面.而硅感光是物理成像,它真实地反应光线强度的变化,来多少就输出多少,因此它 ...
- ISP PIPLINE (十五) AF
主流的AF: CDAF, PDAF, laser assist AF(这个只是辅助,在微距或者拍摄纹理不明显的场景下好用). AF的大致原理就是检测图像锐度或者等价于锐度的参数,推动马达实现合焦或者对 ...
- ISP PIPLINE (九_2) Denoise 之 time domain denoise
时域噪声是空域噪声在时间上波动的一种描述. 1.多帧平均去噪法 1.1 理论: 1.2 帧数增加,噪声减小: 1.3 IIR滤波器的效果 2.1中的两种方法在拍摄视频的时候,如果有运动物体,则会出现拖 ...
- ISP PIPLINE (九_1) Denoise 之 space domain denoise
1.空间域噪声类型 1.gauss+possion 2.椒盐噪声(dpc处理已经处理了) 去除空域噪声有哪些方法? 空域噪声一般的思想是对某pixel邻域的pixels进行加权平均. 比如 1.高斯降 ...
- ISP PIPLINE (十三) CSM/CSC(color space matrix/convert)
1.RGB为何要转换为YCbCr,历史遗留问题! 一般一个技术如果为了保证原有的设备可以继续使用,就需要兼容以前的技术.黑白电视到彩色电视的进化就是转换为YCbCr的原因,同时YCbCr比RGB传输占 ...
- ISP PIPLINE (十二) Sharpening
什么是sharpening? 不解释,从左到右为sharpen , 从右到左为blur. 简单理解为边缘增强,使得轮廓清晰.增强对比度. 如何进行sharpening? 下面是实际sharpen的过程 ...
随机推荐
- GoogLeNet 之 Inception v1 v2 v3 v4
论文地址 Inception V1 :Going Deeper with Convolutions Inception-v2 :Batch Normalization: Accelerating De ...
- 常见的爬虫分析库(4)-爬虫之PyQuery
PyQuery 是 Python 仿照 jQuery 的严格实现.语法与 jQuery 几乎完全相同. 官方文档:http://pyquery.readthedocs.io/ 安装 1 pip ins ...
- Python_网络编程udp-飞秋自动攻击
# 模拟一个接收数据import socketimport time def auto_hack(udp_socket, recv_msg, revc_ip, revc_port=2425): # 发 ...
- settings.py常见配置项
settings.py常见配置项 1. 配置Django_Admin依照中文界面显示 LANGUAGE_CODE = 'zh-hans' 2. 数据库配置(默认使用sqlite3) 1 .默认使用的s ...
- JAVA二分搜索树
二叉树: 和链表一样,动态数据结构. 二叉树具有唯一根节点 二叉树具有天然的递归结构 二分搜索树是二叉树 二分搜索树的每个节点的值: 1.大于其左子树的所有节点的值 2.小于其右子树的所有节点的值 每 ...
- SQL Server索引误区使用建议
常见的误区: 1.数据库不需要索引 2.主键总是聚集的 3.联机索引操作不引起阻塞 4.复合索引下列的顺序不重要 5.聚集索引以物理顺序存储 6.填充因子可以应用在索引的插入过程中 7.每个表应该有聚 ...
- C#获取一周的工作日显示(星期几)
代码如下: gridBandW1.Caption = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.GetDayName ...
- java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
1.启动hive的时候出现这个问题,报错如下所示: [hadoop@slaver1 conf]$ hive Logging initialized -cdh5.-cdh5.3.6.jar!/hive- ...
- 【Oracle】Linux7安装11g 86%报错:Error in invoking target 'agent nmhs' of makefile
http://blog.itpub.net/29475508/viewspace-2120836/
- [转] 安装npm全局包提示权限不够
方法1 sudo npm i -g npm 方法2 修改usr/local的权限.使用sudo有一个风险是安装包可能会运行自己的一些脚本,使sudo操作变的不可控,不安全.可以通过将/usr/loca ...