林松,孫連山,趙娟寧,吳彥錦
(陜西科技大學 電子信息與人工智能學院,西安 710021)
在早期的圖像顯示領域,由于設備制造標準、制造廠商、運行環境的不同,造成不同設備的顯示能力有所差異,因此同一張數字圖像在不同設備上直接顯示或輸出就會產生肉眼可見的色差。為了降低圖像在不同設備之間的色差,國際色彩協會于1995 年提出色彩管理[1-2]標準,自此,色彩管理系統就成為圖像顯示領域必不可少的部分。
色彩管理的本質是顏色值在顏色空間之間的轉換,顏色空間是一種用于描述色彩的方式,不同顏色空間只是對同一物理量的描述方式不同,相互之間存在轉換關系,常見的標準顏色空間有RGB、CIELab、XYZ 等。在實際應用中,由于設備老化等各種原因,標準顏色空間的轉換關系無法直接應用于色彩管理,需要根據設備的特點創建設備特有的非標準顏色空間轉換關系。記錄設備顏色空間轉換關系的文件稱為設備特性化文件。色彩管理需要根據特性化文件在不同顏色空間之間轉換同一張圖像,轉換的精度直接影響色彩管理系統的色差。長期以來,許多學者致力于研究整體性能優秀的顏色空間轉換方法,主流方法有3 類:三維查找表法、多項式回歸法和神經網絡模型法[3]。
在傳統方法中,基于三維查找表法[4-5]的轉換方法采用均勻空間的距離公式來計算色域空間上的顏色距離,所以中間點的轉換精度受到查找表的限制。為查找表引入新的數據點是十分煩瑣的過程,需要重新計算大部分坐標點,因此這種方法的使用頻率逐漸下降。基于多項式回歸[6-7]的轉換方法在確定回歸階數和常數項時存在不確定性,隨著階數的增加,計算量逐漸增大,模型更復雜。
在神經網絡模型法中,楊金鍇等[3]為極限學習機的目標函數引入正則化項,再根據嶺回歸模型的嶺跡圖確認最優的嶺參數,提高了網絡的訓練效果和泛化能力,在800 個訓練樣本條件下可以將平均色差控制在1.65 個CIE 色差單位。洪亮等[8]采用學習速度和泛化能力更好的RBF 神經網絡來進行顏色空間轉換,將等間隔采樣的216 個色塊作為訓練集,在計算機上進行仿真實驗,將平均色差控制在0.75 個色差單位,取得了不錯的效果。Hajipour 等[9]將競爭神經網絡與BP 神經網絡結合,并進行特性化處理,先使用競爭神經網絡對數據進行分類,再對分類后的數據分別使用BP 神經網絡進行顏色空間轉換。這種方法可將平均色差控制在一個較低范圍,但是他們使用了1 500組樣本來訓練網絡。總體來說,人工神經網絡對非線性映射關系具有極強的擬合能力,在計算機算力和樣本量足夠的情況下,采用神經網絡的方式進行顏色空間的轉換,能夠取得傳統方法無法比擬的轉換精度。
上述3 類主流方法各有優劣,整體來看,對精度要求不高的場景可使用較簡單的傳統方法,對精度要求高的場景可選擇神經網絡模型法。隨著計算機硬件的發展,普通計算機就可完成神經網絡訓練,其計算能力不再限制該類方法的應用,但是訓練樣本需求量大、人工采集成本高仍限制了神經網絡模型法的應用。構建特性化訓練集的特點是需要人工使用測色設備逐個采集,并且每次特性化都需采集目標設備的訓練集,整個樣本的構建過程費時、費力。為了解決建立顏色空間轉換關系需求樣本量大、樣本采集成本高等問題,文中將捕捉未知分布能力較強的生成對抗網絡[10-12]應用于顏色空間轉換任務中,添加校正模塊,并設計多階段訓練方法,旨在小樣本學習條件下,將不同顏色空間轉換的精度控制在可接受范圍內。
生成對抗網絡(GAN,Generative Adversarial Network)于2014 年由Goodfellow 等[13]提出,是文中的核心網絡架構,這里將介紹基礎的GAN 模型和當前主流的WGAN(Wasserstein Generative Adversarial Network)[14-15]模型。
在訓練過程中,GAN 模型無須馬爾科夫鏈進行反復采樣,也無須在學習過程中進行推斷,回避了棘手的概率計算難題,其巧妙的設計在提出后便受到廣泛關注。實驗數據證明,該模型能夠有效捕捉數據分布,是近年來復雜分布上無監督學習的主要方法之一。
基礎GAN 模型包含生成模塊和判別模塊等,其模型如圖1 所示。生成模塊的作用是學習真實數據的分布,判別模塊的作用是區分生成模塊生成的數據和訓練集的真實數據。模型的訓練過程是讓2 個模塊進行博弈,通過2 個模塊之間的博弈和交替訓練,使整個模型逼近納什均衡,最終使判別模塊無法區分生成數據和真實數據,同時生成模塊也學習到了真實數據的分布,生成的數據達到了以假亂真的程度。

圖1 生成對抗網絡Fig.1 Generative adversarial networks
式中:G為生成模塊;G(z) 為生成模塊的生成數據;D為判別模塊;x為真實樣本;p(x)為真實樣本分布;z為隨機噪聲;q(z)為隨機噪聲分布。
WGAN 對GAN 模型進行了重要改進,核心改動是將損失函數替換為Wasserstein 距離的對偶形式,如式(1)所示。WGAN 解決了GAN 訓練不穩定、模式崩潰等問題,自2016 年被提出以來,就廣泛應用于數據增強、小樣本學習等領域,并且取得了不錯的效果。
基于WGAN 模型思想設計了具有校正功能的Cor?WGAN 模型,并設計了相應的多階段訓練方法來訓練模型,利用不同模塊的特點提高顏色空間之間的轉換精度。這里將按照生成模塊、判別模塊、校正模塊的順序詳細介紹Cor?WGAN 模型的結構,最后列出相應的多階段訓練方法的步驟。
基于生成對抗網絡思想,文中設計了融合多通道校正模塊的Cor?WGAN 模型,包含用于無監督學習的生成模塊(Generator)和判別模塊(Discriminator),以及有監督學習的校正模塊(Correction),完整的模型結構如圖2 所示。

圖2 Cor?WGAN 模型結構Fig.2 Cor-WGAN model structure
2.1.1 生成模塊
生成模塊的作用是學習RGB 到CIELab 顏色空間的轉換關系,模塊的輸入是R、G、B,模塊的輸出是轉換后的L、a、b。
R、G、B的值為0~255,為了加速網絡的收斂,需要對數據進行歸一化處理。數據生成模型常用的激活函數為Relu。由于使用Relu 可能會出現神經元死亡的問題,因此選擇Softplus 來避免神經元死亡。
綜上可知,生成模塊的最終結構包括歸一化層,2 個部分256 個神經元的FFN 配合SoftPlus 激活函數,以及3 個神經元的全連接層,將其作為輸出層。
2.1.2 判別模塊
判別模塊的作用是學會如何計算輸入的真實分布與生成分布之間的距離。模塊的輸入包含2 個部分:真實的L、a、b;生成模塊生成的L、a、b。將2 個部分的數據輸入判別模塊,經過判別模塊處理,輸出Wasserstein 距離D,表示2 個部分數據分布之間的距離。由于判別模塊計算的是分布距離,并不是計算該組數據為真實數據的概率,需要避免使用改變數據分布情況的操作,因此判別模塊不使用歸一化激活函數或者數據歸一化等操作。
綜上可知,判別模塊的最終結構包括2 個部分的256 個神經元的FFN 配合LeakyRelu 激活函數,以及1 個神經元的全連接層,將其作為輸出層。
2.1.3 校正模塊
納什均衡是一種理想狀態,在實際訓練過程中往往很難達到真正的納什均衡。體現在數據上,即生成數據只能逼近真實數據,當色差減小至一定程度時,網絡訓練的邊際效應變得十分明顯。為了克服這一缺點,筆者設計了多通道校正模塊,為生成模塊提供校正建議。校正模塊結構如圖3 所示。

圖3 多通道校正模塊Fig.3 Multi-channel calibration module
針對L、a、b分別給出了獨立的校正建議,將校正模塊設計為多通道結構,讓每個通道單獨考慮1 個值的建議。在生成模塊和判別模塊的無監督學習完成后,校正模塊和生成模塊會進行有監督學習。校正模塊的輸入是生成模塊生成的數據G(RGB),輸出是L、a、b等值的校正建議,將真實的L、a、b作為校正模塊的標簽。
在數據進入校正模塊后,先經過512 個神經元的前饋神經網絡FFN,再由激活函數Leaky Relu,篩選出部分不可用的連接,接著分為3 個通道,對應亮度值L、紅綠彩色通道值a、黃藍彩色通道值b,再經過64 個神經元的前饋神經網絡FFN 及SoftPlus 激活函數,最終得到模塊輸出。
校正模塊的作用是在生成模塊和判別模塊無法達到真正的全局最小值時,分別從L、a、b等3 個角度給出調整建議,生成模塊據此再次微調模型的權重,使生成數據更加接近真實數據。
深度學習的訓練方法通常采用輸入到輸出的正向傳播,再根據損失函數計算loss 值,求得梯度后反向傳播,以更新整個模型的參數。這里提出的模型采用了模塊化思想,模塊之間參數的更新過程相對獨立,常用的一次性更新整個模型的方法會讓收斂困難,甚至無法收斂。為此,這里設計了多階段訓練方法,包含預訓練、無監督對抗訓練和校正訓練3 個部分,以提升小樣本下模型的收斂速度,整體流程如圖4 所示。

圖4 多階段訓練方法流程Fig.4 Multi-stage training method flow
在模型尚未訓練階段,各個模塊都不具備相應的能力。其中,最關鍵的是判別模塊無法判斷最基本的真實數據與生成數據的區別,而不具備判別能力的判別模塊無法在無監督學習中檢驗生成模塊的生成效果。由此可見,在進行模塊之間相互對抗訓練前,需要對判別模塊進行預訓練,賦予判別模塊判斷差異較大真假數據的能力。
經過一定的預訓練輪次,判別模塊具備一定的判斷能力后,再根據式(1)所示的損失函數,啟動判別模塊和生成模塊相互博弈的無監督對抗訓練。在每個輪次的對抗訓練中,優先訓練判別模塊,提升判別模塊的判別能力。訓練后的判別模塊計算生成分布與真實分布的Wasserstein 距離會更大,再以減少分布距離為目的來更新生成模塊的權重,提升生成模塊的生成能力,相互博弈前進。
完成了判別模塊和生成模塊的無監督對抗訓練后,判別模塊具備了較好的判別能力,生成模塊生成的數據也會逼近目標顏色空間顏色值分布,再進行校正訓練。首先對校正模塊進行預訓練,學習給出多通道校正建議的能力,再將生成模塊與校正模塊配合,以均方誤差為損失函數開始校正訓練。在每個輪次的訓練中,優先訓練校正模塊,以提升校正能力,再調整生成模塊,以提升生成數據的質量。
這里將通過實驗來驗證文中提出方法的有效性。首先在標準顏色空間下,通過對比不同方法之間的轉換精度,驗證文中算法在小樣本顏色空間轉換時的效果。通過調整訓練集的大小來對比文中方法在不同大小樣本條件下的轉換精度,通過消融實驗來證明文中方法有助于提升顏色空間轉換的精度。最后,設置非標準顏色空間仿真實驗和逆轉換實驗,驗證文中方法在實際應用中的效果。
這里采用的是小樣本學習,為了避免Cor?WGAN模型只學習局部的轉換關系,需要訓練集盡可能均勻地分布在整個顏色空間。在標準顏色空間實驗階段,將0~255 的R、G、B數據等間隔劃分,以獲取均勻分布的訓練集。以四等份(0、85、170、255)為例,將R、G、B四等分的顏色值互相組合,得到64 個色塊,根據標準轉換公式將R、G、B轉換為D65 光源/2°視場觀察條件下的L、a、b。將得到的64 組標準顏色空間R、G、B,以及L、a、b作為模型的訓練樣本,示例樣本如圖5 所示。

圖5 四等份訓練數據示例Fig.5 Example of quartered training data
以文中構建的均勻樣本為訓練集,通過Pytorch深度學習框架搭建Cor?WGAN 的網絡結構。
1)網絡訓練。先對判別模塊進行1 000 輪的預訓練,讓其先具備一定的判別能力,然后由生成模塊和判別模塊進行10 000 輪無監督對抗學習,每輪訓練判別模塊3 次,訓練生成模塊1 次。在完成無監督學習后,使用校正模塊和生成模塊進行5 000 輪有監督學習,調整生成模塊的生成效果。
2)參數優化。優化器均使用Adam(平滑參數分別取0.7 和0.9),初始學習率均為0.005。
3)對照組。選擇基于RBF 神經網絡[3]和R?ELM[8]的顏色空間轉換方法為對照組,訓練數據集、優化器、學習率等都采用相同的設置,迭代數量設置為10 000次,同樣選擇Pytorch 框架搭建網絡結構。
在Pycharm 集成開發環境下對上述3 個網絡進行訓練,并以Pantone 國際標準色卡數據集的907 組標準顏色空間RGB 數據和Lab 數據為測試集。針對上述網絡轉換效果,使用Lab 顏色空間的色差公式對結果進行評價,色差公式如式(2)所示。
式中:x和y為2 個色樣;L*為明度指數;a*為紅綠色度指數;b*為藍黃色度指數。
驗證不同算法在小樣本條件下的轉換效果,使用64組標準顏色空間樣本訓練R?ELM、RBF 神經網絡、Cor?WGAN 模型后,將測試集的R、G、B 輸入訓練完成的網絡中,得到模型輸出和訓練集的L、a、b真實值,計算色差,結果如表1 所示。對應的色差分布如圖6 所示。

表1 不同方法的色差比較Tab.1 Comparison of color difference of different methods

圖6 不同方法色差分布Fig.6 Color difference distribution of different methods
實驗結果表明,在小樣本條件下,文中提出的Cor?WGAN 模型不論在平均色差、最大色差還是最小色差上,都比R?ELM 極限學習機和RBF 神經網絡表現得更好。
為了對比Cor?WGAN 在不同訓練集上的效果,這里將0~255 的R、G、B等數據進行不同程度的等間隔劃分,再進行組合,分別設計了三等份(0、127、254)實驗組(共27 個訓練樣本)、四等份(0、85、270、255)實驗組(共64 個訓練樣本)、五等份(0、63、126、189、252)實驗組(共125 個訓練樣本)、六等份實驗組(0、50、100、150、200、255)實驗組(共216 個訓練樣本)。將Pantone 國際標準色卡作為測試集,得到的平均色差如表2 所示。

表2 不同算法在不同訓練集上的色差比較Tab.2 Color difference comparison of different algorithms in different sizes of training sets
不同實驗對照組的數據都盡量平均分布在整個RGB 顏色空間中。由于RGB 顏色空間不是均勻的顏色空間,因此在27 個樣本的情況下,3 種方法都無法學習到完整的分布特征,其中Cor?WGAN 是轉換效果最好的一組。
在擴大訓練集時,樣本在顏色空間中分布得更加密集,模型可學習到顏色空間中不均勻部分的轉換關系。從實驗結果可知,當訓練樣本擴大到125 個時,3 種方法的轉換效果都得到較大提升,且都滿足色差小于6 的國標印染要求。當訓練樣本擴大到216 個時,所有對照組的色差都小于3,按照文獻[16]的評判標準,它們均達到了人眼無法分辨的程度。
綜上可知,Cor?WGAN 網絡模型只需64 對訓練樣本就滿足日常生活的色彩轉換需求,充分證明該模型具有優秀的小樣本學習能力。
為了驗證多通道校正模塊的效果,這里設計了包含完整Cor?WGAN 模型組、單通道校正模塊組和刪除校正模塊組3 個對照組的消融實驗,訓練集使用標準顏色空間的64 組均勻樣本,測試集使用Pantone 國際標準色卡數據,結果如表3 所示,色差分布如圖7 所示。

表3 消融實驗的色差比較Tab.3 Color difference comparison of ablation experiment

圖7 消融實驗色差分布Fig.7 Color difference distribution of ablation experiment
表3 前2 行數據表明,使用單通道校正模塊與多通道校正模塊存在差異。在計算過程中,由于單通道校正模塊L、a、b等3 個輸出值共用單通道神經元,導致輸出值之間存在相關性,因此最終輸出校正建議時也會折中。這與表3 中的實驗結果相互印證,單通道校正模塊對生成模塊的調整有限,導致模型最終輸出的平均色差更高。
表3 第1 行和第3 行數據表明了校正模塊對整個模型的意義。如果完全移除校正模塊,則輸出結果即為生成模塊和判別模塊無監督對抗訓練的結果。由于生成對抗網絡本身具有難以達到納什均衡的缺陷,因此不使用校正模塊的平均色差達到3.27 個CIE 色差單位。
整個消融實驗的結果表明,多通道校正模塊給出的獨立校正建議更有利于修正WGAN 模型的輸出結果,文中提出的改進模型有利于提高顏色空間的轉換精度。
上述實驗表明,文中提出的Cor?WGAN 模型在標準顏色空間下取得了較好的效果。為了驗證模型在實際應用中的轉換效果,這里設計了計算機仿真函數來模擬非標準顏色空間轉換關系。
仿真函數的具體實現方式:在標準的RGB 向XYZ 轉換過程中添加0.99~1.01 的隨機參數,再通過XYZ 顏色空間轉換到 D65 光源/2°觀察條件下的CIELab 顏色空間,以此來模擬轉換關系的隨機變化,核心公式如式(3)所示。
式中:X、Y、Z為三刺激值;r、g、b分別為歸一化修正后的R、G、B值;βi為隨機參數。
分別設置27、64、125、216 等4 組不同程度均勻等分樣本的對照組。訓練集部分使用等間隔劃分的訓練樣本,對應的L、a、b真實值通過仿真函數計算。在測試集部分,使用隨機的R、G、B作為R?ELM、RBF 和Cor?WGAN 模型的輸入,再通過模型預測的輸出值L、a、b與仿真函數輸出值L、a、b計算色差,實驗結果如表4 所示。

表4 不同算法在非標準顏色空間實驗的色差比較Tab.4 Color difference comparison of different algorithms in non-standard color space experiment
從實驗結果可以看出,文中提出的Cor?WGAN模型在非標準顏色空間下依然取得不錯的轉換效果,且能夠完成小樣本學習任務。
在實際應用中,色彩管理系統會采用中間顏色空間為媒介,完成不同設備顏色空間之間的轉換。中間顏色空間一般是與設備無關的顏色空間,CIELab 就是一種常用的中間顏色空間。
這里設計了RGB 到CIELab 顏色空間的逆轉換實驗,以驗證模型從中間顏色空間轉換到目標顏色空間的學習效果。對比分析R?ELM、RBF 和Cor?WGAN模型,訓練集為27、64、125、216 組非標準顏色空間仿真樣本,仿真過程中的隨機參數取0.99~1.01。
在逆轉換實驗中,模型的輸入值為L、a、b,模型的輸出值是轉換后的R、G、B,模型的輸出值與對應的R、G、B真實值按照式(4)求得單組實驗數據的色差,12 組實驗的色差對比如表5 所示。

表5 不同算法在逆轉換實驗中的色差比較Tab.5 Color difference comparison of different algorithms in inverse conversion experiment
實驗結果表明,文中提出的Cor?WGAN 模型在小樣本條件下依然具有十分明顯的優勢,在 64組樣本條件下的訓練結果滿足國標要求,R?ELM和RBF 都需要至少216 個樣本才能達到相應的轉換效果。
以WGAN 模型為基礎,提出了一種融合多通道校正模塊的Cor?WGAN 顏色空間轉換模型,可以在小樣本情況下學習到由RGB 到CIELab 顏色空間的轉換關系。實驗結果表明,相較于現有的顏色空間轉換方法,文中提出的方法在小樣本情況下有著更加優秀的表現,且在增大樣本容量的情況下,此方法依然具有競爭力。后續的非標準顏色空間仿真實驗和逆轉換實驗表明,文中提出的方法可以在實際應用中保持較好的轉換精度,為基于深度學習的色彩管理應用提供了一種切實可行的思路。