尹 曠,王紅斌,胡 帆,莫文雄,方 健,楊 鵬
(1.中國南方電網有限責任公司 中低壓電氣設備質量檢驗測試重點實驗室,廣東 廣州 510410;2.武漢大學 圖像傳播與印刷包裝研究中心,湖北 武漢 430072)
陰影是日常生活中常見的現象,包含眾多場景信息,如光源信息、空間位置信息等。陰影在物體識別和場景判讀中具有重要作用,例如陰影可以用來推斷導致陰影的物體的幾何形狀、獲得物體的三維分析[1]或找到場景光源的方向[2],在航空圖像中還可用于識別建筑物[3]以獲得場景的三維重建,或用于檢測云及其陰影[4]。因此,陰影檢測任務具有重要的研究意義。
陰影檢測方法主要分為基于場景物理模型的傳統陰影檢測方法和基于深度學習的陰影檢測方法。傳統陰影檢測方法通常是利用場景物理模型建模,對物理模型特定的屬性進行分析,這些屬性包括光照角度、亮度、光譜屬性等,但是傳統方法對陰影的特征描述能力有限,不能理解更深層和抽象的特性。
隨著深度學習的興起,卷積神經網絡(CNN)被眾多研究者證明了其強大的特征學習能力,Fang等人[5]提出了一個名為ECA(Efficient Context Discovery)的模塊用于陰影檢測,可以獲得更有效的目標上下文特征。王思凡[6]提出了一種新型雙流空洞卷積網絡在一定程度上解決陰影漏檢問題。但是,目前的模型存在小陰影區域漏檢、無法區分深色區域和陰影區域、陰影和非陰影邊緣分割不準確等問題,因此本文采取了多任務學習思想,引入注意力機制和反饋學習機制,提出多任務注意力特征反饋網絡來解決目前陰影檢測存在的問題。
許多研究人員應用基于深度神經網絡的方法來開展陰影檢測任務,這類方法的原理是將陰影區域的信息通過堆疊卷積層進行深度編碼并學習其深層特征,最后通過分類器將每個像素分類為陰影或非陰影。陰影檢測問題可以解釋為輸入原始彩色圖像,使用基于深度神經網絡的生成模型生成二進制陰影圖像的問題,許多具有特征結構的模型網絡被提出,例如基于CNN的patched-CNN[7]和DSDNet[8]。此外,對抗性訓練策略也被許多研究者采用,例如ST-CGAN[9]。這些模型訓練單一的任務進行陰影檢測區域的生成,如圖1所示,容易存在漏檢小陰影區域、無法區分深色區域和陰影區域、陰影和非陰影邊緣分割不準確等問題。

(a) 輸入圖像
專注于單個任務的模型訓練會導致模型忽略一些相關任務中可能提升目標任務的潛在信息,而通過多任務進行一定程度的參數共享會提升模型的泛化能力,從而得到更好的結果。本次研究引入多任務學習思想,對陰影檢測進行陰影區域檢測、陰影邊緣檢測和陰影計數檢測的相互學習。
此外,注意力機制(Attention Mechanism)逐漸成為神經網絡中的一個重要概念,本文也引入注意力機制來進一步提高模型的特征挖掘能力。空間注意力有利于突出陰影的外觀特征,而通道注意力更適合用于高度編碼的深層特征。
陰影檢測任務屬于原始彩色圖像和二值陰影圖之間的映射關系學習任務,漸進細化、層級迭代的反饋學習方式更有利于整合輸入和高級語義信息,因此,在任務中引入反饋機制,逐級細化學習陰影區域特征,從而使得網絡可以更好地學習陰影特征。
多任務注意力特征反饋網絡是由多任務驅動學習的多模塊網絡,主要由編碼和反饋解碼兩部分組成。圖2為本文提出的多任務注意力特征反饋網絡結構圖,相關的部分網絡結構注釋已在圖中標出。輸入圖像首先經過ResNeXt[10]卷積子模塊獲得5個不同尺度的特征塊(L1、L2、L3、L4、L5),將L1特征塊與上采樣后的L5特征塊相加作為陰影的邊緣特征EF,隨后L2~L5特征塊通過注意力機制進行特征融合,并由下至上依次經過上采樣、反饋模塊循環處理、與上層特征塊嵌合,最后一個反饋模塊的輸出結果經過進一步的反卷積解碼得到最終的模型輸出,即二值化的陰影檢測結果。

圖2 多任務注意力特征反饋網絡整體結構圖Fig.2 Overall structure of multitask attention feature feedback network
1.2.1 注意力特征融合子模塊
本文分別采用通道注意力和空間注意力對不同尺度的特征塊進行特征激活。對于通道注意力,首先對于高級特征Fh∈W×H×C,將其拆解為其中是第i個通道對應的特征,C為總通道數。處理公式可以歸納為:
CA=F(vh,W)=σ1(fc2(δ(fc1(vh,W1)),W2)),
(1)
式中,W表示經過通道注意力激活后的特征塊的中的參量值,σ1表示的是sigmoid激活操作,fc表示全連接層,δ表示ReLU激活運算。
空間注意力的處理可以歸納為:
(2)
(3)
(4)
式中,W為經過空間注意力激活后的特征塊的中的參量值,σ2表示sigmoid激活操作,conv1和conv2分別表示卷積參數為1×k×C和k×1×1的兩個卷積層。經過空間注意力和通道注意力加權后的特征塊依次標記為L2′、 L3′、 L4′ 、L5′,經過特征學習反饋子模塊處理后得到最終輸出。
1.2.2 特征學習反饋子模塊
為了提高陰影檢測效果,本研究中引入陰影邊緣特征對特征學習的約束,設計了特征反饋學習子模塊,模塊結構如圖3所示。
本研究中,特征反饋子模塊擁有兩個輸入Fin和EF,其中Fin為兩個特征塊拼接后的特征塊;EF為L1特征塊與上采樣后的L5特征塊相加所得到的邊緣特征。整個網絡共有三個特征學習反饋子模塊,圖3中從下至上,第一個反饋子模塊的Fin由上采樣后的L5′和L4′拼接所得,第二個反饋子模塊的Fin由第一個反饋子模塊的Fout經上采樣后和L3′拼接所得,第三個反饋子模塊的Fin由第二個反饋子模塊的Fout經上采樣后和L2′拼接所得,三個反饋子模塊的EF輸入相同。
每個特征反饋子模塊共進行了三次迭代反饋學習,每次迭代學習中均使用了三次空洞卷積(Dilated Convolution)進行陰影檢測上下文信息的提取,空洞卷積具有更大的感受野,可以更好地捕捉全局信息和上下文信息,反饋子模塊的具體參數設置如表1所示。

圖3 特征反饋學習子模塊Fig.3 Feature feedback learning module

表1 特征反饋學習子模塊網絡參數Tab.1 Feature feedback learning module network parameters
1.2.3 損失函數設計
在本次研究中,由于存在陰影區域、陰影邊緣和陰影數量三種特征任務的學習過程,因此與之對應存在三種特征的損失函數進行模型訓練的監督學習,最終將三者按照不同權重進行相加得到最終的總損失函數。將標記了陰影區域的掩膜圖像作為陰影區域檢測的真實值,記為Gregion;由于掩膜圖像為二值圖像,因此可以通過Canny邊緣檢測算子對掩膜圖像進行運算得到陰影區域的邊緣,即得到了本次訓練任務中的陰影區域邊緣檢測的真實值,記為Gedge;進一步對掩膜圖像進行連通區域標記即可得到陰影區域的數量,并且通過式(5)計算所得陰影區域數量對應的陰影數量特征值SC,以此作為陰影區域數量檢測的真實值,記為Gcount。
(5)

(6)

(7)

(8)
(9)
不同任務的損失項相加權重不同,在本次研究中,權重依次設置為:α=5,β=1。
為驗證本文所提算法的有效性,在SBU和ISTD數據集上與其他多種經典方法開展對比實驗,對比實驗運行環境為Intel(R) Core(TM) i9-10980XE CPU @ 3.00 GHz和Nvidia TITAN RTX 24G GPU。
陰影檢測任務在SBU數據集[11]和ISTD數據集[9]的測試集上計算模型結果的平衡錯誤率(Balanced Error Rate,BER)、陰影區域錯誤率(Shadow Error,SE)非陰影區域錯誤率(Non-Shadow Error,NSE)三個指標,數值越低代表模型的預測效果越好,各指標結果和目前陰影檢測的其他經典方法對比結果如表2所示,其中黑色加粗的數值表示同列指標中的最優值。從表中的指標對比可以發現,對整幅圖像的陰影去除做評價,本次研究中的模型取得了最優的結果,證明了本次研究的有效性。在陰影區域和非陰影區域的錯誤率指標上雖未全部取得最優,但對于ISTD數據集的非陰影區域錯誤率取得最優,對于未取得最優的指標,也與最優值差距較小。

表2 陰影檢測模型指標統計結果Tab.2 Statistical results of shadow detection model indicators
陰影檢測任務的主觀評價是通過本次研究模型和其他經典模型的陰影檢測結果圖之間的對比來直觀展現的,結果對比如圖4所示,其中第一列為從SBU數據集和ISTD數據集中選取的部分帶陰影區域的場景圖像。由圖4可見,本文的陰影檢測模型的檢測結果與真實值圖像(Ground Truth)最為接近,表現出了最優的陰影檢測結果。本文陰影檢測模型更好地區分了陰影區域和深色非陰影區域、準確地檢測出了陰影,未多檢測出其他陰影區域,模型對陰影的檢測結果更讓人滿意。

圖4 本文陰影檢測模型與其他方法陰影檢測結果對比Fig.4 Comparison of shadow detection results between the shadow detection model in this paper and other methods
本文針對目前陰影檢測存在的漏檢、誤檢等問題提出了基于多任務注意力特征反饋網絡的陰影檢測模型,該模型融合多任務特征學習和注意力反饋機制,通過對全局特征和局部細節的約束學習以及多次注意力特征迭代反饋學習來準確地檢測單幅圖像中存在的陰影區域,并與其他方法在兩個經典數據集上進行對比分析,證實本文方法有效地解決了目前陰影檢測存在的漏檢小陰影區域、誤檢非陰影區域問題。
但本文算法使用的數據集中的陰影區域是人工標注所得,其準確性受到了一定的限制,這對模型訓練產生了不利影響,此外,陰影圖像的拍攝和無陰影圖像的拍攝存在時間差,這就導致場景中的其他信息會存在一定的差異變化,影響了數據集的準確性。因此,獲取更準確和高質量的數據集可以進一步提高方法的準確性和有效性。