基于USB2.0的視頻圖像處理芯片實現(xiàn)方案
4 PU模塊中核心部件的設(shè)計
圖像處理單元所要完成的功能主要有:(1)圖像濾波(Image Filte);(2)對比度(Contrast);(3)亮度(Brightness);(4)飽和度(Saturation);(5)色相(Hue);(6)銳化(Sharpness);(7)伽馬校正(Gamma)等。圖3 給出了PU 模塊中核心部件的結(jié)構(gòu),其中圖像濾波功能是通過一個1×5 窗口在圖像上的遍歷來完成,伽馬校正主要是通過對ROM 的查表來實現(xiàn)。
圖3 PU 模塊中核心部件結(jié)構(gòu)圖。
5 設(shè)計的仿真和驗證
5.1 模塊的功能仿真
主要給出了對圖像預(yù)處理模塊中核心部件Bayer模塊的仿真驗證方法,其他模塊的仿真驗證與此類似。
由于圖像處理模塊所涉及的數(shù)據(jù)量非常龐大,僅憑單一的一種或兩種軟件無法獨立完成,所以這里仿真驗證的工作是通過三個軟件Xilinx ISE + ModelSim +Matlab 共同完成,圖4 給出了Bayer 模塊TestBench示意圖,其實現(xiàn)的步驟主要分為以下三步:
圖4 Bayer 模塊TestBench 模型示意圖。
?。?)由MATLAB 從10 張有共同壞點位置的不同JPEG 圖像中讀取8bit 無符號RGB 數(shù)據(jù),然后由相應(yīng)的RGB 數(shù)據(jù)生成對應(yīng)的Bayer 數(shù)據(jù),并以10個。txt 文本文件來保留這10 張圖像的Bayer 數(shù)據(jù),這十張文本文件同壞點位置信息一起作為測試輸入激勵。
?。?)把測試輸入激勵,分別輸入Bayer 模塊和MATLAB 模擬Bayer 模塊功能的程序中,可以分別得到大量的信息,這些信息都是由。txt 文本文件來保存,其中MATLAB 模擬程序完成的功能與Bayer 模塊完成的功能相同,只是兩者運行的平臺不同。
(3)比較由MATLAB 模擬程序與Bayer 模塊所生成的大量。txt 文本文件,由于模擬程序和硬件模塊具體實現(xiàn)的機制不同(模擬程序采用了矩陣運算,而硬件模塊采用2 條線的行緩沖+六級流水線的方式實現(xiàn)),如果它們產(chǎn)生的數(shù)據(jù)一致,則可以很好的說明硬件模塊完成了預(yù)期的功能, 然后再運用MATLAB 顯示函數(shù),把原始圖像數(shù)據(jù)與修正后的數(shù)據(jù)以圖像的形式顯示出來,這樣能以更加直觀的形式來觀察對應(yīng)的圖像效果。
評論