无限天气数据生成!WeatherDG:VLM+扩散模型直接爆拉14个点

点击下方卡片,关注“自动驾驶之心”公众号

戳我-> 领取自动驾驶近15个方向学习路线

今天自动驾驶之心为大家分享英国利兹大学&卡内基梅隆大学最新的工作—WeatherDG!基于VLM的无限天气数据生成方案。如果您有相关工作需要分享,请在文末联系我们!

自动驾驶课程学习与技术交流群事宜,也欢迎添加小助理微信AIDriver004做进一步咨询

>>点击进入→自动驾驶之心自动驾驶技术交流群

论文作者 | Chenghao Qian等

编辑 | 自动驾驶之心

摘要

在这项工作中,我们提出了一种新颖的方法,名为WeatherDG,它可以通过两个基础模型的合作,即Stable Diffusion(SD)和大型语言模型(LLM),生成大量逼真、多样化的天气驾驶场景图像。具体来说,我们首先使用源数据对SD进行微调,使生成的样本内容和布局与真实驾驶场景保持一致。然后,我们基于LLM提出了一种渐进化的提示生成方法,该方法可以丰富场景描述,帮助SD自动生成更多样化、详细的图像。此外,我们引入了一种平衡生成策略,鼓励SD在各种天气条件下生成高质量的“尾类”对象,例如骑车人和摩托车。这种与分割模型无关的方法通过使用生成的合成数据来进一步适应现有模型,从而提高它们的泛化能力。实验结果表明,我们的方法可以显著提高不同最先进模型在目标领域上的分割性能。特别是在“Cityscapes到ACDC”的实验设置中,我们的方法使基线模型HRDA的mIoU提高了13.9%。代码已经开源:https://github.com/Jumponthemoon/WeatherDG。

fdfa094648896b5fc4ecceed7fa4513a.jpeg

1. 引言

语义分割是自动驾驶的基本任务。尽管在这一领域取得了显著的成就,现有模型在部署到未知领域时仍面临严重挑战,这源于众所周知的领域偏移问题。此外,当未见领域具有恶劣天气条件时,这一问题会更加严重,如雾天、雨天、雪天和夜晚场景。
一种解决上述问题的简单方法是收集更多样化的训练数据。然而,标注分割任务需要大量时间,因为我们需要为图像中的每个像素进行标注。因此,领域泛化在解决领域偏移问题中变得流行,其目标是在仅使用给定源数据的情况下训练一个能够泛化到未见领域的模型。现有的领域泛化方法一般可以分为两类:归一化方法和数据增强方法。本文我们主要关注后者,因为它更灵活且易于与前者技术集成。以往方法通常使用模拟器或图像转换模型生成新样本,虽然有效,但在生成恶劣天气条件下的样本时,仍存在多样性和真实性问题(如图2所示)。近年来,Stable Diffusion(SD)展示了生成逼真、多样化高质量图像的强大能力,激发了我们利用SD来解决以往数据增强方法在领域泛化中的不足。然而,直接将SD应用于我们的任务会产生一个关键问题:生成的样式和布局与驾驶场景样本差异较大(见图2b)。由于SD的训练数据包含各种类型的图像,而不是专门针对驾驶场景,导致无法生成具有驾驶屏幕特征的样本,缺乏细致和明确的指导。

2. 相关工作

领域泛化语义分割(DGSS)

DGSS旨在训练深度神经网络,使其在多个未见领域的语义分割任务中表现良好。现有的DGSS方法通过归一化或数据增强来解决领域差异问题。归一化方法通过对源特征的均值和标准差进行归一化训练,或通过白化这些特征的协方差来解决问题。基于数据增强的方法则将源图像转化为随机风格化的版本,以引导模型捕捉领域不变的形状特征,因为纹理提示被随机风格替代。

无监督领域自适应(UDA)

UDA旨在提升模型在领域特定数据上的表现,而无需标注的示例。现有的UDA技术可以分为三类:差异最小化、对抗性训练和自训练。最近,DATUM [27] 提出了一种单次域自适应方法,该方法使用目标域中的单个图像生成数据集,并结合无监督域自适应训练方法来弥合模拟到现实的差距。此外,PODA [28] 利用了CLIP模型的能力,通过提示实现了零样本域自适应。

基于文本的图像生成

当前的文本生成图像任务主要由基于扩散模型和大语言模型(LLM)的方法驱动。扩散模型在生成逼真图像方面取得了突破,促使研究人员探索其在丰富源域数据集和改进语义分割中的应用。例如,DIDEX [8] 利用 ControlNet [30] 将合成图像转换为现实世界风格。然而,这种方法通常缺乏真实感,并重复训练数据的空间布局,限制了多样性。

另一方面,大型语言模型也发挥着关键作用。CuPL [31] 利用 GPT-3 [32] 生成文本描述,增强零样本图像分类。CLOUDS [9] 使用 Llama [33] 创建用于扩散模型的提示。然而,它们未能充分考虑因天气和光照条件变化带来的复杂性。相比之下,我们的方法采用了一系列作为代理的LLM,不仅能够为复杂的现实场景生成详细描述,还实施了定制的生成策略。这样保证了生成的图像既多样又真实,且能够解决在复杂条件下的类别不平衡问题。

3. 提出的方法

WeatherDG旨在生成适用于特定天气的自动驾驶场景图像,以增强恶劣条件下的语义分割性能。我们首先通过微调扩散模型来适应源领域的场景先验,确保生成的图像符合驾驶场景。接着,我们采用程序化的提示生成方法,创建详细的提示,使扩散模型能够生成逼真且多样化的天气和光照效果。最后,我们利用UDA训练方法来使用生成的图像进行语义分割模型的训练。

0102f2b08cf98aa0aa96937574e17557.png

3.1 SD微调

首先,使用源数据对Stable Diffusion模型进行微调,以确保生成的图像能够更好地与真实的驾驶场景对齐。我们在提示中使用一个唯一标识符,将先验知识与从源域数据集中选择的一张图像关联起来。例如,提示语句"A photo of V* driving scene"会与从选定图像中裁剪出的图像块相关联,其中V* 标识该场景,而“驾驶场景”对其进行宽泛描述。这种方法可以防止语言漂移,并提高模型性能。训练过程如图4a所示。训练结束后,模型通过唯一标识符V*捕捉场景先验,并能够在类似的上下文中生成新的实例,如图4b所示,应用于自动驾驶数据集。

973d945556e92e52aec3b35cb45afa91.jpeg 952ebc4063f7be9ee0f122166af5cc2d.jpeg

3.2 程序化提示生成

其次,利用LLMs之间的协作生成详细和多样的场景提示;最后,利用这些丰富的提示创造多样的训练样本。为了使扩散模型生成天气和光照效果,必须将具体的天气条件和一天中的时间整合到提示中。然而,简单的模板如“A photo of [CLS], [WEATHER], [TIME]”往往无法提供足够的多样性和细节,因此需要更细致的描述。手动编写这些描述非常耗时,因此我们考虑采用大型语言模型(LLM)来自动化这一过程。此外,鉴于恶劣天气条件下动态对象样本的稀缺性,我们需要在提示生成过程中采用平衡生成策略,以丰富这些对象的样本。为此,我们对生成提示的要求有三点:1) 应该采用平衡的生成策略,2) 引入不同的天气和光照条件,3) 提供详细的描述。最重要的是,所有的提示都由LLM模型自动生成,以减少人工干预。

在实现过程中,我们发现直接为单个LLM模型提供一条指令并不能满足我们所有的需求。具体来说,生成的提示往往与我们设计的生成策略不符,或者未达到我们期望的详细描述水平。为了解决这个问题,我们开发了一种程序化的提示生成方法,涉及三个LLM代理,分别是实例采样器、场景创作者和场景描述器。这种分层的方法使我们能够精确地生成用于图像生成的文本提示,确保每个提示的各个方面都与我们预期的结果一致。

82d9a9790b028bbfee1cc660fd87809d.png

4 实验

我们可视化图片生成结果,模型可以生成丰富的天气场景的自动驾驶场景。图6中的结果表明,普通的Stable Diffusion倾向于生成具有艺术风格或电影摄影效果的图像,如在“卡车”、“自行车”、“摩托车”和“公交车”等类别中所见。对于“汽车”和“火车”类别,图像展示了不同的摄影视角,例如鸟瞰视角。此外,对于“红绿灯”、“交通标志”和“行人”,模型表现出过度的创造性,生成了过于风格化的红绿灯,并将“行人”渲染成草图的形式。对于“骑行者”类别,Stable Diffusion模型甚至想象成了海上的冲浪者。

55220af94351e022b6025a1809365dd7.jpeg

图7结果表明,实力采样器(顶部)虽然使模型能够生成多样的实例,但场景细节有限。而场景创作者(中间行)使模型能够生成天气和光照效果,但整体效果相对较为微弱。通过场景描述器精心编写的详细描述,模型(底部行)能够生成复杂的场景细节,并带来更多样化的天气和光照效果,显著提升了生成图像的多样性和逼真度。

c69376658f9216e727989f9790dad059.jpeg

对于语义分割,我们在使用Cityscapes作为源域数据集的领域泛化设置下进行实验,并在ACDC、BDD100k和DarkZurich等目标领域数据集上进行测试。实验结果表明,WeatherDG能够显著提高不同最先进方法的性能。

b17a3badddc60b709f903895197d7c46.png daad0f925bf138224a832e689010555b.png

5 结论

本文提出了WeatherDG,一种用于在恶劣天气条件下实现语义分割领域泛化的新方法。通过结合Stable Diffusion和大型语言模型之间的协作,我们的方法能够仅依赖文本自动生成大量逼真图像,改善语义分割模型在真实世界中的表现。实验结果证明,WeatherDG显著提升了语义分割性能,为自动驾驶领域的鲁棒性设立了新的标杆。

『自动驾驶之心知识星球』欢迎加入交流!重磅,自动驾驶之心科研论文辅导来啦,申博、CCF系列、SCI、EI、毕业论文、比赛辅导等多个方向,欢迎联系我们!

507106559ac8df9ce7337c464fc4ce18.png

① 全网独家视频课程

端到端自动驾驶、仿真测试、自动驾驶C++、BEV感知、BEV模型部署、BEV目标跟踪、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、CUDA与TensorRT模型部署大模型与自动驾驶NeRF语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

8c822713a7e0425fa0e7bb6a9ead656b.png

网页端官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

国内外最大最专业,近4000人的交流社区,已得到大多数自动驾驶公司的认可!涉及30+自动驾驶技术栈学习路线,从0到一带你入门自动驾驶感知端到端自动驾驶世界模型仿真闭环2D/3D检测、语义分割、车道线、BEV感知、Occupancy、多传感器融合、多传感器标定、目标跟踪)、自动驾驶定位建图SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案大模型,更有行业动态和岗位发布!欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频

df45c27c541c16b309bc7f4890aa6c38.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦感知、定位、融合、规控、标定、端到端、仿真、产品经理、自动驾驶开发、自动标注与数据闭环多个方向,目前近60+技术交流群,欢迎加入!扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

321bea22f40d58b81e3a23036c001487.jpeg

④【自动驾驶之心】全平台矩阵

d5bf938dc16eea5ddb4b6a3ac6b59879.png

<think>好的,用户想了解如何使用VLM(视觉语言模型)构建二维地图。我需要结合提供的引用内容来回答这个问题。首先,我得明确VLM在这里的作用,以及如何利用其处理视觉和语言信息的能力来辅助地图构建。 根据引用[2],VLM可以处理视觉和语言输入,比如CLIP模型将图像和文本映射到共享潜在空间。这可能意味着VLM可以用于图像的特征提取,帮助识别环境中的关键元素。引用[1]提到使用VLM的注意力图来突出显示导航的关键区域,这可能对地图构建中的特征提取有帮助,比如识别道路、障碍物等。 接下来,引用[3]和[4]讨论了在自动驾驶场景中使用VLM进行场景理解和生成适应不同天气的图像。这可能涉及到使用VLM分析前方图像,提取语义信息,比如车道线、交通标志等,这些信息可以转化为二维地图的元素。 用户的问题是如何构建二维地图,可能需要将VLM处理的视觉信息转换为二维坐标。可能的步骤包括:图像采集、特征提取(使用VLM的注意力机制或图像编码器)、语义信息标注、坐标映射,最后整合成地图。 需要注意的是,VLM本身可能不直接生成地图,而是提供高层次的语义信息,需要与其他技术(如SLAM)结合。比如,VLM识别物体和场景,而SLAM处理空间定位和地图构建。引用[1]中的注意力图可能用于增强关键区域的识别,提高地图的准确性。 此外,引用[4]提到使用扩散模型生成驾驶场景图像,这可能用于数据增强,帮助VLM在训练时更好地适应不同环境,从而提升地图构建的鲁棒性。 总结步骤:使用VLM处理图像输入,提取特征和语义信息,结合定位技术将信息映射到二维坐标系,最后整合生成地图。需要验证在模拟环境和真实场景中的效果,如引用[3]所述。</think>### 如何使用 VLM 构建二维地图 使用视觉语言模型(VLM)构建二维地图的核心思路是通过其多模态理解能力,将视觉感知与语义信息结合,生成具有环境特征和语义标注的二维空间表示。以下是具体实现步骤: --- #### 1. **视觉信息提取与特征对齐** - **图像编码器应用**:使用 VLM 的图像编码器(如 CLIP 的 $CLIP_I$)处理输入的视觉数据(例如摄像头捕获的驾驶场景图像),提取高维特征向量[^2]。 - **注意力图蒸馏**:通过提取 VLM 中间层的注意力图(如引用[1]中的方法),识别图像中的关键区域(如道路边界、障碍物、交通标志),并通过结构相似性指数损失(SSIL)对齐导航相关的感知特征。 ```python # 示例:使用 CLIP 提取图像特征 import clip model, preprocess = clip.load("ViT-B/32") image_features = model.encode_image(preprocess(image)) ``` --- #### 2. **语义标注与空间映射** - **语言-视觉关联**:将 VLM 的文本编码器(如 $CLIP_L$)生成的语义标签(例如“十字路口”“人行道”)与图像特征关联,形成语义-空间对应关系[^2]。 - **坐标转换**:结合传感器数据(如激光雷达或深度相机)或单目深度估计,将图像中的像素坐标转换为二维平面坐标,生成初步的栅格地图。 --- #### 3. **动态场景建模与数据增强** - **多天气泛化**:利用 WeatherDG 等方法生成不同天气条件下的场景图像(引用[4]),提升 VLM 对复杂环境的适应能力。 - **行为指令融合**:在自动驾驶场景中,将 VLM 输出的行为指令(如“左转”“避让行人”)与二维地图的动态更新结合(引用[3])。 --- #### 4. **地图优化与验证** - **注意力引导优化**:通过 VLM 的注意力图修正地图中的模糊区域(例如阴影遮挡部分),增强地图的可靠性[^1]。 - **仿真与真实测试**:在 CARLA 仿真环境中验证地图的拓扑结构(引用[3]),并在真实数据集(如 HawkDrive)中测试泛化性。 --- #### 关键技术挑战 - **特征对齐精度**:需解决视觉特征与二维坐标的尺度、旋转不变性问题。 - **实时性要求**:VLM 的计算开销可能限制地图更新频率,需通过模型蒸馏或轻量化改进。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值