本技術的實施例涉及水下目標檢測,特別涉及一種基于高效編解碼器的實時水下目標檢測方法。
背景技術:
1、傳統(tǒng)的海洋環(huán)境探測主要依靠人類潛水作業(yè),所有與水下目標檢測和識別相關的任務都必須由海洋學家手動完成。這種高度依賴人工作業(yè)的水下目標檢測方法不僅效率低,難以獲得更豐富的信息,同時對潛水員的專業(yè)技能和身體素質(zhì)也提出了極高的要求。在深海環(huán)境中,依靠人工作業(yè)進行長期探索顯然是不現(xiàn)實的。機器視覺技術的繁榮使人類能夠遠程操作潛水器和自主水下航行器等水下探測設備開發(fā)海洋生態(tài)資源,對海洋環(huán)境進行數(shù)字化模擬,這使得海洋生物監(jiān)控更加精確和快速。隨著科技的蓬勃發(fā)展,使用光學技術來實現(xiàn)水下目標的準確識別、快速跟蹤,已經(jīng)成為當今水下領域的主流技術。自主水下機器人則更加突出,能夠更好地模擬水下生態(tài)系統(tǒng),實現(xiàn)對水下生物的精準捕捉、水下工程設施的維護、水下環(huán)境的實時觀察等,從而更好地支持人們的水下活動。這些技術現(xiàn)在廣泛應用于海洋環(huán)境中的各種作業(yè),如水產(chǎn)養(yǎng)殖、遠洋漁業(yè)、海洋物種監(jiān)測、水下考古等。
2、水下目標檢測不僅需要識別目標類別,還需要預測其空間位置,由于水下環(huán)境復雜多變,因此水下目標檢測仍然是機器視覺中最具挑戰(zhàn)性的任務之一,捕獲的圖像經(jīng)常出現(xiàn)嚴重的模糊、顏色失真和能見度降低。近年來,在計算能力和數(shù)據(jù)可用性進步的推動下,基于人工智能的水下目標檢測算法呈指數(shù)級增長,人工智能是一種使計算機能夠模擬人類智能的技術,自20世紀50年代問世以來就引起了人們的廣泛關注。到1995年,隨著水下目標檢測的復興,人工智能技術開始融入水下目標檢測技術領域。如今,人工智能,特別是機器學習,在水下目標檢測技術領域得到了廣泛的應用。在各種人工智能技術中,深度學習在水下目標檢測技術領域引起了極大的關注和廣泛的研究,深度學習模型需要大量的訓練數(shù)據(jù),但在檢測精度方面比傳統(tǒng)方法具有明顯的優(yōu)勢。水下目標檢測主要有兩大研究方向。第一條研究線是通用的深度探測網(wǎng)絡,如faster?rcnn、ssd、yolo及變體,已被用于水下目標檢測,顯著提高了檢測性能。第二條研究線側(cè)重于為水下目標檢測開發(fā)特殊的網(wǎng)絡主干、損耗函數(shù)或?qū)W習策略。
3、盡管基于深度學習的水下目標檢測技術在學術和商業(yè)應用方面具有巨大的潛力,但它目前仍然面臨著許多困難。第一點是水下圖像數(shù)據(jù)不足,復雜的水下環(huán)境對水下成像設備的要求很高,與大氣光學圖像相比,這使得獲取水下圖像變得十分困難,因此,數(shù)據(jù)驅(qū)動的深度學習模型很難達到令人滿意的結(jié)果。第二點是水下圖像質(zhì)量低,水下圖像通常會受到不均勻光照條件、模糊、低對比度和顏色偏差的影響,導致其在顏色和紋理信息方面的性能比大氣光學圖像差很多。第三點是小型和集群目標識別問題,一些水下目標通常呈簇狀,尺寸較小,難以提取豐富的細節(jié)。第四點是不同水下目標的數(shù)量不平衡,水下目標的類別不平衡使得水下目標檢測器難以用少量樣本學習類別的特征,這對其性能產(chǎn)生了負面影響。這些困難對水下目標檢測任務提出了巨大挑戰(zhàn)。
技術實現(xiàn)思路
1、為了解決上述技術問題,本技術的實施例提出了一種基于高效編解碼器的實時水下目標檢測方法,可以緩解水下目標類別不平衡問題,同時提高了檢測模型檢測重疊目標的能力,從而有效提升了檢測模型的整體的檢測精度。
2、為了實現(xiàn)上述目的,本技術的實施例提出了一種基于高效編解碼器的實時水下目標檢測方法,所述方法包括以下步驟:利用多維注意力機制和并行策略,在任何卷積層沿內(nèi)核空間的四個維度學習卷積內(nèi)核的注意力,構(gòu)建全維動態(tài)卷積模塊;其中,四個維度分別為卷積核數(shù)維度、卷積核的空間維度、輸入通道維度、以及輸出通道維度;使用全維動態(tài)卷積模塊替換殘差網(wǎng)絡中的普通卷積模塊,得到全維動態(tài)殘差網(wǎng)絡利用1×1卷積、3×3卷積和高斯誤差線性單元激活函數(shù),設計門控動態(tài)卷積前饋網(wǎng)絡,并使用多頭注意力機制和門控動態(tài)卷積前饋網(wǎng)絡,構(gòu)建尺度內(nèi)交互模塊;將跨空間學習的尺度內(nèi)交互模塊以特征金字塔的方式堆疊,構(gòu)建高效混合編碼器;將全維動態(tài)殘差網(wǎng)絡、高效混合編碼器、以及基于目標查詢的解碼器進行組合,得到水下目標檢測模型,并基于預先獲取的訓練樣本集對水下目標檢測模型進行迭代訓練至收斂,得到訓練完成的水下目標檢測模型;將待識別數(shù)據(jù)輸入至訓練完成的水下目標檢測模型中,獲得訓練完成的水下目標檢測模型輸出的對待識別數(shù)據(jù)的檢測結(jié)果。
3、為了實現(xiàn)上述目的,本技術的實施例還提出了一種基于高效編解碼器的實時水下目標檢測系統(tǒng),所述系統(tǒng)包括:全維動態(tài)卷積模塊構(gòu)建模組,用于利用多維注意力機制和并行策略,在任何卷積層沿內(nèi)核空間的四個維度學習卷積內(nèi)核的注意力,構(gòu)建全維動態(tài)卷積模塊,其中,四個維度分別為卷積核數(shù)維度、卷積核的空間維度、輸入通道維度、以及輸出通道維度;全維動態(tài)殘差網(wǎng)絡構(gòu)建模組,用于使用全維動態(tài)卷積模塊替換殘差網(wǎng)絡中的普通卷積模塊,得到全維動態(tài)殘差網(wǎng)絡;尺度內(nèi)交互模塊構(gòu)建模組,用于利用1×1卷積、3×3卷積和高斯誤差線性單元激活函數(shù),設計門控動態(tài)卷積前饋網(wǎng)絡,并使用多頭注意力機制和門控動態(tài)卷積前饋網(wǎng)絡,構(gòu)建尺度內(nèi)交互模塊;高效混合編碼器構(gòu)建模組,用于將跨空間學習的尺度內(nèi)交互模塊以特征金字塔的方式堆疊,構(gòu)建高效混合編碼器;水下目標檢測模型構(gòu)建模組,用于將全維動態(tài)殘差網(wǎng)絡、高效混合編碼器、以及基于目標查詢的解碼器進行組合,得到水下目標檢測模型;模型訓練模組,用于基于預先獲取的訓練樣本集對水下目標檢測模型進行迭代訓練至收斂,得到訓練完成的水下目標檢測模型;模型部署使用模組,用于將待識別數(shù)據(jù)輸入至訓練完成的水下目標檢測模型中,獲得訓練完成的水下目標檢測模型輸出的對待識別數(shù)據(jù)的檢測結(jié)果。
4、為了實現(xiàn)上述目的,本技術的實施例還提出了一種電子設備,所述電子設備包括:至少一個處理器;以及,與所述至少一個處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行上述所述的一種基于高效編解碼器的實時水下目標檢測方法。
5、為了實現(xiàn)上述目的,本技術的實施例還提出了一種計算機可讀存儲介質(zhì),存儲有計算機程序,所述計算機程序被處理器執(zhí)行時,能夠?qū)崿F(xiàn)上述所述的一種基于高效編解碼器的實時水下目標檢測方法。
6、本技術的實施例提出的一種基于高效編解碼器的實時水下目標檢測方法,依次構(gòu)建了全維動態(tài)卷積模塊、全維動態(tài)殘差網(wǎng)絡、尺度內(nèi)交互模塊、以及高效混合編碼器,將全維動態(tài)殘差網(wǎng)絡、高效混合編碼器、以及基于目標查詢的解碼器進行組合,即可得到水下目標檢測模型,對水下目標檢測模型進行迭代訓練至收斂后,獲得訓練完成的水下目標檢測模型并部署到有需要的場景中,以執(zhí)行水下目標檢測任務。全維動態(tài)殘差網(wǎng)絡負責特征提取,通過動態(tài)全維卷積來增強傳統(tǒng)卷積神經(jīng)網(wǎng)絡在特征提取過程中的表現(xiàn)力,通過動態(tài)調(diào)整卷積核,能夠更加精準地提取不同圖像區(qū)域的特征,從而可以緩解目標類別不平衡的問題,同時提高了模型檢測重疊目標的能力。高效混合編碼器結(jié)合了transformer編碼器和多尺度特征提取,能夠有效的處理圖像中的空間和通道信息,高效混合編碼器通過引入目標查詢機制和位置編碼,使得模型能夠更有效地捕捉圖像中的全局上下文信息與遠程依賴關系,進一步增強了特征表示的豐富性。構(gòu)建、訓練、部署、以及使用這樣的水下目標檢測模型來進行水下目標檢測,有效提升了檢測速度和檢測精度。
7、可選地,利用多維注意力機制和并行策略,在任何卷積層沿內(nèi)核空間的四個維度學習卷積內(nèi)核的注意力,構(gòu)建全維動態(tài)卷積模塊,包括:
8、構(gòu)建通道注意力單元,對輸入使用1×1卷積,生成形狀為[batch_size,in_planes,1,1]的第一特征張量,之后使用sigmoid激活函數(shù)對第一特征張量進行歸一化,得到通道注意力權重;
9、構(gòu)建濾波器注意力單元,將輸入分別進行自適應最大池化和自適應平均池化,提取得到形狀為[batch_size,in_planes,1,1]的第二特征張量和第三特征張量,對第二特征張量和第三特征張量使用1×1卷積,生成形狀為[batch_size,out_planes,1,1]的最大池化特征和平均池化特征,將最大池化特征和平均池化特征相加,得到形狀融合張量,最后使用sigmoid激活函數(shù)對融合張量進行歸一化,得到濾波器注意力權重;
10、構(gòu)建空間注意力單元,使用1×1卷積提取空間相關的特征以構(gòu)建空間注意力層,輸入經(jīng)過空間注意力層處理后,生成形狀為[batch_size,kernel_size*kernel_size,1,1]的第一權重向量,將第一權重向量的形狀變?yōu)閇batch_size,1,1,1,kernel_size,kernel_size],最后使用sigmoid激活函數(shù)進行歸一化,得到空間注意力權重;
11、構(gòu)建卷積核注意力單元,使用1×1卷積提取卷積核相關的特征以構(gòu)建卷積核注意力層,輸入經(jīng)卷積核注意力層處理后,生成形狀為[batch_size,kernel_num,1,1]的第二權重向量,將第二權重向量的形狀重塑為[batch_size,kernel_num,1,1,1,1],最后使用softmax函數(shù)激活,得到卷積核注意力權重;
12、基于通道注意力權重、濾波器注意力權重、空間注意力權重、卷積核注意力權重實現(xiàn)動態(tài)卷積,構(gòu)建得到全維動態(tài)卷積模塊。
13、可選地,基于通道注意力權重、濾波器注意力權重、空間注意力權重、卷積核注意力權重實現(xiàn)動態(tài)卷積,構(gòu)建得到全維動態(tài)卷積模塊,包括:
14、基于通道注意力權重調(diào)整每個通道的特征強度,基于空間注意力權重為每個卷積核生成空間特定的權重矩陣;
15、將輸入的形狀調(diào)整為[1,batch_size*in_planes,height,width],使用卷積核注意力權重對輸入進行卷積,得到形狀為[batch_size*groups,out_planes//groups,out_height,out_width]的中間輸出;
16、將中間輸出調(diào)整回標準形狀[batch_size,out_planes,out_height,out_width],逐元素乘以濾波器注意力權重形成形狀為[batch_size,out_planes,out_height,out_width]的最終輸出,即完成全維動態(tài)卷積模塊的構(gòu)建。
17、可選地,構(gòu)建的全維動態(tài)卷積模塊包括兩個1×1全維動態(tài)卷積模塊以及一個3×3全維動態(tài)卷積模塊,使用全維動態(tài)卷積模塊替換殘差網(wǎng)絡中的普通卷積模塊,得到全維動態(tài)殘差網(wǎng)絡,包括:
18、使用兩個1×1全維動態(tài)卷積模塊以及一個3×3全維動態(tài)卷積模塊,構(gòu)建殘差卷積模塊;其中,設殘差卷積模塊的輸入特征的形狀為[n,c1,h,w],n為批量大小,c1為輸入通道數(shù),h和w分別是輸入特征的高度和寬度,殘差卷積模塊的輸入特征先經(jīng)過一個1×1的全維動態(tài)卷積模塊進行處理,輸出形狀為[n,c2,h,w]特征圖,再經(jīng)過一個3×3且步長為s的全維動態(tài)卷積模塊進行處理,輸出形狀為[n,c2,h/s,w/s]的特征圖,最后再經(jīng)過一個1×1且步長為1的全維動態(tài)卷積模塊進行處理,輸出形狀為[n,c3,h,w]特征圖;
19、基于殘差卷積模塊構(gòu)建特征提取骨干網(wǎng)絡,最終得到全維動態(tài)殘差網(wǎng)絡;其中,設特征提取骨干網(wǎng)絡的輸入特征的形狀為[n,c1,h,w],特征提取骨干網(wǎng)絡的輸入特征先經(jīng)過一個核大小為7×7、步長為2、填充為3的卷積操作,輸出形狀為[n,c2,h/2,w/2]的特征圖,隨后再經(jīng)過一個核大小為3×3、步長為2、填充為1的最大池化層,輸出形狀為[n,c2,h/4,w/4]的特征圖;
20、全維動態(tài)殘差網(wǎng)絡進行四個階段的處理,第一階段由3個殘差卷積模塊組成,步長為1,第二階段由4個殘差卷積模塊組成,步長為2,第三階段由6個殘差卷積模塊組成,步長為2,第四階段由3個殘差卷積模塊組成,步長為2。
21、可選地,利用1×1卷積、3×3卷積和高斯誤差線性單元激活函數(shù),設計門控動態(tài)卷積前饋網(wǎng)絡,并使用多頭注意力機制和門控動態(tài)卷積前饋網(wǎng)絡,構(gòu)建尺度內(nèi)交互模塊,包括:
22、設輸入特征的形狀為[n,c,h,w],n為批量大小,c為輸入通道數(shù),h和w分別為輸入特征的高度和寬度;
23、先將輸入特征通過一個2d正弦-余弦位置編碼模塊,生成形狀為[1,h×w,c]的位置嵌入,并將輸入特征展平為形狀為[n,h×w,c]的張量,接著經(jīng)過一個基于多頭自注意力機制的transformer編碼器層,得到全局建模后的特征;
24、將全局建模后的特征恢復為原始空間形狀[n,c,h,w],然后將輸入特征經(jīng)過一個1×1卷積,將通道數(shù)擴展為4倍,輸出為形狀為[n,4×c,h,w]的特征,接著經(jīng)過一個3×3深度卷積,輸出形狀為[n,4×c,h,w]的特征;
25、深度卷積輸出的特征在通道維度上分為兩部分,其中一部分經(jīng)過gelu激活后與另一部分進行逐元素乘法操作,得到形狀為[n,2×c,h,w]的特征,再通過一個1×1卷積將通道數(shù)壓縮回c,得到形狀為[n,c,h,w]的還原特征,最后通過殘差連接和歸一化模塊將輸入特征與還原特征相加,得到形狀為[n,c,h,w]的最終特征,至此構(gòu)建得到尺度內(nèi)交互模塊。
26、可選地,高效混合編碼器的整個網(wǎng)絡分為四個階段;
27、首先對每個輸入特征通過一個1×1的卷積層進行通道映射,使對應的輸出形狀變?yōu)閇n,hidden_dim,h,w],hidden_dim為網(wǎng)絡的中間通道數(shù);
28、針對指定的編碼器層索引,提取特定層的特征,輸出形狀為[n,h,w,hidden_dim];
29、為每個像素生成正弦-余弦的位置嵌入,形狀為[n,hidden_dim,h,w],輸入特征和位置編碼一起輸入到transformer編碼器中,編碼后輸出形狀仍為[n,h,w,hidden_dim],最后再將編碼后的特征的形狀重新調(diào)整為[n,h,w,hidden_dim];
30、對多層特征圖進行自頂向下的融合,最深層特征圖直接作為初始輸出從下往上逐層融合,每層的高分辨率特征通過一個1×1卷積進行通道調(diào)整,然后與上采樣后的較深層特征進行拼接,輸出形狀保持不變,每層較淺的特征通過一個3×3卷積進行下采樣,然后與較深層特征拼接融合,輸出形狀相同,最終得到的輸出為形狀為[n,hidden_dim,h,w]的多層特征圖,每層的分辨率與輸入對應層相同,特征通道數(shù)均為hidden_dim。
31、可選地,將待識別數(shù)據(jù)輸入至訓練完成的水下目標檢測模型中,獲得訓練完成的水下目標檢測模型輸出的對待識別數(shù)據(jù)的檢測結(jié)果,包括:
32、將待識別數(shù)據(jù)輸入至訓練完成的水下目標檢測模型中,訓練完成的水下目標檢測模型使用全維動態(tài)殘差網(wǎng)絡提取待識別數(shù)據(jù)的特征,通過殘差學習的方式來增強對特征的表達能力,再使用高效混合編碼器來捕捉多尺度特征,并通過transformer進行序列建模,進一步增強空間和通道的表達能力,最后通過基于目標查詢的解碼器進行目標查詢來關注待識別數(shù)據(jù)中的目標區(qū)域,進行目標的定位和分類,輸出對待識別數(shù)據(jù)的檢測結(jié)果。