01前景概要
現(xiàn)有的基于深度學(xué)習(xí)的方法在識別速度和模型復(fù)雜性方面面臨一些挑戰(zhàn)。為了保證建筑外墻缺陷檢測的準(zhǔn)確性和速度,我們研究了了一種改進的YOLOv7方法BFD-YOLO。首先,將YOLOv7中原有的ELAN模塊替換為輕量級的MobileOne模塊,以減少參數(shù)數(shù)量并提高推理速度。其次,在模型中加入了坐標(biāo)注意力模塊,增強了特征提取能力。接下來,使用SCYLLA-IoU來加快收斂速度并增加模型的召回率。最后,我們擴展了開放數(shù)據(jù)集,構(gòu)建了一個包括三個典型缺陷的建筑立面損傷數(shù)據(jù)集。BFD-YOLO基于該數(shù)據(jù)集展示了卓越的準(zhǔn)確性和效率。與YOLOv7相比,BFD-YOLO的精度和mAP@.5分別提高了2.2%和2.9%,同時保持了相當(dāng)?shù)男。實驗結(jié)果表明,該方法在保證實時性的前提下,獲得了較高的檢測精度。
02現(xiàn)狀和項目動機
外墻缺陷的存在是建筑運營階段的一個緊迫問題,通常歸因于機械和環(huán)境因素。典型的缺陷表現(xiàn)為混凝土剝落、裝飾剝落、構(gòu)件裂縫、大規(guī)模變形、瓷磚損傷、潮濕損壞等。這些缺陷會影響外觀,降低建筑物的使用壽命。更嚴重的是,外墻墜物可能會造成安全事故和無法彌補的損失。結(jié)構(gòu)損傷檢測是結(jié)構(gòu)健康監(jiān)測的一個組成部分,對確保建筑物的安全運行至關(guān)重要。作為結(jié)構(gòu)損傷檢測的一個組成部分,建筑外墻缺陷的檢測可以使政府和管理層準(zhǔn)確了解建筑外墻的綜合狀況,從而有助于制定合理的維修方案。這是降低建筑維護成本、延長建筑使用壽命和減輕外墻損壞影響的有效方法。許多國家和地區(qū)正在制定定期標(biāo)準(zhǔn)化目視檢查的政策。建筑外墻缺陷的檢測已成為建筑維護的關(guān)鍵組成部分。
目視檢查是評估建筑外觀狀況的一種簡單可靠的方法。傳統(tǒng)的建筑外觀檢查通常需要專業(yè)人員帶著專用工具到達檢查地點,在那里使用視覺觀察、錘擊和其他技術(shù)進行評估。這些方法依賴于檢查員的專業(yè)知識和經(jīng)驗,這是主觀的、危險的和低效的。由于建筑數(shù)量的增加和規(guī)模的擴大,人工目視檢查方法已不足以滿足大規(guī)模檢查的要求。隨著技術(shù)的進步,許多新方法(如激光掃描、3D熱成像和SLAM)正被用于通過無人機和機器人平臺進行外墻損傷檢測。與傳統(tǒng)技術(shù)相比,這些新方法更方便、更安全,但耗時且成本高。因此,這些方法在滿足大規(guī)模檢查的需求方面也面臨挑戰(zhàn)。因此,有必要開發(fā)一種更精確、更有效的表面缺陷檢測方法,以提高檢測效率并降低計算成本。
03新想法及實踐細節(jié)
建筑外墻缺陷有多種類型,不同的檢測方法都適用。常見的類型包括裂縫、剝落和墻體空鼓。對于裂紋,有更多的研究使用語義分割進行檢測。對于墻體空鼓,敲擊法和紅外熱像法應(yīng)用更為廣泛。我們經(jīng)過調(diào)研和研究,選擇了適合目標(biāo)檢測方法且易于構(gòu)建數(shù)據(jù)集的缺陷類型。數(shù)據(jù)集中的圖像主要來自通過手機、攝像機和無人機拍攝的建筑立面圖像。此外,一些來自互聯(lián)網(wǎng)和公共數(shù)據(jù)集的圖像也被用于擴展。所有圖像的寬度在1000到3000像素之間,高度在2000到5000像素之間。該數(shù)據(jù)集由三個建筑外墻缺陷組成:分層、剝落和瓷磚損失?偣彩占1907張原始圖像,其中包含約2%的背景圖像。背景圖像是添加到數(shù)據(jù)集中以減少錯誤位置的沒有缺陷的圖像。訓(xùn)練集、驗證集和測試集按照7:2:1的比例進行劃分。下圖顯示了數(shù)據(jù)集中的缺陷示例。
從左到右分別是分層、剝落和瓷磚損耗。
Data Augmentation
在神經(jīng)網(wǎng)絡(luò)的模型訓(xùn)練中經(jīng)常需要大量的數(shù)據(jù)。然而,獲取建筑外墻缺陷的圖像相對困難,并且在收集的數(shù)據(jù)中存在類別不平衡的問題。為了減輕這個問題的影響,我們將數(shù)據(jù)擴充技術(shù)應(yīng)用于訓(xùn)練數(shù)據(jù)。數(shù)據(jù)擴充是對原始數(shù)據(jù)執(zhí)行各種轉(zhuǎn)換的常用技術(shù)。它被廣泛應(yīng)用于深度學(xué)習(xí)領(lǐng)域,以系統(tǒng)地生成更多的訓(xùn)練數(shù)據(jù)。數(shù)據(jù)擴充可以幫助模型學(xué)習(xí)更多的數(shù)據(jù)變化,防止其過度依賴特定的訓(xùn)練樣本。監(jiān)督數(shù)據(jù)增強技術(shù)包括幾何變換(例如,翻轉(zhuǎn)、旋轉(zhuǎn)、縮放、裁剪等)和像素變換(例如噪聲、模糊、亮度調(diào)整、飽和度調(diào)整等)。
新設(shè)計框架
它可以分為主干和頭。主干網(wǎng)絡(luò)的功能是提取特征。YOLOv7的原始主干由幾個CBS、MP和ELAN模塊組成。CBS是一個由卷積核、批處理規(guī)范化和SiLU激活函數(shù)組成的模塊。議員由MaxPooling和CBS組成。改進后的主干網(wǎng)用MobileOne模塊取代了ELAN模塊以提高速度,并在每個MobileOne模件后面添加了一個協(xié)調(diào)注意力模塊。所提出的改進方法能夠關(guān)注輸入圖像中的顯著特征并抑制外來信息,從而有效地提高檢測精度。
網(wǎng)絡(luò)的頭是一個PaFPN結(jié)構(gòu),它由一個SPPPCC、幾個ELAN2、CatConv和三個RepVGG塊組成。ELAN的設(shè)計采用了梯度路徑設(shè)計策略。與數(shù)據(jù)路徑設(shè)計策略相比,梯度路徑設(shè)計策略側(cè)重于分析梯度的來源和組成,以設(shè)計有效利用網(wǎng)絡(luò)參數(shù)的網(wǎng)絡(luò)架構(gòu)。該策略的實現(xiàn)可以使網(wǎng)絡(luò)架構(gòu)更加輕量級。ELAN和ELAN2之間的區(qū)別在于它們的通道數(shù)量不同。將結(jié)構(gòu)重新參數(shù)化方法應(yīng)用于RepVGG區(qū)塊。該方法采用多分支訓(xùn)練結(jié)構(gòu)和單分支推理結(jié)構(gòu)來提高訓(xùn)練性能和推理速度。在輸出三個特征圖后,頭通過三個RepConv模塊生成三個不同大小的預(yù)測結(jié)果。
04項目落地效果
建立了一個實驗平臺來訓(xùn)練模型并進行測試。實驗平臺的硬件和軟件配置如下表所示。
環(huán)境 名稱
系統(tǒng) Win 10
CPU I7-11700
GPU RTX 3090
RAM 32GB
語言 Python 3.7
框架 Pytorch 1.11.0
在訓(xùn)練中,SGD用于模型訓(xùn)練,動量為0.937,權(quán)重衰減率為0.0005。Lr0和lrf分別設(shè)置為00.1和0.1,這意味著初始學(xué)習(xí)率為0.01,最終學(xué)習(xí)率為初始學(xué)習(xí)率的0.1倍。此外,為了使模型更好地擬合數(shù)據(jù),還進行了五個epoch的熱身訓(xùn)練。預(yù)熱訓(xùn)練方法允許模型在最初的幾個時期內(nèi)穩(wěn)定下來,然后以預(yù)設(shè)的學(xué)習(xí)速率進行訓(xùn)練,以更快地收斂。所有訓(xùn)練都是用150個epoch進行的,批次大小設(shè)置為16。