CN117058024A - 一种基于Transformer的高效去雾语义分割方法及其应用 - Google Patents
一种基于Transformer的高效去雾语义分割方法及其应用 Download PDFInfo
- Publication number
- CN117058024A CN117058024A CN202310974922.1A CN202310974922A CN117058024A CN 117058024 A CN117058024 A CN 117058024A CN 202310974922 A CN202310974922 A CN 202310974922A CN 117058024 A CN117058024 A CN 117058024A
- Authority
- CN
- China
- Prior art keywords
- domain
- image
- training
- network
- defogging
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 57
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 7
- 239000013598 vector Substances 0.000 claims description 7
- 230000009977 dual effect Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 claims description 4
- 230000018109 developmental process Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 239000000284 extract Substances 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 238000002156 mixing Methods 0.000 claims description 3
- 238000012795 verification Methods 0.000 claims description 3
- 238000003709 image segmentation Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 9
- 238000002372 labelling Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/096—Transfer learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20112—Image segmentation details
- G06T2207/20132—Image cropping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及图像分割技术领域,公开了一种基于Transformer的高效去雾语义分割方法及其应用,获取雾天天气下城市道路场景图像数据,搭建实现初步去雾的主干去雾网络,采用Transformer编码器‑解码器的结构,在编码器部分加入雾天气的类型查询来学习任务,在解码块中,使用编码器的特征作为键和值。采用无监督域自适应的框架进行自训练,在源域和目标域中加入中间域,使用双教师网络为目标域数据生成伪标签,并将网络进行端对端的训练,得到一个训练权重,利用优化后的训练权重对应的模型对待处理图像进行高效去雾语义分割。该模型可以在自动驾驶领域具有较好的应用。与现有技术相比,本发明在去除雾天气中具有更好的表现。
Description
技术领域
本发明涉及图像分割技术领域,特别涉及一种基于Transformer的高效去雾语义分割方法及其应用,基于计算机视觉、Transformer模型开发,应用于自动驾驶中出现在恶劣天气视觉分割效果不当的场景。特别针对于在浓雾、大雨等恶劣天气中分割的效果,以及现有的检测恶劣环境模型结构复杂检测结果不佳等问题,最终将算法在JestonXavier中运行。
背景技术
无人驾驶是指车辆可以像驾驶员一样理解“道路场景”,并根据该理解对外界环境作出应对,从而可以实现车辆的自动导航,路灯、行人的避障,将乘坐者安全送达目的地。场景理解的关键是语义分割技术,它将图像中每个像素分配到语义类别中,从而提供更准确、更精细的环境感知。这可以使自动驾驶系统更好地理解道路、交通标志、行人等环境要素,从而更安全、更高效地行驶。
然而,适应恶劣天气条件场景仍然是一个悬而未决的问题。由于浓雾,大雨等天气条件降低了能见度,不仅破坏了图像捕获的信息,并且使得场景能见度的巨大变化加剧了域与域之间的偏移,因此如何确保在去除雾间隙的同时减少域差距是需要解决的。
早期,基于卷积神经网络的解决方案被广泛使用于去雾,去雨滴,但它存在很大的局限性,包括低性能,实时性,不具有远距离特征捕获的能力。近年来,基于Transformer的方法去探索去雾消除任务,它取得了比CNN更好的性能。
发明内容
发明目的:为了解决背景技术中指出的问题,本发明提供了一种基于Transformer的高效去雾语义分割方法及其应用,在正常天气且具有像素级别标注的数据集的基础上,首先搭建一个Transformer网络的分割网络,将雾天场景的图片进行去雾处理,然后,在源域和目标域之间加入中间域,缩小域间差距,并将网络进行端对端的训练,得到一个训练权重。最后将模型嵌入到嵌入式终端设备中,并在ROS里面部署语义分割模型,使得很好的适应自动驾驶的应用。
技术方案:本发明公开了一种基于Transformer的高效去雾语义分割方法,包括如下的步骤:
步骤1:获取雾天天气下城市道路场景图像数据,根据场景中不同建筑的类别进行人工标注,构建训练用的数据集;
步骤2:搭建实现初步去雾的主干去雾网络;所述主干去雾网络基于Transformer,在编码器的不同阶段,提取多级特征并生成输入图像的分层特征,在每个阶段将重叠特征的块结合起来;在解码器上使用雾天特征类型查询来完成解码任务,预测任务特征向量并使用其来恢复干净的图像;
步骤3:采用无监督域自适应的框架,用于改进网络结构的泛化能力和准确度;引入逐步连接这两个域的中间域,将一个域的内容图像特征和另一个域图像的私有特征进行重组,生成新的图像,形成模糊的目标域到清晰的目标域,逐层缓解域之间的差异;
步骤4:将经过改进的去雾网络模型进行训练,最终得到最好的预训练模型权重,利用优化好的模型对待处理图像进行高效去雾语义分割。
进一步地,所述步骤1中使用深度摄像头搜集城市街景图像雾天场景的实况图,使用labelm打标签工具进行标签标注,标注完成之后生成json文件进行转换并生成mask;将mask标签图像和原图进行缩放、旋转、裁剪的操作之后数据会得到增强;将增强完毕之后的数据集生成训练集、验证集和测试集。
进一步地,所述步骤2中编码器部分采用尺寸为H*W*3的雾场景的图像,并将其分为很多块,然后将块前馈到包括不同阶段的Transformerblock的Transformer编码器中;在解码器部分,与传统Transformer的解码器中Q、K和V取自相同输入的自注意力转换器模块不同,将Q变为雾天气类型学习嵌入,而K和V取自变量。
进一步地,所述步骤2中雾天场景下雾建模为:
其中,I为降级图像,M为掩模图像,B为背景,R为雨滴残差。
进一步地,所述编码器部分的Transformerblock中,使用多头注意力层和前馈网络计算自注意力特征,其公式为:
Ti(Ii)=FFN(MSA(Ii)+Ii)
其中,T()表示变压器块,FFN()表示前馈网络,MSA表示多头注意力,I为输入,i为编码器中的级;
Transformer编码器的前馈过程的公式如下:
Yi=MTi(Xi)+IntraPTi(P(Xi))
其中,I是跨级Transformer的输入,Y是跨级输出,MT()是主transformer块,IntraPT是内补丁transformer块,P()对应从输入补丁创建子补丁的过程,i表示阶段。
进一步地,所述步骤3具体操作为:
步骤3.1:采用自训练方式,得到一组源域的图像和源域中的注释为 以及仅带有注释的目标域样本/>和带有丰富的未标记目标域数据/>其中,/>为输入变量,/>为输出变量,Ns为表示集合中二维组的数量,表示一个训练集,包含Ns个样本,每个样本由一个输出变量和相应的输入变量组成;
步骤3.2:在源域上训练学生模型gθ,在自训练中使用双教师网络为目标域数据生成伪标签;
步骤3.3:构建新的无监督域自适应UDA框架,首先在源域上训练分割模型,并且学生网络得到梯度回传;其次,让源域和中间域之间进行混合训练,此时学生网络同样得到回传梯度;源域和中间域做完混合之后,让源域与目标域之间进行混合,学生网络得到回传梯度;最后学生网络到教师网络学生网络到教师网络/>交替训练,并更新指数移动平均值EMA。
进一步地,在源域上训练学生模型gθ,其交叉熵损失的目标函数公式如下所示:
其中,xs、ys是第n个源图像和对应的标签,c表示向量的第C个标量;GCW(n,c)表示大小为n的二维高斯卷积核,用于对于每个像素位置计算一个权重,以便提高周围像素对于当前像素的影响;是训练样本的标签,表示第h行、第w列的像素属于第c个类别的概率,/>是模型对于输入/>的预测输出,表示第h行、第w列的像素属于第c个类别的得分。
进一步地,所述步骤3.2中生成伪标签选择在线生成,并按照与教师学生模型相同的构架设计双教师模型,其中权重θ'在不同训练步骤中为学生模型权重θ的指数移动平均EMA,在训练阶段内,教师模型θ't的权重更新为:
θ't=αθ't-1+(1-α)θt
其中,t表示迭代次数,θt表示第t个时间步或迭代次数的模型参数,θ't-1表示上一个时间步或迭代次数的指数移动平均值,α是平滑因子,用于平衡当前参数值和历史平均值的权重。
进一步地,所述无监督域自适应的框架的损失如下公式所示:
L总=Ls+L'T+LT
其中,Ls代表源域的损失,L'T代表中间域的损失,LT代表目标域的损失,L'T、LT的损失和Ls类似,Ls的损失计算为:
其中,s表示训练集中的样本,i表示第i个样本,j表示样本中的像素位置,c表示类别数量,H和W分别表示输入图像的高度和宽度,是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率;/>是模型对于输入/>的预测输出,表示第i个样本中第j行、第w列的像素属于第c个类别的得分;/>是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率。
本发明还公开一种基于Transformer的高效去雾语义分割方法在自动驾驶中的应用,采用Ros通信机制将上述基于Transformer的高效去雾语义分割模型应用到自动驾驶中,包括如下步骤:
(1)用OAK-D的摄像头连接Xavier开发板;
(2)创建一个OAK摄像头管道对象;
(3)在创建的管道对象上创建一个神经网络对象,将上面放入OAK-D中训练好的基于Transformer的高效去雾语义分割模型赋值给神经网络对象;
(4)将彩色输出流对象与神经网络输出流对象相融;
(5)编写ROS节点,每次接收到图像都进行网络分割并保存效果。
有益效果:
1、本发明采用Transformer的去雾网络结构,采用的Transformer编码器-解码器的结构相对于传统的神经网络模型具有更好的处理多变量输入、考虑位置信息、可并行化计算和更好的泛化能力等优势,因此在去除雾天气中具有更好的表现,并且会计算模型中每个输入元素的自注意力机制以便对序列中的每个元素进行加权聚合。这种加权聚合不仅可以捕捉元素之间的相关性,还可以考虑元素在序列中的位置信息,从而更好地处理时间序列数据。
2、在源域和目标域中加入中间域可以对源域和目标域之间相关的域间隙进行划分和封闭。提出一种新的管道来适应源域和目标域,尽可能的减少域差距,尝试利用中间域进行过滤,从清晰的源域过度到清晰的目标域,再从清晰的目标过度模糊的目标域,以此来达到缩小域差距的目的,整个过程实现的原理为由易到难,逐步递进。
3、本发明可以将语义分割集成到ROS(机器人操作系统),通过ROS软件系统,采用发布-订阅式的通信框架,便于对每个模块化的部分进行重新修改与定制,提高了系统的容错能力。
4、本发明可以将分割的模型嵌入到嵌入式设备中,可以有效的避免将图像数据传输到云端进行处理,从而减少了通信延迟,提高了响应速度。同时,可以实现实时处理,从而提高了决策速度和准确度。
附图说明
图1为本发明中Transformer编解码器的网络框架图;
图2为本发明中加入中间域后的UDA框架图;
图3为ROS节点、话题结构图;
图4为基于Transformer的高效去雾语义分割模型结构图。
具体实施方案
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明公开了一种基于Transformer的高效去雾语义分割方法及其应用,包括如下步骤:
步骤1、图像数据采集并预训练,收集并保存雾天天气下城市道路场景图像数据,并根据场景中不同建筑的类别进行人工标注并制作成数据集,并将获得的数据集按照一定的比例分割为训练集和测试集并且进行预处理。本实施方式中,使用深度摄像头搜集城市街景图像雾天场景的实况图,使用labelm打标签工具进行标签标注,标注完成之后生成json文件进行转换并生成mask,将mask标签图像和原图进行缩放、旋转、裁剪的操作之后数据会得到增强,将增强完毕之后的数据集生成训练集、验证集和测试集。
对于样本数据做预处理的方法包括:
(i)对于雾天场景的数据集采用中值滤波技术,去除噪声的同时可以很好的保护图像的边缘信息。
(ii)对噪声处理后的样本数据进行数据增强处理,数据增强处理包括对噪声处理后的样本数据分别进行对比度变换、裁剪、图像转置、旋转、水平镜像、将一部分区域裁剪掉但不填充0像素,而是随机填充训练集中的其他数据的区域像素值。
步骤2、搭建实现初步去雾的主干去雾网络,主干去雾网络基于Transformer,在编码器的不同阶段,提取多级特征并生成输入图像的分层特征,在每个阶段将重叠特征的块结合起来,在解码器上使用雾天特征类型查询来完成解码任务,预测任务特征向量并使用其来恢复干净的图像。如图1所示的Transformer的单编码器-单解码器,在编码器部分加入雾天气的类型查询来学习任务,而不是使用多个编码器。输入一张H*W*3的雾天图像,并将这张图像分成多个patch。然后将这些patch前馈到包括不同阶段的Transformerblock的Transformer编码器中。在解码块中,使用编码器的特征作为键和值。然后,将提取的特征通过卷积投影块获得H*W*3维度的清晰图像。在雾天涉及到的基础物理的不同模型。雾天场景下雾建模为:
其中,I为降级图像,M为掩模图像,B为背景,R为雨滴残差。
Transformer的编码器是用来提取多级特征生成输入图像的分层特征表示。在每个阶段,将重叠的特征patch组合在一起,得到与非重叠patch相同大小的特征,并将其传递到下一个阶段。其中如图1所示的Transformerblock中,使用多头注意力层和前馈网络计算自注意力特征。其公式为:
Ti(Ii)=FFN(MSA(Ii)+Ii)
其中,T()表示变压器块,FFN()表示前馈网络,MSA表示多头注意力,I为输入,i为编码器中的级。在原始的自注意力网络一样,其中查询头、键和值有相同的尺寸和计算,其公式为:
其中,函数的输入是查询Q,键K和值V,d代表维度。注意力矩阵A中包含的元素包括Q和K中任意两个单词之间的权重,对于编码器而言,Q,K,V由同一编码器状态矩阵经过不同的线性映射得到。图中内补丁Transformer块是位于Transforme编码器的每一级之间。这些块将原始补丁创建的子补丁作为输入。这些子补丁的尺寸是原来补丁宽和高的一半。它有助于提取细微的雾天细节,能有效去除较小的退化。因此,Transformer编码器的前馈过程的公式如下:
Yi=MTi(Xi)+IntraPTi(P(Xi))
其中,I是跨级Transformer的输入,Y是跨级输出,MT()是主transformer块,IntraPT是内补丁transformer块,P()对应从输入补丁创建子补丁的过程,i表示阶段。在解码器部分,与原本的TransformerQ、K和V来自相同的输入,这里Q是雾天气可学习嵌入,而K和V是来自Transformer编码器的最后阶段。
步骤3、采用无监督域自适应的框架,引入逐步连接这两个域的中间域,将一个域的内容图像特征和另一个域图像的私有特征进行重组,生成新的图像,形成模糊的目标域到清晰的目标域,逐层缓解域之间的差异。
本发明采用自训练的方式进行训练,是我们能够得到一组源域的图像和源域中的注释为以及仅带有注释的目标域样本/> 和带有丰富的未标记目标域数据/>其中,/>为输入变量,/>为输出变量,Ns为表示集合中二维组的数量,表示一个训练集,包含Ns个样本,每个样本由一个输出变量和相应的输入变量组成。
为了更好地将知识从源域转移到目标域,首先在源域上训练学生模型gθ,它的交叉熵损失的目标函数公式如下所示:
其中,xs、ys是第n个源图像和对应的标签,c表示向量的第C个标量;GCW(n,c)表示大小为n的二维高斯卷积核,用于对于每个像素位置计算一个权重,以便提高周围像素对于当前像素的影响;是训练样本的标签,表示第h行、第w列的像素属于第c个类别的概率,/>是模型对于输入/>的预测输出,表示第h行、第w列的像素属于第c个类别的得分。
在自训练中使用双教师网络为目标域数据生成伪标签。
在我们的教师网络中最终的梯度不会方向传播到教师网络中。此外,利用softmax概率的阈值τ的像素比率,也就是说如果最大的概率值大于一个阈值,那么说明结果有效。在下面的公式中设置一个阈值τ:
我们在生成伪标签中选择了在线生成,并按照与教师学生模型相同的构架设计双教师模型,其中权重θ'在不同训练步骤中为学生模型权重θ的指数移动平均EMA,以增加测试的稳定性。具体而言,在训练阶段内,教师模型θ't的权重更新为:
θ't=αθ't-1+(1-α)θt
其中,t表示迭代次数,θt表示第t个时间步或迭代次数的模型参数,θ't-1表示上一个时间步或迭代次数的指数移动平均值,α是平滑因子,用于平衡当前参数值和历史平均值的权重。
如图2所示,我们构建了新的UDA框架。首先在源域上训练分割模型,并且学生网络得到梯度回传,其次,让源域和中间域之间进行混合训练,此时学生网络同样得到回传梯度,源域和中间域做完混合之后,让源域与目标域之间进行混合,学生网络得到回传梯度,最后学生网络到教师网络1,学生网络到教师网络2交替训练,并更新EMA,避免梯度之间的相互干扰。在本文中mix的方式遵循classmix的方式,因此计算classmix的损失函数如下公式所示:
L(θ)=E[H(fθ(XS),YS)+λH(fθ(Xm),Ym)]
其中,XS是一种标记图像数据集中的均匀随机采样的图像,λ是在监督和非监督术语之间的平均参数,Xm和Ym为增强方法产生的增强图像。
采用全新的UDA框架,其总的损失如下公式所示:
L总=Ls+L'T+LT
其中,Ls代表源域的损失,L'T代表中间域的损失,LT代表目标域的损失,L'T、LT的损失和Ls相似,Ls的损失计算为:
其中,s表示训练集中的样本,i表示第i个样本,j表示样本中的像素位置,c表示类别数量,H和W分别表示输入图像的高度和宽度,是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率;/>是模型对于输入/>的预测输出,表示第i个样本中第j行、第w列的像素属于第c个类别的得分;/>是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率。
将上述模型放入云服务器中训练,本实施方式中,将其放入NVIDIARTX 8000GPU中训练,将它的学习率设置为6*10-4,权重衰减为0.01,该算法在512*512的随机种子上迭代了40000次,并采用类被混合的方式进行数据增强,并设置α=0.99和τ=0.968。
嵌入式设备实际部署,将训练得到的模型权重放入JestonXavier中,利用日益普及的终端设备(如移动和物联网设备)直接在数据源和用户端直接对任务进行计算并反馈。
如图3所示,采用Ros通信机制将模型应用到自动驾驶中,具体可以如下:
(1)用OAK-D的摄像头连接Xavier开发板。(2)创建一个OAK摄像头管道对象。(3)在创建的管道对象上创建一个神经网络对象,将上面放入OAK-D中训练好的分割网络模型赋值给神经网络对象。(4)将彩色输出流对象与神经网络输出流对象相融。(5)编写ROS节点,每次接收到图像都进行网络分割并保存效果。将训练好的分割模型部署到ROS中,使用自定义的ROS节点或库实现。将模型集成到ROS节点或包中,此时ROS会创建一个连接所有进程的网络,该网络是通过定义的节点Node进行访问,在不同的节点之间也可以通过该网络实现相互交互,节点也可以将自身的数据发布至网路,使得能够处理ROS话题和消息。
上述实施方式只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种基于Transformer的高效去雾语义分割方法,其特征在于,包括如下的步骤:
步骤1:获取雾天天气下城市道路场景图像数据,根据场景中不同建筑的类别进行人工标注,构建训练用的数据集;
步骤2:搭建实现初步去雾的主干去雾网络;所述主干去雾网络基于Transformer,在编码器的不同阶段,提取多级特征并生成输入图像的分层特征,在每个阶段将重叠特征的块结合起来;在解码器上使用雾天特征类型查询来完成解码任务,预测任务特征向量并使用其来恢复干净的图像;
步骤3:采用无监督域自适应的框架,用于改进网络结构的泛化能力和准确度;引入逐步连接这两个域的中间域,将一个域的内容图像特征和另一个域图像的私有特征进行重组,生成新的图像,形成模糊的目标域到清晰的目标域,逐层缓解域之间的差异;
步骤4:将经过改进的去雾网络模型进行训练,最终得到最好的预训练模型权重,利用优化好的模型对待处理图像进行高效去雾语义分割。
2.根据权利要求1所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述步骤1中使用深度摄像头搜集城市街景图像雾天场景的实况图,使用labelm打标签工具进行标签标注,标注完成之后生成json文件进行转换并生成mask;将mask标签图像和原图进行缩放、旋转、裁剪的操作之后数据会得到增强;将增强完毕之后的数据集生成训练集、验证集和测试集。
3.根据权利要求1所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述步骤2中编码器部分采用尺寸为H*W*3的雾场景的图像,并将其分为很多块,然后将块前馈到包括不同阶段的Transformer block的Transformer编码器中;在解码器部分,与传统Transformer的解码器中Q、K和V取自相同输入的自注意力转换器模块不同,将Q变为雾天气类型学习嵌入,而K和V取自变量。
4.根据权利要求3所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述步骤2中雾天场景下雾建模为:
其中,I为降级图像,M为掩模图像,B为背景,R为雨滴残差。
5.根据权利要求3所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述编码器部分的Transformer block中,使用多头注意力层和前馈网络计算自注意力特征,其公式为:
Ti(Ii)=FFN(MSA(Ii)+Ii)
其中,T()表示变压器块,FFN()表示前馈网络,MSA表示多头注意力,I为输入,i为编码器中的级;
Transformer编码器的前馈过程的公式如下:
Yi=MTi(Xi)+INtraPTi(P(Xi))
其中,I是跨级Transformer的输入,Y是跨级输出,MT()是主transformer块,IntraPT是内补丁transformer块,P()对应从输入补丁创建子补丁的过程,i表示阶段。
6.根据权利要求1所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述步骤3具体操作为:
步骤3.1:采用自训练方式,得到一组源域的图像和源域中的注释为 以及仅带有注释的目标域样本/>和带有丰富的未标记目标域数据其中,/>为输入变量,/>为输出变量,Ns为表示集合中二维组的数量,表示一个训练集,包含Ns个样本,每个样本由一个输出变量和相应的输入变量组成;
步骤3.2:在源域上训练学生模型gθ,在自训练中使用双教师网络为目标域数据生成伪标签;
步骤3.3:构建新的无监督域自适应UDA框架,首先在源域上训练分割模型,并且学生网络得到梯度回传;其次,让源域和中间域之间进行混合训练,此时学生网络同样得到回传梯度;源域和中间域做完混合之后,让源域与目标域之间进行混合,学生网络得到回传梯度;最后学生网络到教师网络学生网络到教师网络/>交替训练,并更新指数移动平均值EMA。
7.根据权利要求6所述的基于Transformer的高效去雾语义分割方法,其特征在于,在源域上训练学生模型gθ,其交叉熵损失的目标函数公式如下所示:
其中,xs、ys是第n个源图像和对应的标签,c表示向量的第C个标量;GCW(n,c)表示大小为n的二维高斯卷积核,用于对于每个像素位置计算一个权重,以便提高周围像素对于当前像素的影响;是训练样本的标签,表示第h行、第w列的像素属于第c个类别的概率,是模型对于输入/>的预测输出,表示第h行、第w列的像素属于第c个类别的得分。
8.根据权利要求6所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述步骤3.2中生成伪标签选择在线生成,并按照与教师学生模型相同的构架设计双教师模型,其中权重θ'在不同训练步骤中为学生模型权重θ的指数移动平均EMA,在训练阶段内,教师模型θ't的权重更新为:
θ′t=αθ′t-1+(1-α)θt
其中,t表示迭代次数,θt表示第t个时间步或迭代次数的模型参数,θ't-1表示上一个时间步或迭代次数的指数移动平均值,α是平滑因子,用于平衡当前参数值和历史平均值的权重。
9.根据权利要求6至8任一所述的基于Transformer的高效去雾语义分割方法,其特征在于,所述无监督域自适应的框架的损失如下公式所示:
L总=Ls+L′T+LT
其中,Ls代表源域的损失,L'T代表中间域的损失,LT代表目标域的损失,L'T、LT的损失和Ls类似,Ls的损失计算为:
其中,s表示训练集中的样本,i表示第i个样本,j表示样本中的像素位置,c表示类别数量,H和W分别表示输入图像的高度和宽度,是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率;/>是模型对于输入/>的预测输出,表示第i个样本中第j行、第w列的像素属于第c个类别的得分;/>是训练样本的标签,表示第i个样本中第j行、第w列的像素属于第c个类别的概率。
10.一种基于Transformer的高效去雾语义分割方法在自动驾驶中的应用,其特征在于,采用Ros通信机制将权利要求1-8所述的基于Transformer的高效去雾语义分割模型应用到自动驾驶中,包括如下步骤:
(1)用OAK-D的摄像头连接Xavier开发板;
(2)创建一个OAK摄像头管道对象;
(3)在创建的管道对象上创建一个神经网络对象,将上面放入OAK-D中训练好的基于Transformer的高效去雾语义分割模型赋值给神经网络对象;
(4)将彩色输出流对象与神经网络输出流对象相融;
(5)编写ROS节点,每次接收到图像都进行网络分割并保存效果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310974922.1A CN117058024A (zh) | 2023-08-04 | 2023-08-04 | 一种基于Transformer的高效去雾语义分割方法及其应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310974922.1A CN117058024A (zh) | 2023-08-04 | 2023-08-04 | 一种基于Transformer的高效去雾语义分割方法及其应用 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117058024A true CN117058024A (zh) | 2023-11-14 |
Family
ID=88656527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310974922.1A Pending CN117058024A (zh) | 2023-08-04 | 2023-08-04 | 一种基于Transformer的高效去雾语义分割方法及其应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117058024A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117830638A (zh) * | 2024-03-04 | 2024-04-05 | 厦门大学 | 基于提示文本的面向全方位监督语义分割方法 |
-
2023
- 2023-08-04 CN CN202310974922.1A patent/CN117058024A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117830638A (zh) * | 2024-03-04 | 2024-04-05 | 厦门大学 | 基于提示文本的面向全方位监督语义分割方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | Real-time prediction of taxi demand using recurrent neural networks | |
CN110766038B (zh) | 无监督式的地貌分类模型训练和地貌图构建方法 | |
WO2022111219A1 (zh) | 一种域自适应设备运检系统和方法 | |
CN111507927A (zh) | 在神经网络中统合图像及点云图的方法及装置 | |
Rajagopal et al. | Fine-tuned residual network-based features with latent variable support vector machine-based optimal scene classification model for unmanned aerial vehicles | |
CN113795851A (zh) | 具有针对使用对抗训练的表示学习的推理的大规模生成神经网络模型 | |
CN117058024A (zh) | 一种基于Transformer的高效去雾语义分割方法及其应用 | |
CN112734808A (zh) | 一种车辆行驶环境下易受伤害道路使用者的轨迹预测方法 | |
CN114358128A (zh) | 一种训练端到端的自动驾驶策略的方法 | |
CN112819873B (zh) | 高泛化性的跨域道路场景语义分割方法和系统 | |
CN115131753A (zh) | 一种自动驾驶场景下的异构多任务协同系统 | |
Paz et al. | Tridentnet: A conditional generative model for dynamic trajectory generation | |
Darapaneni et al. | Autonomous car driving using deep learning | |
Yu et al. | REIN the RobuTS: Robust DNN-based image recognition in autonomous driving systems | |
CN114549369B (zh) | 数据修复方法、装置、计算机及可读存储介质 | |
CN112115744B (zh) | 点云数据的处理方法及装置、计算机存储介质、电子设备 | |
Wang et al. | Gated adversarial network based environmental enhancement method for driving safety under adverse weather conditions | |
Wei et al. | Creating semantic HD maps from aerial imagery and aggregated vehicle telemetry for autonomous vehicles | |
CN117116048A (zh) | 基于知识表示模型和图神经网络的知识驱动交通预测方法 | |
Khan et al. | Latent space reinforcement learning for steering angle prediction | |
CN113743386B (zh) | 车道线生成方法、装置、设备及存储介质 | |
Kong et al. | GADA-SegNet: Gated attentive domain adaptation network for semantic segmentation of LiDAR point clouds | |
CN115376094A (zh) | 基于尺度感知神经网络的无人清扫车路面识别方法及系统 | |
Han et al. | A lightweight and style-robust neural network for autonomous driving in end side devices | |
CN111666849B (zh) | 多视角深度网络迭代进化的多源遥感影像水体检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |