劉亞亞
(商洛學(xué)院 數(shù)學(xué)與計(jì)算機(jī)應(yīng)用學(xué)院, 陜西 商洛 726000)
?
基于FPGA硬件的彩色圖像恢復(fù)系統(tǒng)設(shè)計(jì)
劉亞亞
(商洛學(xué)院 數(shù)學(xué)與計(jì)算機(jī)應(yīng)用學(xué)院, 陜西 商洛726000)
摘要:為實(shí)現(xiàn)數(shù)字圖像的實(shí)時(shí)處理,在FPGA上應(yīng)用硬件描述語(yǔ)言實(shí)現(xiàn)功能模塊的方法,利用FPGA技術(shù),在數(shù)碼攝影系統(tǒng)前端對(duì)Bayer格式圖像進(jìn)行實(shí)時(shí)彩色復(fù)原,并對(duì)系統(tǒng)進(jìn)行調(diào)試.選用四合一簡(jiǎn)單算法處理Bayer圖像,使其恢復(fù)成全彩色圖像,并用MATLAB軟件先驗(yàn)證算法的正確性與可靠性,最后在ISE上進(jìn)行工程仿真.仿真實(shí)驗(yàn)表明,系統(tǒng)工作實(shí)時(shí)、正確、可靠.
關(guān)鍵詞:Bayer格式圖像;插值算法;FPGA
0引言
隨著大規(guī)模/超大規(guī)模集成電路以及大規(guī)??删幊踢壿嬈骷?Field Programmable Gate Array,FPGA)的高速發(fā)展和廣泛應(yīng)用,實(shí)時(shí)圖像處理得到了非常迅速的發(fā)展.為了提高圖像處理的速度,滿(mǎn)足系統(tǒng)實(shí)時(shí)要求,可以用硬件來(lái)實(shí)現(xiàn)對(duì)圖像的處理,F(xiàn)PGA芯片便是目標(biāo)硬件的理想選擇之一.同時(shí),F(xiàn)PGA的應(yīng)用也為提高圖像處理速度提供了新的思路和解決方法[1].在實(shí)時(shí)圖像處理中,圖像重建必須充分考慮人眼視覺(jué)特性和數(shù)碼相機(jī)拍照對(duì)外界響應(yīng)的差異,通過(guò)一些特定的算法進(jìn)行調(diào)整,使得到的照片能夠真實(shí)重現(xiàn)客觀世界的細(xì)節(jié),這些調(diào)整包括Gamma校正、白平衡調(diào)整等[2].由于目前集成電路的限制,大部分傳感器在每一像素上只能記錄一種顏色光的強(qiáng)度,所以在圖像重建的過(guò)程中必須用到插值算法來(lái)恢復(fù)全彩色圖像.基于此,本研究提出采用簡(jiǎn)單實(shí)用的四合一算法,實(shí)現(xiàn)了彩色圖像恢復(fù).
1設(shè)計(jì)原理
1.1Bayer格式的圖像簡(jiǎn)介
Bayer格式圖像是伊士曼·柯達(dá)公司的科學(xué)家Bryce Bayer發(fā)明的,是相機(jī)內(nèi)部的原始圖像,一般后綴名為.raw,圖像陣列中每行和每列只有2種顏色分量,且在每個(gè)像素的位置上只獲得1種顏色分量,整個(gè)圖像G分量是R和B的2倍.G分量的采樣率高,原因是人眼的亮度響應(yīng)曲線(xiàn)峰值更接近綠色頻率范圍(波長(zhǎng)550 mm附近),通過(guò)G通道可得到亮度信息.一般的Bayer格式圖像內(nèi)部存儲(chǔ)方式為列數(shù)是2的倍數(shù),行數(shù)是4的倍數(shù).
1.2Bayer格式圖像的彩色圖像恢復(fù)原理
Bayer圖像的每個(gè)像素位置上只有1種彩色信息,如果要恢復(fù)成全彩色圖像,就需要借助算法對(duì)它進(jìn)行填充,使其成為1幅高清全彩色圖像.彩色圖像恢復(fù)的算法有很多:一類(lèi)是單個(gè)顏色通道獨(dú)立的插值算法,包括鄰域插值法、雙線(xiàn)性插值法和卷積插值法等,但這些算法在高頻區(qū)域的邊界區(qū)域失真明顯;另一類(lèi)利用多通道相關(guān)性插值算法,包括基于邊界的算法、加權(quán)系數(shù)法、交互式插值法及傅里葉變換等,通常能得到比較滿(mǎn)意的效果,但往往算法過(guò)于復(fù)雜[3-6].基于此,本研究采用一種簡(jiǎn)單的四合一算法,該算法把每4個(gè)像素合并為1個(gè)像素,算法原理與像素值的變化如圖1所示, 合并之后綠色分量變
圖1四合一Bayer算法原理
為原來(lái)的2個(gè)綠色分量之和的二分之一.將Bayer格式圖像中每4個(gè)像素合并為1個(gè)像素,這樣,這個(gè)像素就有了紅綠藍(lán)3色分量,算法對(duì)Bayer格式圖像這樣簡(jiǎn)單處理后,就獲取了全彩色圖像.
2系統(tǒng)實(shí)現(xiàn)
本系統(tǒng)最關(guān)鍵的部件之一FPGA,其作為系統(tǒng)的大腦中樞起著十分重要的作用,控制著整個(gè)系統(tǒng)的工作.在ISE仿真之前先用MATLAB進(jìn)行仿真,檢測(cè)系統(tǒng)的可行性.
2.1MATLAB仿真結(jié)果
MATLAB仿真結(jié)果如圖2所示.仿真檢測(cè)結(jié)果顯示得到了清楚的恢復(fù)后的圖像,但是,這樣簡(jiǎn)單的處理算法也存在比較大的弊端,圖像的分辨率僅變?yōu)樵瓉?lái)的四分之一,相當(dāng)于丟失了四分之三的圖像信息量.
圖2MATLAB仿真結(jié)果
2.2系統(tǒng)的實(shí)現(xiàn)過(guò)程
四合一彩色恢復(fù)算法的實(shí)現(xiàn)過(guò)程如圖3所示.當(dāng)輸入數(shù)據(jù)有效時(shí), Bayer格式圖像數(shù)據(jù)依次通過(guò)
圖3簡(jiǎn)單合并Bayer算法硬件系統(tǒng)實(shí)現(xiàn)原理圖
Line Buffer1(緩沖寄存器),R1-C1,R1-C0,Line Buffer2,R0-C1,R0-C0,緩存送進(jìn)單元MUX,得到最終的RGB數(shù)據(jù).其中,Line Buffer1和Line Buffer2的長(zhǎng)度為1行圖像的長(zhǎng)度,R1-C1,R1-C0,R0-C1,R0-C0為4個(gè)D觸發(fā)器.通過(guò)計(jì)數(shù)器來(lái)控制MUX的功能,這個(gè)計(jì)數(shù)器是從圖像捕捉模塊的行像素計(jì)數(shù)和列像素計(jì)數(shù)的最低位得來(lái)的.當(dāng)列計(jì)數(shù)和行計(jì)數(shù)最低位是0時(shí),寄存器R0-C1、R0-C0、R1-C0、R1-C1中的數(shù)據(jù)依次是分量R,G1,B,G2,則這時(shí)4個(gè)寄存器數(shù)據(jù)計(jì)算輸出MUX中的RGB數(shù)據(jù)分別為R0-C1,(R0-C0+R1-C1)/2,R1-C0.當(dāng)列計(jì)數(shù)和行計(jì)數(shù)的最低位是別的組合時(shí),數(shù)據(jù)的輸出無(wú)效.通過(guò)這樣的方法,即使得到每個(gè)像素的RGB數(shù)據(jù),圖像分辨率卻變成原來(lái)的1/4,即2048×2048變?yōu)榱?024×1024.
為了檢測(cè)算法硬件實(shí)現(xiàn)的可行性,本研究設(shè)計(jì)了幾種顏色進(jìn)行仿真實(shí)驗(yàn).圖4為經(jīng)過(guò)顏色插值后的實(shí)際輸出,發(fā)現(xiàn)處理過(guò)的圖像(每個(gè)像素有G、B、R 3種顏色分量)分辨率變?yōu)樵瓉?lái)的四分之一,也就是說(shuō)行數(shù)變?yōu)樵瓉?lái)的二分之一,列數(shù)也變?yōu)樵瓉?lái)的二分之一.通過(guò)與經(jīng)過(guò)顏色插值后的預(yù)期輸出比較發(fā)現(xiàn),二者完全一致,說(shuō)明該模塊設(shè)計(jì)正確,達(dá)到了預(yù)期目的.
圖4經(jīng)過(guò)顏色插值后的實(shí)驗(yàn)輸出結(jié)果
3結(jié)語(yǔ)
實(shí)驗(yàn)圖像采用標(biāo)準(zhǔn)的Bayer圖像,對(duì)圖像進(jìn)行四合一算法恢復(fù), 結(jié)果顯示從人眼視覺(jué)效果看出圖片非常清晰.程序在ISE10.1軟件環(huán)境中進(jìn)行前仿真和后仿真,前仿真也稱(chēng)功能仿真,采用波形編輯器和HDL等創(chuàng)建波形文件、測(cè)試向量,仿真完成后將會(huì)生成報(bào)告文件并輸出仿真信號(hào)的波形.從輸出的波形中可以觀察到各個(gè)節(jié)點(diǎn)信號(hào)的變化,若發(fā)現(xiàn)錯(cuò)誤,則返回修改邏輯設(shè)計(jì),最后進(jìn)行芯片的編程與調(diào)試,即由位數(shù)據(jù)流生成數(shù)據(jù)文件為準(zhǔn),并在FPGA芯片中將編程的數(shù)據(jù)下載并存儲(chǔ),以便后期進(jìn)行硬件調(diào)試、驗(yàn)證.燒錄器將程序燒寫(xiě)到FPGA中,F(xiàn)PGA加點(diǎn)電工作.本研究的算法設(shè)計(jì)靈活,硬件設(shè)計(jì)簡(jiǎn)單,具有較好的通用性.
參考文獻(xiàn):
[1]朱波,汶德勝,王飛.改進(jìn)的Bayer插值算法及其硬件實(shí)現(xiàn)[J].光電子(激光),2013,24(6):1211-1218.
[2]彭俊,高偉.基于FPGA的彩色恢復(fù)系統(tǒng)的研究[D].西安:西安光學(xué)精密研究所,2007.
[3]Adams J E.DesignofpracticalcolorfilterarrayinterpolationalgorithmsforDigitalcameras[C]//1998InternationalConferenceonImageProcessing.Chicago,IL:IEEE Press,1998:488-492.
[4]Lu W M,Tan Y P.Colorfilterarraydemosaicking:newmethodandperformancemeasures[J].IEEE Trans Image Proc,2003,12(10):1194-1210.
[5]Gunturk B K.Yucelaltunbasak,russellm,mersereau,colorplanerojections[J].IEEE Trans Image Proc,2002,11(9):997-1013.
[6]Zhang L,Li X,Zhang D.ImagedenoisingandzoomingundertheLMMSEframework[J].IEEE Trans Image Proc,2012,6(3):273-283.
Color Image Restoration Design Based on FPGA
LIUYaya
(College of Mathematics and Computer Application, Shangluo University, Shangluo 726000, China)
Abstract:In order to achieve the real-time processing of digital image,hardware description language is applied to realize FPGA functional modules.Then,FPGA technology is utilized.Real-time color image restoration is done for Bayer pattern image at the front end of the digital photography system.And finally,the system is debugged.This paper chooses a four in one simple algorithm to process Bayer image in order to restore the perfect color images.Then,MATLAB software is used to test the validity and reliability of the algorithm.Finally,engineering simulation is done on ISE.The method used is simple,and has strong operability.Experiments show that the system works in a real-time,accurate and reliable way.
Key words:Bayer pattern image;interpolation algorithm;FPGA
文章編號(hào):1004-5422(2016)02-0159-03
收稿日期:2016-03-07.
基金項(xiàng)目:陜西省教育廳科研計(jì)劃(2013JK0597)資助項(xiàng)目.
作者簡(jiǎn)介:劉亞亞(1981 — ), 女, 碩士, 講師, 從事計(jì)算機(jī)智能與模式識(shí)別技術(shù)研究.
中圖分類(lèi)號(hào):TP391.41;TN79+1
文獻(xiàn)標(biāo)志碼:A