大气散射模型的推导过程

大气中粒子的散射作用是产生雾霾的主要原因。无论是用人的肉眼观察,还是从拍摄获取的图像中观察,雾天的景象总是存在对比度和视野降低的问题。1925年,Keim & Nemnich[1]等人提出雾天图像能见度较低是大气中的悬浮粒子对光的吸收和散射造成的。1976年,John Wiley & Sons[2]等人提出粒子的散射作用造成目标和相机之间光在传输过程的衰减,并且增加了一层大气散射光(Airlight)。1999年,针对雾天能见度低的问题,Srinivasa G. Narasimhan[3]等人通过建立数学模型,解释了雾天图像的成像过程以及雾天图像包括的各个要素。该模型认为在强散射介质下,引起探测系统成像结果降质的主要原因有两种:一是目标反射光受大气中悬浮粒子的吸收和散射作用,造成目标反射光能量的衰减,这导致探测系统的成像结果亮度降低,对比度下降;二是太阳光等环境光受大气中散射介质的散射作用形成背景光,通常这部分背景光强度大于目标光,因而造成探测系统的成像结果模糊不清。

下图介绍了雾天的成像模型:

图中显示探测系统成像时接收到的光源主要来自两个部分,一是目标反射光经粒子衰减到达探测系统的光,而是来自于光源(本例为光照)经粒子散射形成的大气光。通过此物理模型建立得到雾天成像的数学模型为:

式中,为探测系统所获得的雾天图像,表示需要恢复出的无雾图像;参数表示图像中的像素点的位置,表示光的波长;表示无穷远处的大气光值;表示传输函数,其物理意义为经过粒子衰减能够达到探测系统的那部分光的比例。大多数团队和学者在通过探测系统获得含雾图像并对其进行去雾图像处理时均以上述大气散射模型作为雾天成像的理论模型。其主要思路是根据各种先验知识或者图像处理手段,从含雾图像中估计传输函数或大气光,将求解得到的参量代入到大气散射模型中,即可恢复出目标图像

Nayar和Narasimhan[3]认为在强散射介质下,引起探测系统成像质量下降的原因主要包括以下两种:目标反射光在传输的过程中受到介质中悬浮粒子的吸收和散射作用,导致能量衰减,通常会降低图像亮度,造成图像对比度下降;太阳光、天空光等环境光受到介质中粒子的散射作用而形成杂散光,通常会使图像模糊,造成图像色彩不自然。以浑浊大气环境下目标成像为例,成像系统获得的图像主要由两部分构成,一是由大气散射和吸收作用导致衰减的目标反射光,二是由于大气散射形成的大气光。

反射光在传播的过程中,随着传输距离的增加光强逐渐衰减,1975年McCarney给出了衰减模型,如上图所示,考虑到平行光数经过大气介质,假设光束具有单位横截面积,从x位置,每传输一段距离强度变化量可以表示为:

表示衰减后的光强,是散射系数,用于描述介质对不同波长光的散射能力,若输入光为平行光,且未衰减光束光强为时,通过对上述微分方程从进行积分,即可得到平行光束在处衰减后的光强:

若输入光为点光源,则其衰减后的光强表达式需要对上式进行修改。设未衰减光束的光强为,则同样对微分方程从进行积分,即可得到点光源在处衰减后的光强:

探测器接受到的大气光成分主要包括太阳直射光、大气漫反射光和地面反射光,如上图所示,体积微元内的介质被看做成一个光源,其强度为为光源常数。根据上述提及的点光源的损耗公式,到达探测器后的光强为,在区间进行积分可以得到总的大气光强值,由于光源来自于无穷远出的天空,所以表示无穷远处的大气光强值,令,则大气光强值表示为:

成像系统获得的总光强为:

为了方便计算,令大气透射率为,目标反射光为,目标衰减反射光为,大气光为,所以最终的大气散射模型的数学表达式为:

[1]  H. Koschmieder, Theorie der horizontalen Sichtweite: Kontrast und Sichtweite. Keim & Nemnich, 1925.

[2]  E. J. McCartney, “Optics of the atmosphere: scattering by molecules and particles,” New York, John Wiley and Sons, Inc., 1976. 421 p., vol. 1,1976.

[3]  S. K. Nayar and S. G. Narasimhan, “Vision in bad weather,” in IEEE Int’l Conf. Computer Vision, 1999.

原文地址:https://www.cnblogs.com/rust/p/10420789.html

时间: 2024-10-08 02:23:39

大气散射模型的推导过程的相关文章

大气散射 Aerial Perspective

http://mathinfo.univ-reims.fr/IMG/pdf/PreethamSig2003CourseNotes.pdf https://blog.csdn.net/toughbro/article/details/7800395 Modeling Skylight and Aerial Perspective 大气的构成 有厚度 成分不一样 会发生散射  地球是圆的 朝一个方向上看的时候 光经过的大气层厚度不一样 颜色就不一样 小粒子的散射模型 Rayleigh scatter

XGBoost 完整推导过程

参考: 陈天奇-"XGBoost: A Scalable Tree Boosting System" Paper地址: <https://arxiv.org/abs/1603.02754 文哲大佬全程手推 兄弟们, 再来手撸一波XGBoost, 这上半月目标算达成了. 感觉比上次撸 SVM 还是要难一些的. 但必须手撸, 因为, 近两年, 我已认识到, 很多梦魇, 只有从源头上彻底消灭后, 便不会时常萦绕心灵... 一边看原paper 和贪心地搬运大佬的知识,化为己有, 其乐无穷

Y combinator 的推导过程

最近在看<暗时间>,书中有Y组合子的推导过程,初看时很难理解,这里记录一下加深记忆,我们使用Scheme语言的语法. 我们知道Scheme中可以这样定义递归函数 (define (func n) (if (= n 0) 1 (* n (func (- n 1))))) 但是我们知道define这个函数只起到了一个语法糖的效果,再对应lambda表达式还未知的时候是不能使用这个函数. 接下来我们只通过使用lambda表达式来推导出递归函数. 我们先做一下尝试 (lambda (n) (if (=

poj3682:数学期望,O(1)做法附推导过程

这几天一直在磨蹭这题..第一个答案很容易,但在第二个答案我无法算出来了,于是只好求助于Zayin.Zayin又求助于我们年级里面的一个研究生数学老师..而现在终于算出来了,我看了看,自己也推出来几次了,先看题:) King Arthur's Birthday Celebration Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2921 Accepted: 926 Description King Arthur is an

1014 C语言文法定义与C程序的推导过程 程序:冒泡算法C程序(语法树)

1014 C语言文法定义与C程序的推导过程  程序:冒泡算法C程序(语法树)1 阅读并理解提供给大家的C语言文法文件. 2 参考该文件写出一个自己好理解版的现实版的完整版的C语言文法. 3 给出一段C程序,画出用上述文法产生这段C程序的完整语法树. 程序:冒泡算法C程序 点此文字查看原图(完整图片) 1 #include <stdio.h> 2 3 main() 4 { 5 int i,j,temp; 6 int a[10]; 7 8 for(i=0;i<10;i++) 9 scanf

BP神经网络推导过程详解

BP算法是一种最有效的多层神经网络学习方法,其主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的. 一.多层神经网络结构及其描述 下图为一典型的多层神经网络. 通常一个多层神经网络由L层神经元组成,其中:第1层称为输入层,最后一层(第L层)被称为输出层,其它各层均被称为隐含层(第2层~第L-1层). 令输入向量为: \[ \vec x = [x_1 \quad x_2 \quad \ldots \quad x_i \quad

正交原理的复数详细推导过程

最开始学习正交原理是从实数学习的,当时觉得实数已经很好了,为什么要学习复杂的复数推导过程呢,随着慢慢的深入,发现复数才是更加通用的.这里就把学习中的推导笔记发上来,方便自己复习,也可以对其它正在学习这方面的朋友有所帮助. 这里有一个长度为M的滤波器,对于输入序列u(n),n=0,1,2...,滤波器的输出y(n)表示为 \[\begin{array}{*{20}{c}}{y(n) = \sum\limits_{k = 0}^{M - 1} {w_k^*u(n - k)} }&{n = 0,1,2

1111 评论10个人的http://www.cnblogs.com/Ranjer/p/4919994.html与C程序的推导过程两篇文章

1:冒泡程序的推导过程http://www.cnblogs.com/hanqilin/p/4937087.html C语言文法定义http://www.cnblogs.com/hanqilin/p/4921210.html 2:冒泡程序的推导过程http://www.cnblogs.com/yanwensheng/p/4937204.html C语言文法定义http://www.cnblogs.com/yanwensheng/p/4919975.html 3:C程序的推导过程http://www

hdu 1452 Happy 2004 膜拜这推导过程

Happy 2004 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 920    Accepted Submission(s): 648 Problem Description Consider a positive integer X,and let S be the sum of all positive integer divis