官术网_书友最值得收藏!

1.2.2 網絡結構

本章提出了一種結合注意力機制的多尺度特征融合圖像去霧算法,該算法的結構如圖1-1所示。

從圖1-1中可以看出,本章算法的主體結構使用了類似于UNet的編碼器-解碼器結構,主要由四個模塊組成:編碼器子網絡、特征轉換模塊、特征注意力模塊和解碼器子網絡。本章算法首先使用 CNN 提取圖像中多個尺度的特征圖,然后采用跳躍連接的方式對不同尺度的特征圖進行融合,使得最終得到的特征圖中既包含深層特征,也包含淺層特征,提高了本章算法的特征表達能力。同時,本章算法加入由通道注意力模塊和像素注意力模塊組成的特征注意力模塊,使本章算法更加關注濃霧像素區域和重要通道信息。下面將詳細描述本章提出的結合注意力機制的多尺度特征融合圖像去霧算法的各個組成部分。

圖1-1 本章算法的結構

1.2.2.1 編碼器子網絡

編碼器子網絡中包含卷積層和下采樣層。卷積層中包含兩個操作。首先,使用卷積核進行卷積運算,卷積的步長為2,卷積核的大小為3×3,原因是3×3的卷積核相較于較大的卷積核,可在有效提取特征的同時減少網絡的參數量,從而提高了計算效率。其次,在卷積運算之后通過ReLU激活函數進行下采樣操作,從而獲取多個尺度的特征圖,用這種方式編碼圖像信息。

1.2.2.2 特征轉換模塊

眾所周知,深度網絡的主要優勢是能夠表示非常復雜的函數,同時學習到更深層且更為抽象的特征,進而提升網絡的特征表達能力。因此,早期研究人員想通過不斷加深網絡的深度來提高網絡的性能,但最終發現網絡達到一定的深度后,性能不升反降。經研究發現,造成這種現象的原因是網絡過深導致反向傳遞時梯度逐漸消失,無法調整前面網絡層的權重。殘差網絡[19]的出現解決了該問題。殘差網絡采用恒等映射的方式,能夠在保證網絡性能不隨著網絡加深而退化的同時提取到更深層的特征。為了平衡網絡性能和計算效率,本章使用由18個殘差模塊組成的特征轉換模塊進行特征學習,每個殘差模塊中包含2個卷積運算和1個激活函數,卷積運算中的卷積核大小均為3×3,激活函數選用ReLU激活函數。特征轉換模塊如圖1-2所示。

圖1-2 特征轉換模塊

1.2.2.3 特征注意力模塊

現有的大多數去霧算法都沒有區別處理不同的通道和像素。大量研究表明,不同的通道特征具有完全不同的加權信息。此外,霧圖中的霧濃度分布也是不均勻的,薄霧區域的像素權重和濃霧區域的像素權重完全不同。如果平等地對待霧圖中的通道和像素將會花費大量的資源去計算不必要的信息,同時還會忽略重要的信息,導致網絡缺乏覆蓋所有通道和像素的能力,最終限制網絡的性能。自從注意力機制在相關研究中取得良好的效果后[20],許多研究中都開始加入注意力機制。本章在編碼器-解碼器結構中加入了由通道注意力模塊和像素注意力模塊組成的特征注意力模塊。特征注意力模塊能讓本章算法更加關注重要的通道信息與像素信息,將更多的注意力集中在濃霧像素和重要的通道信息上,為處理不同類型的信息提供靈活性,對于一些霧濃度高且細節豐富的有霧圖像的去霧性能提升更加顯著。特征注意力模塊的結構如圖1-3所示。

圖1-3 特征注意力模塊的結構

(1)通道注意力模塊。本章采用平均池化的方式來描述通道中的全局空間信息,如式(1-3)所示。

式中,Fc表示第c個通道輸入的特征圖;Hp·)表示池化函數;gc表示第c個通道輸出的特征圖;HW分別表示特征圖的高和寬;Xcij)表示第c個通道的特征圖在像素(ij)處的值。特征圖的尺寸經此變換之后由C×H×W變為1×1(C為通道數量)。特征圖首先經過2個卷積層、1個ReLU激活函數和1個Sigmoid激活函數,如式(1-4)所示。

式中,δ·)表示ReLU激活函數;σ·)表示Sigmoid激活函數;CAc表示第c個通道的權重。最后將CAc與輸入的特征圖Fc相乘可得到經通道注意力模塊的特征圖,如式(1-5)所示。

(2)像素注意力模塊。把通道注意力模塊輸出的特征圖經過2個卷積層、1個ReLU激活函數和1個Sigmoid激活函數[如式(1-6)所示]后,其尺寸由C×H×W變為1×H×W

式中,δ·)表示ReLU激活函數;σ·)表示Sigmoid激活函數;PAc表示第c個通道的權重。將PAc與像素注意力模塊的輸入特征圖相乘可得到經像素注意力模塊的特征圖,如式(1-7)所示。

1.2.2.4 解碼器子網絡

解碼器子網絡由3個上采樣層和3個卷積層組成。與編碼器子網絡相反,解碼器子網絡的上采樣層順序地恢復圖像細節,最終得到去霧圖像。為了最大化多層級之間的信息流,本節算法采用跳躍連接的方式將編碼器子網絡和解碼器子網絡之間的特征圖連接起來,并在跳躍連接中加入了特征注意力模塊,使得本章算法能更加關注圖像中濃霧像素區域和重要通道信息。

主站蜘蛛池模板: 东丰县| 石棉县| 中牟县| 卫辉市| 石河子市| 钦州市| 平远县| 永善县| 申扎县| 玉树县| 延边| 潮安县| 社旗县| 璧山县| 泌阳县| 永修县| 池州市| 萝北县| 大化| 浦县| 湖口县| 栾城县| 石渠县| 漯河市| 泊头市| 班玛县| 宁远县| 都昌县| 西畴县| 当涂县| 错那县| 高密市| 大荔县| 南安市| 六盘水市| 乳山市| 西林县| 鸡泽县| 海宁市| 嵊州市| 罗定市|