散粒噪声

转:https://www.cnblogs.com/sunny-li/p/8378517.html
在raw image中,主要的噪声为两种,高斯噪声和散粒噪声,其中,高斯噪声是与光强没有关系的噪声,无论像素值是多少,噪声的平均水平(一般是0)不变。另一种是散粒噪声,因为其符合泊松分布,又称为泊松噪声,下图可见,泊松噪声随着光强增大,平均噪声也增大。

 

什么是散粒噪声?

散粒噪声=泊松噪声=shot noise=poisson noise

Shot noise存在的根本原因是因为光是由离散的光子构成(光的粒子性)。我们来看看光源发出的光是怎么在CMOS上面成像的。光源发出的光子打在CMOS上,从而形成一个可见的光点(简化成如下图所示,忽略光学元件和电路等)。光源每秒发射的光子到达CMOS的越多,则该像素的灰度值越大。但是因为光源发射和CMOS接收之间都有可能存在一些因素导致单个光子并没有被CMOS接收到或者某一时间段内发射的光子特别多,所以这就导致了灰度值会有波动,也就是所谓的散粒噪声。

在光源强度比较低的时候,比如说设定光强为每秒5个光子的时候,那么每秒实际CMOS接受到的光子数可能从0到10(或者更多,但是概率几乎为0了), 所以噪声最大为5。当光源强度比较高的时候,比如说每秒10000个光子,那么每秒实际CMOS收到的光子就可能从7000到13000(粗略的数字),所以噪声最大为3000。以上数据基于一个假设,试验次数少的时候,异常发生的会相对整个试验次数较多。这个很好理解,流感时期,一个小公司全部5个人都生病的概率肯定大于一个大公司全部10000个人都生病的概率。

从上面的例子也可以看到,强度越高,噪声越大,但是信噪比其实是在提升的。这个就是散粒噪声的一个特点。

 

散粒噪声为什么服从泊松分布?

 泊松过程定义如下,如果一种分布满足以下几个条件

1.时间越长,事件发生的可能越大,且不同时间内发生该事件的概率是相互独立的

2.对于非常短的一段时间△t来说,事件发生的可能性为,o(△t)为高阶无穷小

 

3.对于非常短的一段时间来说,出现该时间两次的概率几乎为零

4.一开始的时候事件没有发生过

 我们就说这个事件是泊松过程,符合以下的概率分布

在时间△t内发生该事件k次的概率如上式所示。

 对应到我们的光源成像在CMOS上面的事件,则很明显,时间越长,有一个光子被CMOS接收到这个事件发生的可能性就越大,在非常短的时间内同时受到两个光子的可能性为零。可以自己一一对应。故而是符合泊松分布的。

 放一张泊松分布的图供参考

 

总结一下,我们在CMOS的raw域看到的图像带有的噪声既有高斯噪声,也有散粒噪声。最终出来的信号如下图所示,紫色越深表明输出在CMOS上的信号幅度可能性越大,所以可以看到,光强越强,噪声越大。

 

### 光电二极管中的噪声原理与计算 #### 噪声的基本概念 噪声是一种源于随机过程的统计波动现象,其本质是由子(如电子或光子)到达时间上的不确定性引起的。对于光电二极管而言,这种噪声主要来源于载流子产生的不均匀性以及检测过程中电流的变化[^1]。 #### 光电二极管的工作机制及其噪声特性 光电二极管通过吸收光子来激发半导体材料内部的电子跃迁,从而形成光电流。由于光生载流子的数量随入射光强变化存在一定的随机分布,这导致了输出电流中不可避免地含有噪声成分。具体来说,当光电二极管运行在其线性响应范围内时,所产生的噪声功率谱密度 \( S_i(f) \) 可表示为: \[ S_i(f) = 2qI_{ph} \] 其中: - \( q \): 单位电荷量; - \( I_{ph} \): 光电二极管的光电流均值; 此公式表明噪声的大小仅依赖于平均光电流而不受频率的影响,即表现为白噪声特征[^3]。 #### 相对强度噪声 (RIN) 的关系 在激光通信等领域,人们常用相对强度噪声描述光源稳定性。根据已知理论,给定一定调制幅度条件下,调制信号功率会随着平均功率呈平方增长趋势,这意味着 RIN 随着总光功率提升呈现下降态势。然而,在考虑噪声主导情形下,实际测量得到的 RIN 功率谱密度需采用如下修正表达形式: \[ S_R(\nu)=\frac{h\nu}{P_{av}} \] 这里 \( h\nu \) 表示单个光子的能量,\( P_{av} \) 则代表输入到探测器端口处的平均光学功率。值得注意的是该定义方式不同于传统意义上简单相乘操作而是采取除法运算处理两者间联系。 #### 实际应用中的注意事项 尽管上述推导提供了关于如何量化评估由效应引起干扰水平的基础框架,但在真实世界里还需要综合考量其他因素比如暗电流贡献、放大电路引入额外增益等因素共同作用下的最终效果。此外不同类型的光电转换元件可能具备各自独特的性能参数组合进而影响整体表现指标。 ```python import numpy as np def shot_noise_current(I_ph, q=1.6e-19): """ Calculate the power spectral density of shot noise current. Parameters: I_ph : float Average photocurrent in Amperes. q : float, optional Charge of an electron in Coulombs. Returns: Si_f : float Power Spectral Density of Shot Noise Current at frequency f. """ Si_f = 2 * q * I_ph return Si_f example_I_ph = 1e-6 # Example average photocurrent value in Ampere result_Si_f = shot_noise_current(example_I_ph) print("The calculated PSD of shot noise is:", result_Si_f, "A²/Hz") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值