摘要:本文提出并實現了一種基于FPGA的全景視頻處理系統設計方案。該系統采用Xilinx Spartan-6 FPGA全硬件單片方式實現,包括5個攝像頭的圖像采集、圖像預處理、圖像校正、全景拼接、視頻壓縮、以太網傳輸、HDMI顯示等模塊,達到了360度全景視頻高質量、高分辨率、實時性的要求。
關鍵詞:FPGA;實時全景拼接;以太網;HDMI
DOI: 10.3969/j.issn.1005-5517.2013.2.019
FPGA全硬件全景視頻實時系統結構如圖1所示。系統視頻數據采集端是5個Macron高分辨率CMOS圖像傳感器水平放置,其位置是經過精確預校準的[2]。同時配備高質量的大視角光學鏡頭對視頻進行同步高速采集,并將采集好的視頻送入圖像預處理部分。圖像預處理主要進行色彩生成、色彩校正等圖像處理,以生成正常的彩色視頻流供后續操作。圖像校正對由于采用大視角鏡頭而產生的鏡頭失真及鏡頭位置分布產生的視差失真等問題進行實時校正處理[3]。全景拼接主要完成柱面投影模型匹配、圖像拼接、邊界處理等實時操作以生成完美的全景視頻流。本視頻壓縮模塊采用的是標準的JPEG標準進行壓縮。為應對超大尺寸全景視頻的實時壓縮,加速壓縮進程,本壓縮模塊采用一種定制的雙核并行壓縮方式。該雙核并行壓縮方式既加快了壓縮進程,又解決了超大尺寸圖像壓縮時需要超大緩沖資源的問題。同時,本壓縮模塊的視頻壓縮比是可接受遠程后端部分的以太網調整控制的。
UDP部分采用硬件實現UDP協議,提高數據傳輸的速度,同時提供了人機交互平臺。HDMI顯示部分完成了視頻顯示控制處理。PCIE采集卡連接PC端的PCIE接口,接收以太網發送過來的壓縮視頻數據。PC端再通
遠程控制和數據傳輸
遠程控制部分需要以太網的支持,同時以太網又肩負著硬件打包傳輸壓縮視頻的任務。在視頻傳輸的時候,UDP扮演硬件打包數據傳輸數據的角色,而在用戶控制的時候,UDP模塊又可以實現ftp協議完成系統和PC之間的交互命令。在控制方面全景視頻系統能進行兩種運行模式:(1)在分辨率優先時,可實時生成5*1920(H)*1080(V)@15FPS的實時全景視頻;(2)在幀率優先時,可實時生成5*1920(H)*720(V)@30FPS的實時全景視頻。為了達到遠程觀看全景視頻和遠程控制的目的,該系統可通過以太網進行相關參數的控制,可以自由地選擇兩種不同的運行模式。另外通過遠程控制,還能對系統進行更新升級,其流程如圖6所示。而在數據傳輸部分,經過全景拼接后的視頻流可用通過HDMI在顯示器上直接顯示,同時經過壓縮處理后也可將其送入UDP模塊,通過Ethernet連接到PCIE采集卡,存儲到硬盤上,進而在PC客戶端上顯示或后期處理。