尹藝玲,李明璐
(西華大學機械工程學院,四川 成都610039)
機器視覺中的一個重要研究方向是目標物體的跟蹤,目標物體的跟蹤技術(shù)廣泛應用于民用領域、軍工領域等,例如無人機飛行器的實時跟蹤、安防報警系統(tǒng)、海底探測、車輛跟蹤等等,可見目標跟蹤技術(shù)與我們的生活密不可分。
目標跟蹤對于系統(tǒng)的精度、實時性以及穩(wěn)定性要求很高,傳統(tǒng)的PC機、圖像處理器以及單片機等由于其串行處理方式、消耗大、成本高等方面的限制而無法滿足對目標的快速實時跟蹤。因此,為了提高目標跟蹤的精度、實時性以及其穩(wěn)定性,人們開始利用FPGA的并行處理、低功耗、成本低等特點來實現(xiàn)高速的目標跟蹤,并且越來越多的復雜圖像處理算法在FPGA上得以實現(xiàn)。比如COngyi Lyu等人所提出的High-speed Target Tracking base on FPGA采用的是一個基于Xilinx Zynq(FPGA+ARM)系統(tǒng)的圖像處理設備,他們通過攝像頭采集圖像數(shù)據(jù)輸入FPGA然后將數(shù)據(jù)復制分為三個通道,三個處理通道分別完成幀差法處理、顏色轉(zhuǎn)換(RGB轉(zhuǎn)HSV)處理和邊緣檢測處理,最終將計算得到的目標點坐標傳入到ARM中進行舵機PWM控制,來實現(xiàn)目標的跟蹤[1],再比如張凡輝等人所提出來的多發(fā)光目標的高速跟蹤,通過對采集到的多發(fā)光點的圖像數(shù)據(jù)進行開窗迭代算法來完成對多個目標的高速實時跟蹤[2]。他們采用不同的圖像處理算法與系統(tǒng)構(gòu)架實現(xiàn)了高速多目標跟蹤。本文提出一種基于FPGA的高速單光源定位跟蹤系統(tǒng),該系統(tǒng)在滿足穩(wěn)定性、實時性、精準性的前提下,采用一種簡單的圖像處理以及控制算法來實現(xiàn)實時目標跟蹤。
FPGA(Field Programmable Gate Array)即現(xiàn)場可編程門陣列,目前全球的FPGA市場主要為Xilinx和Altera,國內(nèi)FPGA在軍工航天領域,主要企業(yè)有紫光同創(chuàng)、復旦微電子、華微電子、中電科58所、航天772所等;在民品領域,主要企業(yè)包括廣東高云、上海安路等。
本次提出的系統(tǒng)高速單光源定位跟蹤系統(tǒng)由本團隊制作的PCB板、ov7676 CMOS攝像頭、雙自由度舵機云臺以及一個液晶顯示屏組成,本團隊自主研制的PCB板采用的主要芯片有Altera公司的Cyclone II系列芯片EP2C5T144C8N、海力士公司的SDRAM芯片HY57V256GTR以及VGA顯示芯片ADV7123。通過CMOS攝像頭采集圖像信息,將圖像數(shù)據(jù)傳輸?shù)紽PGA,利用FPGA完成圖像預處理操作、目標點坐標計算操作、圖像數(shù)據(jù)緩存、VGA顯示操作、PWM控制舵機操作等,以實現(xiàn)高速目標跟蹤。圖1為單光源定位跟蹤系統(tǒng)結(jié)構(gòu)圖,圖2為系統(tǒng)實現(xiàn)框圖。
圖1 單光源定位跟蹤系統(tǒng)結(jié)構(gòu)圖
圖2 系統(tǒng)實現(xiàn)框圖
在攝像頭采集到數(shù)據(jù)后傳入到FPGA,此時所得到的圖像數(shù)據(jù)為RGB色系,進行圖像處理時數(shù)據(jù)量過大,因而進行RGB顏色模型轉(zhuǎn)YUV顏色模型的處理,為簡便后續(xù)的圖像處理運算,然后采用中值濾波算法對圖像數(shù)據(jù)進行濾波,在一定程度上削弱噪聲。經(jīng)過初始的處理后將數(shù)據(jù)分為兩個通道,一個通道進行圖像數(shù)據(jù)的緩存顯示,一個通道進行實時的目標跟蹤計算。采用流水線的處理方式完成圖像的預處理,以加快圖像處理的過程。流水線的處理方式流程如圖3所示。
圖3 流水線式處理流程圖
將得到的RGB565圖像模型轉(zhuǎn)化為RGB888形式然后再轉(zhuǎn)化為YUV565形式。此處采用量化補償?shù)姆绞綄GB565轉(zhuǎn)為RGB888,其量化補償?shù)霓D(zhuǎn)化思想如下。
量化補償?shù)姆椒ǎ?/p>
將原數(shù)據(jù)填充至高位
對于低位,用原始數(shù)據(jù)的低位進行補償
如果仍然有未填充的位,繼續(xù)使用原始數(shù)據(jù)的低位進行循環(huán)補償
實際的補償實現(xiàn)操作如圖4 RGB565轉(zhuǎn)RGB888所示。
圖4 R G B565轉(zhuǎn)R G B888
要完成目標的跟蹤需要計算出目標物的質(zhì)心坐標,然后依據(jù)計算出來的坐標點,驅(qū)動云臺完成實時的快速跟蹤。
FPGA的除法計算需要花費較多時間,因此本系統(tǒng)采用了移位算法來替代除法,加快質(zhì)心坐標點計算的速度,以實現(xiàn)快速的目標跟蹤[3]。
通過讀、寫異步FIFO,以及SDRAM的兩個BANK共同配合以實現(xiàn)乒乓操作,使讀寫操作分開,使數(shù)據(jù)傳輸更加流暢,完成目標跟蹤速度進一步提高,不會出現(xiàn)圖像幀卡頓的情況。圖像緩存處理的框圖如圖5所示。
圖5 圖像緩存處理框圖
根據(jù)上述的系統(tǒng)設計方案搭建系統(tǒng)模型,模型包括CMOSOV7670攝像頭,自主制作的FPGA電路板,雙自由度的舵機云臺,以及顯示屏,所搭建的系統(tǒng)模型如圖6所示。
圖6 系統(tǒng)模型圖
首先完成實驗模型的搭建,利用手機的閃光燈作為目標單光源點,在較暗的環(huán)境下進行實驗測試。
打開手機的閃光燈開始進行系統(tǒng)測試,在已知屏幕寬度的情況下,根據(jù)記錄的目標光源從屏幕的最左邊移動到屏幕最右邊的時間,可在確定的跟蹤范圍內(nèi)計算出光源的移動速度。根據(jù)在相同的移動范圍內(nèi),改變目標的移動速度,觀察系統(tǒng)的跟蹤情況以及效果,效果如圖7所示。
圖7 不同速度下系統(tǒng)的跟蹤情況
根據(jù)多次測試及計算,當以0~0.54 m/s移動目標,在移動過程中,包圍框?qū)崟r緊密包圍目標,圖像顯示流暢無卡頓的情況,同時云臺實時跟隨目標的移動,當以0.54 m/s~0.82 m/s移動目標,在移動過程中,包圍框依舊包圍目標,圖像流暢,云臺緊跟目標的移動,當以大于1.08 m/s移動目標,在移動過程中,部分包圍框能夠包圍住目標,云臺依然緊跟目標的移動。
根據(jù)實驗測試結(jié)果顯示,在目標光源點快速移動時,系統(tǒng)能完成快速的復雜圖像處理計算,達到快速、實時跟蹤目標的目的,同時系統(tǒng)模型能夠快速、簡單的在使用工作環(huán)境下搭建起來,也方便攜帶和轉(zhuǎn)移。本系統(tǒng)可以替代傳統(tǒng)的PC機完成實時目標跟蹤,解決了復雜圖形處理算法在傳統(tǒng)PC機上無法進行快速并行計算的問題以及其構(gòu)成的跟蹤系統(tǒng)體積龐大、不便攜帶和搭建的問題,為安防系統(tǒng)的實現(xiàn)提供了一種簡單的實現(xiàn)方法,使過去龐大且復雜的安防設備變得簡單化,同時節(jié)約了其實現(xiàn)成本。
本文研究了基于FPGA的高速實時單光源定位跟蹤系統(tǒng),在滿足穩(wěn)定性、快速性、精準性的要求下,以較為簡單的方式完成了該系統(tǒng),該系統(tǒng)利用移位處理來等效除法運算,提高了系統(tǒng)運算的快速性,同時采用異步FIFO與SDRAM的兩個BANK來實現(xiàn)乒乓操作,讓數(shù)據(jù)傳輸更加流暢,使得系統(tǒng)能夠完成快速的目標定位追蹤與顯示。上述的測試結(jié)果,很好地顯示了本系統(tǒng)快速、穩(wěn)定、準確的目標跟蹤性能以及便于攜帶和搭建的特點。