基于FPGA的多路實(shí)時(shí)視頻處理系統(tǒng)設(shè)計(jì)
視頻顯示技術(shù)發(fā)展到21世紀(jì),同時(shí)顯示多個(gè)視頻的需求仍然存在,人們需要從單個(gè)顯示器獲得更多、更復(fù)雜的信息。因此,人們對(duì)圖像處理的效率、實(shí)時(shí)性、功耗以及處理設(shè)備的體積也有了更嚴(yán)格的要求[
針對(duì)傳統(tǒng)的實(shí)時(shí)視頻處理系統(tǒng)大多存在分辨率低、控制不靈活、視頻處理算法單一、實(shí)時(shí)性差等問(wèn)題[
2 系統(tǒng)設(shè)計(jì)
本設(shè)計(jì)發(fā)送卡和接收卡采用的FPGA芯片是由Xilinx生產(chǎn)的XC7K325系列的XC7K325-TFFG900,主要用來(lái)接收?qǐng)D像、處理圖像以及驅(qū)動(dòng)顯示器實(shí)時(shí)輸出顯示。
多路實(shí)時(shí)視頻處理系統(tǒng)采用一塊視頻發(fā)送卡對(duì)4路HDMI視頻數(shù)據(jù)進(jìn)行接收。系統(tǒng)上電后,首先將接收到的視頻數(shù)據(jù)進(jìn)行預(yù)處理,再根據(jù)串口接收到用戶的縮放參數(shù)、圖像裁剪參數(shù),將處理后的視頻數(shù)據(jù)根據(jù)用戶命令參數(shù)進(jìn)行實(shí)時(shí)縮放處理,然后將縮放后的視頻數(shù)據(jù)根據(jù)用戶需要的視頻圖像大小進(jìn)行裁剪,通過(guò)讀寫(xiě)仲裁模塊按照一定的順序存儲(chǔ)到動(dòng)態(tài)內(nèi)存DDR3中,最后將讀出的每個(gè)通道的數(shù)據(jù)通過(guò)光纖發(fā)送模塊發(fā)送出去。視頻發(fā)送卡的內(nèi)部邏輯框圖如
圖1 視頻發(fā)送卡FPGA內(nèi)部邏輯框圖
Fig.1 Internal logic block diagram of the video sending card FPGA
接收卡通過(guò)4路光模塊接口接收到視頻數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行上采樣處理,再根據(jù)串口接收到用戶的旋轉(zhuǎn)角度參數(shù),對(duì)接收到的4個(gè)通道數(shù)據(jù)進(jìn)行旋轉(zhuǎn)處理,然后通過(guò)多通道讀寫(xiě)仲裁模塊按照一定的順序存入到動(dòng)態(tài)內(nèi)存DDR3中,按照用戶選擇通道的數(shù)據(jù)從DDR3讀出對(duì)應(yīng)通道的有效數(shù)據(jù),并對(duì)多通道視頻進(jìn)行疊加融合,最后進(jìn)行色彩空間轉(zhuǎn)換,并通過(guò)HDMI接口將融合后的一路數(shù)據(jù)在4K顯示器上顯示。視頻接收卡的內(nèi)部邏輯如
圖2 視頻接收卡FPGA內(nèi)部邏輯框圖
Fig.2 Internal logic block diagram of the video receiving card FPGA
3 雙線性插值縮放算法實(shí)現(xiàn)
常規(guī)視頻縮放算法有最鄰近插值算法、雙線性插值算法、雙三次插值縮放算法。由MATLAB仿真效果可知[
3.1 雙線性插值縮放算法邏輯設(shè)計(jì)
雙線性插值縮放算法的邏輯設(shè)計(jì)框圖如
圖3 雙線性插值算法邏輯設(shè)計(jì)圖
Fig.3 Logic design diagram of the bilinear interpolation algorithm
由于雙線性插值采用周圍4個(gè)像素點(diǎn)確定目標(biāo)像素點(diǎn),因此至少緩存兩行以上的數(shù)據(jù)才能根據(jù)周圍像素點(diǎn)值計(jì)算目標(biāo)像素點(diǎn)的值[
3.2 雙線性插值縮放計(jì)算
雙線性插值縮放計(jì)算流程如
圖4 實(shí)時(shí)視頻縮放流程圖
Fig.4 Flow chart of real-time video scaling
縮放算法的仿真波形如
圖5 縮放算法的仿真波形
Fig.5 Simulation waveform of the scaling algorithm
3.3 雙線性插值算法驗(yàn)證與分析
在保證以上測(cè)試模塊均正常工作情況下,進(jìn)一步對(duì)縮放模塊進(jìn)行驗(yàn)證。實(shí)際板上驗(yàn)證時(shí),通過(guò)HDMI接口輸入的1 080P視頻數(shù)據(jù)作為視頻源,ILA在線邏輯分析儀的波形窗口的顯示如
圖6 100×100縮放在線邏輯分析儀的波形圖
Fig.6 Waveform diagram of 100×100 zoom online logic analyzer
如
圖7雙線性插值在FPGA上實(shí)現(xiàn)效果圖
Fig.7Effect of bilinear interpolation on FPGA
4 實(shí)時(shí)圖像緩存實(shí)現(xiàn)
4.1 DDR讀寫(xiě)邏輯設(shè)計(jì)
本次設(shè)計(jì)視頻發(fā)送卡和接收卡的核心處理器均采用Xilinx公司的7系列FPGA,采用4片4G的鎂光DDR3作為內(nèi)存。由于均支持Xilinx官方的DDR3控制器MIG IP核,本設(shè)計(jì)直接通過(guò)調(diào)用MIG IP核控制DDR3,降低了開(kāi)發(fā)難度[
為了簡(jiǎn)化操作,重新編寫(xiě)了面向用戶的讀寫(xiě)接口。讀寫(xiě)操作如
圖8 用戶接口突發(fā)讀寫(xiě)流程圖
Fig.8 Flow chart of user interface burst read and write
針對(duì)DDR3讀寫(xiě)測(cè)試,用戶接口讀寫(xiě)控制的邏輯仿真波形如
圖9 用戶接口讀寫(xiě)控制
Fig.9 User interface read and write control
當(dāng)控制器處于讀狀態(tài),讀命令信號(hào)app_cmd為001并且讀數(shù)據(jù)有效信號(hào)app_rd_data_valid為高時(shí),開(kāi)始從DDR3中讀出數(shù)據(jù)。由于讀出DDR3數(shù)據(jù)比寫(xiě)入DDR3的數(shù)據(jù)有一定的延遲,因此在實(shí)際觀察時(shí)要找到第一次讀出數(shù)位置,觀察是否錯(cuò)位。DDR3第一次讀出數(shù)據(jù)為0~31,第二次讀出數(shù)據(jù)為32~63,讀突發(fā)長(zhǎng)度為32。通過(guò)對(duì)比讀寫(xiě)數(shù)據(jù)可以看出,兩者保持一致,且讀寫(xiě)突發(fā)長(zhǎng)度滿足設(shè)定要求。且錯(cuò)誤信號(hào)error_num一直保持為0,說(shuō)明DDR3數(shù)據(jù)讀寫(xiě)正確。
4.2 讀寫(xiě)模塊乒乓操作實(shí)現(xiàn)
在本次設(shè)計(jì)中數(shù)據(jù)存儲(chǔ)模塊主要是指將DDR3區(qū)域劃分兩個(gè)區(qū)域,乒乓操作如
圖10 乒乓操作示意圖
Fig.10 Schematic diagram of ping-pong operation
系統(tǒng)處于寫(xiě)狀態(tài)時(shí),寫(xiě)數(shù)據(jù)選擇單元會(huì)根據(jù)場(chǎng)同步信號(hào)找到一幀圖像數(shù)據(jù)的開(kāi)始點(diǎn),然后緩存進(jìn)數(shù)據(jù)存儲(chǔ)模塊1。當(dāng)下一幀數(shù)據(jù)來(lái)到時(shí)則緩存進(jìn)數(shù)據(jù)存儲(chǔ)模塊2,如此反復(fù)進(jìn)行存儲(chǔ)模塊切換。系統(tǒng)處于讀狀態(tài)時(shí),讀數(shù)據(jù)選擇單元會(huì)根據(jù)輸出視頻時(shí)序的場(chǎng)同步信號(hào)進(jìn)行存儲(chǔ)模塊切換并讀出數(shù)據(jù)。
4.3 多通道讀寫(xiě)仲裁模塊邏輯設(shè)計(jì)
本次邏輯設(shè)計(jì)最大可支持7個(gè)通道仲裁。以三通道讀寫(xiě)仲裁為例,其處理流程如
圖11 多通道仲裁處理流程圖
Fig.11 Multi-channel arbitration processing flowchart
5 視頻圖像疊加融合
視頻圖像疊加融合是將兩路視頻圖像信號(hào)中的一路作為背景,另一路為前景,在背景視頻圖中融入前景圖像,在同一終端上顯示多通道疊加圖像[
圖12 Alpha融合疊加在線邏輯分析儀的波形
Fig.12 Waveform of Alpha fusion overlay on-line logic analyzer
Alpha融合疊加在FPGA上實(shí)現(xiàn)實(shí)際效果圖如
圖13圖像疊加融合算法在FPGA上實(shí)現(xiàn)效果圖
Fig.13Effect of image superimposition and fusion algorithm implemented on FPGA
6 實(shí)驗(yàn)測(cè)試和功耗分析
片上總消耗主要由動(dòng)態(tài)功耗和靜態(tài)功耗組成。從
On-chip | Power/W | Utilization/% |
---|---|---|
Clocks | 0.071 | 5 |
Signals | 0.068 | 5 |
Logic | 0.057 | 4 |
BRAMs | 0.106 | 7 |
DSPs | 0.012 | 1 |
PLLs | 0.092 | 6 |
MMCM | 0.202 | 14 |
PHASER | 0.250 | 17 |
IOs | 0.616 | 42 |
XADS | 0.004 | <1 |
DeviceStatic | 0.108 | 7 |
On-chip | Power/W | Utilization/% |
---|---|---|
Clocks | 0.231 | 7 |
Signals | 0.176 | 5 |
Logic | 0.151 | 4 |
BRAMs | 0.417 | 12 |
DSPs | 0.035 | 1 |
PLLs | 0.133 | 4 |
MMCM | 0.558 | 16 |
PHASER | 0.661 | 19 |
IOs | 1.154 | 33 |
XADS | 0.004 | <1 |
DeviceStatic | 0.189 | 5 |
(1)資源優(yōu)化:以存儲(chǔ)器為例,在設(shè)置雙端口RAM時(shí)設(shè)置成NO CHANGE模式以及設(shè)置時(shí)鐘使能的情況下,可以實(shí)現(xiàn)對(duì)存儲(chǔ)器功耗的降低。
(2)算法優(yōu)化:首先要設(shè)計(jì)最優(yōu)的算法,使資源占用達(dá)到最少。比如流水線和狀態(tài)機(jī)結(jié)構(gòu),需要根據(jù)實(shí)際情況進(jìn)行選擇,以達(dá)到面積和速度的平衡。
本次設(shè)計(jì)可以實(shí)現(xiàn)4K視頻的任意比例縮放、透明度調(diào)節(jié)以及4路視頻任意位置漫游、疊加與融合。首先進(jìn)行多通道縮放、漫游、旋轉(zhuǎn)以及疊加融合測(cè)試,其實(shí)際板上驗(yàn)證效果如
圖14多路視頻融合效果圖
Fig.14Effect of multichannel video fusion
測(cè)試多路視頻輸入采用筆記本作為視頻源,其分辨率為1 920×1 080@60 Hz;由于筆記本輸出分辨率的限制,單路視頻輸入測(cè)試時(shí)采用臺(tái)式電腦作為視頻源,其分辨率為3 840×2 160@30 Hz,最后均通過(guò)4K分辨率顯示器顯示。
7 結(jié)論
本文基于FPGA開(kāi)發(fā)平臺(tái),實(shí)現(xiàn)了一種多路實(shí)時(shí)視頻處理系統(tǒng)。采用Vivado 2019.1作為軟件開(kāi)發(fā)平臺(tái)完成了雙線性插值縮放算法設(shè)計(jì),實(shí)現(xiàn)了最大分辨率為3 840×2 160、最低分辨率為100×100的縮放,滿足了用戶特殊分辨率的需求。同時(shí)可以將多路視頻數(shù)據(jù)進(jìn)行任意位置漫游以及疊加融合,滿足了人們需要從單個(gè)顯示器獲得更多、更復(fù)雜的信息的需求。
本系統(tǒng)目前僅支持單一的HDMI輸入輸出接口,為滿足用戶的各種需求,應(yīng)當(dāng)增加接口種類,并合理增加一些拓展接口。目前本系統(tǒng)在硬件上僅支持4路視頻源輸入,應(yīng)該在硬件上設(shè)計(jì)增加更多的視頻輸入接口數(shù)量,并對(duì)硬件進(jìn)行信號(hào)完整性驗(yàn)證。為了滿足用戶多樣化需求可以在現(xiàn)有的基礎(chǔ)上增加多樣視頻算法,并優(yōu)化系統(tǒng)的整體延時(shí)。
欄目分類
- 1網(wǎng)絡(luò)直播現(xiàn)狀及前景探究
- 2淺析電影《我的父親母親》視聽(tīng)語(yǔ)言特色——影視文學(xué)
- 3中美貿(mào)易戰(zhàn)的發(fā)展和應(yīng)對(duì)
- 4論微信傳播的特點(diǎn)
- 5企業(yè)如何進(jìn)行危機(jī)公關(guān)——以三星Galaxy note7爆炸門(mén)事件為例
- 6淺析網(wǎng)絡(luò)暴力的社會(huì)危害及防治對(duì)策
- 7聚酮類化合物研究進(jìn)展
- 8淺析《極限挑戰(zhàn)》的節(jié)目特色及啟示
- 9《楚門(mén)的世界》的多重隱喻解讀
- 10體育產(chǎn)業(yè)發(fā)展中存在的問(wèn)題及建議
- 游戲教學(xué)法在網(wǎng)球教學(xué)中的應(yīng)用
- 心理素質(zhì)在網(wǎng)球比賽中的作用
- 綠色科技視角下企業(yè)環(huán)境績(jī)效指標(biāo)體系構(gòu)建
- 節(jié)約型基礎(chǔ)上的綠色財(cái)政稅收政策研究
- 財(cái)政投資項(xiàng)目竣工決算存在的問(wèn)題及對(duì)策
- 基于精細(xì)化管理視域探析公立醫(yī)院成本管控優(yōu)化策略
- 農(nóng)村信用社在金融市場(chǎng)中的營(yíng)銷技巧探究
- 實(shí)現(xiàn)我國(guó)糧食增產(chǎn)增收的財(cái)稅政策分析
- 離子色譜法同時(shí)測(cè)定卷煙紙中幾種金屬離子的含量
- IC厭氧反應(yīng)器處理造紙廢水效率的時(shí)間分布特征研究
- 2025年中科院分區(qū)表已公布!Scientific Reports降至三區(qū)
- 2023JCR影響因子正式公布!
- 國(guó)內(nèi)核心期刊分級(jí)情況概覽及說(shuō)明!本篇適用人群:需要發(fā)南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的學(xué)者
- 我用了一個(gè)很復(fù)雜的圖,幫你們解釋下“23版最新北大核心目錄有效期問(wèn)題”。
- CSSCI官方早就公布了最新南核目錄,有心的人已經(jīng)拿到并且投入使用!附南核目錄新增期刊!
- 北大核心期刊目錄換屆,我們應(yīng)該熟知的10個(gè)知識(shí)點(diǎn)。
- 注意,最新期刊論文格式標(biāo)準(zhǔn)已發(fā)布,論文寫(xiě)作規(guī)則發(fā)生重大變化!文字版GB/T 7713.2—2022 學(xué)術(shù)論文編寫(xiě)規(guī)則
- 盤(pán)點(diǎn)那些評(píng)職稱超管用的資源,1,3和5已經(jīng)“絕種”了
- 職稱話題| 為什么黨校更認(rèn)可省市級(jí)黨報(bào)?是否有什么說(shuō)據(jù)?還有哪些機(jī)構(gòu)認(rèn)可黨報(bào)?
- 《農(nóng)業(yè)經(jīng)濟(jì)》論文投稿解析,難度指數(shù)四顆星,附好發(fā)選題!