没有合适的资源?快使用搜索试试~ 我知道了~
基础设施薄裂纹检测的迁移学习框架和数据集
软件X 16(2021)100893原始软件出版物KrakN:用于基础设施薄裂纹检测的迁移学习框架和数据集Mateusz Dodarskia,b,Bazarova,b,Bartosz Wójcika,b,Jaroszhaw Adam Miszczakba西里西亚理工大学土木工程学院,Akademicka 5,44-100 Gliwice,波兰b波兰科学院理论与应用信息学研究所,地址:Baghtycka 5,44-100 Gliwice,Polandar t i cl e i nf o文章历史记录:收到2021年收到修订版,2021年10月31日接受,2021年保留字:基础设施维护结构健康监测深度学习迁移学习a b st ra ct监测基础设施的技术状况是基础设施维护的一个关键因素。尽管有许多用于此目的的深度学习模型,但由于新数据集的劳动密集型收集和模型训练期间对计算能力的高需求,它们的应用受到严重限制。为了克服这些限制因素,我们提出了一个KrakN框架。它可以在数字图像上实现独特的基础设施缺陷检测器的端到端开发,准确率超过90%。该框架还支持半自动创建新数据集,并具有适度的计算能力要求。它可以用于在基础设施管理过程中立即实施深度学习,并且由于其基于迁移学习的架构,在跨不同数据集使用时允许低度量损失。我们还证明,由于其可扩展性和模块化结构,所提出的框架是很容易修改的,并可以在现实的情况下使用。版权所有©2021作者。由爱思唯尔公司出版这是CC BY-NC-ND下的开放获取文章许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。代码元数据当前代码版本v1.0用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-21-00162代码海洋计算胶囊法律代码许可证GNU GPL v3使用git的代码版本控制系统使用Python、Bash、Conda的软件代码语言、工具和服务编译要求,操作环境依赖Linux/Windows,TensorFlow,Scikit-learn,NumPy,OpenCV,PyGame,H5 py,Imutils链接到开发人员文档/手册https://github.com/MatZar01/KrakN问题支持电子邮件mateusz. polsl.pl1. 动机和意义桥梁基础设施最重要的特征是其运营安全性和在其生命周期内对其进行维护的能力。这些功能直接影响基础设施用户的安全。然而,随着世界上桥梁结构平均年龄不断增长的总趋势,几乎一半的在用桥梁超过50年[1,2],使用现有的劳动密集型方法确保基础设施的安全变得越来越困难。目前的方法通讯作者:波兰科学院理论与应用信息学研究所,Baghtycka 5,44-100 Gliwice,Poland。电子邮件地址:mateusz. polsl.pl(Mateusz playarski).https://doi.org/10.1016/j.softx.2021.100893用于确保其安全的评估系统仍然主要基于过时的评估系统,即由桥梁检查员任意分配给结构的分数目前,桥梁检查员的典型工作方式是重复性的,劳动密集型的[3],并且容易出错。超过一半的最终桥梁评估很可能是不正确的,只有2%到40%的小缺陷,如裂缝,在人工检查过程中被记录下来[4,5]。应该强调的是,这通常是基础设施管理单位与结构直接接触的唯一级别,在此阶段所犯的错误会转移到基础设施维护的整个过程中。一些最有前途的方法来缓解这个问题,包括基于卷积神经网络的2352-7110/©2021作者。由爱思唯尔公司出版。这是一篇开放获取的文章,使用CC BY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxMateusz Dyarski、Bartosz Wójcik和Jarossiaw Adam Miszczak软件X 16(2021)1008932×图1.一、 KrakN相关数据集中描述的缺陷示例。(CNN)[6利用机器学习的其他方法包括使用全卷积网络进行语义图像分割[9-然而,它们的有效性伴随着高计算能力需求和使用大量数据集进行训练的需要,从而降低了它们的实际适应性。由于这些原因,它们尚未在当地桥梁检查员一级的基础设施维护单位,甚至在资金充足的政府一级广泛实施。相比之下,本文提供的KrakN [15]框架及其数据集[16]旨在直接用于本地基础设施维护,并为桥梁检查员提供可靠的支持,而无需广泛的计算能力,费力的数据集收集或机器学习领域的专业知识。2. 软件描述KrakN的目标是使用数字图像上的深度学习方法来帮助检测基础设施表面缺陷,例如薄(宽度小于0.2 mm)裂纹。框架中的工作流程分为四个连续的部分:脚本辅助数据集构建,提取收集数据集的特征,分类器训练和模型部署-所有这些都在后续部分中描述。此外,在第2.5节中,通过应用从多级图像分类器已知的解决方案来突出其多功能性。KrakN存储库提供了直接在Google Colab云计算服务上使用的方法,如果本地没有足够的计算能力。它也可以在其相应的Zenodo软件目录中以Windows预编译版本提供[17]。2.1. 脚本辅助数据集构建虽然KrakN软件自带数据集,其中包含16144张图像,平均分为背景和裂缝类别,但它的通用性足以根据桥梁检查员的特定需求在任何给定的对象图像集上进行训练。 在所提供的数据集中,混凝土表面的缺陷不超过0.2 mm的宽度,如图所示。1.一、为了创建自己的数据集,KrakN存储库中提供了包含dataset_builder.py脚本的datset_builder目录。 它允许将任何数量的任何大小的包含所寻找的对象的图像划分为标记作物的子集, 这 些 子 集 可 以 稍 后 用 于 训 练 新 的对 象 检 测 器 。dataset_builer.py的主用户界面如图所示。 二、沿着用户设置的路径选择数据集的数据点,在该路径上将为每个片段裁剪五个帧然后为每个补丁分配正确的标签,并将作物保存在其标记的目录中。输出裁剪的默认大小为224 224 px,但此参数可以在算法的初始设置期间更改。如果捕获的缺陷尺寸较小,也可以更改裁剪的缩放因子-将使用双三次插值调整裁剪的大小。2.2. 特征提取为了降低获得准确的深度学习分类器通常需要的大量计算能力需求,KrakN软件利用了预训练的CNN模型和迁移学习(TL)方法。TL不仅通过在整个CNN架构上不使用反向传播算法来减少总体训练时间,而且根据研究[12],它还限制了分类器获得所需指标所需的训练样本数量。它还允许使用单个CNN作为骨干特征提取器,用于针对具有相同工作流程的不同对象检测而训练的多个分类器。迁移学习算法的一般原理如图3所示。可以看出,在训练和分类中,通过CNN模型的数据流都是单向的。CNN仅用作特征提取器,将数据提供给分类器。为了从准备好的数据集中提取特征,必须将具有提取的作物的第一个标记目录放置在net-work_trainer/database目录中。然后extract_features.py脚本从数据集中加载图像以及它们的标签和预训练的CNN模型。接下来,它继续随机打乱数据集中图像的顺序,将它们分成批次,并使用CNN模型提取它们的特征。在最后一步中,它将特征及其对应的标签保存在单个.hdf5数据集文件中,以供进一步处理。默认情况下,KrakN使用最初在ImageNet [19]数据库上训练的VGG16 CNN模型[ 18 ]。 在软件的测试期间,发现它在其推断时间和关于简单以及相对更复杂的基础设施缺陷的可获得 度量 之间 提供 了良 好 的平 衡。 然而,它 可以 针 对 任 何keras.applications 预 训 练 模 型 进 行 更 改 , 如 ResNet 或MobileNet。2.3. 分类器训练模型部署前的最后一步是分类器训练。对于最终的图像分类,KrakN使用单层Arti神经网络,其神经元数量对应于类的总数,密集地连接到特征张量中的每个元素。要 训 练 分 类 器 , 必 须 使 用 network_trainer 目 录 中 的train_model.py。在脚本执行期间,加载从数据集提取的特征,并且使用交叉验证的网格搜索和广泛的超参数集来微调最终的逻辑回归分类器与标准CNN训练相比即使不使用高性能计算机器,KrakN的分类器训练时间也大大减少KrakN分类器和使用不同设备的常规CNN模型的训练时间之间的比较在表1中呈现。可以看出,尽管使用了最不强大的处理单元(双核Google Colab CPU),KrakN提供了最短的分类器训练时间,同时使用了类似的整体CNN架构。Mateusz Dyarski、Bartosz Wójcik和Jarossiaw Adam Miszczak软件X 16(2021)1008933图二. dataset_builder.py的接口。图三. 迁移学习算法表1细裂纹分类器在不同设备上训练时间的比较KrakN [2× 2.2 GHz CPU] VGG16 [GTX 1060 GPU] VGG16 [6× 3.2 GHz CPU]25分钟至10小时至444小时(19天)2.4. 模型部署在 最 后 一 步 中 , 在 训 练 分 类 器 之 后 , 可 以 使 用sliding_window.py脚本部署模型并用于检测基础设施缺陷。KrakN使用滑动窗口方法[20]作为保持输入图像质量的有效方法,以便使用图像分类器作为对象检测器。该方法的原理如图所示。四、KrakN提供了两种表示分类的方法- 简单的输出图像,带有用边界框标记的缺陷和用于进一步管理每个标签的缺陷的二进制掩码。这两种类型的输出的示例将在第3节中给出。为了返回分类,sliding_widow.py使用了额外的参数它描述了分类器的置信度。默认情况下,它设置为0.95但是如果发现缺陷对于结构的安全是至关重要的并且更多的假阳性指示是可接受的,则可以降低。sliding_window.py脚本可以在任何大小的图像上执行,建议与Google Colab或其他具有高效GPU单元的环境一起使用,以获得最佳分类性能。2.5. 多级分类器模块为了展示KrakN软件的多功能性,其核心组件用于重现[21]中提出的多分类器方法。多阶段分类允许更精确地划分缺陷情况和使用较小的数据集-其原理如图所示。 五、只需对初始代码进行微小更改,即可使用KrakN进行多级分类。它在存储库的net- work_trainer_Staged目录 通过使用这种软件扩展,可以使用具有单个CNN特征提取器的多个分类器,以便降低对CNN磁盘空间的需求并增加对缺陷进行明确分类的能力。 它还展示了KrakN软件的可扩展性及其作为构建更复杂项目的基础的能力。3. 说明性和指标示例KrakN软件被部署和测试的情况下,薄裂纹检测与包括数据集。 其训练和模型部署的结果如图所示。六、示例的a)部分提供了KrakN在120MP正交测绘仪上的用例,其中它能够检测到几乎所有的缺陷。值得注意的Mateusz Dyarski、Bartosz Wójcik和Jarossiaw Adam Miszczak软件X 16(2021)1008934见图4。 用滑动窗口方法检测目标。图五. 单阶段和多阶段分类示例。这是不可能的处理这样一个大的图像与常见的对象检测器像YOLO。b)部分展示了一个近距离的正地形图。请注意,右上角有一个假阳性检测,可以通过微调置信度阈值参数来避免。最后,部分c)包括对不属于数据集的表面类型的光线不好且模糊的图像进行检测的示例。值得注意的是,尽管这张照片是用廉价的智能手机摄像头拍摄的,但KrakN仍然设法检测到了缺陷。4. 影响KrakN软件包是第一个公开可用的软件集,允许在基础设施管理中进行端到端深度学习模型开发和部署。由于它是作为开源代码分发的,因此可以很容易地针对基础设施管理领域的特定应用程序进行修改和定制。因此,KrakN有助于提高缺陷检测率,并统一由不同检查员检查的设施的评级。这允许开发更准确的劣化模型以及基于视觉的SHM系统,并优化基础设施管理过程。此外,KrakN可用于进一步探索传输学习模型的功能,以便通过结构修剪优化边缘计算和物联网设备。 事实上,它已经被用于这一目的,同时开发了挑剔的迁移学习[22]方法。最后,KrakN目前的形式已经在新加坡海港前作为海洋结构的检测工具进行测试[23]。5. 与其他方法为了进一步强调KrakN的实用性,将其准确性和召回率与CrackNet [24]和Deep-Crack [25]进行了比较-不仅对算法进行了比较,而且还以CrackNet数据集为例说明了算法的通用性表2跨数据集性能比较。KrakN数据集[A/R]CrackNet数据集[A/R]度量损失KrakN0.98/0.970.81/0.810.17/0.16CrackNet0.48/0.140.98/0.980.50/0.84DeepCrack0.26/0.400.97/0.790.71/0.39A在不同的数据集上。比较结果见表2。如表2所示,尽管在评估未见过的数据集时,所有算法的性能总体下降,但KrakN软件的性能下降最小。这表明KrakN具有最好的泛化知识的能力,但KrakN附带的数据集并不仅仅专注于在单个任务上获得最佳指标。此外,当KrakN在CrackNet数据集上重新训练时,它仍然设法获得较小的度量损失(0.22/0.08)。6. 结论KrakN是一个端到端的软件包,可以基于预先训练的CNN轻松创建和训练对象检测器它具有高度可扩展性,可用于任何级别的基础架构管理,而无需考虑可用的计算能力。与其他类似算法相比,随着其发展和实际应用,人们发现它不仅允许现场工程师更容易地实现,而且在用于看不见的数据时提供更低的度量损失。此外,KrakN提供的数据集对特定的解决方案是无偏见的,并且通过包括用于收集新数据的工具,KrakN可以作为一个通用的框架,不仅用于基础设施检查任务。KrakN已成功用于基础设施缺陷检测任务,并作为输入模块,用于进一步探索具有修剪的迁移学习功能它还Mateusz Dyarski、Bartosz Wójcik和Jarossiaw Adam Miszczak软件X 16(2021)1008935图六、moving_window.py脚本的对象检测输出示例。被证明是强大的,易于理解,因为它被认为是一个现场检查工具。它还在GNU GPL v3许可下公开发布其初始数据集和使用示例。因此,终端用户可以自由修改。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作确认Mackay 和 JM 要 感 谢 RyszardWiniarczyk 和 Ma-teuszOstaszewski进行了有趣的讨论。作者感谢伊莎贝拉·米什扎克对手稿的资金这项研究中提出的工作是由欧洲联盟通过欧洲社会基金作为西里西亚技术大学的一部分,作为现代教育中心的基础上研究和创新项目,赠款协议的数量支持:POWR.03.05.00 00.z098/17-00(BW和MPEGLE)。引用[1] 2018 年 日 本 的 道 路 2018 , 国 土 交 通 省 道 路 局 , URL :http://www.mlit.go.jp/road/road_e/pdf/ROAD2018web.pdf , 检 索 日 期 :2020-04-05.[2]美 国 运 输 部 ASCE 分 析 。 2018 年 , 联 邦 公 路 管 理 局 , URL :https://www.fhwa.dot.gov/bridge/nbi/ascii2018.cfm , 检 索 日 期 : 2020-01-01。[3]Washer G,Hammed M,Brown H,Connor R,Jensen P,Fogg J等,提高元素级桥梁检查数据质量的指南。2019年,http://dx.doi.org/10.17226/25397。[4]张文辉,张文辉.常规公路桥梁检查条件文件的准确性和可靠性。桥梁工程杂志2004;9 ( 4 ) : 403-13. http : //dx.doi.org/10.1061/ ( ASCE ) 1084-0702(2004)9:4(403)。[5]张文良,王文良,王文良,张文良.公路桥梁的目视检查。J NondestructionEval 2002;21(3):67-83. 网址://dx.doi.org/10.1023/A:1022508121821网站。[6] Atha DJ,Jahanshahi MR.基于卷积神经网络的腐蚀检测深度学习方法的评估结构健康监测2018;17(5):1110http://dx.doi.org/10.1177/1475921717737051网站。[7] 哦BK,Glisic B,Kim Y,Park HS。基于卷积神经2020年结构健康监测。http://dx.doi.org/10.1177/1475921719897571网站。[8]何宏新,郑建春,廖良春,陈永军。基于卷积神经网络和递归图的梁桥损伤识别。2020年结构健康监测。http://dx.doi.org/10.1177/1475921720916928网站。[9] Mei Q,Gül M,Azim MR.密集连接的深度神经网络,考虑像素的连接性 , 用 于 自 动 裂 缝 检 测 。 Autom Constr 2020;110 ( 2019 年 6 月 ) :103018。http://dx.doi.org/10.1016/j.autcon的网站。2019.103018。[10]Dung CV,Anh LD.使用深度全卷积神经网络的自主混凝土裂缝检测。AutomConstr2019;99:52-8.http://dx.doi的网站。org/10.1016/j.autcon.2018.11.028。[11]杨X,李H,余Y,罗X,黄T,杨X. 使用全卷积网络的自动像素级裂缝检测和测量。计算机辅助土木结构工程2018;33(12):1090-109. http://dx.doi的网站。org/10.1111/mice.12412。[12] 李芳芳,庄杰,杨秀. CS231N:用于视觉识别的卷积神经网络。2018年,斯坦福视觉实验室,网址:http://cs231n.stanford。 edu/syllabus.html,检索日期:2019-12-01。Mateusz Dyarski、Bartosz Wójcik和Jarossiaw Adam Miszczak软件X 16(2021)1008936[13]倪复廷,张杰,陈志清.利用卷积特征融合的图像像素级裂缝描绘。结构控制健康监测2019;26(1):1-18。http://dx.doi.org/10.1002/stc.2286网站。[14]张A,王开春,费勇,刘勇,陈春,杨刚,李建强,等。基于递归神经网络的三维沥青路面像素级裂缝自动检测。计算机辅助土木工程2019;34(3):213-29. http://dx.doi.org/10.1111/mice.12409网站。[15]Kazarski M,Wójcik B,Miszczak J. KrakN:使用迁移学习进行基础设施缺陷检测2020年,http://dx.doi.org/10.5281/zenodo.3764697,URL:https://github.com/MatZar01/KrakN,Retrieved:2021-08-24.[16][1] Kazarski M , Wójcik B , Miszczak J. KrakN -相 关 数 据 集 。2021 年 ,http://dx.doi.org/10.5281/zenodo.5266356网站。[17]Dodarski M,Wójcik B,Miszczak JA. KrakN-预编译的Windows版本。2021年,http://dx.doi.org/10.5281/zenodo.3759845。[18]Simonyan K,Zisserman A.用于大规模图像识别的极深卷积网络。2015,arXiv:1409.1556.[19]ImageNet 大 规 模 视 觉 识 别 挑 战 。2019 , Stanford Vi-sion Lab , URL :http://www.image-net.org/challenges/LSVRC/,Retrieved:2019-12-01.[20]Cha Y-J,Choi W,Büyüköztürk O.使用卷积神经网络进行基于深度学习的裂纹 损 伤 检 测 。 计 算 机 辅 助 土 木 结 构 工 程 2017;32 ( 5 ) : 361-78.http://dx.doi.org/10.1111/mice.12263网站。[21]Hüthwohl P,Lu R,Brilakis I.钢筋混凝土桥梁缺陷的多分类器。AutomConstr2019;105(3月):102824。http://dx.doi.org/10.1016/j.autcon.2019.04.019.[22]Dodyarski M,Wójcik B,Kziaek K,Miszczak J. Finicky迁移学习-一种修剪卷积神经网络用于边缘设备裂缝分类的方法。计算机辅助土木建筑工程2021;出版中。网址://dx.doi.org/10.1111/mice.12755网站。[23]在新加坡检查海洋结构物。 2021年,私人通讯。[24]Zhang A,Wang KC,Fei Y,Liu Y,Tao S,Chen C,et al. Deep learning-基于改进的CrackNet在3D沥青表面上进行全自动路面裂缝检测J Comput CivEng 2018;32(5):1网址://dx.doi.org/10.1061/(ASCE)CP.1943-5487.0000775。[25]刘毅,姚军,陆新,谢荣,李玲。 DeepCrack:用于裂缝分割的深度分层特征学习架构。神经计算2019;338:139-53.http://dx.doi.org/10.1016/j.neucom.2019.01.036网站。[26] 乌伊奇克桥梁检测的最新方法评估:案例研究。Arch Civ Eng 2020;66(iss.4):s. 343-362. 网址://dx.doi.org/10.24425/ace.2020.135225网站。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功