• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于雙線性內(nèi)插算法的多路視頻縮放設(shè)計(jì)

    2015-05-05 02:30:04陳全兵習(xí)友寶
    電視技術(shù) 2015年1期
    關(guān)鍵詞:視頻信號狀態(tài)機(jī)流程圖

    陳全兵,習(xí)友寶

    (電子科技大學(xué) 電子工程學(xué)院,四川 成都 611731)

    基于雙線性內(nèi)插算法的多路視頻縮放設(shè)計(jì)

    陳全兵,習(xí)友寶

    (電子科技大學(xué) 電子工程學(xué)院,四川 成都 611731)

    基于雙線性內(nèi)插算法,設(shè)計(jì)改進(jìn)了一種以FPGA為硬件平臺的多路視頻信號的圖像縮放裝置。把與期望位置相鄰的兩行像素緩存在RAM中,先對垂直方向進(jìn)行插值運(yùn)算,再對水平方向進(jìn)行插值運(yùn)算。利用FPGA并行處理的優(yōu)勢實(shí)現(xiàn)多路視頻信號的實(shí)時縮放。

    雙線性內(nèi)插算法;FPGA;多路視頻圖像縮放

    隨著生活水平的提高,人們對視頻圖像的分辨率和流暢度的要求也越來越高。在視頻圖像的處理過程中,既要求提高分辨率又要保證圖像的傳輸速度(即輸出幀率);在涉及到多路視頻信號同時處理時,處理速度就成為了一個瓶頸性問題?;贔PGA并行處理速度快的優(yōu)勢,設(shè)計(jì)本圖像縮放裝置,用以實(shí)現(xiàn)多路視頻圖像的實(shí)時縮放。

    1 圖像縮放概述

    圖像縮放變換屬于圖像幾何變換的一種類型,圖像縮放要實(shí)現(xiàn)的就是在輸出像素和輸入像素之間建立一種映射關(guān)系,使得在輸出圖像的每一個位置均有待輸出像素值產(chǎn)生。輸出像素和輸入像素之間的映射關(guān)系可以有兩種不同的定義方法:前向映射和逆向映射[1]。

    前向映射將輸出像素的坐標(biāo)定義為輸入像素的坐標(biāo)的函數(shù)mf,如式1所示,其中Q[u,v]表示輸出像素坐標(biāo),I(x,y)表示輸入像素坐標(biāo)。前向映射有兩個問題:1),如果對圖像進(jìn)行放大操作,在輸出圖像中將會有部分像素點(diǎn)沒有相對應(yīng)的輸入像素,即產(chǎn)生空洞現(xiàn)象;2),如果對圖像進(jìn)行縮小操作,輸出圖像中的部分像素點(diǎn)將會對應(yīng)輸入像素中的多個像素點(diǎn),使得輸出出現(xiàn)混亂。

    (1)

    逆向映射將輸入像素的坐標(biāo)定義為輸出像素的坐標(biāo)的函數(shù)me,如式(2)所示,其中Q[u,v]表示輸出像素坐標(biāo),I(x,y)表示輸入像素坐標(biāo)。逆向映射對每一個輸出像素逆向映射出對應(yīng)的輸入像素,因此更適合產(chǎn)生輸出數(shù)據(jù)流。當(dāng)采用逆向映射對圖像進(jìn)行縮放操作時,被逆向映射出的坐標(biāo)值往往不是整數(shù),為了估計(jì)輸出的像素值通常要在期望位置處對輸入像素值進(jìn)行重采樣,等效于用一個采樣插值核對輸入的像素值進(jìn)行加權(quán)[1],如式(3)所示,其中C(x,y)表示采樣函數(shù),I[x,y]表示輸入像素坐標(biāo),K[x,y]表示插值內(nèi)核。

    (2)

    (3)

    2 圖像插值算法的選取

    常見的圖像插值算法有最近鄰內(nèi)插算法、雙線性內(nèi)插算法、雙三次內(nèi)插算法和B樣條插值算法[2]。

    最近鄰內(nèi)插算法是最簡單的圖像插值算法,該算法的原理為直接選取距離期望位置最近的源圖像位置的像素值作為輸出像素值。該算法丟失了源圖像中的大量信息,使得圖像變得模糊邊緣部分不清晰,放大后有馬賽克現(xiàn)象,縮小后有嚴(yán)重失真[3]。

    雙線性內(nèi)插算法用與期望位置最近鄰的4個像素值估計(jì)期望位置的像素值,若用(x,y)表示期望位置,用Q(x,y)表示輸出像素值,I(x,y)表示輸入像素值,雙線性內(nèi)插算法的賦值公式為

    (4)

    雙三次內(nèi)插算法用期望位置最近鄰的16個像素值估計(jì)期望位置的像素值。雙三次插值算法可分離為分段三次插值核[4],如式(5)所示,其中a為自由參數(shù),KKeys(s)表示插值核為

    (5)

    B樣條插值算法的原理是以期望位置為中心利用B樣條核對源像素值進(jìn)行估計(jì)從而得出期望像素值。3次B樣條核的解析公式為

    (6)

    雙三次內(nèi)插算法主要應(yīng)用于商業(yè)圖像編輯程序(如Adobe Photoshop等)中,算法復(fù)雜度較高。B樣條插值算法在使用過程中需要用到矩陣求逆等運(yùn)算[5],算法復(fù)雜度更高。考慮到現(xiàn)實(shí)應(yīng)用場景和FPGA的資源情況,本次設(shè)計(jì)選用雙線性內(nèi)插算法。

    3 基于FPGA的雙線性內(nèi)插原理

    采用逆向映射計(jì)算出的期望位置往往不是整數(shù),設(shè)計(jì)中把期望位置的坐標(biāo)分解為整數(shù)部分和小數(shù)部分??紤]到FPGA不方便進(jìn)行浮點(diǎn)運(yùn)算,因此把期望位置的坐標(biāo)放大256倍(即左移8位)后取后8位作為小數(shù)部分,如式(7)所示。其中(xr,yr)為整數(shù)部分,用以確定源像素點(diǎn)的位置;(xi,yi)為小數(shù)部分,用以確定各像素點(diǎn)的權(quán)重,對各像素點(diǎn)經(jīng)行加權(quán)處理進(jìn)而估計(jì)出期望位置的像素值。雙線性內(nèi)插算法示意圖如圖1所示,其中陰影部分為期望位置,I(x,y)為各像素點(diǎn)的像素值。

    (7)

    4 基于FPGA實(shí)現(xiàn)圖像雙線性內(nèi)插算法

    該圖像縮放模塊為全景視頻拼接系統(tǒng)的一部分,圖像在進(jìn)行縮放前已經(jīng)做了去隔行、桶形畸變矯正等預(yù)處理操作,經(jīng)過預(yù)處理操作后的視頻數(shù)據(jù)存儲在外部DDR2存儲器(Double Data Rate 2 SDRAM)中,在進(jìn)行圖像縮放前各路視頻數(shù)據(jù)已經(jīng)經(jīng)過DDR2讀取模塊讀取到FPGA的先入先出隊(duì)列(First Input First Output,F(xiàn)IFO)中進(jìn)行緩存。

    圖1 雙線性內(nèi)插算法示意圖

    圖像縮放的關(guān)鍵是根據(jù)映射關(guān)系確定讀寫時序和讀寫地址。雙線性內(nèi)插算法需要用到期望位置附近的兩行視頻圖像數(shù)據(jù),因此利用兩組RAM對視頻信號進(jìn)行緩存,用FPGA控制RAM的讀寫地址,從而可以保證讀寫地址的正確性??紤]到進(jìn)行縮放時讀寫緩存RAM的時序復(fù)雜性,對讀寫時序的控制利用狀態(tài)機(jī)實(shí)現(xiàn),從而可以保證縮放時讀寫RAM時序的正確性。對圖像進(jìn)行縮放操作可以用4個狀態(tài)機(jī)協(xié)同合作來實(shí)現(xiàn),包括寫RAM狀態(tài)機(jī)、讀RAM狀態(tài)機(jī)、垂直縮放狀態(tài)機(jī)和水平縮放狀態(tài)機(jī)。

    1)寫RAM狀態(tài)機(jī)完成對對視頻信號進(jìn)行緩存的兩組緩存RAM的寫操作。2組RAM具有相同的讀寫地址,可以保證讀取到的視頻數(shù)據(jù)為同一列的數(shù)據(jù),對兩組RAM進(jìn)行寫操作時利用片選信號,實(shí)現(xiàn)兩組RAM的乒乓操作。寫RAM狀態(tài)機(jī)完成的主要工作是產(chǎn)生寫RAM的地址,控制寫RAM的時序,控制寫RAM的片選信號。寫RAM狀態(tài)機(jī)的流程圖如圖2所示。

    圖2 寫RAM狀態(tài)機(jī)流程圖

    2)讀RAM狀態(tài)機(jī)的主要工作是產(chǎn)生讀取RAM的地址,對讀出RAM的數(shù)據(jù)個數(shù)進(jìn)行計(jì)數(shù)從而控制讀RAM時序。讀RAM狀態(tài)機(jī)的流程圖如圖3所示。

    圖3 讀RAM狀態(tài)機(jī)流程圖

    3)垂直縮放狀態(tài)機(jī)的主要工作是移動垂直采樣窗口,讀取FIFO中與期望位置相鄰的兩行數(shù)據(jù)并寫入RAM中進(jìn)行緩存,同時計(jì)算該兩行數(shù)據(jù)的權(quán)重。垂直縮放狀態(tài)機(jī)的流程圖如圖4所示。

    圖4 垂直縮放狀態(tài)機(jī)流程圖

    4)水平縮放狀態(tài)機(jī)的主要工作是:第一,對縮放后的圖像的行像素個數(shù)進(jìn)行計(jì)數(shù),產(chǎn)生行結(jié)束標(biāo)志從而控制垂直和水平縮放的時序;第二,平移水平采樣窗口,讀取緩存RAM中與期望位置相鄰的水平方向上的兩個像素點(diǎn)并計(jì)算此兩點(diǎn)的權(quán)重。水平縮放狀態(tài)機(jī)的流程圖如圖5所示。

    基于FPGA的線性內(nèi)插算法的運(yùn)算順序?yàn)橄冗M(jìn)行垂直方向的插值運(yùn)算,再以垂直方向的插值運(yùn)算結(jié)果為基礎(chǔ)進(jìn)行水平方向的插值運(yùn)算。插值運(yùn)算模塊的功能框圖如圖6所示,其中data1_in和data2_in為像素?cái)?shù)據(jù)輸入端口,data1_weight和data2_weight端口分別對應(yīng)像素?cái)?shù)據(jù)輸入端口的權(quán)重。插值運(yùn)算模塊以像素?cái)?shù)據(jù)以及其對應(yīng)的權(quán)重為基礎(chǔ)計(jì)算出插值運(yùn)算后的像素?cái)?shù)據(jù)data_out。插值運(yùn)算模塊的仿真波形如圖7所示,從仿真波形中可以看出在像素?cái)?shù)據(jù)輸入3個時鐘后輸出插值運(yùn)算后的像素?cái)?shù)據(jù)。

    圖5 水平縮放狀態(tài)機(jī)流程圖

    圖6 插值運(yùn)算模塊功能框圖

    圖7 插值運(yùn)算模塊仿真波形(截圖)

    上述各模塊協(xié)調(diào)工作可以實(shí)現(xiàn)1路視頻信號的縮放操作,效果圖如圖8所示,其中圖8a為縮放前的原始圖像,圖8b為放大后的圖像,圖8c為縮小后的圖像。把上述視頻圖像縮放模塊例化出多個,每個模塊連接不同的視頻數(shù)據(jù)碼流可以實(shí)現(xiàn)多路視頻信號的縮放處理,2路視頻信號的縮放效果圖如圖9所示,其中圖9a為縮放前的原始圖像,圖9b為放大后的圖像,圖9c為縮小后的圖像。

    5 小結(jié)

    本文基于雙線性內(nèi)插算法在FPGA平臺上設(shè)計(jì)實(shí)現(xiàn)的多路視頻信號的縮放裝置為全景視頻拼接系統(tǒng)的一部分,利用FPGA并行處理的優(yōu)勢可以實(shí)現(xiàn)多路視頻信號的同時縮放操作,從而保證了拼接后視頻的實(shí)時性。根據(jù)美國電子消費(fèi)品制造協(xié)會(Consumer Electronics Association,CEA)制定的未壓縮數(shù)字視頻標(biāo)準(zhǔn)CEA-861所提供的傳輸時序,該裝置可輸出1 080p(1 920×1 080)的高清數(shù)字視頻至數(shù)字顯示器顯示,輸出幀率為60 f/s(幀/秒)。4路視頻信號實(shí)現(xiàn)同時縮放的效果圖如圖10所示。

    圖8 1路視頻信號縮放效果圖

    圖9 2路視頻信號縮放效果圖

    [1]DONALD G B. 基于FPGA的嵌入式圖像處理系統(tǒng)設(shè)計(jì)[M]. 原魁,何文浩,肖晗,譯. 北京:電子工業(yè)出版社,2013.

    圖10 4路視頻信號同時縮放效果圖

    [2]RAFAEL C G, RICHARD E W. 數(shù)字圖像處理[M].3版. 阮秋琦,阮宇智,譯. 北京:電子工業(yè)出版社,2011.

    [3]趙煌,彭勇. 雙線性插值算法的優(yōu)化及其應(yīng)用[J]. 電視技術(shù),2012, 36(17):30-32.

    [4]ROBERT G K. Cubic convolution interpolation for digital image processing[J]. IEEE Trans. Acoustics,Speech and Signal Processing,1981,29(6):1153-1160.

    [5]MICHAEL U, AKRAM A, MURRAY E. Fast B-spline transforms for continuous image representation and interpolation[J]. IEEE Trans. Pattern Analysis and Machine Intelligence, 1991,13(3):277-285.

    Design of Multi-channel Video Zoom Based on Bilinear Interpolation Algorithm

    CHEN Quanbing, XI Youbao

    (SchoolofElectronicsEngineering,UniversityofElectronicScienceandTechnologyofChina,Chengdu611731,China)

    A multi-channel video zoom device, which bases on bilinear interpolation algorithm and FPGA hardware platform, is designed in this paper. The two lines pixels, which are next to the desired position, are stored in the RAM. The vertical interpolation data are calculated firstly. Then, the horizontal interpolation data are calculated. The image can be scaled in real time by using this device, which takes advantage of FPGA’s parallel computation ability.

    bilinear interpolation algorithm;FPGA;multi-channel video zoom

    TN949.1

    A

    10.16280/j.videoe.2015.01.011

    2014-07-10

    【本文獻(xiàn)信息】陳全兵,習(xí)友寶.基于雙線性內(nèi)插算法的多路視頻縮放設(shè)計(jì)[J].電視技術(shù),2015,39(1).

    陳全兵(1989— ),碩士生,主研FPGA邏輯芯片在圖像處理中的應(yīng)用;

    習(xí)友寶(1964— ),教授,主研片上系統(tǒng)(SOC)設(shè)計(jì)。

    責(zé)任編輯:李 薇

    猜你喜歡
    視頻信號狀態(tài)機(jī)流程圖
    基于有限狀態(tài)機(jī)的交會對接飛行任務(wù)規(guī)劃方法
    淺析新一代視頻信號ICtCp
    短距視頻信號無線通信網(wǎng)絡(luò)
    專利申請審批流程圖
    河南科技(2016年8期)2016-09-03 08:08:22
    專利申請審批流程圖
    河南科技(2016年6期)2016-08-13 08:18:29
    寧??h村級權(quán)力清單36條
    小飛鴿ZY—2250D數(shù)字機(jī)無視頻輸出故障的應(yīng)急處理
    《天津醫(yī)藥》稿件處理流程圖
    FPGA設(shè)計(jì)中狀態(tài)機(jī)安全性研究
    基于反熔絲FPGA的有限狀態(tài)機(jī)加固設(shè)計(jì)
    建湖县| 永新县| 汝城县| 雷波县| 加查县| 岳西县| 从江县| 万安县| 金寨县| 宁晋县| 阳江市| 济阳县| 玛多县| 宾阳县| 山阴县| 揭阳市| 修武县| 涿州市| 保靖县| 汉沽区| 天等县| 册亨县| 蓬安县| 紫金县| 历史| 龙州县| 平武县| 泊头市| 潜江市| 桐梓县| 鲁甸县| 斗六市| 邢台市| 河北区| 高台县| 四会市| 宁强县| 平塘县| 陆河县| 肥东县| 和平区|