Camera噪声问题
Camera RGB 域的噪声
以上部分属于sensor processing,接下来的部分属于color、luminance processing。
gamma
gamma是在RGB域设置一个gamma table去对应给每一个像素值增加一个适当的增益提高暗区的亮度水平。gamma的由来是由古老的显示屏来的,gamma校正基本上是为了提升暗部细节,可以理解为在数字gain增加,会显著增加暗区的噪声,针对不同平台或者设备gamma的核心理念都是一样的,只不过对于gamma LUT的数据大小有区别。
color correction
cc是将camera RGB 转换为 s RGB,为了获取更逼近人眼视觉的颜色。在图像处理中是通过一个3*3矩阵运算的。分别是三个通道的调整。
R’ = m00 R + m01 G + m02 B
G’ = m10 R + m11 G + m12 B
B’ = m20 R + m21 G + m22 B
其中,R’,B’,G’是要得到的调整后的值,R,G,B是当前的三通道的值。最为重要的一点是每一行的三个值加起来应当为1,否则会影响到AWB。
这部分也会产生一些非线性噪声。
Lens shading
为什么会有Lens Shading这个现象呢,其实从透镜原理不难看出这是透镜的光学特性导致的中间亮,四周暗的现象。当然由于波长不同的RGB散射之后四个通道不重合,所以导致出现color shading,经过rolloff这么一处理,现象就会改善很多。简单提一下Tintless算法,会对不同的色温加以计算,tune图像的时候只需要用T光下的图像即可。
Auto White Balance
有两种方式去把sensor感知到的颜色还原到人眼心里感知的颜色。一种是灰世界假说,一种是白点法。简而言之,白点法就是通过G值超出某一范围的值,认为是白点,对白点进行颜色还原。灰世界是根据统计学对大量的灰点分布进行处理计算,判断当前的色温并还原。以上方法都基于色温曲线的绘制(参考点的选取)。
Demosaic
当经过以上处理之后,现在的图像还是在RAW域的,图像还是分成R,G,G,B四个通道,需要将其进行还原,利用插值法计算每个pixel上的其它两种颜色,具体计算方法在后面再介绍。Demosaic会对不同的颜色进行插值计算,在边缘部分会形成结构噪声。
bayer pattern
这个其实简单理解就是分色滤色片,为了造价成本和一系列原因,让每一个pixel只感受一种波段的光,即R,G,B中的一种。这样在后面需要还原色彩的时候就要使用的另外的模块进行插值运算。
关于RAW图的存储和计算,为了MIPI传输方便,一般采用16 bytes传输12个pixel的信息,而每个pixel的大小是由RAW来定义的,比如RAW10就是每个pixel都占用了8 bits。
计算RAW图大小时需要明确以上两点:pixel counts 和 pixel bits,以及传输协议以及字节对齐等。
black level correction
因为三极管本身特性,在光子信号量为0时,sensor本身感受到的电流并不为0,所以会形成一个暗电流。称为black level,在全黑环境下,拍摄一张图,图像上会有部分白点,这部分即为暗电流引起的噪声,在进行适当的处理之后去除。过大会使图像信息丢失,过小会造成噪声严重。
PDPC&BPC
在经过blc之后,会发现还是有一些特殊的‘噪点’,其实这些点就是bad pixel,bad pixel的分类也比较多,分为动态的和静态的,静态的,比如PDPC,通过拉普拉斯算子标记写入的方式进行去除,动态的需要算法去检测是否超出某一阈值而进行去除,去除掉该点的值后会通过获取相邻像素点的值对该点进行填充。
在RAW域不能对图像进行大幅度的降噪,否则会引起信号量的丢失,对ISP的处理产生很重要的影响,而且RAW域的处理还是在时域空间,处理手法单一。
ABF
Adaptive bayer filter是对前面产生的噪声去除的一个模块,主要是针对于RAW域噪声的去除,ABF主要是针对于常规2D卷积使图像边缘劣化的问题在降噪的同时不钝化边缘,主要原理是两级低通滤波器,分别消除高低频噪声。ABF在VFE部分可以在线性域一定程度上降低噪声,其余的一般由CPP部分的硬件小波降噪完成。
关于 Camera 的成像流程中的噪声
camera成像在大的阶段上分为RAW域的成像和RGB域的成像。中间的过渡是由Demosaic模块完成的。
广泛意义上的RAW 域的噪声
通过查阅资料,RAW域的噪声主要分为高斯噪声和散粒噪声两种。高斯噪声是不随着光强变化的噪声,散粒噪声符合泊松分布,会随着光强的增加而逐渐的增大。在Sensor直出的RAW图中这两种类型的噪声都是包含在内的,所以直出RAW是随着光强的增大而增大的,但是值得注意的是,在这个阶段的信噪比也是增大的。
Camera 的 RAW 域噪声
RAW图是一种格式,在就不得不提一下Camera的处理流程。
由CSID进来的数据,会经过以下步骤的处理最终display。
在demosaic之前的格式为RAW格式,在demosaic之后的格式为RGB格式。
GTM,LTM
Global tone mapping和Local Tone mapping是对动态范围有直接影响的两个模块,顾名思义,Global是全局影响,对全局的亮度加以调整,而LTM是对局部区域进行调整,使亮区不过曝,暗区亮度提升。
up current Luma
在后期希望将在暗环境下拍摄的图片亮度拉高,通过exposure table查表,找到对应的gain值去补偿当前的亮度值。这就会造成噪声的引入,如果当前环境亮度值本身就较高的情况下则无需补偿gain值去放大信号量,噪声就不会增加那么明显,所以在该部分把这部分噪声的引入定义为up luma。
小波降噪
小波分析是傅立叶分析思想方法的发展与延拓。它自产生以来,就一直与傅立叶分析密
切相关。它的存在性证明,小波基的构造以及结果分析都依赖于傅立叶分析,二者是相辅相成的。小波变换把信号分解到各尺度中,在每一尺度下把属于噪声的小波系数去掉,保留并增强属于信号的小波系数,最后再经过小波逆变换恢复检测信号。之后会对WNR进行专门的叙述。
ASF
ASF是CPP硬件中使用高通滤波器增强边缘,采用平滑处理来抑制非边缘区域的噪声水平。

Camera噪声问题相关推荐

  1. Camera电源噪声处理

    camera供电分为PMU和LDO,如果camera的供电设计不好,会导致camera效果伴有很强的noise,具体表现在较为暗的环境下竖条纹明显. 在实验室关闭光源拍摄墙壁带有电源干扰的图片如下: ...

  2. camera(24)---camera 客观测试 Imatest教程--噪声测试

  3. Camera ISP技术

    Camera ISP技术 ISP图像信号处理 • 1,ISP图像信号处理介绍 • 2,ISP的目的是什么? • 3, ISP的处理流程以及算法 o 3.1镜头的几何变形 o 3.2 镜头渐晕 o 3. ...

  4. camera数字降噪(DNR)

    camera数字降噪(DNR) 闭路电视摄像机 无论多么出色和弱光,在黑暗中拍摄视频监控录像时都会不可避免地产生一些噪音.噪声是任何电子通信中不可避免的部分,无论是视频还是音频.本质上是静态的–视频信 ...

  5. Camera HDR Algorithms

    Camera HDR Algorithms HDRI是High-Dynamic Range(HDR)image的缩写,也就是高动态范围图像.它就是为了解决更好的存储高动态范围图像这个问题而发明出来的. ...

  6. CVPR2020事件相机(Event Camera)研究文章汇总

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文介绍了CVPR 2020中关于事件相机(Event Camera)的相关研究.所列举的论文由CVP ...

  7. 棋盘格检测--Automatic camera and range sensor calibration using a single shot

    Automatic camera and range sensor calibration using a single shot Robotics and Automation (ICRA), IE ...

  8. 转一篇写的比较好的camera文档[Camera 图像处理原理分析]

    色彩篇(一) 1         前言 做为拍照手机的核心模块之一,camera sensor效果的调整,涉及到众多的参数,如果对基本的光学原理及sensor软/硬件对图像处理的原理能有深入的理解和把 ...

  9. Camera 图像处理原理分析

    http://blog.chinaunix.net/uid-24486720-id-370942.html 1         前言 做为拍照手机的核心模块之一,camera sensor效果的调整, ...

最新文章

  1. 关于学习Python的一点学习总结(23->跳出循环)
  2. 无所不在的物联网设备 你我都需要正视所带来的安全问题
  3. springmvc代码详细(五种映射,绑定参数,处理json数据,文件上传,转发,拦截器的实现)
  4. php 卡号算法,PHP实现通过Luhn算法校验信用卡卡号是否有效_PHP
  5. 【面试总结】java测试工程师培训
  6. 老毛子固件二级路由实现ipv6上网
  7. librdkafka
  8. SuperSocket服务器架设(一):认识SuperSocket
  9. [C0] 人工智能大师访谈 by 吴恩达
  10. pandas+matplotlib——习题一
  11. Junit4 initializationError初始化错误 终于解决了!!!
  12. fuz 2159 WuYou
  13. 学游戏原画都需要掌握哪些软件
  14. AjaxPro.Net的例子
  15. web程序安装说明书
  16. 企业网络营销:如何提高推广效果?
  17. FT2004/D2000 概念说明
  18. OxyPlot在WinForm中的应用
  19. 2009年世界顶级杀毒软件排行榜
  20. 图像增强学习笔记(三) | 图像锐化

热门文章

  1. Access to XMLHttpRequest at file from origin ‘null‘ has been blocked by CORS policy谷歌浏览器本地打开项目js文件报错
  2. Linux下安装Java8
  3. 用伪代码模拟洗衣机的运转流程
  4. git shanchu stash_git stash用法
  5. tornado压力测试
  6. tornado 异步两种实现形式 通过回调可以利用
  7. 独家 | TensorFlow 2.0将把Eager Execution变为默认执行模式,你该转向动态计算图了...
  8. sqlplus连接时出现错误:shared memory realm does not exist 解决
  9. AI推理与Compiler
  10. ❤️手撕这十道HiveSQL题还不能吊打面试官,却能保你不被吊打❤️【推荐收藏】