江鴻鵠 賀蔚
摘要:圖像識別是圖像跟蹤一直都是圖像處理的關鍵技術,運用軟件進行圖像處理是較為常規(guī)的方式,不過在追求實時、高效的背景下,硬件處理逐漸成為圖像處理的重要方向。本文將簡要概述FPGA技術的基本原理,并研究基于FPGA的圖像識別與跟蹤系統(tǒng)設計,以期為基于硬件的圖像處理技術提供一定建議。
關鍵詞:FPGA;圖像識別;跟蹤系統(tǒng)
引言:硬件處理采用專門的圖像處理系統(tǒng)和處理器配合FPGA技術的可重構性,能夠極大地提升圖像識別和跟蹤系統(tǒng)的靈活性及通用性。這需要深入分析FPGA的設計流程,完善各系統(tǒng)模塊的設計要求,以達到對目標的識別和跟蹤。
1FPGA技術的基本原理
FPGA技術在PAL、GAL等可編程器上發(fā)展出的新型產(chǎn)物,在專用集成電路中有著廣泛的運用。FPGA作為一種高密度的集成電路,改善了傳統(tǒng)可編程器門電路有限的問題,增強了定制電路的邏輯功能,可以重復進行編程,重構系統(tǒng)。這為配置數(shù)據(jù)和系統(tǒng)功能的靈活性運用提供了基礎。FPGA由嵌入式SRAM、數(shù)字時鐘、邏輯模塊組成,其豐富的避險資源,為可編程邏輯的控制提供了多種算法設計,可用于SRAM的更新升級,而且FPGA所具有的大量門電路能夠有效實現(xiàn)加減法等邏輯運算,復雜算法也可以通過編程來實現(xiàn),這與傳統(tǒng)數(shù)字信息處理器相比,F(xiàn)PGA的計算能力更強。FPGA在使用時應當采用同步設計,可以防止出現(xiàn)不穩(wěn)定狀態(tài),避免對系統(tǒng)穩(wěn)定性產(chǎn)生影響,F(xiàn)PGA技術適合實時性要求高、頻率快的功能模塊,在使用時需要開了存儲器和芯片資源占用,合理配置系統(tǒng)結構。
2基于FPGA的圖像識別與跟蹤系統(tǒng)設計
2.1系統(tǒng)架構
FPGA核心系統(tǒng)的控制芯片最為重要,本設計中系統(tǒng)控制芯片選用的是EP4CE10F17C8型芯片;RGB圖像的處理算法芯片則采用具有較高分辨率數(shù)字攝像頭,型號為OV5640,可以滿足圖像采集的要求;圖像存儲模塊選用了傳統(tǒng)的SDRAM存儲芯片,其在數(shù)據(jù)交互和數(shù)據(jù)傳輸方面具有一定優(yōu)勢;圖像處理模塊設計了均值濾波算法和Sobel邊緣檢測算法結合的方式,來實現(xiàn)對目標進行跟蹤檢測;顯示模塊使用了VGA顯示器作為跟蹤結果顯示層面。系統(tǒng)的基本工作流程是從數(shù)字圖像傳感器得到數(shù)據(jù)圖像數(shù)據(jù)后,圖像采集模塊會收集圖像數(shù)據(jù)信息,再將這些數(shù)據(jù)傳送到圖像處理和色彩轉換模塊中,將數(shù)據(jù)轉換為傳統(tǒng)的RGB形式,處理模塊便能對圖像中的目標進行識別和跟蹤,得到的跟蹤結果將通過SDRAM控制器存儲到芯片當中,并同時將相關結果反饋到顯示模塊上,整個圖像處理系統(tǒng)的流程如圖1所示。
2.2圖像采集模塊
外部的數(shù)字圖像傳感器可以選用功耗較低的CMOS圖像傳感器,通常來說能夠支持圖像幀率需求,并能夠提供多種運作模式的傳感器皆可使用。本系統(tǒng)所采用的CMOS數(shù)字圖像傳感器OV5640就是能夠支持多種分辨率,最高可支持500W像素的傳感器,此次設計中輸出圖像分辨率為1920*1080,35fps,輸出格式設置為RGB565,像素時鐘信號頻率設定為48MHz。圖像采集模塊的設計參數(shù)包括分辨率,曝光時間、RGB增益和消隱。首先在圖像采集的分辨率保證上,從設備到FPGA控制芯片之前門系統(tǒng)中應當不再多加節(jié)點,采集模塊只需要完成初始化操作即可,在模塊發(fā)出起始信號后寫入寄存器地址,發(fā)送完畢后進行初始化,來保證圖像采集的原本面貌[1]。
然后,為了保證在高頻率或者多圖像處理過程中圖像傳感器和系統(tǒng)控制的運行吻合,需要進行時序控制,使圖像采集模塊讀取到有效的圖像信息。
之后是圖像的色彩轉換需求,為了便于后續(xù)RGB模式進行識別,需要在采集后便對圖像進行色彩轉換。通常采用線性插值法來獲得轉換圖像的像素信息,基本能夠滿足圖像采集的要求為后續(xù)圖像識別跟蹤提供幫助。
最后是圖像存儲,在實際的圖像采集處理過程中受硬件和算法的要求,數(shù)據(jù)時序必須一直才能進行識別和跟蹤,為了避免時序不同步而導致圖像可靠性降低,可以依靠存儲模塊進行輔助,來達到高速的圖像跟蹤。
2.3圖像識別模塊
圖像識別模塊包含預處理和識別兩大關鍵部分,在設計中需要考慮圖像信息的灰階模式,保障能夠?qū)GB彩色圖像信息有效識別。在邊緣檢測前需要進行圖像灰階處理。傳統(tǒng)方式是采用(R+G+B)/3的方式得到灰階圖像,雖然較為簡便,但是得到的數(shù)據(jù)并非準確的RGB轉灰階,而且在FPGA算法運算中除法會占用較大資源,應當避免使用。這里采用分析R、G、B不同色域?qū)译A的影響權重,根據(jù)灰階程度來選取某一項代表灰階,有利于在硬件系統(tǒng)中完成RGB轉灰階圖像的處理。對于實時生成的灰階圖像則先行存儲在SDRAM之中,這樣在讀取時便能節(jié)省大量頻寬,提升預處理速度。
圖像識別設計要使系統(tǒng)能夠準確根據(jù)目標的形狀和特征或者顏色等因素識別出目標的類型。邊緣檢測算法是識別圖像的基本特征的主要方式,基于FPGA設計的Sobel算法,需要清楚存儲地址與每個像素點的圖像信息并不一一相對,需要通過改變數(shù)組指針的方式為相關語句賦值,進而獲取圖像信息。也可以采用三條線性緩沖器的方式求不同線性上的梯度和值,經(jīng)過相關算法來判斷像素梯度和閾值大小,檢測圖像邊緣[2]。
2.4圖像跟蹤模塊
圖像跟蹤模塊設計是對目標物體圖像信息的跟蹤處理,能夠通過有效的跟蹤方式來對目標的運動特性進行穩(wěn)定跟蹤。當前跟蹤算法主要有根據(jù)目標邊緣特征信息的跟蹤方式以及結合目標區(qū)域特征信息的跟蹤方式兩種。前者較為常用,與圖像識別的邊緣檢測原理類似,可以很好的識別目標物體。只是在面對背景圖像干擾較多時較為乏力,很容易對目標的定位產(chǎn)生影響。而后者則是根據(jù)目標紋理信息、灰度分布信息等因素來更準確地定位目標,此種方式會增加算法處理的負擔。本設計中采用將目標物體邊緣特征和目標物體區(qū)域特征相結合的方式,先由邊緣特征進行分析處理,而區(qū)域特征只是進行目標像素的信號追蹤,當系統(tǒng)進入圖像采集模塊后圖像信息轉變?yōu)閿?shù)據(jù),將會初始化存儲在寄存器中,邊緣特征根據(jù)目標信息進行像素點跟蹤操作,當出現(xiàn)跟蹤顏色不是跟蹤顏色信息時不進行操作,而是由區(qū)域特征進行信息處理,通過判斷像素點的方式不斷循環(huán)來實現(xiàn)對目標物體的實時跟蹤。這樣在FPGA系統(tǒng)運算中既可以減少資源的占用情況,降低功耗,達到實時跟蹤目標物體的目的。
結論:本文同通過對FPGA技術的基本原理分析得到其在圖像處理方面的運作特點,并以此設計了基于FPGA的圖像采集、圖像識別和圖像跟蹤系統(tǒng),在基礎系統(tǒng)結構、采集模塊、識別模塊和跟蹤模塊的科學設計下,能夠?qū)崿F(xiàn)硬件系統(tǒng)處理圖像的高效性和準確性,實現(xiàn)了圖像信息的實時采集顯示與跟蹤識別,證明了FPGA提升系統(tǒng)處理圖像的效果。
參考文獻:
[1]余田椿,孫先松.FPGA的圖像識別與目標跟蹤系統(tǒng)設計[J].單片機與嵌入式系統(tǒng)應用,2019,19(09):30-34.
[2]向澤明,段昌才,張琳玲,等.基于FPGA的單光源定位跟蹤系統(tǒng)[J].中國新通信,2018,20(14):77.