視頻監控系統中基于FPGA的視頻處理
視頻監控系統是火車(chē)站、機場(chǎng)、銀行、娛樂(lè )場(chǎng)所、購物中心甚至家庭保安的重要組件。隨著(zhù)安全風(fēng)險增加,對視覺(jué)監視和記錄事件的需求以多種使用模式激增。因此,新架構必須為橫跨一整套日漸繁雜的視頻監控系統要求的成本效益方案提供可擴展性。
上市時(shí)間的壓力、新CODEC標準、日益廣泛的要求(包括先進(jìn)的目標探測、運動(dòng)探測、目標跟蹤和目標跟蹤特性),這些不過(guò)是新型視頻監控架構所面臨挑戰中的幾項。伴隨挑戰而來(lái)的是對可擴展為不同性能范圍的實(shí)現的需求。
對于從低端到高端以及從單機到PC擴展卡的任何視頻監控系統,Xilinx FPGA都是理想的解決方案。
視頻監控和DVR系統
數字監控系統中的數字視頻錄像機(DVR)正在迅速采用先進(jìn)的數字視頻壓縮。大多數DVR制造商從MPEG4向H.264高清晰度(HD)CODEC轉移,對更高分辨率和壓縮速度的需求也隨之增加。專(zhuān)用芯片(ASSP)對大批量應用很有用,但缺少靈活性,開(kāi)發(fā)成本高,而且開(kāi)發(fā)時(shí)間較長(cháng);大多數高級數字媒體處理器則只能執行H.264 HD解碼(而H.264 HD編碼比解碼還要復雜得多)。滿(mǎn)足H.264 HD性能要求的最佳解決方案是使用一個(gè)FPGA加上一個(gè)外部DSP或數字媒體處理器。
使用低成本的Xilinx FPGA,可以更進(jìn)一步提供運動(dòng)探測、視頻縮放、顏色空間轉換、硬盤(pán)接口和DDR2存儲器接口,還可以將兩個(gè)27-MHz ITU-R BT656數據流時(shí)分多路傳輸到一個(gè)54MHz數據流中,同時(shí)為DSP處理器提供視頻加速。要將兩個(gè)ITU-R BT656數據流多路傳輸到一個(gè)ITU-R BT656數據流中,僅需要一個(gè)通道視頻端口來(lái)獨立地傳輸完整的二通道視頻數據。要為只有一個(gè)ITU-R BT656視頻輸入端口的數字媒體處理器提供接口,這種實(shí)現方法非常有用。圖1所示就是這樣一種建議架構的框圖。
對于使用德州儀器公司DaVinci處理器(僅有一個(gè)ITU-R BT656視頻輸入端口)的DVR設計,需要一種更有效的實(shí)現方法將兩個(gè)或更多ITU-R BT656數據流時(shí)分多路傳輸到一個(gè)VLYNQ數據流中,然后才能將其輸送到DaVinci處理器。使用上述實(shí)現方法,您用少得多的I/O引腳就能傳輸視頻流,而且可以降低系統成本,因為器件的封裝可以變得更小。圖2所示為此設計的框圖。
PC擴展卡DVR系統
過(guò)去十年來(lái),PCI總線(xiàn)為PC提供了很好的服務(wù)。然而,當今的PC擴展卡DVR系統所要求的帶寬,已經(jīng)大大超出了PCI總線(xiàn)力所能及的程度。未經(jīng)壓縮的視頻數據(剝除空白幀之后)約為165Mbps。如此,在總體PCI帶寬為1Gbps的情況下,您在一條PCI總線(xiàn)上最多只能混用6個(gè)未經(jīng)壓縮的視頻采集或視頻重放設備。您可以在擴展卡上使用MPEG4 CODEC芯片組來(lái)縮小總線(xiàn)上的帶寬,但這會(huì )增加成本,并且使您受到現有MPEG4芯片組的限制。
PCI Express(PCIe)技術(shù)使流量大幅度提升。PCI Express分解為多個(gè)通道。每通道在每個(gè)方向上包含一個(gè)差分對,該方向每個(gè)差分對的數據流量為2Gbps。主板上的每個(gè)PCIe插槽都有自己的通道,這些通道不與其他任何插槽共享。各插槽的配置為16通道(亦稱(chēng)x16)、8通道(x8)、4通道(x4)或1通道(x1)。PCIe允許每卡提供的數據量從x1通道的2Gbps到x16通道的32Gbps不等。有了PCIe數據流量,您就可以擺脫每張PCI卡6個(gè)未壓縮視頻通道的限制。
使用與圖1所示同樣的設計,可通過(guò)用PC替換數字媒體處理器并且經(jīng)PCIe總線(xiàn)將視頻流緩存到PC的方法,輕松快捷地實(shí)現PC擴展卡DVR系統。視頻模數轉換器產(chǎn)生四條獨立的數字ITU-R BT656流,然后這些流被送入低成本的Spartan?-3器件進(jìn)行預處理。在FPGA中,視頻數據剝除空白幀并同步,為PCIe適當打包,然后饋入Xilinx PCIe內核。然后,軟件就可以讀取并播放輸入的視頻,對其進(jìn)行處理,或將其儲存到磁盤(pán)。圖3所示為PC擴展卡視頻監控系統設計。
Xilinx視頻和圖像處理算法
從多相視頻轉換器、二維FIR濾波器和屏幕顯示到覆蓋和阿爾法混合等簡(jiǎn)單效果,再到格式和顏色空間轉換,Xilinx FPGA都是實(shí)時(shí)數字視頻、圖像處理和濾波的理想平臺。表1列出了一些常用視頻IP模塊組的應用指南。
Xilinx FPGA無(wú)與倫比的DSP處理能力意味著(zhù)有可能支持非常高的分辨率(畫(huà)質(zhì)高達1080p),并且可以縮小大型DSP陣列的尺寸。Xilinx FPGA是可重新編程的硬件,有了它,您就能夠輕松地嘗試新穎、高性能、基于硬件的視頻和圖像算法,收到立桿見(jiàn)影之效,使您的最終產(chǎn)品與眾不同。
現成的IP
Xilinx提供了視頻IP模塊組,以供在視頻監控系統中快速設計、仿真、實(shí)現和驗證視頻和圖像處理算法。其中包括設計DVR用的基本基元和高級算法。
此外,Xilinx及其合作伙伴提供了一系列壓縮編碼、解碼和編解碼解決方案,從為需要快速實(shí)現的人提供現成的內核,一直到為希望通過(guò)高質(zhì)量和低比特率使自己的產(chǎn)品與眾不同的人提供構造模塊參考設計和硬件平臺。
將Xilinx FPGA用于某些編解碼模塊中的極其繁重的處理任務(wù),意味著(zhù)您可以支持多通道HD編碼,節約寶貴的系統處理器周期,通過(guò)減少或排除DSP處理器陣列大量節約成本,并輕松地將從接口到進(jìn)一步視頻處理的更多功能和能力集成到系統中。最重要的是,FPGA提供了可擴展的解決方案,從而能在相同的系統中支持不同的配置、額外的通道或新的編解碼方案。
Xilinx FPGA可通過(guò)強化系統邏輯和實(shí)現新外設進(jìn)一步降低DVR系統成本。Xilinx及其合作伙伴還為視頻監控系統的快速發(fā)展提供系統接口:先進(jìn)的存儲器接口、PCI Express、德州儀器的VLYNQ和EMIF接口、硬盤(pán)接口和ITU-R BT656接口。
Xilinx工具簡(jiǎn)化設計
Xilinx System Generator for DSP允許使用Xilinx視頻IP模塊組構建和調試Simulink中的高性能DVR系統。使用System Generator開(kāi)發(fā)并實(shí)現視頻處理算法,可以獲得經(jīng)過(guò)徹底驗證和可以輕松執行的設計。
Xilinx已開(kāi)發(fā)出各種經(jīng)過(guò)預測試的新型視頻IP模塊組。您可以通過(guò)在System Generator內拖放模塊來(lái)輕松構建視頻/影像系統,從而省下用HDL語(yǔ)言編寫(xiě)這些基本構建模塊的寶貴時(shí)間。
為了處理從開(kāi)發(fā)板到PC的龐大的視頻數據流,System Generator for DSP引入了另一種新穎的高速硬件協(xié)同仿真(通過(guò)以太網(wǎng)接口)。這種接口允許低延遲的高流量,事實(shí)證明它對于在System Generator環(huán)境中構建視頻/影像系統極其有用。
另一種基于MATLAB語(yǔ)言的設計工具是Xilinx開(kāi)發(fā)的AccelDSP綜合工具,這是基于高級MATLAB語(yǔ)言的工具,用于為Xilinx FPGA設計DSP模塊。此工具可實(shí)現浮點(diǎn)到定點(diǎn)的自動(dòng)轉換,能生成可綜合的VHDL或Verilog語(yǔ)言,并且可以為驗證創(chuàng )建測試平臺。您還可以用MATLAB算法生成定點(diǎn)C++模型或System Generator模塊。AccelDSP是Xilinx XtremeDSP?解決方案的一個(gè)關(guān)鍵組件,它集最先進(jìn)的FPGA、設計工具、知識產(chǎn)權內核、合作伙伴關(guān)系以及設計和教育服務(wù)于一體。
結論
在視頻監控系統中,視頻信號由多個(gè)攝像機生成。FPGA從視頻解碼器接收ITU-R BT656格式的數字視頻,然后將經(jīng)過(guò)處理的視頻輸出到監視器進(jìn)行顯示,同時(shí)將其輸出到數字媒體處理器或DSP進(jìn)行壓縮后存入硬盤(pán)。
利用Xilinx FPGA,您可以使自己的符合標準的系統有別于競爭對手的產(chǎn)品,同時(shí)仍然為您的應用獲得最佳平衡。利用Xilinx的視頻IP模塊組,您可以輕松構建具有高度靈活性和可擴展性的DVR系統,從而既滿(mǎn)足低端市場(chǎng)又滿(mǎn)足高端市場(chǎng)。通過(guò)將PCIe內核與視頻IP模塊組集成到一起,您可以開(kāi)發(fā)低成本的PC擴展卡視頻監控系統。使用Xilinx FPGA中的VLYNQ內核,您可以通過(guò)Xilinx FPGA將來(lái)自多部攝像機的眾多視頻流輕松地連接到TI的DaVinci處理器。
AccelChip與Xilinx System Generator的集成將算法開(kāi)發(fā)者青睞的基于MATLAB的算法綜合與系統工程師和硬件設計者使用的圖形設計流程結合起來(lái)。它使用豐富的MATLAB語(yǔ)言及其附帶的工具箱創(chuàng )建復雜DSP算法的System Generator IP模塊。通過(guò)合并使用這些工具,設計團隊可以為實(shí)現而利用硬件建模這一最有效的手段,從而讓算法開(kāi)發(fā)者完全參與FPGA的設計過(guò)程,并且更快地完成更優(yōu)質(zhì)的設計。
評論