有什么好用的显示器坏点测试软件?
从检测原理到参数优化,构建稳定可靠的 Flat Field / Blemish Detect 测试流程
在摄像头模组生产和质量验证过程中,“坏点”和“脏污”经常被合并称为“坏点脏污问题”。但从成像机理、测试方法、算法逻辑和判定标准来看,二者并不是同一类缺陷。

坏点更接近像素级异常,通常表现为 hot pixel、dead pixel、dark pixel、bright pixel 或小面积 cluster;脏污则多来自镜头、保护玻璃、IR filter、sensor cover glass、AA filter 或装配环境中的颗粒污染,通常表现为模糊暗斑、环状斑或局部透过率下降。

本文结合 Imatest Flat Field / Blemish Detect 模块,系统说明坏点与脏污检测的区别、Blemish Detect 的检测原理、LPF/HPF 参数调节逻辑、ROI 设置方法、结果判读方式,以及量产导入建议,并结合实际案例给出一套已经验证可行的推荐参数。
01 | 为什么坏点和脏污不能混为一谈?
在实际项目中,客户经常会把图像上的亮点、暗点、灰尘斑、边缘阴影统称为“坏点脏污”。这种说法便于沟通,但不适合作为测试标准。
坏点通常与传感器像素、读出链路、暗电流、局部响应异常或 ISP 缺陷校正有关,表现为单点或小簇异常。它的典型尺度接近像素级,因此更适合用暗场、亮平场、邻域差异、绝对阈值或 cluster 规则进行检测。
脏污则属于空间区域型缺陷,往往由光学路径上的颗粒、油污、污染物或局部遮挡造成。它不一定表现为单个异常像素,而更常表现为局部暗斑、模糊阴影或环状斑。
如果把二者混在一起检测,容易带来两个问题:
- 把随机噪声或单像素异常误判为脏污;
- 用像素级坏点阈值漏掉肉眼可见的灰尘暗斑。
因此,坏点检测和脏污检测应分开建模、分开设定测试图、分开制定判定标准。

02 | 为什么平场图最适合检测脏污?
脏污在自然场景中并不总是明显。纹理、边缘、曝光变化、降噪、锐化和压缩都会掩盖局部暗斑,使缺陷难以稳定识别。
平场测试的价值在于使用均匀光源尽量消除场景内容,让图像中的空间变化主要来自以下因素:
- 镜头渐晕;
- 光源照度不均;
- 像素响应差异;
- 灰尘或油污遮挡;
- 随机噪声;
- 图像边界和滤波边界效应。
Imatest Blemish Detect 的核心,就是在平场图中分离局部异常与全局变化,将“看起来有点脏”转化为可量化的数量、面积、深度和位置指标。

03 | Blemish Detect 到底在做什么?
Blemish Detect 可以理解为一种空间频率筛选过程。它并不是简单地把图像增强,而是通过滤波把目标缺陷从背景和噪声中分离出来。
整体流程可以概括为:平场图像采集 → Lowpass filter 抑制高频噪声 → Highpass filter 去除低频背景 → 得到 blemish residual → 按区域阈值判断暗斑或亮斑 → 输出缺陷数量、面积、深度和位置。
在本案例中,已经实际跑通的基线参数为:
- Lowpass:Gaussian,0.022
- Highpass:Exponential,0.007
- Type:Dark
- Channel:Y luminance
- Gamma:0.5
该组参数已经能够检出目标暗斑,因此后续不应在未复验的情况下随意切换滤波器类型。

LPF:控制高频噪声是否进入检测
Lowpass filter 用于抑制图像中的高频成分,例如随机噪声、孤立像素、量化纹理和细碎边缘。
如果 LPF 截止频率过低,图像会被过度平滑,小颗粒脏污可能被扩散,暗斑峰值下降,导致漏检。
如果 LPF 截止频率过高,过多高频噪声会进入 residual 图,浅色噪声块和细碎纹理可能被误判为脏污。
HPF:控制低频背景是否被去除
Highpass filter 用于去除平场图中不可避免的低频变化,例如镜头渐晕、光源梯度、边缘阴影和大范围亮度漂移。
如果 HPF 截止频率过低,低频背景去除不足,边缘暗区或照明不均可能被误判为脏污。
如果 HPF 截止频率过高,大面积或边界较缓的真实脏污也可能被当作背景扣除,导致面积低估或漏检。
Threshold:只负责判定,不能弥补滤波错误
阈值决定 residual 图中哪些响应会进入统计,但它不能解决滤波尺度选错的问题。
如果 LPF/HPF 没有把脏污转换成稳定的残差信号,单纯降低 DK 阈值只会同时放大误报。工程上应先确认滤波图,再逐步调整阈值。




04 | 如何正确设置 Imatest 参数?
在 Imatest 中载入平场图后,进入 Flat Field / Blemish Detect 设置,并勾选 Perform Blemish analysis。
本案例中的 359-L.bmp 为 1440 × 1080 灰度平场图,R/G/B 三通道一致,因此建议使用 Y luminance 通道。

推荐设置如下:

05 | 为什么 ROI 这么重要?
平场图边缘常包含镜头渐晕、光源边界、遮挡、图像裁切和滤波边界效应。如果直接统计整张图,边缘伪影可能进入 N total 和 Pxl Err,导致脏污数量被高估。
这里需要区分两个概念:
- Zone:改变不同区域的判定阈值;
- ROI / crop:直接排除不参与统计的像素区域。
也就是说,Zone 不是 ROI。Zone 只能让边缘区域判定更宽松,而 ROI 才能真正把边缘无效区域排除在统计之外。

在 Imatest 的 ROI Options 中,Flat Field 一行选择 “Select crop (ROI) by dragging cursor”,下一次运行时可手动拖框。
对本案例,建议先避开:
- 左边约 80 px;
- 右边约 30-40 px;
- 上边约 60-80 px;
- 下边约 40-60 px。
这样做的目的不是“裁掉问题”,而是排除由渐晕、边界和滤波效应造成的非目标缺陷。

06 | 如何判断检测结果是否合理?
本案例的 Filtered summary results 已经能够把局部暗斑滤出。当前结果显示:
- N total = 9
- Pxl Err = 1811 pixels
- 占比约 0.1164%
- 最深响应 Min ≈ -0.0276
这说明当前滤波方向有效,但上边缘和左边缘仍存在伪影,需要通过 ROI 或更高边缘阈值排除。

常见结果字段可以这样理解:

07 | 为什么坏点检测不能直接用 Blemish?
很多客户会问:既然 Blemish Detect 能找到暗斑,为什么不能直接用它检测坏点?
原因在于二者的空间尺度不同。
坏点是 pixel-level defect,通常依赖单像素响应、邻域差异、暗场/亮场条件和 cluster 统计。
脏污是 spatial blemish,更依赖局部区域响应、滤波尺度、面积、深度和位置。
因此,如果产品规格同时要求坏点与脏污,应建立两套测试图和两套参数。

08 | 如何真正导入生产?
将 Imatest 脏污检测导入产线时,建议采用:研发定参 → 质量复核 → 产线锁参 → 异常复测 → 数据追溯。
不要让操作员在现场自由调节 LPF、HPF 和阈值,否则不同批次报告将失去可比性。
量产导入建议包括:
- 建立金样:至少包含清洁样、轻微脏污样、明显脏污样、边缘渐晕样和坏点样;
- 锁定光学条件:光源、曝光、ISO、光圈、距离、白平衡、图像格式必须写入 SOP;
- 锁定软件版本和 INI:Imatest 版本、Blemish 参数、ROI、输出图类型需要版本化管理;
- 区分研发图与判定图:Spot emphasis 用于研发排查,Spots > threshold 用于最终统计;
- 建立复测规则:超过阈值后应清洁或更换部件,再按同一 ROI 和参数复测;
- 保存可追溯数据:保留原图、结果图、CSV/表格、设备 SN、工站、时间和操作者。
09 | 推荐最终配置
针对当前案例,建议锁定如下配置作为验证基线:

10 | 案例总结
坏点和脏污虽然都属于平场缺陷,但它们的成因、空间尺度和检测方法完全不同。
坏点检测关注像素级异常,脏污检测关注局部空间区域响应。对于脏污检测,Imatest Blemish Detect 的关键不只是设置阈值,而是通过 LPF 和 HPF 建立合适的空间频率窗口,将真实暗斑从低频渐晕和高频噪声中分离出来。
本案例中,Lowpass Gaussian 0.022 + Highpass Exponential 0.007 + Dark + Y luminance 已经验证能够检出目标暗斑。后续正式导入量产时,应结合金样、ROI、边缘阈值和复测规则完成标准化,确保检测结果稳定、可解释、可追溯。
本期内容就到这里,如果你对成像质量检测或者imatest软件使用等感兴趣,欢迎和我们联系。