基于Welsh算法的灰度圖像彩色化的研究_第1頁
基于Welsh算法的灰度圖像彩色化的研究_第2頁
基于Welsh算法的灰度圖像彩色化的研究_第3頁
基于Welsh算法的灰度圖像彩色化的研究_第4頁
基于Welsh算法的灰度圖像彩色化的研究_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、基于 Welsh 算法的灰度圖像彩色化的研究楊亞南 王磊 孫田雨(燕山大學(xué)理學(xué)院信息與計算科學(xué)專業(yè) 河北 秦皇島)摘 要 Welsh 算法在將灰度圖像彩色化的過程中取得了較好的效果, 是卻存在著像素匹配過程中循環(huán)過多、 速度過慢、 彩色化后的圖像存在噪聲的問題。分析 Welsh 算法的不足之處, 采取在彩色圖像中間隔取點的辦法, 減少循環(huán)次數(shù)。同時針對彩色化后的圖像中存在噪聲的問題, 使用指導(dǎo)性濾波對遷移后的圖像進行優(yōu)化, 去掉噪聲的干擾。通過實驗表明, 經(jīng)過指導(dǎo)性濾波處理的圖像可以產(chǎn)生出更好的效果, 使圖像的效果更清晰和自然。關(guān)鍵詞 Welsh 算法 彩色化 間隔取點 指導(dǎo)性濾波0 引 言灰

2、度圖像的彩色化是將一幅彩色圖像的顏色特征傳遞給一幅灰度圖像,從而使灰度目標(biāo)圖像具有與源彩色圖像相似的顏色。uderman 等1在1998年提出了 顏色空間。其中表示非彩色的亮度通道, 表示彩色的黃藍( yellow- blue oppo-nent)通道,表示紅綠( red- green opponent)通道。與其他顏色體系不同,空間更適合人類視覺感知系統(tǒng)。對自然場景,通道間的相關(guān)性會降到最小,解決了傳統(tǒng) GB 顏色空間中(紅)、G(綠)、B(藍)三個顏色通道相關(guān)性太強2,3,在不同通道進行運算時容易出現(xiàn)通道交叉的問題。顏色空間更適合對顏色信息進行遷移。在2001年,einhard4在顏色空間

3、的基礎(chǔ)上,提出了彩色和彩色圖像之間的遷移算法,取得了較好的效果, 但是該算法不適合灰度圖像之間的遷移。einhard的算法在灰度圖像彩色化的過程中會使結(jié)果圖顏色失真, 造成不真實的感覺。在2002年的時候,Welsh5 等人提出了將灰度圖像彩色化的算法,取得了較好的效果。1 Welsh 算法目前在灰度圖像彩色化的過程中主要采用的是 Welsh 算法, Welsh 算法的具體過程如下:(a) 將彩色參考圖像和目標(biāo)灰度圖像都變換到抗相關(guān)性的空間;(b) 對彩色參考圖像進行亮度的重映射。因為為了將彩色參考圖像的色彩傳輸給目標(biāo)圖像, 目標(biāo)圖像的每個像素必須在彩色參考圖像中找一個像素來匹配,考慮到彩色參

4、考圖像和目標(biāo)圖像亮度的整體差異,必須對彩色參考圖像進行亮度的重映射,使它的直方圖與目標(biāo)灰度圖像的亮度直方圖相匹配;(c) 計算彩色參考圖像的每一個點的亮度值和 5 × 5 領(lǐng)域內(nèi)的方差值;(d) 對于灰度圖像的每個像素, 計算該像素 P Ti 的亮度值L 和 5 ×5 領(lǐng)域內(nèi)的方差值 D, 并與彩色參考圖像的特征點相比較, 找到與 P T 的 0 5 × L +0 5 × D 最相近的一點(假設(shè)為 P Sj ), 則 P Sj 就是與灰度圖像的當(dāng)前點 PTi 匹配的點;(e) 將彩色參考圖像 P Sj 的 值傳輸給目標(biāo)灰度圖像的P Ti 點,同時保留 P

5、 Ti 點 通道的亮度值;(f) 逐點掃描目標(biāo)灰度圖像, 對每個像素都采用(d)、 (e)步驟,找到與其匹配的彩色圖像中的點, 并傳輸顏色。2 對 Welsh 算法的改進 由于 Welsh 算法的主要問題就是在彩色圖像中搜索與灰度圖像最匹配的 空間的像素值。例如彩色圖像的大小是 100×100, 灰度圖像的大小是 100 ×100, 那么找到與這張灰度圖像最匹配的 空間的值需要循環(huán) 10 8 。目前的改進主要是提高 Welsh 算法的搜索速度, 主要是以下兩個方面。第一:在文獻 8 中, 將圖像像素鄰域相關(guān)特性引入到匹配像素的搜索過程中。搜索匹配像素時, 先在當(dāng)前像素的鄰域

6、范圍內(nèi)進行搜索, 只在鄰域搜索失效時才進行全圖范圍的搜索, 由于像素鄰域相關(guān)特性,大部分像素可以在鄰域搜索中找到匹配像素, 只有極少像素需要進行全圖搜索, 從而較大地降低了搜索代價。但是由于圖像是連續(xù)的, 對于一張圖像的邊緣處, 這樣的方法并不合適。第二:在文獻 9中, 在彩色圖像中隨機抽取 200 個像素點, 對于灰度圖像中的每一個像素點都在這 200 個隨機抽取的像素點中尋找最匹配的像素值。這樣雖然可以大幅度提高搜索的速度, 但是由于是隨機取點, 造成了彩色圖像的像素值不一定與灰度圖像最適合, 造成了顏色遷移的失真。同時對于一副很大的圖片, 只抽取 200 個點并不能保證涵蓋所有的彩色像素

7、的值。本文是在彩色圖像的每行每列中, 每隔十個像素點抽取一個, 這樣能最大限度的保證抽取出來的彩色圖像的點能夠包含整個圖像, 最大限度地減少了遷移過程中的顏色的失真, 特別是對邊界處有很好的效果, 同時減少了匹配過程中的循環(huán)次數(shù)。例如上面提到的彩色圖像的大小是 100 ×100, 灰度圖像的大小是 100 ×100, 通過相隔 10 個像素點取值的搜索策略, 完成整個循環(huán)匹配只需要 10 6 , 使得運行速度比 Welsh 的循環(huán)次數(shù)減少了100 倍。程序代碼:gray2rgb.m文件% RGB轉(zhuǎn)換為Lab空間并進行彩色遷移clc;clear;A=imread('2

8、07.jpg'); %取樣圖m n l=size(A);L,a,b=RGB2Lab(A); %空間轉(zhuǎn)換AA(:,:,1)=L;AA(:,:,2)=a;AA(:,:,3)=b;ls=0;k=0;%計數(shù)器kk=0;%控制每隔10取值for i=3:m-2; for j=3:n-2; if(mod(kk,10)=0) k=k+1; ls(1,k)=L(i,j); %亮度 sizeA=numel(AA(i-2:i+2,j-2:j+2,:); ls(2,k)=std(reshape(AA(i-2:i+2,j-2:j+2,:),1,sizeA);%方差 ls(3,k)=i; ls(4,k)=j;

9、end kk=kk+1; endenddisplay('彩色圖取樣完畢');size(ls)B=imread('207_副本.jpg');figure;imshow(B);title('原圖');m n l=size(B);L,a,b=RGB2Lab(B);BB(:,:,1)=L;BB(:,:,2)=a;BB(:,:,3)=b;k=1;display('開始計算灰色圖像');for i=1:m; for j=1:n; ls2(1,k)=L(i,j); ibegin=i-2; iend=i+2; jbegin=j-2; jend=j

10、+2; if(i<=2) ibegin=1; else ibegin=i-2; end if(i>=m-2) iend=m; else iend=m-2; end if(j<=2) jbegin=1; else jbegin=j-2; end if(j>=n-2) jend=n; else jend=n-2; end sizeB=numel(BB(ibegin:iend,jbegin:jend,:); ls2(2,k)=std(reshape(BB(ibegin:iend,jbegin:jend,:),1,sizeB);%計算方差 ls2(3,k)=i; ls2(4,k

11、)=j; k=k+1; endend display('開始對比');sumLs=(ls(1,:)*0.5)+ls(2,:)*1; %計算公式 亮度+方差sumLs2=(ls2(1,:)*0.5)+ls2(2,:)*1; %灰色圖的所有像素點for i=1:length(sumLs2) tmp=abs(sumLs-sumLs2(i); %求絕對值 index=find(tmp=min(tmp); %取最接近的索引 % BB(ls2(3,i),ls2(4,i),1)= AA(ls(3,index),ls(4,index),1); % 亮度不變 BB(ls2(3,i),ls2(4,

12、i),2)= AA(ls(3,index),ls(4,index),2); % a賦值 BB(ls2(3,i),ls2(4,i),3)= AA(ls(3,index),ls(4,index),3); % b賦值endr,g,b=Lab2RGB(BB);figure;clear B;B(:,:,1)=r;B(:,:,2)=g;B(:,:,3)=b;imshow(B);title('上色圖');imwrite(B,'aa.jpg'); figure; imshow(A);title('彩色圖');3 指導(dǎo)性濾波使用 Welsh 算法進行灰度圖像彩色化

13、之后, 圖像上存在著噪聲。文獻 6 中使用了雙邊濾波(Bilateral filter)對圖像進行了優(yōu)化。雙邊濾波是一種非線性的濾波方法, 是結(jié)合圖像的空間鄰近度和像素值相似度的一種折衷處理, 達到保邊去噪的目的, 具有簡單、 非迭代的特點。但是雙邊濾波器對于高頻細節(jié)的處理效果并不明顯, 對于彩色圖像里的高頻噪聲, 雙邊濾波器不能夠干凈的濾掉, 只對于低頻信息有較好的濾波效果。本文采用的是指導(dǎo)性濾波(Guiding filter) 7 對經(jīng)過 Welsh 算法處理后的遷移結(jié)果圖像進行處理。同時為了提高指導(dǎo)性濾波的處理速度, 使用盒子濾波。與雙邊濾波相比, 指導(dǎo)性濾波可以更好地保留圖像中的梯度,

14、 對圖像的邊緣有著更好的效果。而且指導(dǎo)性濾波的時間復(fù)雜度是 O(N), 由窗口半徑 r 決定。指導(dǎo)性濾波的定義由式(1)、 式(2)和式(4)表示。公式(1)其中, I i 是輸入圖像I的像素值, k 和 2k 分別為輸入圖像像素的平均值和方差, 為正規(guī)劃參數(shù), 本文取值為 0 01, | w | 為圖像在 w k 區(qū)域內(nèi)像素的數(shù)量。公式(2)其中,pk為圖像 p 在 w k 區(qū)域內(nèi)的像素平均值。公式(3)其中, q i 是經(jīng)過指導(dǎo)性濾波處理后的最終結(jié)果圖, 在盒子濾波中內(nèi)核半徑 r 取值為 2。經(jīng)過了指導(dǎo)性濾波的處理, 使處理后的圖像更加平滑, 除去了噪聲的干擾。程序代碼:guidedfil

15、ter.m% guide濾波函數(shù)function q = guidedfilter(I, p, r, eps) %包濾波器,主要功能是在給定的滑動窗口大小下,對每個窗口內(nèi)的像素值進行相加求和hei, wid = size(I); %讀取輸入圖像的尺寸 其中 hei為高 wid為寬N = boxfilter(ones(hei, wid), r); % the size of each local patch; N=(2r+1)2 except for boundary pixels. ones產(chǎn)生一個hei*wid的值全為1的矩陣 mean_I = boxfilter(I, r) ./ N;me

16、an_p = boxfilter(p, r) ./ N;mean_Ip = boxfilter(I.*p, r) ./ N;cov_Ip = mean_Ip - mean_I .* mean_p; % this is the covariance of (I, p) in each local patch.公式5中的分子 mean_II = boxfilter(I.*I, r) ./ N;var_I = mean_II - mean_I .* mean_I; %公式5中的分母第一項 a = cov_Ip ./ (var_I + eps); % Eqn. (5) in the paper;b =

17、 mean_p - a .* mean_I; % Eqn. (6) in the paper; mean_a = boxfilter(a, r) ./ N;mean_b = boxfilter(b, r) ./ N; q = mean_a .* I + mean_b; % Eqn. (8) in the paper;endboxfilter.m文件% 盒子濾波函數(shù)function imDst = boxfilter(imSrc, r)hei, wid = size(imSrc); %讀取尺寸imDst = zeros(size(imSrc); %預(yù)留空間imCum = cumsum(imSrc

18、, 1);%計算這個數(shù)組各行的累加值 把第一行加到第二行 然后把第二行加到第三行 依次累加 后面的1表示按行累加 2表示按列累加imDst(1:r+1, :) = imCum(1+r:2*r+1, :); %把imCum的第1+r到2*r+1行賦值給imDst的1:r+1行 對于全為1的源輸入圖像而言 這里的值就是1+r2*r+1imDst(r+2:hei-r, :) = imCum(2*r+2:hei, :) - imCum(1:hei-2*r-1, :); %對于全為1的輸入圖像而言,這里的值就是全為2*r+1imDst(hei-r+1:hei, :) = repmat(imCum(hei

19、, :), r, 1) - imCum(hei-2*r:hei-r-1, :); %將矩陣imCum(hei, :)變成r, 1維 %repmat函數(shù)將imCum的第hei行這組數(shù)據(jù)變成 r行 %1列的數(shù)組,其中數(shù)組的每個元素都由hei行組成。比如說這里的結(jié)果就是把一行imCum(hei, :)變成r行個imCum(hei, :)。%這里利用最后一行的值減去前面的值賦給imDstimCum = cumsum(imDst, 2); %這里在將imDst的矩陣按列累加% 繼續(xù)按列賦值imDst(:, 1:r+1) = imCum(:, 1+r:2*r+1);imDst(:, r+2:wid-r)

20、= imCum(:, 2*r+2:wid) - imCum(:, 1:wid-2*r-1);imDst(:, wid-r+1:wid) = repmat(imCum(:, wid), 1, r) - imCum(:, wid-2*r:wid-r-1); %end 5 實驗結(jié)果與分析本文是在操作系統(tǒng)為 Windows 8, CPU 為 Intel 酷睿 i7, 系統(tǒng)內(nèi)存為 8GB 的普通計算機上實現(xiàn)的。使用的軟件是Matlab 2012a。選取的圖像來源于互聯(lián)網(wǎng)的圖片。圖 1 是 258 ×168 的 BMP 圖像, 圖 2 是258 ×168 的 BMP 圖像, 圖 3 是

21、使用 Welsh 改進后的算法結(jié)果圖, 圖 4 是使用指導(dǎo)性濾波處理后的結(jié)果圖。圖 5 是 318 ×316的 jpg 圖像, 圖 6 是 620 ×376 的 jpg 圖像, 圖 7 是使用 Welsh 改進后的算法結(jié)果圖, 圖 8 是使用指導(dǎo)性濾波處理后的結(jié)果圖。各圖由于印刷的原因只能黑白顯示。 原始圖像 圖1 灰色圖像 圖2上色后的圖像 72.3 圖3 Welsh濾波圖像 52.65 圖4 welsh濾波增強圖像 76.8 圖5 采用RGB空間的色彩遷移 圖 6 原始圖像 圖6 灰色圖像 圖7上色后的圖像 114圖8 Welsh濾波圖像 79 圖9 welsh濾波增強

22、圖像 121 圖10 原始圖像 做對比用5 1 主觀評價標(biāo)準(zhǔn)在文獻 10中, 灰度圖像彩色化的效果主要由顏色對比度、 舒服感覺和自然感三個方面進行評價。對比圖 3 和圖 4, 可以發(fā)現(xiàn)圖 3 中天空和白云的部分存在著噪聲, 圖 4 中經(jīng)過指導(dǎo)性濾波的處理之后, 這兩部分變得更加的柔和和自然, 去掉了圖3 中的噪聲干擾。圖 7 和圖 8 主要是在背景方面上的差別, 圖 7在背景中存在著細節(jié)粗糙的缺點, 圖 8 經(jīng)過指導(dǎo)性濾波的處理,背景效果更加的柔和。5 2 客觀評價標(biāo)準(zhǔn)圖像的客觀評價方法是用數(shù)學(xué)的方法來衡量一幅圖像的質(zhì)量, 而清晰度是最重要的一種評價方式 10 。清晰度反映了圖像質(zhì)量的改進,

23、同時還反映出圖像中微小細節(jié)反差和紋理變換特征。圖像清晰度的值越大, 說明圖像的效果越好。在彩色圖像中, 清晰度的計算公式為:Px (i, j) =r2x (i, j) + g2x (i, j) + b2x (i, j槡) (5)Py (i, j) =r2y (i, j) + g2y (i, j) + b2y (i, j槡) (6)其中,r x (i, j), g x (i, j), b x (i, j);r y (i, j), g y (i, j), b y (i, j)分別為 , G, B 三個頁面沿 x 和 y 方向的差分。程序代碼:Difference.m文件% 計算圖像清晰度function d=Difference(X)R=X(:,:,1);G=X(:,:,2);B=X(:,:,3);dx=sqrt(sum(sum(diff(R).2+diff(G).2+diff(B).2);dy=sqrt(sum

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論