介绍 CMOS sensor 曝光中的 Flicker问题,主要讲解原因和处理方式。
这是一个在摄影、摄像和计算机视觉中非常常见且重要的问题。
一、什么是Flicker问题?
Flicker问题是指,当使用CMOS传感器在人工光源(如荧光灯、LED灯)照明下拍摄视频或照片时,画面中出现不希望出现的、周期性明暗变化、条纹或色彩异常的现象。
-
在视频中: 表现为画面持续地、有规律地闪烁。
-
在照片中: 如果使用高速快门,可能在不同照片中出现亮度不一致,或者单张照片中出现上下亮度不一的带状条纹(也称为频闪带)。
二、Flicker问题的根本原因
Flicker问题的根源在于人造光源的亮度并非恒定不变,而是随着交流电的频率而周期性波动,与CMOS传感器的曝光方式不同步。
-
光源的闪烁特性:
-
交流电驱动: 大多数室内人造光源(荧光灯、LED灯)由50Hz或60Hz的交流电驱动。电流方向周期性变化,导致光源的亮度也以100Hz或120Hz(频率加倍,因为正负半周都发光)的频率波动。
-
光源并非持续亮,而是在“闪烁”: 虽然人眼由于“视觉暂留”效应通常察觉不到这种高速闪烁,但CMOS传感器可以捕捉到。
-
CMOS传感器的曝光方式:滚动快门
-
这是关键所在。大多数CMOS传感器采用滚动快门 方式曝光。这意味着传感器不是像人眼或CCD传感器那样同时曝光所有像素,而是像阅读一样,逐行顺序地进行曝光和读取。
假设传感器从上到下有1到N行。第1行开始曝光,稍后第2行开始曝光,以此类推,直到第N行。所有行的曝光时间相同,但开始曝光的时间点不同。 -
冲突的产生:
-
当滚动快门的扫描频率与光源闪烁的频率不同步时,问题就出现了。
-
情景模拟:假设光源亮度正在波谷(最暗时),传感器顶部的第1行开始曝光。随着时间推移,光源亮度逐渐达到波峰(最亮时),此时传感器中部的行正在曝光。当光源亮度又回到波谷时,传感器底部的行才开始曝光。
-
结果:在同一张图片中,顶部和底部捕捉到的是暗的光线,而中部捕捉到的是亮的光线,最终形成明暗相间的带状条纹(频闪带)。在视频中,由于每帧图像捕捉到的光源亮度相位不同,导致帧与帧之间的整体亮度发生波动,形成闪烁。
三、Flicker问题的处理方式
解决Flicker问题主要从避免、同步、后期修复三个层面入手。
1. 预防与规避(最直接的方法)
-
调整快门速度(曝光时间): 这是最常用、最有效的方法。
-
原理: 将曝光时间设置为光源闪烁周期的整数倍。例如,在50Hz交流电地区(光源闪烁频率100Hz,周期为10ms),将快门速度设置为1/100s、1/50s、1/25s等。这样能确保传感器在每次曝光中都能捕捉到完整、相同数量的光波周期,从而使画面亮度均匀。
-
操作: 在相机设置中手动设置快门速度,或开启“抗闪烁”功能(相机自动计算合适快门)。
-
使用直流电驱动的恒定光源:
-
在摄影棚或对画质要求高的场合,使用专为摄影设计的LED常亮灯等由直流电驱动的光源,它们提供的是稳定无闪烁的光线。
2. 相机内置的电子处理(自动化解决方案)
现代相机和手机都内置了先进的抗闪烁算法。 -
自动闪烁检测与快门同步:
-
相机会自动检测环境光源的频率(50Hz或60Hz),并自动将快门速度调整到与之匹配的数值,实现同步。
-
可变快门速度/电子快门:
-
允许用户以非常精细的步进(如1/100.3s)调整快门速度,精确匹配闪烁周期,消除条纹。
3. 后期处理软件修复
如果前期拍摄时未能避免闪烁,可以在后期进行一定程度的补救。 -
视频去闪烁工具:
-
专业视频编辑软件(如Adobe Premiere Pro、DaVinci Resolve)有专门的“去闪烁”插件或效果。它们通过分析视频序列的亮度变化,逐帧调整伽马值或曝光,来平滑帧与帧之间的亮度差异。
-
对于照片中的频闪带,可以使用Photoshop等软件通过局部调整工具进行修复,但过程繁琐且效果有限。
总结
| 方面 | 关键点 |
|---|---|
| 问题本质 | 人造光源的亮度波动与CMOS传感器滚动快门的曝光方式不同步 |
| 根本原因 | 交流电导致光源闪烁(100/120Hz) + CMOS滚动快门逐行曝光 |
| 主要现象 | 视频帧间闪烁、照片中出现频闪带 |
| 核心解决方案 | 将快门速度设置为光源闪烁周期的整数倍(如1/100s) |
| 其他方法 | 使用恒定光源、开启相机抗闪烁功能、后期软件修复 |

2万+

被折叠的 条评论
为什么被折叠?



