劉亞亞
(商洛學院 數(shù)學與計算機應用學院, 陜西 商洛 726000)
?
基于FPGA硬件的彩色圖像恢復系統(tǒng)設計
劉亞亞
(商洛學院 數(shù)學與計算機應用學院, 陜西 商洛726000)
摘要:為實現(xiàn)數(shù)字圖像的實時處理,在FPGA上應用硬件描述語言實現(xiàn)功能模塊的方法,利用FPGA技術,在數(shù)碼攝影系統(tǒng)前端對Bayer格式圖像進行實時彩色復原,并對系統(tǒng)進行調(diào)試.選用四合一簡單算法處理Bayer圖像,使其恢復成全彩色圖像,并用MATLAB軟件先驗證算法的正確性與可靠性,最后在ISE上進行工程仿真.仿真實驗表明,系統(tǒng)工作實時、正確、可靠.
關鍵詞:Bayer格式圖像;插值算法;FPGA
0引言
隨著大規(guī)模/超大規(guī)模集成電路以及大規(guī)??删幊踢壿嬈骷?Field Programmable Gate Array,FPGA)的高速發(fā)展和廣泛應用,實時圖像處理得到了非常迅速的發(fā)展.為了提高圖像處理的速度,滿足系統(tǒng)實時要求,可以用硬件來實現(xiàn)對圖像的處理,F(xiàn)PGA芯片便是目標硬件的理想選擇之一.同時,F(xiàn)PGA的應用也為提高圖像處理速度提供了新的思路和解決方法[1].在實時圖像處理中,圖像重建必須充分考慮人眼視覺特性和數(shù)碼相機拍照對外界響應的差異,通過一些特定的算法進行調(diào)整,使得到的照片能夠真實重現(xiàn)客觀世界的細節(jié),這些調(diào)整包括Gamma校正、白平衡調(diào)整等[2].由于目前集成電路的限制,大部分傳感器在每一像素上只能記錄一種顏色光的強度,所以在圖像重建的過程中必須用到插值算法來恢復全彩色圖像.基于此,本研究提出采用簡單實用的四合一算法,實現(xiàn)了彩色圖像恢復.
1設計原理
1.1Bayer格式的圖像簡介
Bayer格式圖像是伊士曼·柯達公司的科學家Bryce Bayer發(fā)明的,是相機內(nèi)部的原始圖像,一般后綴名為.raw,圖像陣列中每行和每列只有2種顏色分量,且在每個像素的位置上只獲得1種顏色分量,整個圖像G分量是R和B的2倍.G分量的采樣率高,原因是人眼的亮度響應曲線峰值更接近綠色頻率范圍(波長550 mm附近),通過G通道可得到亮度信息.一般的Bayer格式圖像內(nèi)部存儲方式為列數(shù)是2的倍數(shù),行數(shù)是4的倍數(shù).
1.2Bayer格式圖像的彩色圖像恢復原理
Bayer圖像的每個像素位置上只有1種彩色信息,如果要恢復成全彩色圖像,就需要借助算法對它進行填充,使其成為1幅高清全彩色圖像.彩色圖像恢復的算法有很多:一類是單個顏色通道獨立的插值算法,包括鄰域插值法、雙線性插值法和卷積插值法等,但這些算法在高頻區(qū)域的邊界區(qū)域失真明顯;另一類利用多通道相關性插值算法,包括基于邊界的算法、加權系數(shù)法、交互式插值法及傅里葉變換等,通常能得到比較滿意的效果,但往往算法過于復雜[3-6].基于此,本研究采用一種簡單的四合一算法,該算法把每4個像素合并為1個像素,算法原理與像素值的變化如圖1所示, 合并之后綠色分量變
圖1四合一Bayer算法原理
為原來的2個綠色分量之和的二分之一.將Bayer格式圖像中每4個像素合并為1個像素,這樣,這個像素就有了紅綠藍3色分量,算法對Bayer格式圖像這樣簡單處理后,就獲取了全彩色圖像.
2系統(tǒng)實現(xiàn)
本系統(tǒng)最關鍵的部件之一FPGA,其作為系統(tǒng)的大腦中樞起著十分重要的作用,控制著整個系統(tǒng)的工作.在ISE仿真之前先用MATLAB進行仿真,檢測系統(tǒng)的可行性.
2.1MATLAB仿真結果
MATLAB仿真結果如圖2所示.仿真檢測結果顯示得到了清楚的恢復后的圖像,但是,這樣簡單的處理算法也存在比較大的弊端,圖像的分辨率僅變?yōu)樵瓉淼乃姆种唬喈斢趤G失了四分之三的圖像信息量.
圖2MATLAB仿真結果
2.2系統(tǒng)的實現(xiàn)過程
四合一彩色恢復算法的實現(xiàn)過程如圖3所示.當輸入數(shù)據(jù)有效時, Bayer格式圖像數(shù)據(jù)依次通過
圖3簡單合并Bayer算法硬件系統(tǒng)實現(xiàn)原理圖
Line Buffer1(緩沖寄存器),R1-C1,R1-C0,Line Buffer2,R0-C1,R0-C0,緩存送進單元MUX,得到最終的RGB數(shù)據(jù).其中,Line Buffer1和Line Buffer2的長度為1行圖像的長度,R1-C1,R1-C0,R0-C1,R0-C0為4個D觸發(fā)器.通過計數(shù)器來控制MUX的功能,這個計數(shù)器是從圖像捕捉模塊的行像素計數(shù)和列像素計數(shù)的最低位得來的.當列計數(shù)和行計數(shù)最低位是0時,寄存器R0-C1、R0-C0、R1-C0、R1-C1中的數(shù)據(jù)依次是分量R,G1,B,G2,則這時4個寄存器數(shù)據(jù)計算輸出MUX中的RGB數(shù)據(jù)分別為R0-C1,(R0-C0+R1-C1)/2,R1-C0.當列計數(shù)和行計數(shù)的最低位是別的組合時,數(shù)據(jù)的輸出無效.通過這樣的方法,即使得到每個像素的RGB數(shù)據(jù),圖像分辨率卻變成原來的1/4,即2048×2048變?yōu)榱?024×1024.
為了檢測算法硬件實現(xiàn)的可行性,本研究設計了幾種顏色進行仿真實驗.圖4為經(jīng)過顏色插值后的實際輸出,發(fā)現(xiàn)處理過的圖像(每個像素有G、B、R 3種顏色分量)分辨率變?yōu)樵瓉淼乃姆种唬簿褪钦f行數(shù)變?yōu)樵瓉淼亩种?,列?shù)也變?yōu)樵瓉淼亩种?通過與經(jīng)過顏色插值后的預期輸出比較發(fā)現(xiàn),二者完全一致,說明該模塊設計正確,達到了預期目的.
圖4經(jīng)過顏色插值后的實驗輸出結果
3結語
實驗圖像采用標準的Bayer圖像,對圖像進行四合一算法恢復, 結果顯示從人眼視覺效果看出圖片非常清晰.程序在ISE10.1軟件環(huán)境中進行前仿真和后仿真,前仿真也稱功能仿真,采用波形編輯器和HDL等創(chuàng)建波形文件、測試向量,仿真完成后將會生成報告文件并輸出仿真信號的波形.從輸出的波形中可以觀察到各個節(jié)點信號的變化,若發(fā)現(xiàn)錯誤,則返回修改邏輯設計,最后進行芯片的編程與調(diào)試,即由位數(shù)據(jù)流生成數(shù)據(jù)文件為準,并在FPGA芯片中將編程的數(shù)據(jù)下載并存儲,以便后期進行硬件調(diào)試、驗證.燒錄器將程序燒寫到FPGA中,F(xiàn)PGA加點電工作.本研究的算法設計靈活,硬件設計簡單,具有較好的通用性.
參考文獻:
[1]朱波,汶德勝,王飛.改進的Bayer插值算法及其硬件實現(xiàn)[J].光電子(激光),2013,24(6):1211-1218.
[2]彭俊,高偉.基于FPGA的彩色恢復系統(tǒng)的研究[D].西安:西安光學精密研究所,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
文章編號:1004-5422(2016)02-0159-03
收稿日期:2016-03-07.
基金項目:陜西省教育廳科研計劃(2013JK0597)資助項目.
作者簡介:劉亞亞(1981 — ), 女, 碩士, 講師, 從事計算機智能與模式識別技術研究.
中圖分類號:TP391.41;TN79+1
文獻標志碼:A