圖像顏色校正的幾種方法

各種教學視頻或文檔資料 +QQ:635992897

注:本文主要參考“彩色人臉圖像顏色校正及其在肝病診斷中的應用研究”碩士論文

       採集的圖片顏色與採集環境有很大關係,同一個樣本在不同的採集環境下得到的圖片顏色是不一樣的,這就影響了樣本之間的比較,所以需要對採集到
的樣本進行顏色校正。我們採用的顏色校正算法是基於監督的思想,即通過標準色板對圖片進行顏色校正,目前在顏色校正方向上,已經有了很多方法,其
中基於監督思想的算法主要有多項式迴歸法、人工神經網絡法、SVR 法,這幾種算法各有優缺點,都需要根據實際問題對參數進行設置,其中多項式迴歸算
法的重點是設置項數和多項式的形式,人工神經網絡算法需要設置神經元的各項參數,SVR 算法需要設置錯誤懲罰權重、核函數形式和參數、允許誤差範圍
等參數,參數設置的不同會直接影響校正結果,因此參數設置是應用各種算法的重點,也是本章討論的重點。另外,本章還提出了一種新的顏色校正準則,
在這種準則下可以提前終止校正算法,得到一個最優的校正結果,並且根據準則評價各種校正算法的優劣,選擇臉色顏色校正的最優算法。下面詳細講述這
幾種算法,並將他們用在臉色圖像顏色校正上,根據評價準則選擇最優校正算法。

        1.多項式迴歸法

多項式迴歸算法多用於打印機色彩校正,需要存儲空間少,計算速度快,容易實現。多項式迴歸算法關鍵技術是關於多項式中組合的選擇,並不是項數
越多,迴歸效果越好,而是要根據自己的實際情況,合理選擇。

下面先簡單敘述一下基於多元線性迴歸的顏色校正原理
,設比色板上共有 N 個色塊,第 i 個色塊的顏色三刺激值在標準空間下爲Roi、G0i、B0i ,在
自然光照環境下採集到的待校正比色板上的第 i 個色塊顏色三刺激值爲Ri、Gi、Bi,其中i= 1,2,3.......N,則:

 

其中,Vji(j=1,…,J)由 的多項式構成,有各種不同的多項式形式,例如,V=[R, G, B, 1], V=[R, G, B, RG, RB, GB, 1], V=[R, G, B, RGB,
1]等,V 的形式可以根據需要來組合成不同的形式。 
式 2-1 的矩陣形式爲:

其中: X 是維數爲 3×I 的色標標準三刺激值矩陣

A 是維數爲 J×3 的轉換系數矩陣

V 是維數爲 J×I 的多項式迴歸矩陣

矩陣 A 可利用最小二乘法優化得到,A 即爲所求的模型參數。

因此,將 A 帶入式 2-4 中,即可計算出校正後圖像的各像素的 R、G、B 值,實現在線的彩色校正。其中,Xout是校正後圖像的 R、G、B 三刺激值矩陣,維
數爲 3×M; 是由原始圖像所有像素的 R、G、B 值對應的多項式的項所構成的矩陣,維數爲 J×M;M 爲原始圖像的像素總數。

多項式迴歸算法的關鍵是設計合理的多項式項數形式,在顏色校正實驗中,我們設計了 AB 兩組項數做對比實驗,A 組是隻有 R、G、B 值的各種組合,
B 組是在 A 組的基礎上再添加一個常數項“1”,目的是看常數項“1”對結果有什麼影響,選擇結果較好的一組,最後再綜合這兩組實驗的所有值,找到校

正效果最好的項。 A 組的項設計如下:

B 組各項是 A 組各項後面再添加一個常數項“1”。2.4.2 節的實驗表明 A組效果要高於 B 組,並且最優校正項數爲 A 組的 9 項多項式。

2.後向傳播網絡

     神經網絡是採用物理可實現的系統來描述和模擬人腦神經細胞的結構和功能,按結構分爲前饋型人工神經網絡、反饋型人工神經網絡、自組織競爭人
工神經網絡和隨機神經網絡等,其中應用最廣的是反饋型人工神經網絡,也就是後向傳播網絡,簡稱 BP 網絡。

     BP 算法的基本思想是學習過程由信號的正向傳播和誤差的反向傳播,正向傳播的過程從輸入樣本開始,依次經過輸入層,各隱層到輸出層,如果得
到的輸出和期望輸出不符或沒有達到要求,則開始誤差反向傳播過程,反向傳播是將輸出誤差從輸出層經過各隱層,最後傳播到輸入層,將誤差分攤給各層
所有單元,從而獲得各層但願的誤差信號,修正各單元的權值。
     BP 網絡的結構如圖 2-1 所示,這是一個最簡單的 BP 網絡結構,一個輸入層,一個隱層,一個輸出層,每層各 3 個神經元,共 9 個神經元,輸入前向傳
播,誤差反向傳播。
      下面簡單介紹一下實驗中需要用到的函數,首先看三個最常用的激發函
數,階躍函數 hardlim(x),線性轉移函數 purelin(x),對數 S 型函數 logsig(x)和
正切 S 型函數 tansig(x),見圖 2-2 所示。

BP 網絡採用 Widrow-Hoff 學習算法和非線性可微轉移函數的多層網絡,一個典型的 BP 網絡採用的是梯度下降算法。
基於 BP 網絡的顏色校正算法具體過程分爲訓練階段和測試階段:

1)訓練階段
利用色卡色塊值進行訓練,從待校正的色卡圖片上提取出 RGB 值作爲輸入,而色卡的標準值是已知的(色卡製作公司會提供標準色塊值),色卡的標
準值作爲監督值。每塊色卡圖片上都有 24 個色塊,也就是說 BP 網絡的輸入樣本總數是 24,每個樣本有 R、G、B,3 個輸入值,經過隱層,最後輸出也是 3
個值,作爲 BP 校正的結果,和色塊的標準值進行比較,計算誤差,然後反向傳播,修正各層的權值,再從輸入層輸入數據,經過隱層到輸出層,計算誤差
直到達到終止標準,訓練階段就結束,訓練的 BP 網絡即各層連接線上的權值和各神經元激發函數。

2)測試階段
利用訓練階段訓練好的 BP 網絡,對待校正的人臉圖片每個像素值進行帶入網絡計算,每個像素的 R、G、B 值是一個輸入,輸出爲該像素校正之後圖像
的 R、G、B 值,人臉圖片的所有像素值都經過 BP 網絡計算完之後,校正之後的人臉圖片即 BP 網絡輸出值組成的新圖像。
BP 算法利用 matlab7.5 的神經網絡工具箱,有很多參數需要設置,如初始值,激發函數,各層神經元個數,誤差傳播準則,權值學習準則,終止準則,
這些都會影響結果,這些參數設置如下:

(1)網絡結構
因爲輸入數據量少,只有 24 個樣本,輸入簡單,每個樣本只有 3 維,所以需要的網絡結構也很簡單,否則會出現過擬合,在本實驗室中,選擇單隱層
網絡結構,輸入神經元 3 個,輸出神經元 3 個,隱層神經元個數嘗試 3、4、5、6、7、8、9、10、11、12、13,根據校正結果決定哪一個是最合適的。
(2)激活函數
隱層用正切 S 型函數 tan-sigmoid;輸出層用線性轉移函數 purelin。
(3)數據處理
輸入數據採用 matlab  神經網絡工具箱函數 newff 默認的處理方式,即:fixunkonwns,  removeconstractrows,  mapminmax ; 輸 出 數 據 處 理 方 式 :
removeconstractrows, mapminmax;數據訓練時分組是隨機分組。
(4)權值和偏置的初始化
初始化方式的選擇根據激活函數而定,initnw 通常用於激活函數是曲線函數,它根據 Nguyen 和 Widrow[NgWi90]爲層產生初始權重和偏置值,使得每層
神經元的活動區域能大致平坦的分佈在輸入空間。initwb 用於激活函數是線性函數,通常設置爲 rands,在-1 到 1 之間隨機取值。根據激活函數爲 tansig 和
purelin,因此初始化方式爲:第一層 initnw,第二層 intwb,rands。
(5)訓練方式
批處理方式,根據 Levenberg-Marquardt 最優準則更新權值和偏置。
(6)學習率
採用帶動量的梯度下降法 learngdm,它可以提供更快的收斂速。動量梯度下降法綜合考慮當前梯度和誤差曲面最近的趨勢響應,通過把權重變得與上次
權重變化的部分和由算法規則得到的新變化的和相同而加入到網絡學習中去。
(7)終止條件

最大循環次數 200,最大誤差 0.01。

3.支持向量迴歸

SVM 算法在解決小樣本、非線性及高維模式識別問題中有很多優點,近年來,被越來越多地應用在各個領域,張宏志等人首先將 SVM 的思想用在舌象顏
色校正上,取得了很好的效果,與多項式迴歸相比較,有很大的優點。

支持向量機根據 VC 維理論和結構風險最小化原則,使得期望誤差最小,從而達到最優的分類結果。SVM 方法是從線性可分情況下的最優分類面提
出的。支持向量機的思想:首先通過非線性變換將輸入空間變換到一個高維空間,然後在這個新空間中求取最優線性分類面,見圖 2-3。支持向量迴歸是支
持向量機的迴歸模型,根據統計數據來擬合數據分佈。

支持向量機的求解過程簡單介紹如下:
使用內積 K(x,x)代替最優分類面中的點積,優化函數爲:2-5

相應的判別函數爲:2-6

迴歸參數變爲:2-7

具有如下的限制條件:

在如上限制條件下,式子(2-7)可求得拉格朗日乘子 。只有當 非零時,纔對應於支持向量 SVM,進而求出如下形式的迴歸函數,即舌圖像顏色
校正函數f(x):

其中:

目前的內積函數主要有 3 種
1. 採用多項式形式的內積函數,即 

2. 採用核函數型內積
3. 採用 S 型函數作爲內積

基於 SVR 的顏色校正算法採用 epsilon-不敏感損失函數,內積函數爲高斯核函數,首先需要建立 3 個模型,每個模型的輸入數據都一樣,爲待矯正色板
中 24 個色塊的 R、G、B 值,輸出分別爲 R 值、G 值和 B 值。 建立模型首先要選擇參數 C 和 g,p 值,C 值爲 SVR 的錯誤懲罰權重,g
值爲核函數中的參數中的 gamma,p 是允許的誤差epsilon,這裏認爲三個通道模型的參數是一樣的。對於三個參數的選擇,方法
是這樣的:每次只讓一個參數變化,其餘兩個參數固定,根據校正前後的 Lab空間下 進行選擇,越小,在該參數下的結果越好。

校正算法評價

      在利用各種方法對舌象或臉色圖像進行彩色校正之後,要有一個統一準則來評價各種方法的優劣程度,彩色重現的評價涉及到色度學、生理學、心理學
等領域,是一個很複雜的問題,常用的評價方法分爲主觀評價與客觀評價兩類。
主觀評價就是讓一些觀察者對彩色校正的質量進行視覺評價並打分,根據這些打出的分數高低來判斷彩色重現的質量。這種方法直觀可靠,但是不能對
彩色重現進行定量分析。客觀評價是在一定的條件下采用一套特定的色標進行,通過計算三刺激值的差異來判斷,一般採用 CIELab 和 CIELUV 空間。客
觀評價的缺點是三刺激差值最小的校正在主觀效果裏常常不是最好的。
      本文采用的是客觀評價和主觀評價相結合的方法,首先進行客觀評價,選擇較好的結果,然後再觀察校正之後圖片的實際效果,最後做出判斷。客觀評
價主要用 Lab 空間,RGB 空間作爲輔助。在 Lab 空間,用

來衡量,其中 avg ( X )爲X 的均值,max( X )爲 X 的最大值, min( X )爲 X 的最小值,假設基準色塊有 K 個,
分別第 i 個色塊對應的的標準 值, 爲第 i 個色塊對應的需校正的 lab值,上面的客觀評價用到的值計算公式如下:

 



發佈了47 篇原創文章 · 獲贊 64 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章