999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

實時視頻流縮放系統設計

2019-12-06 05:45:10陸寶毅劉銀萍劉卿卿
液晶與顯示 2019年11期
關鍵詞:設計

嚴 飛,陸寶毅,劉銀萍,劉卿卿,2,陳 偉

(1.南京信息工程大學 自動化學院,江蘇 南京 210044;2.江蘇省大氣環境與裝備技術協同創新中心,江蘇 南京 210044;3.南京信息工程大學 大氣物理學院,江蘇 南京 210044)

1 引 言

數字視頻具有數據量大,實時性高等特點,如果數字視頻的處理僅僅依靠軟件算法來實現,那么對軟件和CPU的計算能力都有較高的要求,但用硬件的方式來實現的話,在處理速度以及效果上都優于前者[1]。并且在算法優化已經無法提高計算速度的前提下, 將部分單一、耗時的圖像處理操作用硬件來實現可以有效地提高算法的速度[2-5]。目前處理數字圖像常用的視頻縮放算法分別是最鄰近插值算法(Nearest interpolation),雙線性內插值算法(Bilinear interpolation)以及雙三次插值(Bicubic interpolation)。相較于前兩種縮放算法,雙三次插值算法得出比前兩種插值算法更加平滑的圖像信息。

隨著顯示器的分辨率越來越多樣化,原有的一些視頻格式越來越滿足不了多樣化的顯示器分辨率,故需要采用相應的視頻縮放模塊將視頻源的分辨率轉換為對應顯示器的分辨率[6]。目前的視頻流縮放系統一般是基于雙線性內插值算法進行設計,且進行縮放比例是固定倍率,這樣的系統的縮放圖像信息的缺失較大,且不能靈活地配置縮放信息[7-8]。本文設計了一種實時視頻流縮放系統設計,采用了雙三次插值的縮放算法,實現了視頻圖像的任意比例的縮放,且易于硬件實現。

2 系統組成

圖1 實時視頻縮放系統硬件組成Fig.1 Hardware composition of real-time video stream scaling system

實時視頻流縮放系統包括兩路OV5640視頻輸入接口、DDR3存儲模塊、VGA輸出接口以及外圍電路(電源電路、配置電路和時鐘電路)模塊。系統的硬件組成如圖1所示,其中采用由兩個OV5640攝像頭模塊組成的OV5642模塊模擬實時的視頻流的輸入。

系統支持最大分辨率3 840×2 160的實時視頻流的輸入和最低分辨率100×100的視頻數據的輸出。系統主控芯片使用的型號為xc7a100tfgg488-2的一款FPGA,屬于Xilinx公司ARTIX7系列。

首先,FPGA配置OV5642分別輸出兩個分辨率為2 592×1 944的視頻,然后將輸出的視頻分別進入雙三次插值運算模塊進行縮放計算。當FPGA檢測到有雙三次插值運算有計算結果即有實時的有效數據時,控制DDR3外部存儲將輸入的視頻緩存下來等待后端VGA模塊讀取數據進行顯示,由于有兩路的縮放視頻流,所以設計一個PIP(Picture in picture畫面疊加)模塊,讓縮放成不同分辨率的視頻數據在一個分辨率為1 920×1 080的顯示屏上進行疊加顯示,由于采集的數據為RGB格式,在進行視頻疊加時需要轉換為YUV格式進行疊加。圖像處理的流程如圖2所示。

圖2 本文圖像處理流程Fig.2 Image processing diagram of this paper

該系統采用模塊化的設計思路,主要包括:實時視頻流采集模塊,視頻流處理模塊以及視頻疊加輸出模塊。其中視頻流處理模塊又包括圖像的雙三次插值縮放模塊和圖像緩存模塊。

3 雙三次插值縮放解析

3.1 數據緩存

雙三次插值需要用一個4×4的模板進行計算,故需要提前準備緩存至少4行的數據[9-10],為了能夠有足夠的數據,且避免RAM出現不夠用,造成輸入和輸出不實時同步的情況,本設計用了8個RAM分別緩存了8行的數據進行乒乓操作,且為了方便進行讀寫操作,本次設計采用了分布式RAM(Distributed memory)。如圖3所示,每當緩存一行數據結束后便有一個計數器進行計數,當寫到一行的最后一位且輸入數據有效且該計數器的值小于8時,則換一個RAM進行緩存下一行的數據。每計算出目標圖像的一行數據,需要取出源圖像的4行像素數據,當已經緩存了4行及以上的視頻數據時便開始進行讀操作。所示每當處理到一行的最后一個像素數據時則需要進行新的一行或者多行的數據。如果目標圖像的下一行對應的源圖像的行數與當前計算的行數相差一行,則在計算目標圖像的下一個行的輸出時只要從已經緩存源圖像的行數據中讀取新的一行即可。但是如果目標圖像的下一行對應的源圖像的行數與當前計算的行數相差大于等于4行,即檢測到RAM中緩存的行數不夠時,將停止讀操作,等待RAM中緩存的行數足夠一次運算,繼續進行讀取和計算操作。

圖3 實時視頻緩存流程圖Fig.3 Real-time video buffer flow chart

3.2 雙三次插值運算

雙三次插值的主要計算是參加運算的16個像素的影響因子即權值的計算[11]。為了方便標注,將16個像素的位置編號為a00,a01……a33,首先我們要求出這16個像素分別與目標圖像待求的像素之間的位置關系,這里設目標圖像對應的源圖像的位置是P(x+u,y+v),其中u和v是小數部分,則a00的地址可以表示成(1+u,1+v),a01可以表示為(u,1+v)……。

圖4 a00位置行列系數處理流程Fig.4 Processing flow of a00 location row and column coefficient

如圖4所示,a00的地址為(1+u,1+v)將該地址的行坐標和列坐標分辨帶入插值基函數coef(aij)中則可以的得a00在行方向和列方向的對應系數。因為插值基函數coef(aij)中存在著多個單流向的乘法處理單元,本設計采用了流水線的設計方法來提升了系統的工作效率,其中value0,value1,value2代表插值基函數coef(aij)中的系數。同理,我們可以得到其他15個像素在行和列的系數。

計算完各個像素點的影響因子用每個點的像素值乘以其對應的影響因子,得到16個值相加便是目標像素點的像素值。如圖5所示,在計算像素權值時a00,a03,a11,a12,a21,a22,a30,a33的權值是正數,其他的像素點的像素值是負數,所以在計算像素點值時需要先分開計算正數和負數,其中dOut_add_0和dOut_add_1是16個像素中部分正數的和,dOut_sub_0和dOut_sub_1是部分負數的和,dOut_add是所有正數的和,dOut_sub是所有負數的和,dOut_sum是加權和,利用正數部分減去負數部分或者是負數部分減去整數部分(不算符號位)。由于整個算法中浮點數的產生[12],在計算初便將參與計算的數值(二進制)左移8位,所以在最終需要對最終的結果右移8位,dOut_shift便是對算出的加權和進行右移8位的操作。由于像素的值區間在0和255之間,如果輸出的像素值如果大于255便只取其七八位。

圖5 目標像素點值計算仿真圖Fig.5 Simulation diagram of target pixel point value computation

4 DDR緩存解析

4.1 DDR讀寫操作

DDR3的讀寫控制采用的是XILINX提供的MIG(Memory Interface Generator)IP核控制方案,MIG IP核控制方案位用戶提供了兩種接口總線控制模式,一種是NATIVE總線控制模式,一種是AXI4總線模式。相對與NATIVE總線控制模式,AXI4的讀寫控制時序比較復雜,且NATIVE控制總線也可以通過邏輯控制擴展多個讀寫端口,因此,本文選擇NATIVE接口總線作為本次設計的控制方案[13-16]。

如圖6所示,在NATIVE總線下的寫操作包括寫請求、寫數據、寫響應。在DDR準備好寫入數據(app_wdf_rdy = 1)的前提下,當有寫請求(app_wdf_wren = 1)時,便開始一次寫DDR操作,將提前準備好的數據寫入DDR中對應的地址中。同樣,在NATIVE總線下的讀操作包括讀請求、讀數據、讀響應。在DDR準備好進行讀操作(app_wdf_rdy ≠ 1)且不在進行讀操作(app_wdf_wren = 1)的前提下,當有寫請求(app_rd_data_valid = 1)時,便開始一次讀DDR操作,將數據從DDR中對應的地址中讀出來。

圖6 Native總線下DDR讀寫操作Fig.6 DDR read-write operation under native bus

4.2 多端口DDR讀寫

由于OV5642同時輸出兩路的2 592×1 944的視頻數據,所以需要同時將這兩路視頻數據存入DDR3中,并且在后端也同樣需要同時將視頻數據從DDR3中讀出來進行縮放操作。

在程序設計時開辟了兩個通道進行讀寫操作。如圖7所示,在進行讀操作時,對兩個端口進行依次循環查詢其狀態信息,如果通道0有讀請求并且該通道的突發讀的長度不為0,進入通道0的讀操作,否則對通道1進行查詢。同樣,如果通道1有讀請求并且該通道突發讀的長度不為0,進入通道1的讀操作。

圖7 讀操作查詢流程Fig.7 Read operation query process

圖8 讀操作查詢流程Fig.8 Write operation query process

如圖8所示,在進行寫操作時,與讀操作相似,也是對每個端口進行查詢其狀態信息,若是通道0有寫請求則進入通道0的寫操作,否則對通道1進行查詢。為了避免輸出圖像變形的情況,本設計采用乒乓操作,讓DDR3的讀操作和寫操作分別在不同的BANK進行。

5 畫面疊加輸出

畫面疊加是將已經縮放完成的視頻在一個1 920×1 080的畫布上顯示。通常一幀圖像分為有效區域和消隱區域[17],其中我們在顯示屏上看見的區域即有效區域。由于圖像是逐行掃描的,所以在到達需要顯示圖像的區域時從DDR中讀出相應的數據顯示。

如圖9所示,在第一幅圖片的顯示有效區域時,產生讀信號從DDR的對應位置中取出數據進行顯示,同樣在第二幅圖顯示有效區域時,產生讀信號從DDR中讀出數據進行顯示。

圖9 畫面疊加原理仿真Fig.9 Simulation of picture superposition principle

6 實驗結果

本設計的目的是為了滿足一些不是常規分辨率的顯示器,所以在上板測試時設置是將2 592×1 944分辨率的視頻圖像分別縮放至731×731和1 920×1 080。如圖10所示,顯示屏幕的背景是1 920×1 080分辨率的視頻圖像,前端窗口顯示的是731×731分辨率的視頻圖像。滿足任意比例的縮放效果。

圖10 雙三次插值算法在FPGA上實現效果圖Fig.10 Implementation of bicubic interpolation algorithms on FPGA

實驗結果表明,基于FPGA的雙三次插值圖像縮放系統能夠支持3 840×2 160的圖像進行任意比例的縮放。實際板上驗證時視頻流從ov5642輸入,經過縮放、緩存、同步以及拼接等多個處理過程,最終通過VGA接口輸出至支持1080P的顯示器上。驗證系統所采用的硬件平臺是xc7a100tfgg488-1,如表1所示,其消耗的LUT(Look Up Table, 查找表)資源占FPGA總資源的69.9%,由于本設計的行緩存所消耗的片上資源LUTRAM,所以LUTRAM資源的占用為76.16%,在DDR讀寫部分用到了時鐘域的轉換,采用的是消耗BRAM資源的FIFO,BRAM資源的占用為26.3%,用來縮放計算的DSP資源占用為60.42%。

表1 FPGA資源利用情況

7 結 論

提出了一種實時視頻流縮放系統的硬件結構設計,基于雙三次插值圖像算法,采用流水線的設計思路對算法的浮點運算進行優化,采用乒乓操作的思想避免了視頻流輸入與輸出不同步的情況,減少了計算延時,易于FPGA的實現,在提高系統的運算速度的同時減少了對硬件資源的消耗,并在VIVADO環境中對該設計進行測試驗證,實現了任意比例縮放。經實際驗證,該實時視頻流縮放系統設計支持最高3 840×2 160分辨率的視頻輸入,最低支持縮放至100×100分辨率輸出,能夠滿足需要特殊分辨率的顯示屏的需求。

猜你喜歡
設計
二十四節氣在平面廣告設計中的應用
河北畫報(2020年8期)2020-10-27 02:54:06
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PWM的伺服控制系統設計
電子制作(2019年19期)2019-11-23 08:41:36
基于89C52的32只三色LED搖搖棒設計
電子制作(2019年15期)2019-08-27 01:11:50
基于ICL8038的波形發生器仿真設計
電子制作(2019年7期)2019-04-25 13:18:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
從平面設計到“設計健康”
商周刊(2017年26期)2017-04-25 08:13:04
主站蜘蛛池模板: 国产福利小视频高清在线观看| 午夜精品国产自在| 五月婷婷丁香综合| 国产一级特黄aa级特黄裸毛片| 2020精品极品国产色在线观看| 亚洲A∨无码精品午夜在线观看| 五月天福利视频| 欧美国产日韩在线观看| 久久www视频| 欧洲亚洲欧美国产日本高清| 国产h视频免费观看| 国内黄色精品| 色综合激情网| 欧美精品色视频| 亚洲第一网站男人都懂| 婷婷六月天激情| 国产精品99r8在线观看| 日韩第八页| 亚洲精品福利视频| 国产精品午夜电影| 91在线视频福利| 91色在线观看| 91丨九色丨首页在线播放| 亚洲国产午夜精华无码福利| 亚洲天堂在线视频| AⅤ色综合久久天堂AV色综合| 最新日韩AV网址在线观看| 丰满的少妇人妻无码区| 日a本亚洲中文在线观看| 伊人福利视频| 亚洲最新网址| 国产原创自拍不卡第一页| 国产麻豆精品手机在线观看| 国产精品久久精品| 日韩欧美国产综合| 婷婷丁香在线观看| 极品av一区二区| 国产激情无码一区二区三区免费| 伊在人亚洲香蕉精品播放| 成人一级黄色毛片| 青青草欧美| 精品一区二区三区四区五区| 免费观看精品视频999| 玖玖精品视频在线观看| 日本福利视频网站| 小说区 亚洲 自拍 另类| 久久综合色播五月男人的天堂| 亚洲精品国产自在现线最新| 亚洲综合中文字幕国产精品欧美| 老司机aⅴ在线精品导航| 午夜限制老子影院888| 97成人在线视频| 国产中文一区二区苍井空| 国产美女无遮挡免费视频网站 | 国产成本人片免费a∨短片| 日韩在线播放欧美字幕| 国产成人精品亚洲日本对白优播| 啦啦啦网站在线观看a毛片| 国产区人妖精品人妖精品视频| 欧美在线三级| 国产欧美另类| 丰满的少妇人妻无码区| 全部免费毛片免费播放| 成人综合网址| 人妻丰满熟妇αv无码| 欧美成人怡春院在线激情| 国产精品女熟高潮视频| 色偷偷综合网| 色天天综合久久久久综合片| 五月天久久综合| 2019国产在线| 久草视频精品| 91人妻日韩人妻无码专区精品| 午夜精品福利影院| 久久6免费视频| 99热这里都是国产精品| 国产欧美日韩视频怡春院| 一级黄色欧美| 无码专区第一页| 免费看av在线网站网址| 久久网综合| 成人av专区精品无码国产|