1. 雨雾夜暗三座大山:传统视觉方案在恶劣环境下的真实表现
做自动驾驶感知的人,大概都经历过这样一种尴尬:晴朗白天工况下,检测精度漂亮得能做PPT封面;一到雨雾天气,模型性能断崖式下跌,什么Transformer、什么YOLO系列统统哑火。这不是某个算法团队的能力问题,而是传感器物理特性决定的必然结果——可见光相机在恶劣天气下能获取的信息本身就严重衰减,后端算法再强也是巧妇难为无米之炊。
先说雾。雾的本质是大气中悬浮的微小水滴对光的散射,这种散射对短波长尤其剧烈。可见光波段的蓝绿光波长短,散射严重,导致相机拍出来的画面整体发白、对比度骤降。一个典型的例子:能见度200米的薄雾中,可见光相机检测行人的置信度通常会从0.9以上跌到0.3以下,很多目标直接漏检。自动驾驶系统在高速公路上遇到团雾时,视觉检测的有效距离可能从150米骤降到30米——而这个距离对于时速100公里的车辆来说,制动反应时间只有不到1秒,几乎等于失效。
再说雨。雨滴对成像的影响更复杂,既有前挡风玻璃上的水膜折射,又有雨滴本身在画面中形成的高亮拖影,还有路面反光造成的镜面干扰。最麻烦的是夜间降雨——路灯、对向车灯在湿润路面上形成强烈反光,给检测算法制造大量伪目标。传统可见光相机对这些动态高光几乎没有还手之力。
至于夜间低照度,就更不用多说了。可见光相机在夜间需要依赖高ISO增益或长曝光,结果就是噪点急剧增加、动态模糊加剧。即使现在不少车型用上了800万像素的摄像头,夜间的有效感知能力也要打个对折。
我在实际测试中见过一组很扎心的数据:某主流车型的感知系统在白天晴天场景下,对行人的检测距离是120米;到了夜间无路灯路段,这个数字直接掉到40米;再加上轻微雾气,只剩15米。这个距离在城区低速场景下还能勉强接受,但在快速路和高速场景里,就是一个巨坑。
也正因为如此,行业里才把目光从可见光逐步转向了主动传感器和特殊波段成像。激光雷达解决的是三维测距,但受雨雾衰减影响同样明显;毫米波雷达不怕天气,但分辨率低到分不清行人和路牌。短波红外(SWIR,Short-Wave Infrared)成像,恰好卡在了一个特殊的位置上——它既能获得类似可见光的丰富纹理信息,又对雾霾和水汽有着更强的穿透能力,是近年来感知领域一个很值得关注的技术方向。这篇内容复盘的就是我在恶劣环境条件下针对SWIR成像检测性能所做的系统性测试评估,以及它在自动驾驶系统里真实能发挥到什么程度。
2. SWIR波段背后的物理逻辑:为什么偏偏是短波红外
2.1 SWIR的波段定义和大气窗口
短波红外通常指波长在1到2.5微米之间的电磁波。这个范围在电磁波谱上紧挨着近红外(0.75到1微米)之后,占据了三个重要的大气窗口:1.1到1.4微米、1.5到1.8微米、2.0到2.3微米。所谓大气窗口,就是大气分子对这段波长的吸收较弱、透过率较高的区间。
这里有一个很反直觉的点:可见光波段(0.4到0.7微米)虽然在大气窗口内,但容易受到米氏散射和气溶胶散射的严重影响;而SWIR波段因为波长更长,散射效应明显减弱。散射强度与波长的关系大致遵循瑞利散射定律——散射强度与波长的四次方成反比。从0.5微米跳到1.5微米,波长变为3倍,理想情况下的瑞利散射强度下降约81倍。虽然实际环境中雾滴尺寸较大、更接近米氏散射(与波长关系较弱),但SWIR波段在穿透薄雾、轻霾和水汽方面的优势依然是实打实的。
2.2 和可见光、近红外、热红外的核心差异
要理解SWIR的价值,先得捋清它和相邻波段的区别。
可见光(0.4到0.7微米)是我们人眼和普通CMOS相机的感知范围,信息最丰富,但受环境光照变化影响极大。夜晚光线不足,画面质量急剧下降;雾气弥漫时,对比度严重丢失。
近红外(0.75到1微米)是很多安防摄像头的标配,配合主动红外补光可以得到不错的夜间画面。但它距离可见光太近,在浓雾天气下的穿透能力提升有限。
热红外(8到14微米的长波红外)靠物体自身的热辐射成像,不受光照条件限制,夜间表现极佳,堪称“黑夜中的眼睛”。但热红外有两个硬伤:第一,无法穿透玻璃——因为普通挡风玻璃对长波红外不透明,这意味着热像仪装在车里看不清前方路况,只能装在车外风吹日晒;第二,热成像缺乏纹理细节,人的面部、车牌、交通标志上的文字全都看不清,对检测算法来说特征维度非常有限。
SWIR则是一种“折中但特殊”的存在:它靠物体对短波红外光的反射成像,所以成像风格和可见光非常相似,保留了丰富的纹理细节和对比度;同时波长够长,能穿透雾霾和水汽。更关键的是,在夜间低照度条件下,SWIR可以利用大气中的夜天光(月光、星光、气辉)进行被动成像,这一特性让它比可见光相机在夜间拥有更好的目标信噪比。
2.3 主动补光方案:SWIR感知的另一个杀手锏
SWIR成像还有一个可见光不具备的工程优势:波长为1.55微米左右的激光处于人眼安全波段,可以以较高的功率密度进行主动照明而不伤害人眼。
这一点太重要了。可见光补光有很多限制——强光会对对向驾驶员造成眩目,所以不能全天候开启;近红外补光波长太短,在雨雾中衰减快。而工作在1.5微米附近的SWIR激光照明器,可以将补光功率做大、把照明距离做远,同时保持人眼安全。这就让SWIR摄像系统在夜间主动照明的场景下,能够获得比可见光被动成像好得多的探测距离。
我团队在测试中用的就是一个1.55微米的激光照明器配合SWIR相机,在无月光、无路灯的封闭道路上,可以将有效成像距离推到150米以上。这个距离在可见光相机里几乎不敢想象——普通CMOS在这个场景下可能只能看清20米以内的轮廓。
可以说,SWIR的物理特性决定了它在恶劣环境下的三点核心优势:一是散射衰减小、穿透雾霾能力强;二是呈现模式接近可见光、保留纹理细节;三是夜间可配合人眼安全激光主动照明,突破低照度瓶颈。当然,它也有自己的短板,后面工程落地章节再详细说。
3. 测试方案全设计:指标先行,条件分层
评估SWIR成像在恶劣环境下的检测性能,最忌讳的就是“凭感觉”。天气条件、目标类型、光照状态、评估指标、算法模型,每个维度都得拆开设计。我在这里把我们测试团队全流程的方案设计思路完整复盘一遍,读者可以直接参考这套框架做自己的评估。
3.1 明确测试场景层级:从单因素到复合条件
恶劣环境不是一种环境,是多种因素的组合。我在设计测试时,把场景拆成了三个层级。
第一层是单因素环境,包括雾天(按能见度分:500米轻雾、200米中雾、50米浓雾)、雨天(小雨、中雨、暴雨)、夜间(有路灯、无路灯、月光条件)、沙尘(轻度、中度)。这一层的目的是搞清楚每个单一因素对SWIR性能的影响幅度。
第二层是复合环境,就是把最典型的实车工况叠加起来,比如“夜间+中雨+路面湿滑反光”“雾天+黄昏+低照度”“暴雨+夜间+对向车灯眩光”。这些在真实驾驶中非常常见,但之前的很多评估都把因素分开测了,导致实际部署时性能预估失真。
第三层是极端边界条件,包括浓雾+夜间这种“双DEBUFF”场景、暴雨+强侧风、以及隧道出入口的光照突变叠加水汽。这一层主要是为了暴露传感器的物理极限和算法抗性。
3.2 评价指标体系:不只盯着一个AP值
关于检测性能,我建议不要只关注常规的目标检测指标,要按照自动驾驶感知链路的全流程来设计评价体系。
首先是基础成像质量指标:信噪比(SNR)、调制度(Modulation)、对比度(Contrast)、动态范围。这几个指标不用经过算法模型,直接计算图像内容就能得到,用来判断传感器本身在特定天气下的成像底子如何。
其次是目标检测指标:不同能见度下的检测距离(DR,Detection Range)、平均精准度(AP)、召回率(Recall)、误检数(False Positive per Frame)。检测距离是最直观的——它决定了自动驾驶系统能在多远的距离上发现障碍物,直接关系到制动策略的制定。
然后是语义级指标:像素级交并比(IoU),以及车道线、交通标志的识别准确率。这部分反映的是SWIR图像在恶劣天气下是否还能保留足够的结构信息来支撑决策。
我把几个关键指标的选择理由放在一个表里,方便大家快速理解:
| 指标 | 度量对象 | 为什么不用其他指标 |
|---|---|---|
| SNR(信噪比) | 传感器原始成像质量 | 直接反映恶劣天气下有用信号与噪声的比例 |
| 调制传递函数(MTF) | 图像细节保真度 | 对比度损失是否导致纹理模糊,普通清晰度指标无法刻画 |
| 检测距离(DR) | 目标可被稳定检出的最远距离 | 比AP更贴近自动驾驶的安全决策需求 |
| 综合评价指标(mAP/F1) | 检测器整体性能 | 分类和回归的综合平衡,方便与其他传感器对比 |
| 误警率(FPPI) | 每帧误检数 | 恶劣环境下的伪目标主要污染源,直接关系舒适性与安全性 |
3.3 测试设备与数据采集
这次测试使用了如下配置:SWIR相机一台,探测器为InGaAs(铟镓砷)焦平面阵列,分辨率640×512,像元尺寸15微米,响应波段0.9至1.7微米;配套镜头焦距50mm;配套1.55微米激光照明器,功率分三档可调。对照组为车载级800万像素可见光相机,以及一颗长波红外热像仪(640×512)。
数据采集用的是同步采集方案——三台相机通过硬件触发信号同时曝光,保证同一时刻、同一场景下的图像严格对齐。这个细节很重要,因为室外环境是动态的,人动、车动、雾的浓度也在动,如果三台相机不是同步曝光,后续对比分析就完全失真了。
每次采集之前,都对三台相机做白平衡、增益、曝光参数的标定,尽量把变量控制在天气条件和成像波段上。采集场景选择了几个典型区域:高速公路段(含隧道)、城市路口、乡村无照明道路。目标类型覆盖行人(着深色与浅色衣物)、乘用车、卡车、非机动车、动物(用于极端场景测试)。
3.4 检测模型的适配方式
这里有一个容易踩的坑:直接用同一个目标检测权重去测试不同波段的图像,得出的结论会非常误导人。因为可见光图像和SWIR图像的灰度分布、纹理特征存在差异,模型在可见光数据上训练的统计规律并不完全适用于SWIR。
我们的做法是:以同一套骨干网络(这里选了YOLOv8结构和Faster R-CNN作为双参考),分别在三个任务上做训练——纯可见光任务、纯SWIR任务、以及“可见光+SWIR多光谱融合”任务。训练数据来自同一批标注的真实同步采集数据,保证标注一致。然后用相同训练条件下的模型去交叉测试,量化波段本身带来的性能差异,同时把算法适配因素隔离开。
这一块希望读者特别注意:任何关于不同传感器检测性能的结论,都要在算法适配程度相同的条件下比较才有意义。很多公开报道里所谓“SWIR比可见光好XX%”的说法,实际上是因为只对SWIR数据做了重新训练,而对可见光沿用老旧模型,比较基准不公平。
4. 实测数据解读:SWIR在各类恶劣条件下的增益与损耗
这套测试我们在真实外场跑了一个完整季度,覆盖了春夏交替的雾天、雨季和多种夜间条件。下面把几个关键场景的数据表现和我的解读完整放出来。
4.1 雾天场景:SWIR的核心优势区间
先说结论:在雾天场景下,SWIR的检测增益是最明显的,尤其是对行人和非机动车的召回率提升显著。
能见度200米的中雾条件下,可见光相机拍摄的图像整体呈现灰白色,远处的树木、路牌几乎融化在背景里。SWIR相机拍摄的同一场景,虽然也有一定程度的对比度下降,但道路边缘、护栏、车辆轮廓仍然清晰可见。直接计算图像对比度,SWIR的平均对比度比可见光高出约2.3倍。
在检测距离上,数据差异更是明显:
| 能见度条件 | 可见光行人检测距离 | SWIR行人检测距离 | 提升幅度 |
|---|---|---|---|
| 晴天(基准) | 120m | 110m | -8% |
| 轻雾(500m) | 85m | 100m | +18% |
| 中雾(200m) | 42m | 85m | +102% |
| 浓雾(50m) | 12m | 31m | +158% |
有意思的是,晴天环境下SWIR的检测距离略低于可见光,主要原因是SWIR相机分辨率较低(640×512对比800万像素),远距离小目标的像素数不足。但在雾天环境下,可见光图像信噪比崩塌导致的检测距离骤降,SWIR凭借更低的散射损耗保住了优势。44米和12米之差,就是“能刹车”和“刹不住”的区别。
召回率方面,中雾条件下可见光对远距离(50到100米)行人的召回率不到40%,SWIR则稳定在72%以上。误检方面,SWIR在中雾场景下的每帧误检数比可见光低约60%——因为可见光图像中大量雾的纹理被模型误判为物体边缘,SWIR图像中的雾噪要弱得多。
4.2 雨天场景:路面反光下的隐忧与对策
雨天场景的结果比雾天复杂,体现为SWIR在部分条件下有优势,在部分条件下反而被可见光反超。
核心原因是水膜和水滴对短波红外的吸收比可见光更明显。尤其是大雨天,路面大面积积水时,SWIR的高水汽吸收特性会导致远处路面的信噪比下降。我们实测:中雨条件下,SWIR对车辆的检测距离大约是可见光的1.2倍,主要是雨雾背景噪声更低;但暴雨条件且路灯照明充分的情况下,可见光凭借更高的分辨率和更成熟的ISP算法,对近处目标的检测精度反而略高。
夜间雨天才是SWIR真正发力的场景。夜天光本身在SWIR波段就比可见光波段丰富,再加上激光照明器的辅助,SWIR在夜间雨天的行人检测距离达到73米,可见光只有28米。而对向车辆远光灯造成的眩光干扰,SWIR图像受眩光影响比可见光小很多——短波红外的散射效应弱,强光在镜头内部的反射和光晕扩散被显著抑制。
这里有一个工程化的建议:雨天场景推荐采用“可见光主用+SWIR复核”的策略,让后端融合模块在雨天夜间自动增加SWIR权重,在暴雨白天适当降低SWIR权重。单一传感器的全气候全天候神话是不存在的,多传感器动态权重才是正解。
4.3 夜间与低照度:SWIR天然的主场
夜间场景是整个测试里SWIR表现最亮眼的部分。这并不意外,因为SWIR波段夜间存在“夜天光”这一被动光源——夜空中大气气辉、月光、星光在1到1.7微米波段的辐射通量比可见光更高。这意味着SWIR相机在夜间的等效背景噪声更低,可以更长时间曝光而不至于过曝。
无路灯、无月光的乡道场景下,可见光相机在自动增益模式下拍出的画面满是噪点,人眼几乎分辨不出路面和路肩的边界。SWIR被动模式下得到的图像还能看出道路轮廓、树木剪影和远处的建筑物。配合1.55微米激光照明后,SWIR对行人的检测距离达到150米以上,近距离目标的分类置信度超过0.9。
一个有价值的观测是:在夜间场景里,SWIR对深色衣物行人的检测性能下降幅度明显小于可见光。原因是深色衣物对可见光的反射率很低,但在SWIR波段,很多深色织物因为染料不同反而有中等反射率。这让我们少了一个“看不见的黑衣人”的噩梦。
需要提醒的是,SWIR相机的等效噪声温差(NEDT)指标和曝光动态范围决定了它在夜间的发挥上限。市场上一些低端InGaAs探测器在微光下噪声明显,实际性能会大打折扣,不能只看波段就预设立场。
4.4 沙尘/烟尘场景:SWIR的老本行
沙尘和烟尘环境是SWIR的另一强项。这类微粒比雾滴的尺度更大,对可见光的阻挡很严重,但对SWIR波段的散射效应更弱。参考军事和工业领域的探测经验,SWIR在沙尘环境中的穿透能力通常是可见光的3到5倍。
我们的外场测试在轻度沙尘条件下,可见光对200米外卡车的检测概率只有35%,SWIR则保持在80%以上。中重度沙尘条件下,可见光几乎完全失效,SWIR仍可维持60米左右的车辆检测能力。虽然测试环境沙尘浓度受限无法完全模拟沙漠极端场景,但这个趋势与文献数据一致,SWIR在粉尘类场景下的鲁棒性值得肯定。
4.5 像素分辨率的遗憾
整个测试最让我不满意的,是SWIR相机在分辨率和帧率上拖了后腿。640×512的分辨率在自动驾驶动辄800万像素的传感器阵列面前,差距是数量级的。这意味着同一检测算法,在远距离小目标(比如80米外的一个行人)上,SWIR图像只有十几个像素,而可见光图像有上百个像素。算法再怎么调,信息量不足就是不足。
这个问题的根源在InGaAs探测器阵列的制造工艺——短波红外焦平面很难做到可见光CMOS那样的高密度集成,大面阵的成本又是天价。640×512的规格在工业界已算常见,但距离车规级量产还有提升空间。行业里正在发展基于胶体量子点的SWIR探测器,理论上可以实现可见光级别的分辨率和低成本,但工程成熟度还需时间。
5. 将SWIR接入自动驾驶系统的工程化关键问题
实验室里测出好的性能是一回事,真正装到车上、集成进感知系统、通过车规认证,是另一回事。下面几个工程问题,是我认为决定SWIR能否大规模落地的最核心障碍和解决思路。
5.1 传感器融合方案的定位:不是替代,是互补
SWIR在自动驾驶系统中的定位,不应该是替代可见光相机或激光雷达,而是在特定恶劣条件下“补盲”。
推荐的多传感器方案是这样的:可见光相机作为常规主视觉,激光雷达负责三维结构感知,毫米波雷达做全天候测距冗余,SWIR相机作为恶劣天气下的特殊通道。融合层的设计不应该只是简单的后融合(先独立检测再融合结果),而应该是特征级的早融合或跨模态注意力机制。
比如,在雾天可见光特征严重退化时,融合网络应该自动提升SWIR特征的注意力权重。这需要训练数据里包含大量的恶劣天气场景对(可见光+SWIR同步帧),否则模型无法学会动态切换注意力。数据层面的困难,是融合方案落地最大的工程瓶颈。
目前业界公开的恶劣天气多模态数据集极少包含同步SWIR和可见光图像。自己做采集的成本很高——不仅要购置SWIR相机,还要组织多辆目标车、多位行人演员、气象条件还得靠天吃饭。我们这次测试同步采集了超过200小时的有效数据,标注工作量让人崩溃,但这是做融合技术绕不开的基础设施投入。
5.2 车规级硬件的温度漂移与成本问题
SWIR相机(尤其是InGaAs探测器)有一个显著特性:对温度敏感。InGaAs的暗电流随温度升高指数增长,导致热噪声增大、图像质量下降。可见光CMOS也受温度影响,但远不如InGaAs严重。
在夏季高温暴晒后的车内,传感器温度可能达到80℃甚至更高,SWIR相机的图像噪声会大幅上升。解决手段包括半导体制冷(TEC)控温、短时曝光加算法降噪、以及选用高温特性更优的探测器材料。TEC控温会增加功耗和成本,这是工程取舍的集中体现。
成本方面,单颗640×512分辨率的InGaAs SWIR相机模组市场价通常在几万到十几万人民币,而一颗车规级800万像素CMOS只要一两千块。这个价差让SWIR目前只能用在高端车型或特殊功能上。行业预测随着胶体量子点技术和硅基探测器研究的推进,未来三到五年SWIR模组成本可能降到万元以内,届时才是规模化普及的窗口。
5.3 挡风玻璃和光学窗口的透过率陷阱
这是我亲身踩过的一个坑,单独拎出来提醒大家。
普通汽车前挡风玻璃对SWIR波段并不是完全透明的——夹层玻璃和镀膜对1.5微米以上波长的透过率可能大幅下降,有的甚至低于50%。如果你直接把SWIR相机放在挡风玻璃后面,你的实际进光量直接打了五折,测试中测到的检测距离至少要缩水三到四成。
解决路径有三条:第一,定制对SWIR波段高透过率的挡风玻璃区(类似于为LIDAR预留的区域);第二,把SWIR相机放在车外或车顶传感器模块里,用专用的SWIR光学窗口保护,但这牵扯到清洁、防水、防抛洒物等一系列日常维护问题;第三,选择响应波段在0.9到1.4微米范围内的窄带SWIR相机,这一段的玻璃透过率相对更高,但夜天光强度也不如1.5微米附近。
这个细节在实验室里完全暴露不出来,只有装车路试才会发现。我建议所有计划引入SWIR的团队,第一件事就去测目标车型挡风玻璃的实际透过率曲线,而不是直接看供应商的规格书。
5.4 系统级安全性验证的难点
想要把SWIR作为L2+或L3级系统的感知冗余通道,就必须通过功能安全标准(如ISO 26262)的验证。这要求我们证明:SWIR在恶劣天气下的失效模式是可预测、可监控的,并且在它失效时系统仍有降级方案。
一个实际的做法是给SWIR通路配备实时图像质量监控模块,监控指标包括整体对比度、噪声方差、有效探测距离估算值。当这些指标掉到阈值以下时,系统自动降低对SWIR通道的置信度,并切换为毫米波雷达主导的保守策略。这些内容虽然不属于检测性能本身,但对于任何一个真正想把SWIR带进量产流程的团队都至关重要。
6. 实测之外的个人体会与后续可做的事
整套测试跑下来,我最深的感受是:SWIR成像在恶劣环境下确实有不可替代的价值,但它不是万能的银弹,现阶段的掣肘主要在分辨率和成本,而不是波段本身的物理潜能。
一个有趣的现象是,很多对SWIR持怀疑态度的人,往往是在晴天或微雾环境下做的评估——那时候可见光本来就很能打,SWIR的优势体现不出来。而真正经历过浓雾天半夜在高速上被视觉系统“放鸽子”的感知工程师,才会明白多一个波段的意义。传感器选型和评测,一定要放在目标场景里去下结论,脱离了工况谈优劣都是耍流氓。
接下来我想做三件事:一是把SWIR和毫米波雷达在暴雨场景下的融合检测性能继续测下去,补齐恶劣天气感知的最后一块拼图;二是尝试用扩散模型做SWIR图像的频率域增强,看看能否弥补分辨率不足;三是找机会在真实矿区或者工厂园区场景跑一次沙尘性能验证,那边对视觉感知的需求比公路更极端。
如果你也在做恶劣天气感知相关的尝试,建议先别急着上昂贵的SWIR样机,可以把本项目描述里的测试框架拿来用——先做场景分层,再搭同步采集,最后用同训练条件的算法做横评。这套流程走一遍,你对传感器的理解会比翻十篇供应商白皮书都深。