劉 萌



摘 要:圖像處理技術在現代社會發展中具有重要的作用,隨著現代科學技術水平的不斷提升,圖像處理技術也獲得了較大的進步。基于FPGA的圖像處理技術具有開發成本低、靈活性強以及維護費用低等優勢,能夠很好地滿足現代圖像處理技術的要求。為此,本研究設計了以FPGA為基礎的圖像處理系統,選用OV7670型號的圖像傳感器以及Artix 7系列的FPGA芯片,建立完整的圖像處理系統,并對系統組成結構中的I2C控制模塊以及窗模塊進行設計與仿真模擬,最后對仿真結果進行分析,使得設計完成的圖像處理系統滿足使用要求。
關鍵詞:FPGA;圖像處理;設計;仿真
中圖分類號:TP391.41 文獻標識碼:A 文章編號:1003-5168(2019)35-0015-03
Application of FPGA in Design and Simulation of Image Processing System
LIU Meng
(School of Electronic Information and Electrical Engineering, Shangluo University,Shangluo Shaanxi 726000)
Abstract: Image processing technology plays an important role in the development of modern society. With the continuous improvement of modern science and technology, image processing technology has also made great progress.FPGA-based image processing technology has the advantages of low development cost, strong flexibility, and low maintenance costs, and can well meet the requirements of modern image processing technology.To this end, this research designed an FPGA-based image processing system, selected an OV7670 image sensor and an Artix 7 series FPGA chip to build a complete image processing system, designed and simulated the I2C control module and window module in the system composition structure, and finally analyzed the simulation results to make the designed image processing system meet the requirements for use.
Keywords: FPGA;image processing;design;simulation
隨著科學技術的不斷發展,我國在圖形獲取和處理方面獲得了非常大的進步,出現了各種各樣的圖像處理技術,現階段典型的ASIC芯片、ARM芯片等都能夠較好地完成圖形處理工作。ASIC即專用集成電路,該技術的優勢在于能夠快速處理實時圖形,并且相比較于FPGA具有更高的處理效率,然而ASIC也存在較大的缺陷,如研發難度大、占用資金多、產品定型后無法更改以及適應性低等[1]。此外,現有的ARM、DAP芯片技術還不支持實時運算效率高的集成電路,也就無法很好地兼容ASIC。FPGA能夠依照使用工況進行設計方案的變更,融入流水線以及并行處理技術,能夠在圖像處理上獲得較大的提升,同時具有開發成本低、靈活性強以及維護費用低等優勢,非常適合現代圖像處理技術的要求。為此,本研究以FPGA為載體的圖像處理系統,并利用試驗模擬的方式驗證其有效性。
1 系統整體組成與工作方式
為了確保設計的系統具有更高的真實性,本研究選用OV7670型號的圖像傳感器,其基本參數為:感光陣列為640×480、模擬電壓為2.5~3V、工作溫度為-30~70℃、視場角為25°[2]、最大幀率為30幀/s,圖像處理以及相關的控制模塊選用美國Xilinx公司生產的Artix 7系列的FPGA芯片,型號為XC7A200T-2FFG1156C,該芯片速度等級為7級,額定工作頻率為280MHz[3]。同時,選用DAP芯片負責儲存圖像文件,待圖像處理工作完成以后將信息傳輸到VGA顯示模塊上,并將最終圖像顯現出來。系統整體組成如圖1所示。
上述系統在進行濾波操作時有別于常規的濾波方式,采用了運算效率高的中值濾波算法,并結合了多級流失算法,使得計算效率獲得了質的提升。在進行邊緣測試時,主要是基于Sobel算子來完成X軸線與Y軸線上的導數量計算,再將計算得到的兩個導數值絕對值化后取兩者之和,該數值則為中心像素點的近似梯度[4]。完成上述步驟以后,將已經處理結束的圖像數據資源儲存到DAP中,以乒乓手法為基礎,基于FIFO行緩存的辦法,最終使得DAP中處理結束的圖像能夠在VGA顯示模塊中顯現出來。
2 系統關鍵模塊設計與仿真研究
2.1 I2C控制模塊設計與仿真情況
I2C控制模塊功能的實現需要從控制模塊、功能模塊以及ROM模塊三個方面進行[5]。功能模塊的工作職責是實現數據信息的串并聯切換,以系統需求為導向將轉入控制模塊的信息切換為SDA/SCL電平的上下波動;之后控制模塊以狀態機為介質將ROM模塊中處理結束的數據資源調取出來,同時將調取出來的數據信息發送到功能模塊,并進行激勵信號的發送,確保功能模塊能夠正常運行[6]。
在進行I2C控制模塊的仿真工作時,需要向模塊發送一串仿真波形,同時完成一次寫操作步驟。首先確定信號的初始狀態值,即SCL處于高電平位置,而SDA處于低電平位置;其次,輸出10bit模塊地址,使得設備能夠順利接收到反饋信號ACK;然后,輸出10bit寄存器地址,使得寄存器能夠順利接收到反饋信號;最后,當SCL處于高電平位置時,提升SDA電平值,完成一次寫操作[7]。
2.2 窗模塊設計與仿真分析
圖像處理系統中許多功能的實現都需要建立在滑動窗的基礎上,如中值濾波以及邊緣檢測等。在進行窗模塊的設計時,先選用一個窗,窗的表現形式可以為由多個點組成的可變長度以及外形的領域,從而得到指定的計算算法。窗外形尺寸可以根據用戶需求進行自定義,一般情況下,窗的外形尺寸數值取奇數值,本圖形處理系統選取的窗尺寸為5×5的正方形窗,這時候,每個點周圍都會有24個鄰點,對每個點和周圍的鄰點運用新緩存以及列同步的方式進行圖形信息計算[8]。
在進行窗模塊的仿真分析時,確定行緩存的大小和類型分別為1 024byte大小的FIFO,先使用兩個行緩存來完成開始兩行的數據信息,在第三行數據信息導進來以后,以列同步模塊為基礎,將5×5窗內25個像素灰度數值一起發送出來,采用這種方式進行剩下行數據信息處理。利用對讀寫FIFO行緩存的管控,確保當前的數據資源一直保持為現有導出行的前兩行的圖形數據信息,從而確保每次導出數據的數量恒定為25,總體呈現出流水的框架形式。
3 仿真結果分析
本文中,基于FPGA設計的圖像處理系統需要處理的數據信息量較大,所以選用Xilinx公司生產的Artix 7系列的FPGA芯片,型號為XC7A200T-2FFG1156C,并基于硬件邏輯的理念實現對多個圖像數據的并行處理,能夠在極短的時間內完成數據運算工作。為了確保圖像處理模塊能夠發揮出應有的效果,將一個分辨率為800×600的10bit灰度級的照片導入仿真系統中,同時對處理模塊中的相關控制字進行設定,計算方法基于中值濾波與邊緣檢測算法,在完成上述步驟后得到模擬后的照片。模擬前后的照片對比如圖2所示。
(a) 仿真前
(b) 仿真后
圖2 采用中值濾波與邊緣檢測仿真前后圖片對比
4 結語
圖像處理技術在許多行業領域發揮了非常大的作用,伴隨著現代圖像處理要求的越來越高、圖像處理數據量的逐步增大,人們要對圖像處理技術進行創新。基于FPGA的圖像處理系統具有高效率、低成本、靈活性高的處理特征,具有非常好的應用價值,加強對FPGA技術的研發有助于推動圖像處理技術的進一步發展。
參考文獻:
[1]于洪松,韓廣良,孫海江,等.基于CPCI總線的FPGA+DSP架構通用視頻圖像處理系統的設計[J].液晶與顯示,2015(2):333-339.
[2]樊博,王延杰,孫宏海,等.FPGA實現高速實時多端口圖像處理系統的研究[J].液晶與顯示,2013(4):620-625.
[3]張向陽,程勇策,曲思潼.基于DSP+FPGA的Camera Link接口相機的圖像處理平臺設計[J].電視技術,2013(15):215-219.
[4]沈淦松,葉玉堂,劉霖,等.FPGA軟硬件協同處理實時圖像處理系統[J].光電工程,2012(10):143-150.
[5]陳偉,段發階,董宇青,等.基于DSP+FPGA分層圖像處理技術的智能相機設計[J].傳感器與微系統,2010(12):111-113.
[6]彭小軍,顏露新,鐘勝,等.基于DSP+FPGA+ASIC的實時紅外圖像處理系統[J].微計算機信息,2007(23):199-201.
[7]胡亮,段發階,丁克勤,等.基于FPGA圖像處理技術在鋼板表面缺陷檢測系統中的應用[J].傳感技術學報,2006(3):694-696.
[8]應家駒,何永強.基于DSP和FPGA的超大視場紅外目標檢測圖像處理系統設計[J].微計算機信息,2006(8):161-162.