一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于边缘计算和Transformer的桥梁混凝土裂缝实时检测方法及装置

2022-08-24 00:49:59 来源:中国专利 TAG:

一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法及装置
技术领域
1.本发明属于裂缝检测领域和边缘计算领域,具体涉及一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法及装置。


背景技术:

2.桥梁混凝土结构的表面经常出现不同程度的裂缝。除了极端的自然灾害外,长期超负荷的不均匀应力、温度变化导致的变形、空气雨水的长期侵蚀导致的结构腐蚀等也是裂缝产生的重要因素。裂缝可以加速表面结构的恶化过程,如果在早期阶段发现这些裂缝,就能进一步减少损害,避免造成人员伤亡和经济损失。
3.桥梁混凝土结构裂缝的早期检测和维护主要依靠人工检查,这需要耗费大量的人力、物力。此外,检测人员无法检测到桥梁全部区域,导致裂缝检测不充分,对桥梁安全造成隐患。近年来,无人机技术的发展大大提高了桥梁混凝土裂缝的检测效率,无人机技术使用机载相机捕捉桥梁的结构表面图像,并在云服务中使用裂缝检测算法对捕捉到的图像进行裂缝检测。基于无人机的桥梁检测由于其安全性和可靠性而受到了许多研究者以及桥梁维护部门的关注。然而,随着无人机数量的增加,云服务的计算压力也不断增加,限制了无人机桥梁检测的效率。
4.边缘计算是一种分散式的计算架构,将原本完全由中心节点处理的大型服务分解成更小、更容易管理的部分,并将其分散到边缘节点进行处理,这一技术成为无人机桥梁检测新的选择。最近,transformer在图像识别领域取得了优异的成绩,逐渐成为视觉建模的新主流。但当前的transformer参数量和计算需求太大,无法在边缘设备上运行,无人机边缘计算中的深度学习算法必须有较少的参数,才能有效地进行裂缝检测。


技术实现要素:

5.本发明的目的是为了解决现有的桥梁混凝土裂缝检测方法需要的计算资源过大,无法在边缘设备上运行的问题,提供一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法及装置。
6.为实现上述目的,本发明提供了如下的技术方案:
7.一方面,提供一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法,包括:
8.步骤s1:采集桥梁混凝土裂缝图像;包括收集公开的裂缝图像以及使用无人机拍摄裂缝图像两部分;
9.步骤s2:对图像进行数据检查及预处理,建立数据集;检查无人机拍摄的图像,对于较模糊的图像使用模糊去噪方法处理;使用裁剪、色彩抖动、缩放的方式进行数据扩充;对无人机拍摄的图像进行人工标注,划分为有裂缝图像和无裂缝图像两类,将在互联网上公开的裂缝图像与无人机拍摄的裂缝图像合并构建数据集;
10.步骤s3:构建适用于边缘计算的轻量级transformer网络;网络包括输入转换、transformer 编码器以及预测头三部分,其中所述输入转换包括分块、混合块变换以及线性投影,图像在输入网络前需切分为8*8的图像块,之后进行混合块变换,通过线性投影后形成transformer 编码器的输入序列,每个块的嵌入维数为128;输入转换和transformer编码器两部分之间需要插入位置编码;transformer编码器主要包括多头注意力层(2个头)和前馈网络(ffn)两部分,其中所述ffn第一层维数为512,第二层维数为128,激活函数为gelu;预测头包括全局平均池化层和线性层,其中线性层是一个两层的感知机,输入维度为128,第一层输出维度为512,第二层用于分类,输出维度为类别个数2,分别代表无裂缝图像和有裂缝图像;
11.步骤s4:训练网络得到识别模型;在大规模图像数据集imagenet-1k上对所述轻量级 transformer网络进行预训练,之后使用预训练模型在步骤s2得到的桥梁混凝土裂缝数据集上进行微调;
12.步骤s5:将识别模型部署到无人机上,使用无人机开展桥梁混凝土裂缝实时检测;将训练完成的轻量级transformer模型部署至ai开发板;根据模型计算能力、传输时延等信息,制定计算卸载的方案;将ai开发板作为边缘计算设备挂载到无人机上,无人机执行实时检测时将卸载的桥梁混凝土裂缝检测任务传输至边缘计算设备进行计算,并将识别到的类别及置信度回传至地面端设备。
13.可选地,在一种可能的实现方式中,所述混合块变换方法包括两种类型的变换方法,如下:
14.第一类变换为块丢弃变换,在切分后得到的所有块中,丢弃一半数量的不相邻的块;设 p为切分后的块矩阵,块丢弃方法的主要公式如下:
15.p=p*d
16.其中p有i行j列,d是一个二值矩阵(0或1),其中0代表要丢弃的块,1代表要保留的块;二值矩阵d由以下公式计算而来:
17.d=cycleandreshape(0,1,n)
18.首先生成一个二值数组,由0和1交替循环,n=i*j代表图像块的总个数,为生成的二值数组的长度,之后将二值数组重构成和p相同大小的矩阵,最后将p矩阵与d矩阵相乘,得到的矩阵即为变换后的块矩阵。
19.第二类变换为块缩略图变换,随机选择全部图像块中的一半,将其转换为缩略图,大小从原来的8*8转换为4*4;将这些缩略图与另一半图像块两两混合,仅保留混合后的图像块,混合公式如下:
20.patch
mix
=mpatch1 fill(tn(patch2))
21.其中patch
mix
是一个新的混合样本块,m为二元掩码,代表图像块被裁剪和保留的区域, fill函数填充并生成一个与patch2相同大小的图像块,tn函数为缩略图操作;
22.所述混合块变换是一个用于模型训练阶段的方法,其在训练时对输入的图像块进行变换,丢弃部分输入信息,让transformer使用不完整的输入序列进行训练,而在推理时使用完整的输入序列进行计算;在训练时,混合块变换每次使用一种变换方法对输入图像块进行变换,使用何种变换方法可根据实际需要由一个人工设置的概率阈值控制。另一方面,本发明还提供一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测装置,包
括:
23.采集模块,采集桥梁混凝土裂缝图像;
24.数据集模块,对图像进行数据检查及预处理,建立数据集;
25.网络模块,构建适用于边缘计算的轻量级transformer网络;
26.训练模块,训练网络得到识别模型;
27.检测模块,将识别模型部署到无人机上,使用无人机开展桥梁混凝土裂缝实时检测。
28.与现有技术相比,本发明的有益效果是:
29.模型训练时使用的混合块变换方法中,第一种类型的变换减轻transformer对于小数据集过拟合的问题,提升了transformer的运行效率。第二种类型的变换中,将随机选择的一半图像块变为缩略图,与另一半图像块两两混合,增强了块之间的多样性,有裂缝的图像块缩略图可以加强模型对细微裂缝的学习,无裂缝的图像块缩略图可以作为遮挡,提升模型的泛化能力。另外,轻量级的transformer降低了计算负载,使其可在嵌入式设备等资源受限的平台上部署,在无人机支持的边缘计算设备中高效运行。
附图说明
30.图1为基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法的流程图;
31.图2为轻量级transformer的架构图;
32.图3为搭载边缘计算设备的无人机实时检测的架构图;
33.图4为基于边缘计算和transformer的桥梁混凝土裂缝实时检测装置的流程图。
具体实施方式
34.为了使本技术领域的人员更好地理解本技术方案,下面将对本技术实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
35.应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
36.应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
37.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例对本发明的技术方案进行详细说明。
38.本发明提供一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测方法,如图1所示其流程图,具体过程包括:
39.步骤s1:采集桥梁混凝土裂缝图像;
40.s101、收集公开的裂缝图像;
41.收集文献“automated bridge crack detection using convolutional neural networks”中公开的桥梁混凝土裂缝数据集,所述数据集包括4856张训练图像和1213张测试图像,分辨率均为224*224,裂缝图像与非裂缝图像的比例约为2:1。
42.s102、使用无人机拍摄裂缝图像;
43.首先为无人机制定飞行方案,根据检测部件的差异,制订不同的安全距离:桥墩和塔柱一般控制在1.5-3m左右;如果桥梁存在缆索等复杂部件,则应控制在3-5m左右,具体安全距离需结合现场情况确定。单次飞行时仅对桥梁单侧上下部分进行巡检,巡检顺序为由左到右先上后下,下部巡检时采用上置相机在无人机飞手同侧作业。无人机飞行前需要进行检查,包括天气情况、无人机功能检查。天气是影响无人机航拍的重要因素,例如当风速超过了无人机的飞行控制系统所能承受的最大范围后,其稳定性会难以维持,航拍质量会受到严重影响,严重时会造成无人机损坏。对于桥梁表面的拍摄应在光线充足、空气能见度较高时进行,避免出现逆光。如遇到恶劣天气,则需要等到天气条件较为有利时再进行飞行。
44.起飞前,无人机需在飞行方案确定的起飞点平稳放置。调试各系统确保开机运行正常,确认起飞区域安全,之后统一指令调度起飞。无人机起飞后分别在桥梁缆索左右两侧飞行,不进入桥梁主体上方区域,确保不影响桥上车辆的正常通行。起飞时无人机飞手通过遥控器实时控制飞机,观察手通过飞机传输回来的参数观察飞机状态。飞机到达安全高度后由飞手通过遥控器收起起落架,将飞行模式切换为自动任务飞行模式,按照飞行方案设定的航线飞行。同时,飞手需通过目视无人机时刻关注无人机的动态,根据具体飞行情况随时切换手动模式调整飞机状态,观察手留意飞控软件中显示的电池状况、飞行速度、飞行高度、飞行姿态以及航线完成情况等。完成裂缝图像拍摄任务后,将无人机降落到预定的地点。
45.步骤s2:对图像进行数据检查及预处理,建立数据集;
46.s201、图像检查及预处理;
47.将无人机拍摄的图像导入本地设备中,检查无人机拍摄的图像是否存在模糊的问题,对于较模糊的图像使用模糊去噪方法处理,如果处理后的图像质量仍较低,则可排除不用。然后,使用裁剪、色彩抖动、缩放的方式进行数据扩充。
48.s202、数据集构建;
49.对无人机拍摄的图像进行人工标注,划分为有裂缝图像和无裂缝图像两类。将在互联网上公开的裂缝图像与无人机拍摄的裂缝图像合并,并全部转换为png格式的rgb图像,分别放入有裂缝和无裂缝两个文件夹中完成数据集构建。
50.步骤s3:构建适用于边缘计算的轻量级transformer网络;
51.所述轻量级神经网络的架构如图2所示,包括输入转换、transformer编码器以及预测头三部分,其中所述输入转换包括分块(patching)、混合块变换以及线性投影(linear projection &reshape),transformer编码器主要包括自注意力层和前向网络两部分,预测头包括全局平均池化层和线性层;输入转换和transformer编码器两部分之间需要插入位置编码(positional encoding);
52.所述分块为将输入图像切分为8*8的图像块;混合块变换是一个用于模型训练阶段的方法,其在训练时对输入的图像块进行变换,丢弃部分输入信息,让transformer使用
不完整的输入序列进行训练,而在推理时使用完整的输入序列进行计算。混合块变换包括两类变换,第一类变换为块丢弃变换,在切分后得到的所有块中,丢弃一半数量的不相邻的块。设p为切分后的块矩阵,块丢弃方法的主要公式如下:
53.p=p*d
54.其中p有i行j列,d是一个二值矩阵(0或1),其中0代表要丢弃的块,1代表要保留的块。二值矩阵d由以下公式计算而来:
55.d=cycleandreshape(0,1,n)
56.首先生成一个二值数组,由0和1交替循环,n=i*j代表图像块的总个数,为生成的二值数组的长度,之后将二值数组重构成和p相同大小的矩阵,最后将p矩阵与d矩阵相乘,得到的矩阵即为变换后的块矩阵。
57.第二类变换为块缩略图变换,随机选择全部图像块中的一半,将其转换为缩略图,大小从原来的8*8转换为4*4。将这些缩略图与另一半图像块两两混合,仅保留混合后的图像块。设有两个样本块patch1和patch2,使用缩略图来替换patch1的一个随机区域,但不改变标签,h和w分别表示缩略图tn(patch2)的宽度和高度,本实施例中均为4。变换公式如下:
58.patch
mix
=mpatch1 fill(tn(patch2))
59.其中patch
mix
是一个新的混合样本块,m为二元掩码,代表图像块被裁剪和保留的区域, fill函数填充并生成一个与patch2相同大小的图像块;要得到二元掩码m,需要对patch1上裁剪区域的边界框坐标b=(c
x
,cy,cw,ch)进行采样,然后移除patch1中的区域b,并以缩略图 tn(patch2)填充。边界框的坐标为均匀采样,如下公式所示:
60.c
x
~unif(0,w),cy~unif(0,h)
61.cw=w,ch=h
62.其中w和h分别为原始图像块的宽度和高度。这种混合策略使网络能够在不同的尺度上学习同一图像。在训练时,混合块变换每次使用一种变换方法对输入的图像块进行变换,使用何种变换方法可根据实际需要由一个人工设置的概率值控制。
63.混合块变换之后,通过线性投影形成transformer编码器的输入序列,每个块的嵌入维数为128。所述transformer在嵌入图像块的序列中增加一个额外可学习的[class]标记,代表整个图像的分类参数,其包含用于分类的潜在信息。
[0064]
所述transformer编码器包括多头注意力层(multi-head attention layers)(2个头)以及基于位置的前馈神经网络(ffn),所述ffn第一层维数为512,第二层维数为128,激活函数为gelu;多头注意力层和前馈网络的输出分别被送到“add and norm”层进行处理,该层包含残差结构以及层归一化。
[0065]
所述transformer编码器涉及的自注意力机制是transformer的一个重要组成部分,与传统的循环神经网络(rnn)模型相比,其可以捕捉到序列元素之间“长期”的依赖关系。自注意力与卷积操作的主要区别在于,权重是动态计算的,而非卷积那样是静态权重(对任何输入均相同)。此外,自注意力可以保持输入点的排列组合和数量不变。因此,与需要网格结构的标准卷积相比,它可以很容易地对不规则输入进行操作。事实上,自注意力提供了学习全局和局部特征的能力,并提供了自适应学习内核权重和感受野的表达能力(类似于可变卷积)。自注意力层通过聚合完整输入序列的全局信息来更新序列的每个组成部
分。令表示长度为n的输入序列(x1,x1,x1…
xn),其中d代表每个输入的嵌入维度。自注意力机制的目标是通过对每个输入的全局环境信息进行编码来捕捉所有n个输入之间的交互,这通过定义三个可学习的权重矩阵来完成,包括查询向量键向量和值向量其中dq=dk。输入序列x与这些权重矩阵相乘,得到q=xwq, k=xwk和v=xwv。自注意力层的输出由如下公式得到:
[0066][0067]
对于序列中的一个输入,自注意力层计算查询向量与键向量的点积,然后用softmax算子将其归一化,得到注意力分数。然后,每个输入的值乘以注意力分数进行加权得到输出。
[0068]
为了囊括序列中不同元素之间的多种复杂关系,transformer架构在单头注意力基础上进一步将其扩展成为多头注意力机制。多头注意力机制包括多个自注意力块,每个块都有一组可学习的权重矩阵对于一个输入x,多头注意中的h个自注意力块的输出被串联成一个单一的矩阵并投影到权重矩阵上。多头自注意力机制通过给予注意力层不同的子空间表示实现了关注多个特定位置的能力,丰富了特征子空间的多样性且无需额外计算成本。
[0069]
之后,多头注意力层的输出被送入一个两层的前馈神经网络(ffn)中,表示如下:
[0070]
f2(gelu(f1(x)))
[0071]
其中f1和f2是线性层,函数形式为w
x
b,f1的维数为512,f2的维数为128。
[0072]
所述预测头中的线性层是一个两层的感知机(mlp),输入维度为128,第一层输出维度为512,第二层用于分类,输出维度为类别个数2,代表无裂缝和有裂缝。
[0073]
步骤s4:训练网络得到识别模型;
[0074]
在大规模图像数据集imagenet-1k上对所述轻量级transformer网络进行预训练,之后使用预训练模型在步骤s2得到的桥梁混凝土裂缝数据集上进行微调。微调时的模型参数设置如下:batch_size设置为32,学习率lr设置为1e-4,使用余弦学习率衰减,最小学习率min_lr 设置为1e-6,使用adam优化器,迭代次数设置为100,混合块变换的概率为0.5。训练集和测试集的比例划分为8:2。在模型训练时,对训练集图像进行随机左右翻转、随机亮度调整、随机对比度调整以及归一化处理,测试时对测试集图像仅进行归一化处理。
[0075]
使用tensorflow深度学习框架进行轻量化transformer模型的训练,将训练集的图像输入轻量级transformer网络,在一次迭代优化过程中,随机采样32个训练样本构成一个batch,结合反向传播算法对网络进行优化并更新网络参数;训练完成后,保存在测试集上准确率最高的模型,从而获得裂缝检测模型(pb文件格式)。
[0076]
步骤s5:将识别模型部署到无人机上,使用无人机开展桥梁混凝土裂缝实时检测;
[0077]
s501、将训练完成的轻量级transformer模型部署至ai开发板;
[0078]
使用nvidia jetson tx2开发板作为transformer模型的部署平台。nvidia jetson tx2 是一个高性能、低功耗的计算模块,其核心尺寸仅为87mm
×
50mm,适合在无人机等小型尖端装置上部署深度学习技术。nvidia jetson tx2采用256核心nvidia pascal
架构gpu,搭载双核denver 2 64位cpu 四核心arm a57 mpcore,内置8gb 128位lpddr4内存, 32gb emmc 5.1存储,支持802.11ac wifi 蓝牙以及10/100/1000base-t自适应以太网。 nvidia jetson tx2预先搭载了jetpack嵌入式应用开发sdk,使得开发者可以在云端、数据中心或计算机上使用nvidia digits接口训练深度学习模型。
[0079]
首先需要利用jetpack给nvidia jetson tx2安装操作系统以及必要的深度学习库,包括 tensorrt、cudnn、cuda toolkit等,操作系统选择安装ubuntu 16.04。然后将步骤s4中由 tensorflow训练得到的轻量级transformer pb模型转换为tensorrt可用的uff模型。tensorrt 是nvidia开发的高性能深度学习推理优化器,可以为深度学习应用提供低延迟、高吞吐率的部署推理。此框架可以将tensorflow模型解析,然后与tensorrt中对应的层进行一一映射并转换到tensorrt中,然后可以在tensorrt中针对nvidia的gpu实施优化策略,并进行部署加速。调用uff包自带的convert脚本即可完成模型转换。
[0080]
之后使用tensorrt部署转换后的uff模型,先将uff模型中保存的权值以及网络结构导入,然后执行优化算法生成对应的tensorrt推断引擎,创建引擎前需指定最大的batch大小。生成推断引擎之后就可以输入待预测图片进行推断,得到预测输出。在开发版上测试推断过程以及输出结果无误后即可完成ai开发板的模型部署,其作为边缘计算节点用于后续检测。
[0081]
s502、制定计算卸载的方案;
[0082]
由于裂缝实时检测的需求,采用以降低时延为目标的卸载决策,使得总的时间延迟尽量最少,同时保证检测帧率尽量不低于24fps。所述时间延迟包括卸载数据(无人机拍摄的桥梁表面视频帧)到边缘计算节点的传输时间、在计算节点处的检测时间以及地面端设备接收来自边缘计算节点的计算结果(包括是否为裂缝的判别结果以及置信度)的传输时间三个部分。使用马尔可夫决策过程对执行任务的平均时延和设备平均功耗进行分析,根据可用的带宽、要卸载的数据大小以及执行任务的能耗决定是否执行卸载。对于桥梁混凝土裂缝检测的任务,使用基于二进制卸载的方式,将其作为整体卸载到边缘计算设备执行。
[0083]
完成卸载决策后需进行资源分配。卸载的数据首先被传送到边缘计算设备中的调度程序,调度程序检查是否存在足够的计算资源,如果存在则在调用边缘节点处理该检测任务,如果边缘计算节点提供的计算能力不足,则将裂缝检测任务委托给云端进行处理。
[0084]
s503、使用搭载ai开发板的无人机执行实时检测;
[0085]
将nvidia jetson tx2开发板作为边缘计算设备挂载到无人机上,通过地面端程序、无人机飞行控制程序、以及机载端的边缘计算程序的相互配合,实现无人机对设定地段的巡检以及ai桥梁混凝土裂缝检测。搭载边缘计算设备的无人机实时检测的架构如图3所示。按照步骤s102执行无人机实时检测任务,在无人机飞行过程中,其搭载的摄像系统会获取桥梁表面的视频流影像数据,通过步骤s502制定的计算卸载方案将要卸载的数据流传输至边缘计算设备。然后,无人机搭载的ai开发板作为边缘计算服务器,使用部署于其中的轻量级 transformer模型进行检测,并将视频帧图像是否为裂缝的识别结果以及置信度传回地面站。最后,地面端设备在接收到的视频流中实时显示检测出的类别以及置信度。
[0086]
另外,与地面服务器不需要考虑能耗问题不同,无人机搭载的边缘计算设备为地面站提供计算服务,还需要考虑无人机的能耗。在飞行过程中,无人机需根据实际能耗调整
其飞行计划,在电量即将耗尽时及时返航。
[0087]
本发明提供一种基于边缘计算和transformer的桥梁混凝土裂缝实时检测装置,如图4所示其结构图,包括:
[0088]
采集模块,采集桥梁混凝土裂缝图像;
[0089]
数据集模块,对图像进行数据检查及预处理,建立数据集;
[0090]
网络模块,构建适用于边缘计算的轻量级transformer网络;
[0091]
训练模块,训练网络得到识别模型;
[0092]
检测模块,将识别模型部署到无人机上,使用无人机开展桥梁混凝土裂缝实时检测。
[0093]
进一步地,所述采集模块包括:收集公开的裂缝图像以及使用无人机拍摄裂缝图像两部分。其中所述使用无人机拍摄裂缝图像具体为:
[0094]
为无人机制定飞行方案,根据检测部件的差异,制订不同的安全距离:桥墩和塔柱一般控制在1.5-3m左右;如果桥梁存在缆索等复杂部件,则应控制在3-5m左右,具体安全距离需结合现场情况确定。单次飞行时仅对桥梁单侧上下部分进行巡检,巡检顺序为由左到右先上后下,下部巡检时采用上置相机在无人机飞手同侧作业。无人机飞行前需要进行检查,包括天气情况、无人机功能检查。起飞前,无人机需在飞行方案确定的起飞点平稳放置。调试各系统确保开机运行正常,确认起飞区域安全,之后统一指令调度起飞。无人机起飞后分别在桥梁缆索左右两侧飞行,不进入桥梁主体上方区域,确保不影响桥上车辆的正常通行。起飞时无人机飞手通过遥控器实时控制飞机,观察手通过飞机传输回来的参数观察飞机状态。飞机到达安全高度后由飞手通过遥控器收起起落架,将飞行模式切换为自动任务飞行模式,按照飞行方案设定的航线飞行。同时,飞手需通过目视无人机时刻关注无人机的动态,根据具体飞行情况随时切换手动模式调整飞机状态,观察手留意飞控软件中显示的电池状况、飞行速度、飞行高度、飞行姿态以及航线完成情况等。完成裂缝图像拍摄任务后,将无人机降落到预定的地点。
[0095]
进一步地,所述数据集模块包括,1)图像检查及预处理,将无人机拍摄的图像导入本地设备中,检查无人机拍摄的图像是否存在模糊的问题,对于较模糊的图像使用模糊去噪方法处理,如果处理后的图像质量仍较低,则可排除不用。然后使用裁剪、色彩抖动、缩放的方式进行数据扩充。2)数据集构建,对无人机拍摄的图像进行人工标注,划分为有裂缝图像和无裂缝图像两类。将在互联网上公开的裂缝图像与无人机拍摄的裂缝图像合并,将图像全部转换为png格式的rgb图像,分别放入有裂缝和无裂缝两个文件夹中完成数据集构建。
[0096]
进一步地,所述训练模块包括轻量级transformer网络及其训练和测试,其中轻量级 transformer包括输入转换、transformer编码器以及预测头三部分,其中所述输入转换包括分块、混合块变换以及线性投影,transformer编码器主要包括多头注意力层和前馈网络两部分,预测头包括全局平均池化层和线性层;输入转换和transformer编码器两部分之间需要插入位置编码;所述混合块变换方法在训练时丢弃transformer的部分输入序列,迫使transformer 使用不完整的序列来进行训练,在测试时不使用此方法,使用完整的输入序列进行计算。
[0097]
进一步地,所述检测模块包括部署单元,用于将训练完成的轻量级transformer模
型部署至ai开发板;卸载单元,用于进行计算卸载;计算单元,用于将卸载的桥梁混凝土裂缝实时检测任务传输至边缘计算设备进行计算;结果单元,用于将计算结果回传至地面端设备。使用nvidia jetson tx2开发板作为transformer模型的部署平台,利用jetpack给nvidiajetson tx2安装操作系统以及必要的深度学习库。将由tensorflow训练得到的轻量级 transformer pb模型转换为tensorrt可用的uff模型,调用uff包自带的convert脚本完成模型转换。使用tensorrt部署转换后的uff模型,生成对应的tensorrt推断引擎,之后就可以对输入的预测图片进行推断。将nvidia jetson tx2开发板作为边缘计算设备挂载到无人机上,在无人机飞行过程中,其搭载的摄像系统会获取桥梁表面的视频流影像数据,通过制定的计算卸载方案将卸载的数据流传输至边缘计算设备。然后,无人机搭载的ai开发板作为边缘计算服务器,使用部署其中的轻量级transformer模型进行检测,并将视频帧图像是否为裂缝的识别结果以及置信度传回地面站。最后,地面端设备在接收到的视频流中实时显示检测出的类别以及置信度。通过地面端程序、无人机飞行控制程序、以及机载端的边缘计算程序的相互配合,实现无人机对设定地段的巡检以及ai桥梁混凝土裂缝检测。
[0098]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献