ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

147、洞察驱动的实战标题——Flicker Detection的“频闪猎手“——50Hz/60Hz/日光灯/PWM调光LED的频闪检测与补偿,以及如何用曝光时间微调消除条纹

147、洞察驱动的实战标题——Flicker Detection的“频闪猎手“——50Hz/60Hz/日光灯/PWM调光LED的频闪检测与补偿,以及如何用曝光时间微调消除条纹 147、洞察驱动的实战标题——Flicker Detection的"频闪猎手"——50Hz/60Hz/日光灯/PWM调光LED的频闪检测与补偿,以及如何用曝光时间微调消除条纹凌晨两点,实验室的灯还亮着。客户反馈说新出的安防摄像头在停车场夜间模式下,画面里总有一道道若隐若现的横纹,像老式CRT显示器的刷新线。我盯着示波器上的波形,又看了看手里的热成像仪——那台IPC的传感器温度正常,电源纹波也在规格内,但画面里的条纹就是赖着不走。直到我把镜头对准头顶的LED工矿灯,才恍然大悟:这根本不是硬件问题,是光在作祟。那盏灯用的是PWM调光,频率恰好落在摄像头的曝光积分窗口里。50Hz的市电频率,加上LED驱动器的开关频率,两者混叠后产生了一个约8.3ms的拍频周期。而我们的曝光时间默认设置在10ms左右,正好把这个拍频周期完整地“吞”了进去——每一帧的积分起点不同,落在光强波动的不同相位上,于是相邻帧之间出现了明暗交替的横带。这就是Flicker Detection的经典场景。但真正让我头疼的不是检测本身,而是“如何在不牺牲画质的前提下消除它”。市面上很多方案直接粗暴地把曝光时间锁死在10ms或20ms的整数倍,结果在低照度环境下画面暗得没法看。我们需要的是“智能猎手”——既能识别频闪源,又能动态调整曝光策略。频闪检测的三种“嗅觉”先说检测。我试过三种方法,各有各的坑。第一种是时域分析法。连续抓取N帧,对每一帧的同一行像素做均值,然后看这个均值序列的FFT频谱。如果某个频率分量显著高于噪声基底,就判定存在频闪。这个方法在实验室里跑得很欢,
返回列表