李曉雯,李海濤,高樹(shù)靜,張俊虎
(青島科技大學(xué) 信息科學(xué)技術(shù)學(xué)院,山東 青島 266061)
真實(shí)水下場(chǎng)景中的魚類語(yǔ)義分割是一項(xiàng)具有挑戰(zhàn)性的任務(wù),也是各種處理步驟的重要前提。水下魚體圖像分割在水下生態(tài)研究[1]和水下機(jī)器人領(lǐng)域具有重要意義。準(zhǔn)確地分割水下魚體圖像可以為生態(tài)學(xué)研究提供寶貴的數(shù)據(jù),并為水下機(jī)器人的自主導(dǎo)航和目標(biāo)識(shí)別提供支持[2]。然而,由于水下環(huán)境的特殊性,水下魚體圖像分割面臨著一些挑戰(zhàn)和限制[3]。資源有限、光線衰減、水下散射等因素會(huì)影響圖像的質(zhì)量和魚體的可見(jiàn)性,使得傳統(tǒng)的分割方法在水下環(huán)境中表現(xiàn)不佳。此外,水下魚體的形變和細(xì)節(jié)變化也增加了分割的難度。
語(yǔ)義分割方法可分為傳統(tǒng)圖像處理方式和深度學(xué)習(xí)方式[4-5]兩種。近年來(lái),隨著深度學(xué)習(xí)和計(jì)算機(jī)視覺(jué)的進(jìn)展,傳統(tǒng)的圖像分割方法,如閾值分割、邊緣檢測(cè)方法、區(qū)域生長(zhǎng)、區(qū)域分裂與合并、邊界分割、基于聚類的方法等[6-8],通常在處理復(fù)雜、噪聲較多或者場(chǎng)景變化較大的圖像時(shí)效果有限。相比之下,基于深度學(xué)習(xí)方法能夠通過(guò)自動(dòng)學(xué)習(xí)特征和語(yǔ)義信息,更準(zhǔn)確地處理復(fù)雜的圖像分割任務(wù),適應(yīng)多樣性的場(chǎng)景和物體變化。文獻(xiàn)[9]探討了兩種深度學(xué)習(xí)模型在低光攝像頭下的魚類庫(kù)存監(jiān)測(cè)應(yīng)用中進(jìn)行魚類分割的適用性。通過(guò)修剪這些網(wǎng)絡(luò)并采用不同的編碼器,它們更適用于硬件有限的系統(tǒng),如遠(yuǎn)程操作或自主操作的水下載具。文獻(xiàn)[10]提出了一種雙池聚合注意網(wǎng)絡(luò),通過(guò)新穎的位置和通道注意模塊,高效地捕獲長(zhǎng)距離依賴關(guān)系,從而在提升特征表示的同時(shí)顯著改善了分割性能。文獻(xiàn)[11]提出了一種預(yù)處理CNN,用于聲納圖像中魚類分割,該預(yù)處理CNN與條件隨機(jī)場(chǎng)集成,旨在分離學(xué)習(xí)魚類實(shí)例和學(xué)習(xí)魚類養(yǎng)殖環(huán)境。這種方法可以改進(jìn)聲納圖像中魚類的Mask R-CNN分割,并簡(jiǎn)化在魚類養(yǎng)殖環(huán)境中應(yīng)用Mask R-CNN。文獻(xiàn)[12]探索了在嘈雜低分辨率圖像數(shù)據(jù)集中,采用深度學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)(CNN)進(jìn)行魚類分割的方法。通過(guò)使用成像聲納生成的距離-方位位置,實(shí)現(xiàn)了魚類與非魚類概率預(yù)測(cè),并在丹麥海峽和法羅群島的自采集數(shù)據(jù)上訓(xùn)練和測(cè)試模型,展示了在小規(guī)模數(shù)據(jù)集上實(shí)現(xiàn)滿意性能和泛化能力的技術(shù)。
本文旨在研究深度學(xué)習(xí)方法對(duì)真實(shí)水下場(chǎng)景中檢測(cè)到的魚類進(jìn)行分割和輪廓提取的適用性。除了關(guān)于圖像中存在什么樣的對(duì)象以及它們位于何處的信息外,一個(gè)成功的語(yǔ)義分割揭示了每個(gè)像素屬于哪一類。因此,在圖像中額外提取感興趣目標(biāo)的輪廓及其覆蓋的簡(jiǎn)潔區(qū)域成為可能。魚類的精確分割是自動(dòng)確定形態(tài)特征的重要前提,如總長(zhǎng)度,進(jìn)而可用于確定魚類體重。近年來(lái),對(duì)于在有限硬件條件下成功應(yīng)用深度學(xué)習(xí)算法的需求不斷增長(zhǎng)。對(duì)于打算使用水下機(jī)器人、遙控車輛等應(yīng)用的需求尤為重要。因此,本文主要研究了輕量級(jí)分割模型。具體而言,我們采用了改進(jìn)版本的“金字塔場(chǎng)景解析網(wǎng)絡(luò)(PSPNet,pyramid scene parsing network)”[13]來(lái)進(jìn)行包含魚的圖像分割任務(wù),以實(shí)現(xiàn)魚類和背景類的二值分割。PSPNet作為一種高效的語(yǔ)義分割算法,通過(guò)利用金字塔池化模塊(PPM,pyramid pooling module)來(lái)捕獲不同尺度的上下文信息,取得了顯著的成果。然而,在水下魚體圖像分割中,傳統(tǒng)的PSPNet仍然存在一些限制。
為了進(jìn)一步提高分割精度和算法的輕量級(jí)特性,本文提出了一種基于PSPNet改進(jìn)的輕量級(jí)水下魚體圖像分割算法。首先,我們選擇將主干網(wǎng)絡(luò)替換為MobileNetV2[14],以降低算法的參數(shù)量和計(jì)算復(fù)雜度。MobileNetV2是一種輕量級(jí)的網(wǎng)絡(luò)結(jié)構(gòu),具有良好的性能和較低的計(jì)算開(kāi)銷,適用于資源受限的環(huán)境。其次,為了增強(qiáng)算法對(duì)水下魚體圖像的空間信息表示能力,我們引入了CoordConv模塊[15]。CoordConv模塊通過(guò)將坐標(biāo)信息作為額外的輸入通道,使得網(wǎng)絡(luò)可以更好地感知和利用像素的位置信息,從而提升分割算法對(duì)水下魚體圖像中復(fù)雜形態(tài)和紋理的建模能力。最后,我們對(duì)PSPNet的金字塔池化模塊進(jìn)行改進(jìn),將全局池化后的特征作為全注意力機(jī)制網(wǎng)絡(luò)的輸入,注意力機(jī)制能夠幫助模型更加關(guān)注重要的特征,并抑制不重要的特征,從而進(jìn)一步提升分割的性能。
通過(guò)以上改進(jìn)策略,我們旨在提高水下魚體圖像分割算法的準(zhǔn)確性和效率,為水下生態(tài)研究和水下機(jī)器人應(yīng)用提供更可靠的工具和方法。在接下來(lái)的章節(jié)中,將詳細(xì)介紹改進(jìn)的算法,并通過(guò)實(shí)驗(yàn)驗(yàn)證其在水下魚體圖像分割任務(wù)中的優(yōu)越性能。
改進(jìn)的Co-PSPNET算法主要分為4個(gè)部分,分別為主干網(wǎng)絡(luò)、CoordConv模塊、基于CBAM注意力機(jī)制的金字塔池化模塊、解碼器。
算法框架結(jié)構(gòu)如圖1所示。
第一部分為主干網(wǎng)絡(luò)。假設(shè)輸入圖片的尺寸為H×W(高度×寬度),圖片經(jīng)過(guò)主干網(wǎng)絡(luò)MobileNetV2進(jìn)行特征提取。MobileNetV2的卷積層在處理圖片時(shí),會(huì)進(jìn)行下采樣,通常會(huì)將輸入圖片的尺寸縮小為H/32×W/32。通過(guò)初始卷積層和多個(gè)Bottleneck塊進(jìn)行特征提取。每個(gè)Bottleneck塊包含1×1的擴(kuò)展卷積層、3×3的深度可分離卷積層和1×1的投影卷積層,最后通過(guò)上采樣將特征圖恢復(fù)到輸入圖片大小。
第二部分為CoordConv模塊。首先,CoordConv模塊生成一個(gè)與特征圖大小相同的坐標(biāo)網(wǎng)格。這個(gè)坐標(biāo)網(wǎng)格的形狀是H×W,每個(gè)像素點(diǎn)對(duì)應(yīng)一個(gè)二維坐標(biāo) (x,y)。接下來(lái),CoordConv模塊將坐標(biāo)網(wǎng)格的 (x,y)坐標(biāo)信息分別擴(kuò)展為兩個(gè)3維張量,分別是形狀為1×H×W的X坐標(biāo)張量和Y坐標(biāo)張量。然后,CoordConv模塊將上述生成的X坐標(biāo)張量和Y坐標(biāo)張量分別與原始特征圖進(jìn)行通道拼接。這樣,特征圖的每個(gè)像素點(diǎn)都會(huì)添加兩個(gè)額外的通道,分別對(duì)應(yīng)該像素點(diǎn)的X坐標(biāo)和Y坐標(biāo)信息。最終,特征圖的形狀變?yōu)?(C+2)×H×W,其中C個(gè)通道對(duì)應(yīng)于原始特征圖的通道,而多出來(lái)的 2 個(gè)通道是X坐標(biāo)和Y坐標(biāo)信息。
第三部分是基于CBAM注意力機(jī)制的金字塔池化模塊。針對(duì)CoordConv模塊輸出特征圖的全局以及 1/4、1/9、1/36 子區(qū)域分別進(jìn)行全局平均池化操作。每個(gè)池化后,特征向量經(jīng)過(guò)CBAM模塊處理,通過(guò)通道注意力和空間注意力分別學(xué)習(xí)通道權(quán)重和空間權(quán)重,分別對(duì)不同通道的特征和不同空間位置的特征進(jìn)行加權(quán),以增強(qiáng)重要通道和位置的特征表示能力。
第四部分為解碼器,經(jīng)過(guò)金字塔池化模塊后得到的特征圖,通過(guò)解碼器進(jìn)行上采樣和融合操作,以恢復(fù)原始圖像尺寸H×W的語(yǔ)義分割結(jié)果。解碼器使用雙線性插值的方式來(lái)實(shí)現(xiàn)上采樣,并與CoordConv模塊輸出的特征圖在通道維度上進(jìn)行拼接,實(shí)現(xiàn)高層語(yǔ)義信息和低層空間信息的有機(jī)結(jié)合。
最后,解碼器生成的語(yǔ)義分割結(jié)果通過(guò)1×1卷積核的卷積層進(jìn)行通道維度上的降維操作,最終輸出的通道數(shù)為類別數(shù)量,用于生成語(yǔ)義分割的預(yù)測(cè)結(jié)果。這樣,模型就可以將每個(gè)像素點(diǎn)分類到對(duì)應(yīng)的語(yǔ)義類別,并完成整個(gè)語(yǔ)義分割任務(wù)。
傳統(tǒng)的PSPNet主干網(wǎng)絡(luò)使用的是ResNet等較為復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),具有較高的計(jì)算復(fù)雜度和參數(shù)量。為了實(shí)現(xiàn)輕量級(jí)水下魚體圖像分割算法,本算法通過(guò)實(shí)驗(yàn)對(duì)比多種不同的輕量級(jí)分類網(wǎng)絡(luò)見(jiàn)3.4節(jié),我們選擇了MobileNetV2作為替代方案。MobileNetV2具有輕量級(jí)的結(jié)構(gòu)和高效的特征提取能力,能夠在保持準(zhǔn)確性的同時(shí)減少計(jì)算開(kāi)銷,適應(yīng)資源受限的水下環(huán)境。
MobileNetV2[14]是一種輕量級(jí)的卷積神經(jīng)網(wǎng)絡(luò)架構(gòu),目的是在移動(dòng)設(shè)備和嵌入式系統(tǒng)上實(shí)現(xiàn)高效的圖像識(shí)別和計(jì)算。它是Google團(tuán)隊(duì)在2018年提出的MobileNet系列的第二個(gè)版本。MobileNetV2的設(shè)計(jì)目標(biāo)是在保持高精度的同時(shí),顯著減少模型的大小和計(jì)算復(fù)雜度。它采用了一系列的設(shè)計(jì)策略和技術(shù),以實(shí)現(xiàn)這一目標(biāo)。下面是MobileNetV2的一些關(guān)鍵特點(diǎn)和技術(shù):MobileNetV2引入了一種稱為“Inverted Residuals”(反向殘差模塊)的模塊,它包含了輕量級(jí)的深度可分離卷積(Depthwise separable convolution)[16]。這種模塊的結(jié)構(gòu)與傳統(tǒng)的殘差模塊相反,先使用1×1的卷積進(jìn)行降維,然后應(yīng)用深度可分離卷積進(jìn)行特征提取,最后再使用1×1的卷積進(jìn)行升維。這種結(jié)構(gòu)能夠有效地減少參數(shù)數(shù)量和計(jì)算復(fù)雜度。MobileNetV2引入了一個(gè)寬度乘法器,用于動(dòng)態(tài)地調(diào)整模型的寬度(即通道數(shù))。通過(guò)調(diào)整寬度乘法器的值,可以在精度和計(jì)算復(fù)雜度之間進(jìn)行權(quán)衡。較小的乘法器值將減少模型的參數(shù)和計(jì)算量,但可能會(huì)降低模型的性能。MobileNetV2可以適應(yīng)不同的輸入分辨率,從而在不同的應(yīng)用場(chǎng)景中靈活應(yīng)用。通過(guò)改變輸入圖像的分辨率,可以在模型大小和推理速度之間進(jìn)行權(quán)衡。MobileNetV2中的深度可分離卷積具有線性瓶頸(linear bottlenecks)特性,即在升維和降維的過(guò)程中使用了線性激活函數(shù)。這可以避免非線性激活函數(shù)引入的額外計(jì)算開(kāi)銷。
總體而言,MobileNetV2通過(guò)結(jié)合多種優(yōu)化策略和技術(shù),實(shí)現(xiàn)了在移動(dòng)設(shè)備上高效而準(zhǔn)確的圖像識(shí)別。它在參數(shù)數(shù)量和計(jì)算復(fù)雜度方面較小,適用于資源受限的環(huán)境。
由于在水下環(huán)境中,魚體與背景之間的邊界通常模糊不清,邊緣信息不明顯。通過(guò)引入位置信息,CoordConv模塊[15]可以幫助算法更好地捕捉到魚體邊界的位置和形狀,提高對(duì)魚體的精確分割能力。
傳統(tǒng)的卷積操作在處理圖像時(shí)只考慮了像素的局部鄰域信息,而忽略了像素的位置信息。然而,對(duì)于水下魚體圖像分割這樣的任務(wù),像素的位置信息對(duì)于區(qū)分不同魚體、準(zhǔn)確分割邊界等至關(guān)重要。CoordConv模塊是一種通過(guò)引入坐標(biāo)信息的卷積操作,能夠提供更豐富的空間上下文信息,對(duì)于處理水下魚體圖像中的形態(tài)變化和紋理細(xì)節(jié)非常有幫助。
CoordConv模塊的基本思想是在卷積操作的輸入特征圖中增加兩個(gè)額外的通道,分別表示像素的橫坐標(biāo)和縱坐標(biāo)。這樣,每個(gè)像素的輸入特征向量就不僅包含了原始圖像的顏色值,還包含了其在原始圖像中的位置信息,如圖2所示。在CoordConv模塊中,這兩個(gè)額外的通道被稱為X通道和Y通道。
圖2 兩種卷積層
具體地,CoordConv模塊可以表示為以下的數(shù)學(xué)形式,如公式(1)、(2)所示:
(1)
(2)
其中:Xi和Yi分別表示像素的歸一化橫坐標(biāo)和縱坐標(biāo),X和Y分別表示像素的原始橫坐標(biāo)和縱坐標(biāo),W和H分別表示圖像的寬度和高度。通過(guò)將歸一化的坐標(biāo)值作為額外的通道輸入到卷積操作中,CoordConv模塊可以使網(wǎng)絡(luò)更好地感知和利用像素的位置信息。
通過(guò)在我們的改進(jìn)算法中引入CoordConv模塊,我們能夠充分利用水下魚體圖像中的位置信息,增強(qiáng)算法的魯棒性和分割精度。該模塊的引入為我們的輕量級(jí)水下魚體圖像分割算法提供了一種有效的機(jī)制,使得算法能夠更好地適應(yīng)水下環(huán)境下的圖像特點(diǎn)和挑戰(zhàn),提高分割的準(zhǔn)確性和穩(wěn)定性。
傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)在處理輸入時(shí),對(duì)所有的特征都以相同的權(quán)重進(jìn)行處理,無(wú)法有效地區(qū)分和利用不同特征之間的重要性。而注意力機(jī)制通過(guò)動(dòng)態(tài)地調(diào)整特征的權(quán)重,使網(wǎng)絡(luò)能夠自適應(yīng)地關(guān)注輸入中具有更高重要性的部分。本算法通過(guò)實(shí)驗(yàn)對(duì)比多種不同的注意力機(jī)制見(jiàn)3.5節(jié),發(fā)現(xiàn)引用“卷積塊的注意力模塊(CBAM,convolutional block attention module)”[17]對(duì)該算法性能提升效果最好。如圖3所示,CBAM是一種綜合了空間注意力和通道注意力的注意力模塊,用于增強(qiáng)卷積神經(jīng)網(wǎng)絡(luò)對(duì)空間和通道間相關(guān)性的關(guān)注,它通過(guò)自適應(yīng)地調(diào)整特征圖的權(quán)重,使網(wǎng)絡(luò)能夠更有針對(duì)性地利用輸入特征中的重要信息。
圖3 CBAM注意力機(jī)制
空間注意力用于關(guān)注輸入特征圖的空間相關(guān)性。它通過(guò)對(duì)特征圖在空間維度上進(jìn)行池化操作,得到每個(gè)空間位置的特征向量。然后,通過(guò)全連接層學(xué)習(xí)每個(gè)位置的權(quán)重,從而獲取每個(gè)空間位置的重要性。最后,通過(guò)廣播乘法將空間注意力權(quán)重與特征圖進(jìn)行逐元素相乘,使得網(wǎng)絡(luò)能夠在不同空間位置上有針對(duì)性地調(diào)整特征的權(quán)重。為了匯總空間特征,主要采用了全局平均池化和最大池化這兩種方法,以利用不同的信息。
對(duì)于一個(gè)輸入特征F,其尺寸為H×W×C。首先,我們對(duì)其進(jìn)行全局平均池化和最大池化,分別得到兩個(gè) 1×1×C的通道描述。接著,這兩個(gè)描述分別經(jīng)過(guò)一個(gè)共享的兩層神經(jīng)網(wǎng)絡(luò)處理:第一層包含C/r個(gè)神經(jīng)元,激活函數(shù)為 Relu;第二層包含C個(gè)神經(jīng)元。此后,得到的兩個(gè)特征進(jìn)行相加,經(jīng)過(guò) Sigmoid 激活函數(shù)產(chǎn)生權(quán)重系數(shù)Mc。最終,通過(guò)將權(quán)重系數(shù)Mc與原始特征F相乘,得到按比例縮放的新特征,詳見(jiàn)公式(3):
Mc(F)=σ{MLP(Poolavg(F))+MLP[Poolmax(F)]}=
(3)
通道注意力用于聚焦輸入特征圖中的通道相關(guān)性,首先通過(guò)在通道維度上進(jìn)行全局平均池化操作,提取每個(gè)通道的全局特征;然后,通過(guò)兩個(gè)全連接層學(xué)習(xí)每個(gè)通道的權(quán)重,從而獲取每個(gè)通道的重要性;最后,通過(guò)廣播乘法將通道注意力權(quán)重與特征圖進(jìn)行逐元素相乘,使得網(wǎng)絡(luò)能夠自適應(yīng)地調(diào)整通道的權(quán)重。
與通道注意力類似,對(duì)于一個(gè)輸入特征F,其尺寸為H×W×C。首先分別對(duì)通道維度進(jìn)行平均池化和最大池化操作,以獲得兩個(gè)H×W×1 的通道描述,然后將這兩個(gè)描述在通道上連接在一起。接下來(lái),通過(guò)一個(gè) 7×7 的卷積層,使用 Sigmoid 作為激活函數(shù),計(jì)算出權(quán)重系數(shù)Ms。最終,將權(quán)重系數(shù)與特征F'相乘,得到經(jīng)過(guò)縮放的新特征,具體參考式(4):
MS(F)=σ{f7*7[Poolavg(F),Poolmax(F)]}=
(4)
通過(guò)綜合空間注意力和通道注意力,CBAM注意力模塊能夠在卷積網(wǎng)絡(luò)的每個(gè)塊(block)中增加對(duì)空間和通道相關(guān)性的關(guān)注。這種注意力機(jī)制使網(wǎng)絡(luò)能夠更好地捕捉輸入特征中的關(guān)鍵信息,減少對(duì)無(wú)關(guān)信息的依賴,從而提升模型的性能和泛化能力,如圖4所示。
圖4 通道注意力和空間注意力模塊
實(shí)驗(yàn)在Linux操作系統(tǒng)下,基于GPU、PyTorch和CUDA框架完成的,具體參數(shù)如表 1所示。
表1 實(shí)驗(yàn)平臺(tái)軟硬件配置
在這項(xiàng)研究中,網(wǎng)絡(luò)使用SUIM[18]數(shù)據(jù)集進(jìn)行了評(píng)估。SUIM數(shù)據(jù)集共包含包括魚類在內(nèi)的多個(gè)類別的1 525張水下圖像及其真實(shí)語(yǔ)義標(biāo)簽。SUIM為每個(gè)類別提供帶有單獨(dú)注釋的測(cè)試拆分,它還包括一個(gè)包含110張圖像的測(cè)試集。因此,在實(shí)驗(yàn)中,我們使用魚類和其他脊椎動(dòng)物類別,并將這些數(shù)據(jù)用于魚類分割。來(lái)自SUIM數(shù)據(jù)集的示例圖像如圖5所示。
圖5 SUIM樣本圖像與相應(yīng)的分割標(biāo)簽圖像。
從魚類和其他脊椎動(dòng)物類別中挑選出魚類圖像僅738張,為提高模型精度和增加模型魯棒性,對(duì)原始數(shù)據(jù)集進(jìn)行樣本增強(qiáng)[19],采用了基于幾何變換、顏色空間變換2類數(shù)據(jù)擴(kuò)充方案,具體方法包括水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)、隨機(jī)旋轉(zhuǎn)、放大縮小、調(diào)整亮度和對(duì)比度這5種擴(kuò)充方式,結(jié)果如圖6所示。擴(kuò)充后數(shù)據(jù)集總數(shù)為4 428張,其中訓(xùn)練集、驗(yàn)證集和測(cè)試集按照8∶1∶1進(jìn)行分配。
圖6 部分SUMI數(shù)據(jù)集數(shù)據(jù)擴(kuò)充圖片
為驗(yàn)證本文方法的有效性,采用以下評(píng)價(jià)指標(biāo):平均像素準(zhǔn)確率(MPA,mean pixel accuracy)、平均交并比(MIoU,mean intersection over union)、像素準(zhǔn)確度等,同時(shí)使用參數(shù)量、FLOPS、模型的大小來(lái)衡量模型的復(fù)雜度。
MPA:平均像素準(zhǔn)確度是像素準(zhǔn)確度的一種改進(jìn)指標(biāo),考慮了每個(gè)類別在圖像中的出現(xiàn)頻率。它計(jì)算每個(gè)類別的像素準(zhǔn)確度,然后對(duì)它們求平均,計(jì)算如式(5)所示:
(5)
MIoU:交并比(IoU,intersection over union)是衡量?jī)蓚€(gè)集合重疊程度的指標(biāo)。在語(yǔ)義分割中,交并比是指預(yù)測(cè)的分割結(jié)果與真實(shí)分割結(jié)果的交集與并集之比。平均交并比計(jì)算每個(gè)類別的交并比,然后對(duì)它們求平均,計(jì)算如式(6)所示:
(6)
式中,k表示像素的類別數(shù);pii表示實(shí)際類別為i、預(yù)測(cè)的類別也為i的像素的數(shù)目;pij表示實(shí)際類別為i、預(yù)測(cè)的類別為j的像素的數(shù)目;pji表示實(shí)際類別為j、預(yù)測(cè)的類別為i的像素的數(shù)目。
準(zhǔn)確率(accuracy)表示預(yù)測(cè)結(jié)果中正確的占總預(yù)測(cè)值的比例,如式(7)所示:
(7)
式中,TP為被劃分為正類且判斷正確的個(gè)數(shù);TN為被劃分為負(fù)類且判斷正確個(gè)數(shù);FP為被劃分為正類且判斷錯(cuò)誤的個(gè)數(shù);FN為被劃分為負(fù)類且判斷錯(cuò)誤個(gè)數(shù)。
在訓(xùn)練過(guò)程中,我們采用了以下參數(shù)設(shè)置。我們選擇了批量大小為16,每次迭代使用16個(gè)樣本進(jìn)行模型參數(shù)的更新。我們的模型經(jīng)過(guò)了300輪的訓(xùn)練,每一輪中模型遍歷整個(gè)訓(xùn)練集一次,并進(jìn)行參數(shù)更新。為了優(yōu)化模型,我們采用了Adam優(yōu)化算法,它是一種自適應(yīng)學(xué)習(xí)率的優(yōu)化算法,它結(jié)合了梯度的一階矩估計(jì)(均值)和二階矩估計(jì)(方差),可以更有效地調(diào)整學(xué)習(xí)率,加速模型的收斂過(guò)程。初學(xué)習(xí)率設(shè)置為0.01,并通過(guò)余弦退火(cosine annealing)的方式,在訓(xùn)練過(guò)程中降低學(xué)習(xí)率。
由于水下魚體語(yǔ)義分割是一個(gè)二分類問(wèn)題,只有魚體和背景兩個(gè)類別,所以我們采用了二分類交叉熵?fù)p失函數(shù),計(jì)算如式(8)所示。二分類交叉熵?fù)p失函數(shù)可以度量模型預(yù)測(cè)結(jié)果與真實(shí)結(jié)果之間的差異,并推動(dòng)模型學(xué)習(xí)到更準(zhǔn)確的預(yù)測(cè)。通過(guò)最小化交叉熵?fù)p失,模型能夠逐漸調(diào)整權(quán)重和偏差,以使預(yù)測(cè)結(jié)果與真實(shí)結(jié)果盡可能接近。
(8)
式中,yi表示樣本i的真實(shí)值,pi表示樣本i預(yù)測(cè)為正類的概率,N為圖像像素點(diǎn)的總數(shù)目。
在我們的訓(xùn)練過(guò)程中,我們追蹤了損失函數(shù)隨著訓(xùn)練迭代次數(shù)的變化。圖7是在預(yù)先訓(xùn)練好的MobileNetV2網(wǎng)絡(luò)模型的基礎(chǔ)上添加水下魚體樣本進(jìn)行再訓(xùn)練過(guò)程中的loss變化圖。觀察圖7發(fā)現(xiàn),初始階段,損失函數(shù)迅速下降,表明模型在學(xué)習(xí)數(shù)據(jù)的特征和模式;在中期階段,我們可以觀察到損失函數(shù)出現(xiàn)輕微的震蕩或波動(dòng),這可能是由于模型在權(quán)衡不同樣本和特征的時(shí)候產(chǎn)生了一些波動(dòng),但整體上保持在一個(gè)相對(duì)穩(wěn)定的范圍內(nèi);最終,損失函數(shù)在一個(gè)穩(wěn)定的范圍內(nèi)波動(dòng),不再有明顯的下降或增加趨勢(shì),說(shuō)明在當(dāng)前訓(xùn)練參數(shù)及模型參數(shù)設(shè)置下,分割網(wǎng)絡(luò)模型的性能也就接近最優(yōu)。
圖7 損失函數(shù)變化圖
在本研究中,我們比較了5種不同模型的性能,即UNet[20]、DeepLabv3+[21]、HRNet[22]、PSPNet和Co-PSPNet,對(duì)水下魚體分割數(shù)據(jù)集進(jìn)行訓(xùn)練、驗(yàn)證和測(cè)試,測(cè)試集的mIoU、mAP和Accuracy結(jié)果如表2所示。
表2 不同模型的測(cè)試結(jié)果
由表2可知,Co-PSPNet模型的MIoU達(dá)到92.21%,相比于常用的語(yǔ)義分割網(wǎng)絡(luò)模型UNet、DeepLabv3+、HRNet和PSPNet分別高出5.05、2.29、0.57和1.64個(gè)百分點(diǎn)。首先,Unet模型使用VGG16作為特征提取器,在mIoU、mPA和Accuracy方面表現(xiàn)良好,但相較于其他模型,其性能稍顯不足。DeepLabv3+模型采用了Xception作為特征提取器,并取得了出色的性能,超越了Unet模型在各項(xiàng)指標(biāo)上的表現(xiàn)。HRNet模型以hrnetv2_w18作為特征提取器,獲得了相對(duì)較高的得分,這歸功于其高分辨率的特征融合和多尺度處理能力。PSPNet模型利用Resnet50作為特征提取器,雖然在mIoU和Accuracy方面略低于其他模型,但在mPA方面表現(xiàn)相對(duì)較好。然而,Co-PSPNet模型采用了輕量級(jí)的MobileNetV2作為特征提取器,并在所有評(píng)價(jià)指標(biāo)上取得了最佳性能。這表明我們的改進(jìn)措施在水下魚體分割任務(wù)中是有效的。綜上所述,通過(guò)對(duì)這些模型的性能進(jìn)行比較分析,Co-PSPNet模型以其出色的性能在水下魚體分割任務(wù)中脫穎而出。
在本研究中,我們比較了5種不同模型的復(fù)雜度,即UNet、DeepLabv3+、HRNet、PSPNet和Co-PSPNet。表3總結(jié)了這些模型的參數(shù)數(shù)量、浮點(diǎn)運(yùn)算數(shù)(FLOPs)以及模型大小。相比之下,我們提出的Co-PSPNet的模型在復(fù)雜度方面表現(xiàn)出明顯的優(yōu)勢(shì)。我們的模型具有更少的參數(shù)數(shù)量(僅為3.3 M)、更低的FLOPS(760.14 M)和更小的模型大小(13.5 MB)。這意味著我們的模型在計(jì)算資源和存儲(chǔ)空間方面要求較低,更加輕量級(jí),適合在資源有限的水下環(huán)境中應(yīng)用。
表3 5種模型的復(fù)雜度對(duì)比
各模型部分輸出結(jié)果可視化如圖8所示,從圖中可以清楚地看出,在水下魚體語(yǔ)義分割任務(wù)中,Co-PSPNet模型相較于UNet、DeepLabv3+、HRNet和PSPNet模型,呈現(xiàn)出更全面、準(zhǔn)確的檢測(cè)結(jié)果。
首先,通過(guò)觀察圖8中的可視化結(jié)果,我們可以發(fā)現(xiàn)改進(jìn)的模型相對(duì)于UNet和DeepLabv3+模型,能夠更好地提取和利用特征信息,提供更精確的分割結(jié)果。
其次,相較于HRNet模型,改進(jìn)的模型在水下魚體語(yǔ)義分割任務(wù)中展現(xiàn)出更好的綜合性能。盡管HRNet模型在捕捉圖像中的全局和局部信息方面表現(xiàn)出色,但在魚體的特征表達(dá)和語(yǔ)義分割方面存在一定的限制。相比之下,改進(jìn)的模型通過(guò)引入新的特征提取和融合注意力機(jī)制,能夠更好地結(jié)合全局和局部信息,提高魚體語(yǔ)義分割的準(zhǔn)確性和魯棒性。
最后,與PSPNet模型相比,改進(jìn)的模型在處理不同尺度魚體時(shí)具有更好的適應(yīng)性。水下環(huán)境中,魚體的尺寸和形狀可能存在較大的變化。PSPNet模型使用金字塔池化機(jī)制來(lái)捕捉不同尺度的上下文信息,但在處理尺度差異較大的魚體時(shí)可能存在一定的限制。改進(jìn)的模型通過(guò)引入CoordConv模塊和注意力機(jī)制,能夠更好地處理尺度變化,提高魚體語(yǔ)義分割的多樣性和泛化能力。
綜上所述,通過(guò)圖8的可視化結(jié)果,我們可以得出結(jié)論:在水下魚體語(yǔ)義分割任務(wù)中,Co-PSPNet具有更全面、準(zhǔn)確和穩(wěn)健的性能。這些結(jié)果為改進(jìn)模型在水下生態(tài)研究、水下監(jiān)測(cè)和保護(hù)等領(lǐng)域的應(yīng)用提供了堅(jiān)實(shí)的基礎(chǔ)。未來(lái)的研究可以進(jìn)一步探索改進(jìn)模型的潛力,并將其應(yīng)用擴(kuò)展到更廣泛的水下場(chǎng)景,如海洋生物學(xué)研究、水下資源勘探和水下遺址保護(hù)等,為未來(lái)水下目標(biāo)檢測(cè)和分割技術(shù)的發(fā)展提供了新的思路和方向。
為了能夠在有限硬件條件下進(jìn)行魚體圖像分割,我們通過(guò)選擇輕量級(jí)主干網(wǎng)絡(luò)對(duì)PSPNet網(wǎng)絡(luò)進(jìn)行改進(jìn),主要對(duì)比了ShuffleNetV1[23]、ShuffleNetV2[24]、MobileNetV1[25]、MobileNetV2、MobileNetV3[26]網(wǎng)絡(luò),并在SUIM數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。
從表4的結(jié)果來(lái)看,將MobileNetV2網(wǎng)絡(luò)作為PSPNet的主干網(wǎng)絡(luò)獲得了最好的性能。此外,在參數(shù)量和模型大小方面也具有優(yōu)勢(shì)。雖然在FLOPs方面相對(duì)于ShuffleNetV2和MobileNetV3稍有遜色,但綜合來(lái)看,MobileNetV2網(wǎng)絡(luò)在PSPNet中表現(xiàn)較為出色。
表4 不同主干網(wǎng)絡(luò)性能對(duì)比
注意力機(jī)制本質(zhì)是通過(guò)計(jì)算相應(yīng)的權(quán)重值,讓卷積神經(jīng)網(wǎng)絡(luò)識(shí)別出需要重點(diǎn)關(guān)注的有用特征向量,忽略不重要的特征信息。從而在避免無(wú)用特征干擾擬合結(jié)果的同時(shí),還對(duì)運(yùn)算速度有一定的改善。我們基于MobileNetV2主干網(wǎng)絡(luò),在特征金字塔后面引入3個(gè)不同的注意力機(jī)制進(jìn)行對(duì)比,分別為“坐標(biāo)注意力機(jī)制(CA,coordinate attention)”[27]、“全局注意力機(jī)制(GAM,global attention mechanism)”[28]、CBAM注意力機(jī)制。
通過(guò)表5中對(duì)比實(shí)驗(yàn)結(jié)果,我們可以得出以下結(jié)論:引入注意力機(jī)制可以有效地提升水下魚體圖像分割算法的性能。不同的注意力機(jī)制在性能上有所差異,CBAM注意力機(jī)制表現(xiàn)出最佳的性能。這表明加入通道和空間注意力可以更好地捕捉到關(guān)鍵魚體特征,提高分割的準(zhǔn)確性和魯棒性。
表5 不同注意力機(jī)制性能對(duì)比
為證明MobileNetV2、CoordConv模塊、CBAM注意力機(jī)制等各模塊的有效性,利用控制變量法設(shè)計(jì)了4組消融實(shí)驗(yàn),以mIoU、mAP和Accuracy作為實(shí)驗(yàn)評(píng)價(jià)指標(biāo),實(shí)驗(yàn)數(shù)據(jù)如表6所示。其中采用的是預(yù)訓(xùn)練的MobileNetV2主干網(wǎng)絡(luò)。
表6 不同模塊的消融實(shí)驗(yàn)結(jié)果
在本研究中,我們提出了一種基于Co-PSPNet網(wǎng)絡(luò)的輕量級(jí)水下魚體圖像分割算法,通過(guò)將PSPNet的主干網(wǎng)絡(luò)替換為MobileNetV2,加入CoordConv模塊和注意力機(jī)制模塊,我們成功地在保證精度的同時(shí)降低了網(wǎng)絡(luò)的計(jì)算復(fù)雜度和參數(shù)量,從而提高了算法的效率,使其能夠更好地適應(yīng)水下環(huán)境的特點(diǎn)。
通過(guò)在公開(kāi)的水下魚體圖像數(shù)據(jù)集上進(jìn)行大量實(shí)驗(yàn),我們驗(yàn)證了我們提出的算法在魚體圖像分割任務(wù)上的優(yōu)越性能。實(shí)驗(yàn)結(jié)果表明,我們的方法能夠有效地從水下圖像中提取出魚體的準(zhǔn)確輪廓,為水下生態(tài)研究和水下機(jī)器人的應(yīng)用提供了重要支持。
盡管我們的算法取得了令人滿意的結(jié)果,但仍存在一些改進(jìn)的空間。一個(gè)方向是實(shí)現(xiàn)多種類的分割,即將算法擴(kuò)展到識(shí)別和分割水下環(huán)境中的多種魚類,當(dāng)前的研究側(cè)重于魚體圖像分割任務(wù),但在實(shí)際應(yīng)用中,可能會(huì)遇到多種魚類共存的情況,因此,將我們的算法擴(kuò)展到多種類的分割將進(jìn)一步提高其實(shí)用性和適應(yīng)性。還有就是可以再進(jìn)一步優(yōu)化注意力機(jī)制的設(shè)計(jì),以提高網(wǎng)絡(luò)對(duì)關(guān)鍵魚體特征的關(guān)注程度。