国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于H.264的一種視頻編碼算法的研究與FPGA實現(xiàn)

2014-01-24 03:36:14王旭柱
中國新技術(shù)新產(chǎn)品 2014年7期
關(guān)鍵詞:海洋大學六邊形搜索算法

劉 杰 王旭柱

(1.中國海洋大學信息科學與工程學院通信與信息系統(tǒng),山東 青島 266100;2.中國海洋大學信息科學與工程學院電子系,山東 青島 266100)

基于H.264的一種視頻編碼算法的研究與FPGA實現(xiàn)

劉 杰1王旭柱2

(1.中國海洋大學信息科學與工程學院通信與信息系統(tǒng),山東 青島 266100;2.中國海洋大學信息科學與工程學院電子系,山東 青島 266100)

H.264是由ITU-T視頻編碼專家組VCEG和ISO/IEC運動圖像專家組MPEG聯(lián)合制訂的新一代視頻編碼標準。而運動估計是整個編碼過程中最耗時的一部分,它的效率直接決定了整個編碼系統(tǒng)的效率。因此本文在混合非對稱十字多六邊形搜索算法原理的基礎(chǔ)上,提出了一種混合六邊形搜索算法,使四種標準算法合理搭配。并且在FPGA上設(shè)計了一種有效的硬件結(jié)構(gòu)實現(xiàn)該算法。

H.264;運動估計;混合搜索;FPGA

1 概述

通過大量H.264算法的試驗,人們發(fā)現(xiàn)運動估計占整個編碼算法全部計算量的60%~80%,因此研究一種搜索速度快、精度高, 同時便于硬件實現(xiàn)的運動估計搜索算法成為視頻編碼領(lǐng)域的重點和難點。塊匹配算法是最常用的運動估計算法,算法簡潔,便于硬件實現(xiàn)。通過研究已有的成熟的標準算法,我們發(fā)現(xiàn)運動估計不能僅僅使用某種單一的算法,需要我們根據(jù)優(yōu)缺點合理組合各種標準算法,只有這樣才能達到更好的編碼性能。因此,本文提出了以六邊形搜索為主,非對稱十字搜索算法、全搜索算法和菱形搜索算法配合的一種混合搜索新算法。同時給出了一種并行流水結(jié)構(gòu)在FPGA上實現(xiàn)該算法。

2 算法描述

匹配誤差準則采用絕對誤差和:

本文設(shè)計的混合六邊形搜索算法示意圖如圖1所示。步驟如下:

2.1 通過運動矢量預測,首先確定搜索的起始位置。要依據(jù)H.264標準的算法進行預測,然后得到一個起始搜索矢量的集合,從該集合中選出對應費用函數(shù)最小的運動矢量作為起始搜索點。

2.2 研究發(fā)現(xiàn),不同方向上的運動強度是不同的,水平方向大于垂直方向,所以通過非對稱的十字搜索,我們可以初步搜索一下最佳運動矢量。以搜索起點為中心,搜索范圍上垂直方向是水平方向的一半,長度2 是搜索點之間的步長,這樣一個非對稱十字形就產(chǎn)生了。在此基礎(chǔ)上,找到當前的最佳匹配點,下一步的搜索中心就是該點。

2.3 以正方形方式全搜索當前中心周圍3×3的區(qū)域,找到當前的最佳匹配點,下一步的搜索中心就是該點。

2.4 對更大的區(qū)域進行搜索,采用六邊形搜索,該搜索相對于DS算法速度快且準。

2.5 以搜索最佳匹配點為目的,在半徑為1的范圍內(nèi)采用小菱形搜索,搜索到位置點后,輸出該點的SAD值及其坐標。

圖1 混合六邊形搜索算法示意圖

圖2 運動估計硬件結(jié)構(gòu)

3 硬件結(jié)構(gòu)與FPGA實現(xiàn)

并行結(jié)構(gòu)組成部分有(1)四種搜索算法實現(xiàn)器,主要組成部分有SAD計算器、比較器、計算器和延時器(2)兩個片上RAM組(3)一個控制器,主要由地址產(chǎn)生器組成。本設(shè)計同時用到寄存器、片內(nèi)RAM和片外SDRAM作為數(shù)據(jù)存儲空間,保證數(shù)據(jù)存取量和存取速度。一個片上RAM組存當前塊像素數(shù)據(jù),另一個存參考塊像素數(shù)據(jù),這是因為片外SDRAM存取速度慢,達不到運動預測對數(shù)據(jù)的快速存取要求。一個RAM組由4個片內(nèi)RAM構(gòu)成,從而可以同時讀取所有子區(qū)域的像素值。結(jié)構(gòu)如圖2所示?;谝陨显O(shè)計,該系統(tǒng)能達到高效實時的性能要求。

設(shè)計構(gòu)架中的四種搜索算法分別對應其處理當前塊和參考塊。每種算法包含了不同個數(shù)的SAD計算器與相對應的比較器、延時器、計數(shù)器,都對應兩個片內(nèi)大小為16×16的RAM和大小為32×32的當前幀。32×32的當前幀由四個宏塊組成,計算一個宏塊內(nèi)點的運動矢量綽綽有余。本設(shè)計每搜一步都會重新確定一次搜索地址,然后再搜下一步。每組片內(nèi)RAM每次存儲搜索數(shù)據(jù)時,都采用流水的方式進行。每完成一個算法,就把坐標點傳送給地址產(chǎn)生器,計算出下一個點搜索所需的數(shù)據(jù)起始位置,運動估計的搜索步驟通過起到重要作用的控制器控制。

4 仿真驗證

本設(shè)計中FPGA芯片選用Xilinx公司的Spartan3E系列中的XC3S500E,系統(tǒng)門數(shù)是50萬門。采用硬件描述語言Verilog HDL編寫該硬件結(jié)構(gòu),在開發(fā)軟件ISE 13.4上進行綜合實現(xiàn)與仿真驗證。綜合結(jié)果顯示該設(shè)計占用的片內(nèi)block RAM資源為1678 bytes,同時占用邏輯門數(shù)36.9k。將本文的設(shè)計與參考文獻[4]中的TSS算法,文獻[5]中FS的算法結(jié)構(gòu)進行性能對比,如表1所示。由表可知,該設(shè)計平均需要1189個時鐘周期,平均到一種搜索算法,所需要的時鐘周期大約只有297個。所以,每個宏塊工作時時鐘周期處理速度比TSS和FS算法都要快。本設(shè)計的邏輯門資源的占有率跟其他文獻相比較,保持了很低的狀態(tài)。

TSS-三步搜索算法,F(xiàn)S-全搜索算法。

表1 本文結(jié)構(gòu)與其他文獻結(jié)構(gòu)性能比較

結(jié)語

本文介紹了基于H.264編解碼標準的一種運動估計混合搜索算法及其FPGA實現(xiàn)方案,該設(shè)計提高了搜索速度,保持了較高的搜索精度,同時邏輯門資源的占用率也很低,有較高的實用價值。

[1]畢厚杰.新一代視頻壓縮編碼標準—H.264/AVC[M].北京:人民郵電出版社,2005.

[2]吳水明.基于H.264編解碼的算法優(yōu)化研究及FPGA的硬件實現(xiàn)[D].湖南:湖南大學,2007.

[3]田耘,徐文波,胡彬,等.Xilinx ISE Design Suite 10.x FPGA 開發(fā)指南-邏輯設(shè)計篇[M].北京:人民郵電出版社,2008.

[4]Sung-Tae Jung; Sang-sloe Lee.”A 4-way Pipelined Processing Architecture for Three-step Search Block-matching Motion Estimation”,IEEE Transactions on Consumer Electronics,Vol.50, No.2,pp.674-681, May 2004.

TN91

A

10.13612/j.cnki.cntp.2014.07.018

猜你喜歡
海洋大學六邊形搜索算法
知識快餐店 到處都是六邊形
改進的和聲搜索算法求解凸二次規(guī)劃及線性規(guī)劃
中國海洋大學作品選登
中國海洋大學 自主招生,讓我同時被兩所211大學錄取
創(chuàng)意六邊形無限翻
童話世界(2018年32期)2018-12-03 05:14:56
怎樣剪拼
怎樣剪拼
?? ??? ???? ????
La communication sino-fran?aise
法語學習(2015年2期)2015-04-17 09:05:31
基于汽車接力的潮流轉(zhuǎn)移快速搜索算法
依安县| 项城市| 龙江县| 简阳市| 云浮市| 连州市| 鄂伦春自治旗| 喀喇| 同心县| 苗栗县| 聊城市| 松桃| 松江区| 鹤峰县| 武邑县| 盖州市| 兴国县| 获嘉县| 溆浦县| 天等县| 沐川县| 剑阁县| 文昌市| 唐河县| 鄂伦春自治旗| 溧阳市| 二连浩特市| 阿巴嘎旗| 乌兰察布市| 清河县| 沁水县| 六盘水市| 东阿县| 黑河市| 县级市| 拜泉县| 开远市| 太谷县| 家居| 墨玉县| 筠连县|