本發(fā)明涉及建筑工程檢測(cè)技術(shù)和計(jì)算機(jī)視覺(jué),尤其是一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法、系統(tǒng)和存儲(chǔ)介質(zhì)。
背景技術(shù):
1、裂縫作為最常見(jiàn)的損傷形式,不僅影響建筑的美觀,還可能危及建筑的安全性,嚴(yán)重影響到了建筑的健康發(fā)展,木結(jié)構(gòu)在建筑中頗為重要,尤其在古建筑中是不可缺少的部分。因此,木結(jié)構(gòu)裂縫的自動(dòng)檢測(cè)在古建筑保護(hù)中至關(guān)重要。但現(xiàn)有的檢測(cè)方法常因背景復(fù)雜、裂縫尺寸小且特征多樣,導(dǎo)致檢測(cè)精度不高,尤其是在多尺度特征分析和小目標(biāo)識(shí)別方面表現(xiàn)不佳,同時(shí)檢測(cè)過(guò)程中的漏檢和誤檢問(wèn)題也十分突出。
技術(shù)實(shí)現(xiàn)思路
1、為了克服上述現(xiàn)有技術(shù)中木結(jié)構(gòu)裂縫檢測(cè)容易出現(xiàn)漏檢和誤檢的缺陷,本發(fā)明提出了一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,在處理復(fù)雜背景和細(xì)微裂縫方面具有更好的性能,更加適合徽派古建筑等木結(jié)構(gòu)裂縫檢測(cè)。
2、本發(fā)明提出的一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,包括:
3、s1、構(gòu)建數(shù)據(jù)集存儲(chǔ)標(biāo)注樣本{木結(jié)構(gòu)圖像;裂縫檢測(cè)結(jié)果},裂縫檢測(cè)結(jié)果包括木結(jié)構(gòu)圖像上的木結(jié)構(gòu)裂縫位置和類別;基于yolov5構(gòu)建基礎(chǔ)模型,基礎(chǔ)模型的輸入為木結(jié)構(gòu)圖像,輸出為裂縫檢測(cè)結(jié)果;獲取在數(shù)據(jù)集上訓(xùn)練至收斂的基礎(chǔ)模型作為裂縫檢測(cè)模型;
4、s2、對(duì)待檢測(cè)木結(jié)構(gòu)進(jìn)行拍攝,將拍攝的木結(jié)構(gòu)圖像輸入裂縫檢測(cè)模型,裂縫檢測(cè)模型輸出裂縫檢測(cè)結(jié)果。
5、優(yōu)選的,基于yolov5構(gòu)建基礎(chǔ)模型的方法為:獲取yolov5s模型,將其spp模塊替換為rfb模塊。
6、優(yōu)選的,基于yolov5構(gòu)建基礎(chǔ)模型的方法還包括:在yolov5s模型骨干網(wǎng)絡(luò)的末端增加ca-r模塊,令yolov5s模型中同名網(wǎng)絡(luò)順序排列,骨干網(wǎng)絡(luò)中第四c3模塊的輸出端連接ca-r模塊的輸入端,ca-r模塊的輸出端作為骨干網(wǎng)絡(luò)的輸出端連接頸部網(wǎng)絡(luò)的輸入端;
7、ca-r模塊包括:第一平均池化層(avg?pool)、第二平均池化層、第五concat模塊、第四卷積單元、bn模塊、第五卷積單元、第六卷積單元、第一激活層、第二激活層、第六concat模塊、第七卷積單元和第八卷積單元;
8、第一平均池化層的輸入和第二平均池化層的輸入均連接ca-r模塊的輸入層,第八卷積單元對(duì)ca-r輸入數(shù)據(jù)進(jìn)行卷積處理;第一平均池化層的輸出和第二平均池化層的輸出均連接第五concat模塊的輸入。第五concat模塊的輸出與第八卷積單元的輸出進(jìn)行維度疊加后依次經(jīng)過(guò)第四卷積單元和bn模塊順序處理;第五卷積單元和第一激活層相連接構(gòu)成第一激活支路,第六卷積單元和第二激活層相連接構(gòu)成第二激活支路;第一激活支路和第二激活支路并聯(lián)在bn模塊的輸出端和第六concat模塊的輸入端之間,第一激活層的輸出和第二激活層的輸出通過(guò)第六concat模塊拼接成與ca-r輸入數(shù)據(jù)維度相同的數(shù)據(jù)結(jié)構(gòu),第七卷積單元將bn模塊的輸出數(shù)據(jù)卷積處理成與ca-r輸入數(shù)據(jù)維度相同的數(shù)據(jù)結(jié)構(gòu),然后將ca-r輸入數(shù)據(jù)、第七卷積單元輸出數(shù)據(jù)和第六concat模塊的輸出數(shù)據(jù)進(jìn)行維度疊加后作為ca-r的輸出數(shù)據(jù)。
9、優(yōu)選的,基于yolov5構(gòu)建基礎(chǔ)模型的方法為:獲取yolov5s模型,在yolov5s模型骨干網(wǎng)絡(luò)的末端增加ca-r模塊,令yolov5s模型中同名網(wǎng)絡(luò)順序排列,骨干網(wǎng)絡(luò)中第四c3模塊的輸出端連接ca-r模塊的輸入端,ca-r模塊的輸出端作為骨干網(wǎng)絡(luò)的輸出端連接頸部網(wǎng)絡(luò)的輸入端;
10、ca-r模塊包括:第一平均池化層(avg?pool)、第二平均池化層、第五concat模塊、第四卷積單元、bn模塊、第五卷積單元、第六卷積單元、第一激活層、第二激活層、第六concat模塊、第七卷積單元和第八卷積單元;
11、第一平均池化層的輸入和第二平均池化層的輸入均連接ca-r模塊的輸入層,第八卷積單元對(duì)ca-r輸入數(shù)據(jù)進(jìn)行卷積處理;第一平均池化層的輸出和第二平均池化層的輸出均連接第五concat模塊的輸入。第五concat模塊的輸出與第八卷積單元的輸出進(jìn)行維度疊加后依次經(jīng)過(guò)第四卷積單元和bn模塊順序處理;第五卷積單元和第一激活層相連接構(gòu)成第一激活支路,第六卷積單元和第二激活層相連接構(gòu)成第二激活支路;第一激活支路和第二激活支路并聯(lián)在bn模塊的輸出端和第六concat模塊的輸入端之間,第一激活層的輸出和第二激活層的輸出通過(guò)第六concat模塊拼接成與ca-r輸入數(shù)據(jù)維度相同的數(shù)據(jù)結(jié)構(gòu),第七卷積單元將bn模塊的輸出數(shù)據(jù)卷積處理成與ca-r輸入數(shù)據(jù)維度相同的數(shù)據(jù)結(jié)構(gòu),然后將ca-r輸入數(shù)據(jù)、第七卷積單元輸出數(shù)據(jù)和第六concat模塊的輸出數(shù)據(jù)進(jìn)行維度疊加后作為ca-r的輸出數(shù)據(jù)。
12、優(yōu)選的,基礎(chǔ)模型在數(shù)據(jù)集上訓(xùn)練的方法包括以下步驟:
13、s11、抽取標(biāo)注樣本作為訓(xùn)練樣本,令基礎(chǔ)模型對(duì)訓(xùn)練樣本進(jìn)行學(xué)習(xí);
14、s12、抽取標(biāo)注樣本作為驗(yàn)證樣本,令基礎(chǔ)模型識(shí)別并輸出驗(yàn)證樣本中木結(jié)構(gòu)圖像上的木結(jié)構(gòu)裂縫位置和類別;在驗(yàn)證樣本上計(jì)算模型損失;
15、s13、判斷基礎(chǔ)模型是否收斂;否,則根據(jù)模型損失反向傳播更新基礎(chǔ)模型參數(shù),然后返回步驟s11;是,則固定基礎(chǔ)模型作為裂縫檢測(cè)模型。
16、優(yōu)選的,s12中,模型損失采用siou損失函數(shù)。
17、本發(fā)明提出的一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)系統(tǒng),包括存儲(chǔ)器和處理器,存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)程序,處理器連接存儲(chǔ)器,處理器用于執(zhí)行所述計(jì)算機(jī)程序,以實(shí)現(xiàn)所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法。
18、本發(fā)明提出的一種存儲(chǔ)介質(zhì),存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被執(zhí)行時(shí)用于實(shí)現(xiàn)所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法。
19、本發(fā)明的優(yōu)點(diǎn)在于:
20、(1)本發(fā)明提出的一個(gè)基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,在主干網(wǎng)絡(luò)引入了rfb(receptive?fieldblock)模塊,替換了yolov5s網(wǎng)絡(luò)中spp模塊,擴(kuò)展了模型的感受野,增強(qiáng)了網(wǎng)絡(luò)對(duì)多尺度裂縫特征的適應(yīng)能力和識(shí)別精度。
21、(2)本發(fā)明在骨干網(wǎng)絡(luò)增加ca-r模塊,能更有效地集中網(wǎng)絡(luò)注意力于關(guān)鍵特征,有效抑制背景噪聲和非裂縫區(qū)域的干擾,加強(qiáng)對(duì)裂縫關(guān)鍵特征的識(shí)別。
22、(3)本發(fā)明采用了siou損失函數(shù),不僅提升了裂縫的定位精度,也優(yōu)化了模型在不同尺寸裂縫上的表現(xiàn),從而提高了裂縫定位的準(zhǔn)確性和算法的穩(wěn)定性。
23、(4)經(jīng)過(guò)嚴(yán)格的實(shí)驗(yàn)驗(yàn)證,改進(jìn)后的裂縫檢測(cè)模型在徽派古建筑木結(jié)構(gòu)的裂縫檢測(cè)中,在各個(gè)目標(biāo)檢測(cè)評(píng)價(jià)指標(biāo)上均高于原yolov5模型。這一顯著的性能提升,特別是在處理復(fù)雜背景和細(xì)微裂縫方面的優(yōu)勢(shì),使得本發(fā)明在徽派古建筑等木結(jié)構(gòu)建筑的保護(hù)工作中具有重要的應(yīng)用價(jià)值。。
1.一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,包括:
2.如權(quán)利要求1所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,基于yolov5構(gòu)建基礎(chǔ)模型的方法為:獲取yolov5s模型,將其spp模塊替換為rfb模塊。
3.如權(quán)利要求2所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,基于yolov5構(gòu)建基礎(chǔ)模型的方法還包括:在yolov5s模型骨干網(wǎng)絡(luò)的末端增加ca-r模塊,令yolov5s模型中同名網(wǎng)絡(luò)順序排列,骨干網(wǎng)絡(luò)中第四c3模塊的輸出端連接ca-r模塊的輸入端,ca-r模塊的輸出端作為骨干網(wǎng)絡(luò)的輸出端連接頸部網(wǎng)絡(luò)的輸入端;
4.如權(quán)利要求1所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,基于yolov5構(gòu)建基礎(chǔ)模型的方法為:獲取yolov5s模型,在yolov5s模型骨干網(wǎng)絡(luò)的末端增加ca-r模塊,令yolov5s模型中同名網(wǎng)絡(luò)順序排列,骨干網(wǎng)絡(luò)中第四c3模塊的輸出端連接ca-r模塊的輸入端,ca-r模塊的輸出端作為骨干網(wǎng)絡(luò)的輸出端連接頸部網(wǎng)絡(luò)的輸入端;
5.如權(quán)利要求1所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,基礎(chǔ)模型在數(shù)據(jù)集上訓(xùn)練的方法包括以下步驟:
6.如權(quán)利要求5所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法,其特征在于,s12中,模型損失采用siou損失函數(shù)。
7.一種基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)系統(tǒng),其特征在于,包括存儲(chǔ)器和處理器,存儲(chǔ)器中存儲(chǔ)有計(jì)算機(jī)程序,處理器連接存儲(chǔ)器,處理器用于執(zhí)行所述計(jì)算機(jī)程序,以實(shí)現(xiàn)如權(quán)利要求1-6任一項(xiàng)所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法。
8.一種存儲(chǔ)介質(zhì),其特征在于,存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被執(zhí)行時(shí)用于實(shí)現(xiàn)如權(quán)利要求1-6任一項(xiàng)所述的基于改進(jìn)yolov5的木結(jié)構(gòu)裂縫檢測(cè)方法。