阳茜汕,卓德兵
(吉首大学土木工程与建筑学院,湖南 张家界 427000)
钢桁架结构因其受力体系简单、结构轻盈、跨越能力强、综合用钢量省、施工方便等优点,近年来在工程建设领域中应用日益普遍。在钢桁架结构杆件各类连接方式中,螺栓连接是最常见的方式之一。结构在使用过程中,由于受到温度、湿度、荷载等一系列外界因素的影响,杆件连接螺栓不可以避免会发生松动甚至脱落。关键节点部位上的螺栓发生了松脱且尚未及时发现,将极有可能造成很大程度的安全损失甚至带来灾难性的后果。由此可见,对钢桁架结构的螺栓病害进行及时检测,不仅有利于保证结构的承载力,而且对结构的安全具有重大影响。传统人工检测螺栓的方法主要是通过人工攀爬和肉眼直接观察的常规检查方式[1-2]。这种螺栓检查试验方法安全风险高、工作量比较大、效率比较低下,工人们常常会因螺栓数量庞大产生动作疲劳及视觉疲劳,导致少部分螺栓紧固件出现错检、漏检。基于此,开发一种新型高效的螺栓脱落连接损伤检测技术迫在眉睫。
无人机系统通常定义的是一类具有可连续、重复使用功能的,机上装备无人类飞行员、能够完成自我控制驱动系统的小型航空器,其飞机可通过无人操作实施遥控自主飞行,或者本身具备有一定水平的高度自主巡航控制能力,以适应执行低空搜索、巡逻、交通安全监视、航拍、速递等重要军事或民用任务。无人机设备的主要系统由无人机、数据传输系统、任务荷载系统、地面站系统等构成。数据传输系统主要用于系统控制信号、检查数据的传输。地面站系统则用于实时监控无人机飞行、检查拍摄情况,从而及时纠正飞行轨迹和发现设备明显病害。利用无人机进行结构健康检测,突破传统检测方法自身的局限性,有效克服传统方法效率低下、难度大、危险系数高等弊端,不仅节约人力物力,而且极大降低事故发生的概率,减少人员伤亡,使得基于无人机的结构健康监测方法拥有广阔的应用前景[3-5]。但是在实际应用中,由于无人机在巡检过程中所拍摄的图像、视频数量庞大,人工从这些海量数据中寻找有价值的信息并正确定位损伤仍然是一项艰巨的任务,近年来,随着以深度学习为表征的人工智能目标检测技术蓬勃发展,使得螺栓脱落智能检测成为可能。目前使用比较普遍的深度学习目标检测算法是以YOLO 为典型的基于回归的一阶段目标检测算法。由于YOLO 只使用单个网络,因此可以直接在检测性能上进行端到端优化,使得基础YOLO 模型相较于Faster R-CNN 及其改进方法在实例分割、目标检测、人体关键点检测等任务中能够以更快的速度进行处理图像。目前,YOLO 目标检测方法已经广泛应用于行人检测、车辆识别、安全帽佩戴、电力巡检、航拍图像定位等不同环境中[6-8]。
本文以钢桁架结构螺栓脱落目标检测为背景,提出一种基于无人机与深度卷积神经网络YOLOv5 目标检测算法,该方法充分发挥了无人机拍摄技术在结构健康监测方面的优势和YOLOv5 先进目标检测算法优异的性能,以达到对螺栓脱落的智能检测。
基于无人机图像与YOLOv5 的钢桁架螺栓缺失目标检测模型的结构图如图1 所示。该方法可以分成模型训练和模型测试两个阶段,模型训练阶段主要是通过使用无人机设备(或数码相机)获取足够数量的螺栓连接完好及缺失工况图像数据集,之后对图像数据加以数据标注,进而通过设置模型参数,使用YOLOv5 完成训练得到螺栓缺失目标检测模型。而模型测试阶段则是通过已经训练好的目标检测模型,对无人机拍摄所获取的图像或视频进行测试得到最终测试结果。
图1 基于无人机图像与YOLOv5 的钢桁架螺栓缺失目标检测模型结构图
借助深度学习目标检测算法YOLO 检测图像需要准备一定数量的数据集。数据集的数量及质量直接关系到最终识别结果的好坏。本文螺栓脱落识别图像主要采集自一室外钢桁架模型[9],该六边形钢桁架实验模型共计4 层,6 米高,一共24 个节点,每根杆一端通过两个高强螺栓与节点板相连。
螺栓图像数据通过大疆无人机Mini3pro 进行采集,该型号无人机的最大飞行高度为500m,可倾斜角度为25°—40°,精确悬停范围为0.5—10m。无人机操作过程中,由于不同区域采光不同,需要随时调整无人机倾斜角度、镜头焦距、快门速度等相关技术参数,防止采集的照片过曝。数据采集时首先采集各节点螺栓未脱落照片,然后利用人为松动取下不同部位、不同数量的螺栓,以构造不同的螺栓脱落工况,为了使得后期训练总体保持样本基本平衡,脱落工况应当尽可能地多。最后将采集得到的图像按照螺栓未脱落和脱落进行分类,最终得到156 张未脱落、144 张脱落共计300 张图像用于训练。
采集得到螺栓图像数据以后还需要对这些图像加以标注,本文主要通过使用数据标注工具Labelimg 对被选定的数据集进行人工标注[10],进而作为目标检测模型训练和检测的数据集。使用Labelimg 软件进行图像标注时,仅对图片中所出现的脱落螺栓进行逐个圈框和贴标签,标签的名称记为“damage”,未脱落螺栓不进行标注。标注完成后,自动生成的xml 文件里面已经保存了每张图片的所有数据,包括标注的螺栓的宽度、高度等。数据集标注完成后,便进行数据集的划分,因此本文将数据集划分为训练集和验证集两类,采取随机划分的方式,将训练集和验证集划分比例设置为8:2。
模型训练测试服务器采用Windows 10 64 位操作系统,处理器采用Intel(R) Core(TM)i9-10980XE CPU,显卡为NVIDIA GeForce RTX 3090*2 48G GPU,编程环境为Python3.7。
在利用YOLOv5 目标检测算法进行模型训练时,YOLOv5 模型深度控制参数depth_multiple 设置为0.33,模型宽度控制参数width_multiple 设置为0.6,最终得到的模型卷积神经网络深度共计270 层,模型宽度值为32,总参数量为7030417。另外在训练环境中,还可以对模型的其它参数进行初始化设计,选择优化函数为Adam 函数,初始学习率参数为0.001,动量参数为0.937,权值衰减系数为0.0005,1 个batch 包含的样本数目为32,训练轮数为500。
模型评估结果中主要使用的有以下四个比较常见的模型评估参数:损失值(loss)、精度(Precision)、召回率(Recall)以及加权平均精度mAP(mean Average Precision)进行网络模型评估统计。从图2 模型训练结果评价指标图中可以清楚看到:随着训练的次数持续地在增加,训练集和验证集的损失值均在不断下降,而精度和平均精度在不断上升,最后逐渐趋于稳定并接近于一条水平线。当训练次数达到500次时,损失值接近0.01,精度指标maP@0.5 接近1.0,maP@0.5:0.95 接近0.6,由此可见模型整体性能表现优异,泛化能力好。
图2 模型训练结果各评价指标图
模型测试阶段主要是通过YOLOv5 已经训练好的目标检测模型对无人机所收集到的各种螺栓连接图像进行检测,以验证其有效性和准确率。由图3 检测效果图不难看出,图像中所脱落的螺栓全部都可以被识别出来,而且通过比较每个框选区域的置信度,可以看到一共出现了三种置信度,大多数高达90%,最高有100%,即完全被识别出,最低的也达到了80%,其中,置信度低的区域主要是由于被检测目标相对整张图像较小或者目标位于图像较暗位置处,导致识别准确率相对较低。但整体而言,该方法建立的检测模型在目标完整、清晰的情况下准确率更好,诊断效果也更佳。
图3 检测效果图
本文提出了一种基于无人机与深度学习目标检测算法YOLOv5 的钢桁架结构螺栓脱落智能检测的技术,该方法能够实现对螺栓脱落进行精确识别,具有较高的工程应用价值。主要得到以下结论:
(1)将无人机技术与深度学习目标检测算法YOLOv5 模型进行结合,在速度和效率上有效地克服了传统螺栓脱落检测方法的不足。
(2)深度卷积神经网络模型训练及检测结果显示,该算法能达到高效准确地识别钢桁架结构中的螺栓是否脱落的目的。
(3)本文对于未来实现螺栓的自动化缺陷测试有着很重要的学术意义与巨大的开发空间。