英语原文共 14 页,剩余内容已隐藏,支付完成后下载完整资料
H.264/AVC中实现快速运动估计的面向硬件,改进菱形搜索的算法与架构协同设计
Obianuju Ndili与Tokunbo Ogunfunmi ,IEEE高级成员
摘要 -本文提出了一种新的面向硬件的改进菱形搜索(HMDS)算法,用于H.264/AVC中的快速整像素运动估计。还介绍了我们为HMDS设计的低功耗超大规模集成(VLSI)架构。HMDS的目标是在低功耗移动设备和低比特率应用上支持高质量视频,这些应用通常在1-2级使用H.264/AVC基线配置文件。我们的实验使用标准测试序列范围从QCIF到HD晰度1280times;720p视频。所提出的VLSI架构原型为现场可编程门阵列(FPGA)的现场可编程片上系统。我们的研究结果表明,与以前的先进快速运动估计算法相比,平均HMDS具有更好的码率失真性能和加速性能,而与全搜索运动估计相比,HMDS的损失是微不足道的。就功耗,面积,吞吐量和内存利用率而言,我们的原型架构比以前的基于FPGA架构的硬件效率更高。我们还展示了它在最大频率,最小频率,晶体管数量和功耗方面的性能与专用集成电路上最新架构的性能相当。
关键词-快速整数运动估计,FPGA,H.264/ AVC,VLSI架构。
一、前言
如今低功耗,移动设备(如手机相机,生物医疗设备,安全设备和传感器相机等)对高质量实时视频的需求不断增长。这些设备通常在低比特率情况下运行例如移动和无线通信服务。
因此,他们通常支持在1-2级的H.264/AVC基线配置文件。这意味着支持I和P切片,比特率高达2 Mb / s,帧分辨率和速率高达30 Hz的SIF / CIF,5-6参考帧,CAVLC熵编码,4:2:0色度格式,和8位采样深度。在这些低功率设备中的一些,目标包括支持B切片和帧分辨率和速率高达720p@60HZ的HD晰度。
运动估计(ME)是H.264/AVC [1]中最强大的压缩工具,但也是最耗时的。为了满足低功耗和实时的限制,通过快速算法和硬件加速来有效加速ME是至关重要的。
文献中已经提出了许多快速ME算法。这些算法包括具有固定搜索模式的算法,例如三步搜索(TSS)[2],新的三步搜索[3],四步搜索(4SS)[4],菱形搜索(DS)[5] 6]和基于六边形的搜索[7]。这些算法受到“局部最小值问题”的困扰,因为它们具有较低的适应性和搜索效率来跟踪大的运动,并且它们是基于这样的假设:当搜索位置离开全局最小值时,误差表面单调增加。图1(a)显示了这种误差表面的一个例子。尽管在全局最小值(半径约为2个像素)周围的小区域中这种假设可能是正确的,但对于视频信号而言通常不是这样。这由图1(b)所示的误差表面来说明。
手稿于2010年6月9日收到; 2010年11月6日修订; 2011年1月21日确认接受。公布日期:2011年3月28日; 当前版本的日期为2011年9月2日。本文由副主编W. Gao推荐。
作者是美国加利福尼亚州圣克拉拉市圣克拉拉大学电气工程系95053(电子邮件:ondili@scu.edu;togunfunmi@scu.edu)。
本文中的彩色图像可以在http://ieeexplore.ieee.org获得。
数字对象标识符10.1109 / TCSVT.2011.2133990
然而,上述算法具有简单性和规律性的重要优点,这又使得它们在硬件实现上具有吸引力。其中,DS被接受为MPEG-4验证模型[8]。
为了更好地跟踪大的运动,已经提出了一些先进的算法。这些包括自适应搜索模式的自适应算法和最近的混合算法,这些算法结合了各种搜索模式以及自适应技术,以避免陷入局部最小值。自适应算法的着名例子包括增强预测分区搜索(EPZS)[9]。众所周知,混合算法的例子包括交叉菱形搜索[10],交叉菱形六角搜索[11],统一的多六边形搜索UMHexagonS [12]和简化的统一多六边形(SUMH)搜索[13 ]。EPZS,UMHexagonS和SUMH是H.264/AVC标准的非规范部分。
先进的快速ME算法的一个主要缺点是它们不适合硬件实现,不同于全搜索(FS)和早先提到的具有固定搜索模式集合的算法。这是因为高级算法很复杂,而且严重依赖于阈值。这些可能的惩罚包括复杂的控制电路,管道冲洗,顺序处理和低效的硬件使用。
图1(a)全局最小的单模误差曲面;(b)具有多个局部最小值的非单模误差曲面
在硬件ME加速方面,虽然大多数硬件架构已经被设计用于全搜索运动估计(FSME)[14-16],但是一些架构已经被提出用于面向硬件的快速ME算法。这些架构的例子包括Chao等。[17](基于DS),Miyakoshi 等。[18](基于梯度下降),Lin 等。[19](基于4SS),Chen等。[20](基于内容自适应可变块大小4SS)和Qiu等。[21](基于自适应交叉季度极地模式)。在[14] - [16]和[21]中的工作是在基于FPGA的平台上实现的,而[17] - [20]中的工作是作为应用程序实现的专用集成电路(ASIC)。
在我们之前的作品[22,23]中,我们提出了面向硬件的面向SUMH的修改,以及支持硬件架构。对SUMH的修改不仅导致了面向硬件的快速搜索算法,而且还导致了比SUMH更好的算法。但是,由于修改后的SUMH适用于SUMH的硬件,它将继承冗余的搜索点。我们的目标是通过共同设计面向硬件的算法及其支持的硬件架构来最小化算法复杂度和相关的硬件低效率。在[24]中,我们引入了一种新的面向硬件的改进菱形搜索(HMDS)算法,用于整数像素快速运动估计。
在本文中,我们提供有关HMDS的详细信息。另外,我们提出了一个共同设计的HMDS硬件架构。我们的算法具有基于修改的菱形搜索模式的常规搜索模式。这种规律性对于并行处理过程中的内存组织和数据重用是有利的。
我们的研究结果表明,HMDS的性能优于当前最先进的算法,通常在较低的比特率下。与FSME相比,它的失真率损失是微不足道的。我们的基于FPGA的支持架构比以前的基于FPGA的架构更高效硬件[14] - [16],[21]。此外,它在功耗和最低频率方面的性能与基于ASIC的架构相当[17-20]。但是,虽然我们的架构支持H.264/AVC,但[17] - [20]中的不支持。
本文的其余部分安排如下。在第二部分我们介绍HMDS。在第三节,我们提出我们的模拟结果和分析HMDS。在第四节,我们提出的HMDS架构和实现的结果。最后在第五节中总结我们的结论。
二、提出的HMDS算法
对于H.264/AVC中的整数像素ME,选择的块失真度量是由(1)中的数学表达式给出的绝对差的和(SAD)
在(1)中, x ( i,j )和 y ( i,j )分别是电流和电流的像素候选块。( di , dj )是搜索窗口内候选块的位移。I times; J 是当前块的大小。在(2)中( MV i , MV j )是最佳匹配候选块的运动矢量。
我们提出的HMDS算法是基于修改的菱形搜索模式。仔细研究了各种基本的形状搜索模式之后,我们得出结论:菱形形状在找到真正的运动矢量方面非常有效。在[10]和[11]中,使用超过31个标准测试序列来研究不同搜索形状模式的平均运动矢量概率。表1总结了他们的发现。从表1我们可以看出,方形图案具有最高的运动矢量出现的累积概率。完全搜索基于方形搜索形状模式。下一个最有效的形状是菱形,只有轻微的搜索效率损失,特别是对于低分辨率的视频。菱形形状具有很高的搜索效率,因为大多数视频包含平移,缩放,平移和倾斜运动,当使用阻挡ME时,它们容易落在菱形角上。但是,菱形搜索仍然容易找到局部最小值并且缺少全局最优运动矢量。为了进一步提高搜索效率,我们提出了如图2(a)所示的改进的菱形图案。
在图2(a)中,最外面的搜索点位于搜索范围边界处。这些卫星搜索点使菱形搜索足够强大,以捕捉大的运动。从而 这些卫星搜索点使菱形搜索足够强大,以捕捉大的运动。从而这些卫星搜索点使菱形搜索足够强大,以捕捉大的运动。
表1 各种搜索模式下运动矢量发生的平均累积概率(%)
分辨率/搜索范围 |
广场 |
菱形 |
交叉 |
CIF,plusmn; 7 |
100 |
97.03 |
83.48 |
CCIR601,plusmn; 15 |
100 |
92.00 |
67.14 |
图2 HMDS搜索模式
(a)修改的菱形搜索模式;(b)大型菱形搜索模式(LDSP)
表2 算法:提出的HMDS运动估计算法
步骤1: |
在图2(a)所示的修改的菱形搜索模式中,从搜索点中找到最小块失真度量。 |
步骤2: |
以步骤1中的最小块失真度量为中心,如图2(b)所示形成LDSP。从候选搜索点中确定新的最小BDM。 |
步骤3: |
以步骤2中的最小块失真度量作为新搜索中心,如图2(b)所示形成LDSP。确定候选搜索点的最小BDM。 |
从而一般HMDS更有可能找到全局最优运动矢量。我们在HMDS中使用的另一种搜索模式是众所周知的大菱形搜索模式(LDSP),如图2(b)所示。对于运动矢量(MV)预测,HMDS使用H.264/AVC中定义的零位移和空间中值预测器。
HMDS在三个搜索步骤中完成。第一步,采用图2(a)所示的改进菱形。随后的步骤在图2(b)中搜索LDSP,其中心是上一步具有最小块失真度量的搜索点。HMDS在第三个搜索步骤后终止。表2列出了该算法。其完整的流程图如图3所示,而图4显示了一个样本搜索流程。
三、HMDS的性能与分析
我们的实验在JM 13.2中完成[25]。我们使用以下标准测试序列:斯蒂芬(Stefan),Carphone(大动作),Flower(大动作,高细节和相机平移),Foreman,Coastguard(大到中等动作),Suzie(中等动作),Silent(小动作)和母女(小动作,说话的头和肩膀)。序列以30Hz编码。图片序列是IPPP,每15帧I帧刷新率。我们考虑1参考框架(我们的结果是相似的多参考帧)。
图3 HMDS流程图
图4 HMDS样本搜索流程的示例
另外,我们考虑类似于上述的测试条件,但是具有较低的帧速率,这强调了任何ME算法。在这些测试中使用的序列是移动,大厅(大动作),瀑布(中等运动高细节),网球(大和快速运动),推销员(中等运动,头和肩膀说), 容器(慢动作和均匀运动)新闻和美国小姐(小动议)。最后,我们测试足球序列(大和快的议案,高空间细节),和Parkrun序列(中等运动,高空间细节)。这些最后的序列在H.264/AVC主配置文件,图像序列IBBPBB,每15帧设置的I帧刷新速率和2个参考帧进行测试。
在我们所有的实验中,速率失真优化被设置为高复杂度模式(即,速率失真优化被打开),以确保所有比较的算法具有公平的机会来产生其最高的失真性能。表3总结了我们其余的模拟条件。
1. HMDS的速率失真性能
从图5和表4到表6,我们观察到,就速率失真(RD)性能而言,HMDS比一般众所周知的快速ME算法(包括SUMH,典型地在低比特率下)更胜一筹。其性能与修改后的SUMH相当,与全搜索相比,其性能损失不显著。
我们在表5和表7详细的结果表明,HMDS,平均Y型PSNR损失是0.0018分贝到0.0283分贝相比FSME,- 0.0147分贝0.001 dB时,相比SUMH,和- 0.0023分贝到0.0078分贝时与修饰的SUMH相比。
从表6和表8可以看出,HMDS的平均百分比增长率非常低。与FSME相比,HMDS的比特率增加了- 0.16%到1.85%,与SUMH相比为- 0.11%至0.90%,和与改进的SUMH相比为 - 0.16%至0.96%。
表3 模拟条件
序列 |
量化参数 |
搜索范围 |
帧大小 |
帧率 |
帧数 |
剩余内容已隐藏,支付完成后下载完整资料 资料编号:[466634],资料为PDF文档或Word文档,PDF文档可免费转换为Word |
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。