廖一帆 李子豪 伍春花 汪國有 劉且根*
①(南昌大學信息工程學院 南昌 330031)
②(華中科技大學人工智能與自動化學院 武漢 430000)
隨著計算機視覺的快速發展,彩色圖像灰度化技術越來越受到重視。由于灰度圖像能用較少的數據信息表示圖像的大部分特征,所以彩色圖像灰度化在多個領域都有廣泛的應用。在醫學圖像分析中,灰度圖像常用于醫學領域中的檢查和診斷。在人臉識別、目標跟蹤等領域,彩色圖像灰度化常用于圖像預處理階段,大大減少圖像信息存儲量和計算量。此外,圖像灰度化還可以提升圖像的質感,對提升打印機打印效果、中國水墨畫渲染、黑白攝影等方面都有巨大幫助。因此,圖像灰度化技術具有非常重要的研究意義。
傳統的彩色圖像灰度化方法是直接取彩色空間R, G, B通道之一或3個通道的加權和,亦或是其他彩色空間(如CIELAB和HSI)的亮度通道。這種方法雖然運算量少且算法簡單,但是在等亮度情況下很容易丟失細節信息。同時對于有復雜顏色區域的彩色圖像,只利用亮度通道并不能真實地表示原圖片內容的結構和對比度。彩色圖像灰度化的本質是一個降維過程,這個過程中無法避免地會產生信息的丟失。如何在灰度化過程中保留彩色圖像的顯著特征信息一直是一個具有挑戰性的問題。
為了能最大程度地保留灰度圖像中彩色圖像信息,許多方法被相繼提出[1-4]。根據彩色圖像到灰度圖像的映射函數在整幅圖像像素的應用范圍,灰度化算法主要分為3大類:局部映射法、全局映射法和混合法。
在局部映射法中,從彩色圖像到灰度圖像的映射像素通常隨著空間變化,灰度值取決于像素的局部位置分布。例如,Zhu等人[5]基于濾波理論提出一種測量通道差異的方法(即通道顯著性),根據通道顯著性求出局部調整矩陣來調整亮度通道。盧紅陽等人[6]借鑒線性降維局部保留投影的思想,提出了一種基于最大加權投影求解算法。雖然局部映射方法得到的灰度圖像可以保持圖像的局部對比度信息和結構信息,但是由于算法主要側重于局部信息,從而導致整體圖像信息損失嚴重,而且會產生噪聲增強和光暈等現象。
全局映射法通常對整幅圖像的所有像素采用相同的變換函數。例如,Lu等人[7]首先將灰度化函數定義為由RGB組合的9個多項式基加權求和,然后優化目標函數得到加權系數。為提高實時性,Lu等人[8]又通過離散化加權系數的方式來簡化模型。然而,由于最小化目標函數是對權值求偏導數,具有高度非線性,只能尋找到解的近似值,而且有可能是局部解。為了改善這些問題,Liu等人[9]提出了一種半參數方法,即將Lu等人[7]所提出算法與Matlab中rgb2gray函數結合。雖然全局映射能夠更好地保持全局結構信息,但由于所有的像素采用了相同映射法,灰度化后的圖像可能無法保存原彩色圖像的局部特征。
混合法是局部映射和全局映射的結合,通常包含了多重約束或多個階段過程。例如,Hsin等人[10]提出一種兩階段的彩色圖像灰度化算法。第1階段基于自然色序全局映射,在亮度信息上增加色度信息;第2階段通過調整局部對比度對第1階段輸出灰度值進行亮度補償。Ancuti等人[11]提出一種基于圖像融合的灰度化方法,將RGB三通道通過拉普拉斯加權和全局對比加權進行映射。混合法不僅能夠保持全局結構信息,也能保持局部的對比度信息,但是計算復雜度較高,可能損失一部分對比度信息,破壞全局顏色一致性。
在一些現實場景中,我們也希望在傳輸或存儲之后從灰度圖像恢復成視覺感知較好的彩色圖像。將灰度圖像復原成彩色圖像是一個極具挑戰性的逆問題。許多基于深度學習的著色方法被成功地應用于各種著色任務[12-14]。然而現有的最先進的方法往往只關注灰度化或著色的單向任務,只有很少的研究方法是針對可逆彩色圖像灰度化問題。其中,Xia等人[15]提出了編碼器-解碼器的模型實現彩色圖像和灰度圖像的相互轉換,但是編碼器-解碼器模型容易受到模型容量和顏色編碼模式的限制和影響。Zhao等人[16]提出了可逆圖像去色(Invertible Decolorization Network, IDN)方法,該方法通過模型的正向過程從彩色圖像中分離出顏色信息,將顏色信息編碼成一組高斯分布的潛在變量。然后通過重新隨機采樣一組高斯分布的變量,與灰度圖像組成可逆網絡的反向輸入,經過逆向過程復原成彩色圖像。這些方法的效果仍然不足以令人滿意,有些顏色細節很難復原。因此,提出更好的可逆彩色圖像灰度化方法在實現圖像壓縮和解壓縮等方面是極為緊迫的。
基于上述分析,本文提出一種新的基于輔助變量增強的可逆彩色圖像灰度化方法,即變量增強可逆灰度化網絡(Variable Augmented Invertible Decolorization Network, VA-IDN)。首先,可逆網絡的正向過程將彩色圖像灰度化。其次,通過變量增強技術[17],逆向過程無需格外的高斯分布變量,可以直接將灰度圖像恢復成彩色圖像。本文模型不容易受到模型容量和編碼模式的限制,無論在圖像的全局還是局部都可以保留最多的亮度、顏色對比度和結構相關性等特征,同時具有更強的泛化能力。此外,通過網絡的可逆特性同步訓練雙向過程,加快了訓練速度。因此,本文提出的方法在灰度和彩色圖像上都產生了更符合人眼感知的視覺效果,能有效完成圖像壓縮任務,并大大降低存儲空間,提高系統效率。
本文工作是本研究組將使用深度學習進行彩色圖像灰度化工作[17]的思想運用在可逆功能特性上的一次突破。主要貢獻總結如下:
(1)提出一種基于輔助變量增強的可逆彩色圖像灰度化方法,正向過程實現彩色圖像灰度化,逆向過程可以使灰度圖像復原成彩色圖像。本文在模型中運用變量增強技術,滿足網絡的可逆特性,保證輸入輸出的圖像通道數相同。
(2)所提方法比目前最好的可逆網絡方法的彩色圖像灰度化效果的PSNR值高2~5 dB,灰度圖像色彩復原結果的PSNR值高3.50~29.60 dB。在多個數據集上的色彩復原圖像的PSNR值高達60 dB,圖像亮度和顏色對比度的復原程度高。實驗驗證了模型具有更強的泛化能力和更好的恢復性。
可逆彩色圖像灰度化旨在彩色圖像與灰度圖像的相互轉換,是一個相對較新的研究熱點,尚未得到充分研究。我們將可逆灰度化和深度學習相結合,運用可逆神經網絡得到的灰度圖像不僅可以保留更多原始圖像中的結構特征和顏色對比度,還能完全恢復丟失的顏色信息。
在本文中,我們提出基于輔助變量增強的彩色圖像灰度化的可逆網絡模型,通過監督學習得到魯棒的和視覺感知較好的彩色到灰色映射。該模型使用INN作為訓練網絡,INN中嵌套了多個可逆塊,我們通過添加輔助變量為輸出層提供額外的監督信息[17],實現網絡的可逆性。模型對每個可逆塊的雅可比行列式進行正則化,學習兩個分布之間的映射,即灰度分布和彩色分布。
可逆灰度化模型的可視化實現結構圖如圖1所示。在模型訓練過程中,將彩色圖像作為可逆網絡的正向輸入。網絡通過訓練捕捉和保存原始彩色圖像中的亮度、結構信息、對比度等特征,由模型編碼得到灰度圖像,并與目標灰度圖像計算損失,然后作為生成映射的條件引入。利用得到的灰度圖像經過逆向過程,網絡將學習到的彩色圖像相關特征賦予灰度圖像,完成灰度圖像到彩色圖像的復原,并對恢復的彩色圖像與原始彩色圖像計算損失。通過可逆網絡的雙向映射,實現了可逆灰度化的全過程。
圖1 基于輔助變量增強的可逆彩色圖像灰度化模型的可視化結構圖
本文提出的VA-IDN模型由8個可逆塊組成,可逆塊的詳細結構圖如圖2所示,每個可逆塊由1×1可逆卷積層和仿射耦合層組成。模型使用可逆雙映射函數(k指變換次數),實現從彩色圖像空間X到灰度圖像空間Y的雙向映射,記為X →Y和Y →X。雙映射函數是由一系列可逆且易處理的雅可比行列式變換組成的:f=f0?f1?f2?...?fk。假設輸入的彩色圖像為x,輸出的灰度圖像為y,通過f的可逆性,則根據以下公式可以實現彩色圖像與灰度圖像之間的相互轉換:
圖2 可逆塊的詳細結構圖
對于每個仿射耦合層,設維度為D的輸入為m,輸出為n,其中d<D,相應過程可以表示為
其中,⊙表示哈達瑪乘積;s和t表示尺度與變換函數。
據Xing等人[18]所述,原始的耦合層會使一些輸入的通道數保持不變,為了緩解模型結構受限的這個問題。首先,使用式(5)方法[19]對耦合層進行增強:
其中,r表示范圍為RD-d →Rd的任意函數。相應的反向步驟為
然后,根據文獻[20],對于每一個仿射耦合層,我們都會使用一個可逆 1×1卷積作為置換函數將輸入到下一個仿射耦合層的數據的通道進行反向排序處理。盡管輸入數據不能在仿射耦合層中均勻分割,但下一個可逆塊中的可逆 1×1卷積會及時更新未改變的分量。更確切地說,本文的網絡主干稱為可逆塊,在仿射耦合層中,輸入的特征在通道上被分為兩部分。F,G,H是由5個2維卷積層組成的密集塊。每一層都會學習上一層的一組新的特征映射。前4層由卷積層和修正線性單元ReLU共同構成,最后一層為沒有ReLU的卷積層。模型使用Leaky-ReLU類型的激活函數,它相比ReLU激活函數具有更好的非線性,并能夠加速收斂。整個過程不采用批量歸一化處理,因為批量歸一化會破壞圖像原本的對比度信息,不利于圖像重建,并且會導致訓練速度緩慢,甚至訓練發散。網絡中的每個卷積層的邊緣填充采用鏡像填充方式,這樣可以有效降低邊界效應。
在很多數據壓縮任務中,端對端網絡的輸入和輸出通道數不一致。為了滿足網絡的可逆特性,可以對維數較少的變量進行復制,從而使得輸入輸出空間的維度一致。更為重要的是,這樣使得網絡學習可以在更高維的空間進行。從機器學習的角度來看,這樣的處理策略更有利于高維信息或特征的表示和學習,但難點在網絡的輸入輸出和目標函數方面需要根據具體的應用場景進行改進和調整。
為了保證彩色圖像與灰度圖像相互轉換的圖像質量,對可逆網絡的正向過程與逆向過程均設置相關的損失函數,對彩色圖像灰度化和灰度圖像色彩復原的雙向過程進行約束,實現較好的去色和著色效果。
對于正向的灰度化過程,將正向輸出的灰度圖像與灰度目標圖像計算損失,作為正向損失函數,記為Lf。對于逆向的色彩復原過程,將逆向輸出的色彩復原圖像與彩色目標圖像計算損失,作為逆向損失函數,記為Lb。正向和逆向損失函數均使用L1范數進行損失值的比較,Lf和Lb的式(8)和式(9)可以表示為
其中,x表示正向輸入的彩色圖像;f(·)和f-1(·)分別表示可逆網絡的正向和逆向操作;g表示灰度目標圖像;c表示彩色目標圖像。
模型以雙向損失函數的總和作為總體損失函數來優化網絡框架。總體損失函數L可以表示為
其中,λ1和λ2為控制不同損失之間的權衡超參數。
為了訓練和評估所提出的VA-IDN網絡模型,本文使用訓練數據集為Visual Object Classes Challenge 2012 (VOC2012),該數據集包含17 125張彩色圖像。本文從VOC2012數據集中挑選出500張彩色圖像,并以此生成相應的灰度圖像組成500個圖像對作為訓練數據集,另外31張彩色圖片用于評估。
為了測試模型的泛化能力,除VOC2012中的31張測試集外,本文還從色彩豐富多樣的墻紙數據集Wallpaper和最新的圖像著色數據庫(Natural-Color Dataset, NCD)中分別挑選出22張、88張圖片作為測試集分別進行比較測試。
我們將挑選出的500張顏色對比度和視覺效果較好的彩色圖像訓練集通過灰度化算法進行灰度化處理。由此組成了500份彩色-灰度標簽的圖像對,其中彩色圖像將作為網絡的正向輸入,灰度圖像將作為正向輸出的標簽(目標灰度圖像)。在對網絡模型訓練之前,我們先將訓練樣本隨機裁剪為256×256的圖像塊,然后對圖像塊隨機進行水平、垂直翻轉以及旋轉{90°, 180°, 270°}等方式進行數據增強。
實驗采用Adam優化器對可逆灰度化網絡模型進行訓練。網絡的迭代次數epoch設置為300次,最初的50個epoch的初始學習率為0.000 1,每進行50次迭代,學習率就會減半。損失函數中超參數λ1和λ2均設置為1。整個實驗的訓練和測試均在NVIDIA GeForce RTX 1 080 Ti GPU上使用基于PyTorch的深度學習框架進行。為了便于重復研究,VA-IDN的源代碼公開在:https://github.com/yqx7150/VA-IDN。
為了有效評價VA-IDN模型的實驗結果,分別從圖像顏色信息和圖像質量兩方面進行相關效果的評價。
3.4.1 圖像顏色信息評價指標
對于彩色圖像灰度化之后的圖像顏色信息的保留程度,主要從以下3個指標評估:
顏色對比度保持率(CCPR):用來度量圖像灰度化之后對比度保留情況。設閾值為τ。閾值τ相同的情況下,CCPR值越接近1,說明灰度化效果越好。
顏色內容保真率(CCFR):由于出現灰度化效果差但CCPR值較高的問題,我們采用CCFR作為CCPR的互補指標。
E-score:由于CCPR和CCFR對灰度化效果的約束上存在互補關系,我們使用E-score將CCPR和CCFR進行調和平均值的計算。當彩色圖像灰度化之后,所有顏色對比度保留完好并且灰度圖像中沒有產生新的邊緣,結構對比度也保留完好時,E-score可以達到理想中的最大值,這時CCPR和CCFR都等于1。
3.4.2 圖像質量評價指標
對于彩色圖像灰度化和灰度圖像色彩復原的過程,本文使用峰值信噪比(PSNR)和結構相似性(SSIM)兩個指標對生成圖像的質量進行評價。
峰值信噪比(PSNR):是計算預測圖像與參考圖像之間對應像素點間的誤差,即基于誤差敏感的圖像質量評價。PSNR的單位是dB,數值越大表示失真越小,圖像質量越好。
結構相似性(SSIM):是一種衡量兩幅圖像結構上相似程度的指標。SSIM的取值范圍是τ,值越大表示圖像失真越小,越能被人眼所接受。
本文實驗主要從3方面進行對比:其一,以Gcs(Gradient correlation similarity)算法[21]生成的灰度圖像作為標簽對彩色圖像灰度化;其二,以CIE LAB中的L通道作為標簽對彩色圖像灰度化;其三,灰度圖像色彩復原。以上實驗將從定量和定性兩方面進行評估分析。
3.5.1 對彩色圖像灰度化的評估一
該部分實驗以Gcs算法作為灰度化算法,得到具有最佳灰度化效果的500張灰度圖像作為標簽,對VA-IDN的去色效果進行對比評估。為驗證所提出的方法在彩色圖像灰度化上的有效性,將VA-IDN算法與灰度化算法Gcs[21]和Ledecolor[22]進行比較。此外,該實驗都是在閾值τ范圍為1~10的整數值下進行。
對于定性評估,圖3展示了Gcs, Ledecolor和VA-IDN3種算法在VOC2012,Wallpaper, NCD 3個數據集中的灰度化效果。從視覺上可以看出,Gcs算法只能保證圖片大面積的亮度效果呈現,不能體現圖像的顏色對比度。Ledecolor算法雖然能夠呈現出基本的顏色對比度,但是丟失了由色調差異引起的部分顏色對比信息。VA-IDN既可以保證基本的圖像亮度信息,又可以體現出全局和局部的顏色對比度信息,展現出圖像中的結構信息。與其他算法相比,總體上VA-IDN能夠呈現出更好的結果。
圖3 不同算法在不同數據集上圖像灰度化效果
對于定量評估,使用CCPR, CCFR和E-score 3個指標在VOC2012,Wallpaper和NCD 3個數據集上進行了相應的測試。Gcs, Ledecolor和VA-IDN 3種算法在3個數據集上測試的實驗數據如表1-表3所示。
表1 Wallpaper數據集的CCPR, CCFR和E-score結果
表2 VOC2012數據集的CCPR, CCFR和E-score結果
表3 NCD數據集的CCPR, CCFR和E-score結果
從3個表中的結果分析,本文提出的方法VAIDN在CCFR和E-score兩個指標均占優勢,而CCPR相對低一些。據以往實驗分析,CCPR或CCFR的數值越高不一定對應的結果越好,只有它們的調和平均值,即E-score才決定了最終的圖像灰度化的質量。因此,本文還針對E-score指標和閾值 1×1進行實驗,結果如表1-表3所示。在3個算法中,雖然E-score的數值都會隨閾值 1×1的增加而下降,但是VA-IDN的E-score較高且下降趨勢較穩定,灰度化的綜合效果最好。
3.5.2 對彩色圖像灰度化的評估二
該部分實驗以CIE LAB中的L通道作為標簽對去色效果進行評估。同樣,為驗證實驗的有效性,將提出的VA-IDN模型與最新提出的去色算法IDN[16]進行比較。
為展示實驗結果,這里分別從VOC2012,Wallpaper, NCD 3個數據集中分別挑選出一組實驗結果圖,如圖4所示。其中,第1列中的大圖原始彩色圖像,并從中截取某個細節部分的放大圖在右下角,右上角即為對應的灰度目標圖。第2列中綠色邊框圖為截取的放大圖經過IDN算法灰度化的灰度圖,紅色邊框圖為IDN算法灰度化的灰度圖與目標灰度圖的殘差圖。同理,第3列為VA-IDN算法灰度化結果。
對圖4的實驗結果進行定性分析,從視覺效果上,3個數據集上的原始灰度圖與經過IDN和VAIDN算法灰度化的結果圖幾乎看不出區別。然而,通過對比殘差圖可以看出,雖然都能得到高質量的灰度圖像,但VA-IDN生成的灰度圖顯示出更清晰的邊緣,這與定量評估的結果是一致的。
從客觀數據分析,用于評估兩個對比算法的PSNR和SSIM值如表4所示。可以明顯看出,提出的VA-IDN方法的PSNR和SSIM值均高于IDN算法。這是因為IDN模型中的可逆塊是由小波變換和雙邊仿射耦合層組成的,而VA-IDN模型中的可逆塊是由放射耦合層和可逆1 ×1卷 積組成的。可逆1×1卷積采用矩陣乘法實現對各個維度數據的打亂,使信息混合得更加充分,以此來確保輸入數據的每一部分都能經過仿射耦合函數進行訓練。同時,IDN中可逆網絡的損失函數由對比一致性損失、結構一致性損失、亮度一致性損失、量化損失和潛在變量正則化損失組成,來進行對比度、結構和照明度等方面的損失計算。而VA-IDN對可逆網絡的正向過程與逆向過程均設置了相應的損失函數,對彩色圖像灰度化和灰度圖像色彩復原的雙向過程均進行約束,實現較好的去色和著色效果。進一步分析表中數據,3個數據集上的比較結果顯示,VA-IDN的PSNR值比IDN至少高出2 dB,并且在VOC2012數據集上,VA-IDN的PSNR值可實現最高45.65 dB,比IDN高出近5 dB。此外,VA-IDN的所有SSIM值均在0.99以上。因此,通過定性和定量兩方面比較分析,本文提出的VA-IDN在兩個評價指標上均實現了最優的結果,可以實現較好的灰度化效果。
表4 彩色圖像灰度化的PSNR和SSIM值
3.5.3 對色彩復原的評估
為了驗證本文提出的VA-IDN模型在灰度圖像復原彩色圖像上的可逆特性,該部分實驗主要針對灰度圖像進行色彩復原的結果進行評估。這里和上一實驗相同,將提出的VA-IDN模型與可逆去色算法IDN從視覺上定性評估,并記錄相關的PSNR和SSIM指標參數進行定量比較。
首先,我們將VOC2012, Wallpaper和NCD 3個測試集中圖片經過VA-IDN模型從正向生成灰度圖像。然后,再將它們作為VA-IDN模型的逆向輸入恢復出彩色圖片。最后,將輸出的彩色復原圖和原始的彩色圖像進行比較。如圖5所示,第1列為原圖和細節放大彩色圖;第2列中綠色邊框為IDN算法得到的彩色圖,紅色框為IDN算法的彩色圖與原彩色圖的殘差圖;同理第3列為VA-IDN的結果。對比殘差圖像,從視覺上可以直觀地看出,提出的VA-IDN模型可以達到很好的色彩復原效果。無論是全局效果還是局部細節,復原的彩色圖像與原始圖像的顏色對比度和結構信息相近,幾乎接近原圖。
圖5 原始彩色圖像中細節放大圖的色彩復原結果
該實驗的PSNR和SSIM實驗數據如表5所示,VA-IDN算法的實驗結果均遠高于IDN算法。因為IDN的逆向過程是通過隨機采樣一組高斯分布,與灰度圖像組成可逆網絡的反向輸入,而VA-IDN則使用變量增強技術,將灰度圖像復制3份組成可逆網絡的反向輸入,提供了額外的監督信息,更有利于灰度圖像色彩復原。對比實驗數據,VA-IDN的PSNR值至少高出IDN近3 dB,最高可實現約64 dB。此外,其相應的SSIM值達到0.99之高。顯而易見,本文提出的模型可逆優勢明顯。
表5 灰度圖像色彩復原的PSNR和SSIM值
綜合以上實驗分析,本文提出的基于輔助變量增強的可逆灰度化模型(VA-IDN)無論是正向的彩色圖像灰度化還是逆向的灰度圖像色彩復原都有出色的效果,充分體現了網絡模型的可逆特性和多功能性。
本文提出了一種基于輔助變量增強的可逆神經網絡模型VA-IDN,用于可逆彩色圖像灰度化。通過可逆網絡的雙向訓練可以最大程度地捕獲圖像像素對中的亮度、顏色對比度和結構相關性等特征。同時,利用網絡的可逆特性可以實現彩色圖像灰度化和灰度圖像色彩復原的雙向操作。特別地,保證模型可逆性的前提是輸出的灰度圖像和輸入的彩色圖像通道數相同,而在模型中加入輔助變量的操作可以滿足這個前提。本文提出的方法與Gcs, Ledecolor和IDN等算法進行了對比實驗,所提出的方法在3種不同實驗下均能表現出最好的結果,驗證了其用于圖像通道壓縮任務和圖像色彩復原任務的有效性。本文所提出的方法與深度學習結合,泛化能力強,有希望廣泛應用于不同的領域。