当前位置:首页 > 工业控制 > 电子设计自动化
[导读]摘要:H.264是现有最重要数据压缩编码国际标准之一。同时快速运动估计算法一直是视频压缩中的研究热点。本文针对一些快速估计算法过早确定了搜索方向,容易陷入局部最小点,损失了搜索精度的情况,在原有基础上,运

摘要:H.264是现有最重要数据压缩编码国际标准之一。同时快速运动估计算法一直是视频压缩中的研究热点。本文针对一些快速估计算法过早确定了搜索方向,容易陷入局部最小点,损失了搜索精度的情况,在原有基础上,运用菱形十字搜索算法(DCS)与阈值估计相结合的方法提高了运动估计的性能。实验结果表明,该算法可以用较小的搜索代价取得与全搜索(FS)相当的效果,并且在搜索速度方面优于钻石法DS)。

0 引言

H.264采用了减少视频图像各帧间冗余度的运动估计算法。运动估计算法传统的有全搜索(FS)、三步搜索(TSS)、新三步搜索(NTSS)、四步搜索(FSS)等;常用的是钻石搜索(DS)和非对称十字交叉多层次六边形格点运动搜索算法(UMHexagonS)。运动估计是整个视频编码中运算量最大的模块,可占整个软件编码器运算量的70%以上。因此视频系统中编码器的复杂部分取决于运动估计算法体系结构的复杂性。

1 运动估计算法分析

1.1 钻石搜索(DS)算法

DS算法即钻石搜索算法,被MPEG-4国际标准采用并收入验证模型VM(Verification Model)中,是MPEG-4建议采用的快速运动估计算法。 DS算法采用了两种搜索模板,分别是有9个检测点的大模板和有5个检测点的小模板。搜索时先用大模板LDSP在搜索区域中心及周围8个点处进行匹配计算,当最小块误差出现在中心点处时,将大模板LDSP换为SDSP,再进行匹配计算,这时5个点中的MBD(Minimum Block Distortion)即为最优匹配点;否则,改变中心位置,仍用LDSP重复计算。

1.2 菱形十字搜索(DCS)算法

菱形十字搜索算法(DCS)算法是在DS算法基础上改进而来,DCS的匹配模板是建立在两种不同的搜索模板之上的,即大菱形十字型(LDCSP)和小菱形十字型(SDCSP),如图1所示。其中,十字型可以对应于实际的运动的矢量分布,而交叉型则是为了加速搜索效果。


DCS算法在进行运动估计匹配运算时,有三种可能的情况:

(1)若MBD点位于LDCSP中心位置,说明图像是静止的,DCS算法一步结束;

(2)若MBD点位于LDCSP小十字位置,说明图像的运动较小,则在此基础上按照SDCSP模板反复进行交叉搜索。

(3)若MBD点位于LDCSP大十字位置,说明图像的运动较大,则在此基础上按照LDCSP模板反复进行交叉搜索。

由此可以看出,DCS算法的优点是,可以根据图像的运动类型(如上述三种情况),白适应选择下一步相应的搜索模板,使搜索与图像内容有关(基于内容的搜索),从而得到较好的搜索效果;DCS算法的搜索并不一定要经历模板由大到小的必然过程,有时一步即可完成搜索;用DCS搜索时,十字形模板对应于实际的运动矢量分布,交叉形模板则有准确性“聚焦”特性,这从本质上体现了DCS是粗定位和准确定位的有效结合。

2 运动估计的阈值确定

视频图像的运动矢量大部分为零矢量或运动很小的矢量。运动矢量为零的块称为静止块;运动矢量很小的块(以搜索窗口中心为圆心,两像素为半径的圆内)称为准静止块:而其他的称为运动块。如果有超过80%运动矢量很小的块可被看作静止或准静止块。因此,可设一个阀值T,当运动矢量的值小于T时,可用SDCSP搜索法直接进行精确定位,找出最优点;当运动矢量的值大于T时,可用LDCSP搜索算法找出最优点。

运动矢量空间域的预测方式有运动矢量中值预测、空间域的上层块模式运动矢量;在时间域的预测方式有前帧对应块运动矢量预测和时间域的邻近参考帧运动矢量预测。本文采用运动矢量中值预测方式。根据与当前E块相邻的左边A块,上边B块和右上边C块的运动矢量,取中值作为当前块的预测运动矢量。如图2所示。


设当前要编码块E的运动矢量为MVp。如果运动矢量的值MVp≥T,则与E块相邻的各块间运动的相关性较高,表明该区域的变化比较平缓;如果运动矢量的值MVp<T,则与E块相邻的各块间运动的相关性较低,表明该区域变化比较剧烈。通过对missa、grandmother、carphone、salesman的检测可知,取阈值T=2。

3 自适应运动估计算法

结合上述DCS算法和阈值的确定,可采取先对视频图像的运动块进行阈值的判断,再根据判断结果进行最佳匹配块的搜索。具体搜索步骤描述如下:

Step 1:判断当前块运动矢量MVp和阈值确大小。若MVp≥T,则进入Step 2;若MVp<T,则进入Step 5。

Step 2:用LDCSP在搜索区域中心及周围8个点进行匹配运算,然后判断,找出MBD点。若MBD点位于中心点,说明宏块是静止的,DCS算法一步结束,得到最优匹配块;否则进行Step 3。

Step 3:若MBD点为LDCSP模版的小十字处,以该点为中心构建SDCSP进行匹配计算,若MBD点位于中心点,所得MBD点为所求。否则,进入Step 4。

Step 4:若MBD点为LDCSP模版的大十字处,以该点为中心构建LCSP进行匹配计算,进入step 2。

Step 5:用LDCSP在搜索区域中心及周围5个点进行匹配运算,然后判断,找出MBD点。若MBD点位于中心点,所得MBD点为所求;否则继续Step 5。算法流程图如图3所示。


4 实验结果及说明

用搜索时间和PSNR值两个指标来验证DCS的性能。本节实验用到的所有视频文件均为QCIF(Quartet commonintermediate format)格式。实验以主频1.8GHz的PC机上运行的VisualC++6.0为平台。测试对象为:missa、salesman、news、grandmother、foreman、carphone、claire,搜索范围为16×16的矩形框,量化范围为2~12,测试序列中每帧图像的大小为176×144。

4.1 搜索时间的比较

为了时间测试的准确性,测试时采用的是VC++提供的两个精确时间函数:QueryPerformanceFrequency()和OuerPerformanceCounter()精度对标准测试序列missa、salesman、news、grandmother、foreman、carphone进行精确测定,得表1(数据均为三次测量所求得的平均值)。


从表1可知:a.FS搜索效果最佳,但耗时太长;DS算法有较大改进,可以实现实时压缩;DCS比DS,运行时间都有不同程度的减少,故DCS算法在搜索速度有优势。b.从单个序列来看,DCS算法对missa和salesman时间优化最为显著,分别只占FS算法的7.42%、7.50%和DS算法的98.17%、97.49%;对carphone序列的搜索速度也有很大优化,占FS搜索算法的7.97%和DS算法的97.82%。综合视频特性可知:DCS算法针对运动平缓的视频对象搜索速度优化明显。

4.2 信噪比的比较

对标准测试序列claire和carphone序列进行测定,计算PSNR得表2。


表2中FS的平均PSNR最高,达到42.38,但搜索时间最长;DS的PSNR最低,为42.31,而DCS为42.35,高于DS算法,且仅低于FS算法0.03dB。从单个序列来看,DCS算法对claire的优化程度最大,超过了FS的PSNR值,说明DCS算法身体静止仅面部表情运动特点视频适用。用DCS算法计算得到的carphone的PSNR值虽然低于FS算法,但高于DS算法;missa序列的DCS算法的PSNR值和FS、DS法的相差不大。故DCS算法在搜索速度、图像质量上均有保证。

5 结束语

本文从搜索时间和图像质量两方面对各种块匹配运动估计算法进行了性能分析比较。实验结果表明,将菱形十字交叉搜索算法和阈值判断结合,在搜索速度方面,有很大程度的优化,而且能得到与FS、DS搜索算法相当的图像质量。DCS算法针对运动平缓的视频作用明显,由此推知该算法适用于电视电话、远程教育等实时视频压缩。



来源:星梦居0次

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在工业控制系统中,Modbus RTU协议的CRC校验如同通信网络的"免疫系统",某石化厂DCS系统曾因CRC计算错误导致0.3%的数据包丢失,引发连锁控制故障。本文将深入解析CRC-16/MODBUS算法原理,对比软件...

关键字: Modbus RTU CRC 算法

加密算法分对称加密和非对称算法,其中对称加密算法的加密与解密密钥相同,非对称加密算法的加密密钥与解密密钥不同,此外,还有一类不需要密钥的散列算法。

关键字: 算法 嵌入式

在现代数字系统设计中,将算法高效地转化为 RTL(寄存器传输级)实现是 FPGA 工程师的核心任务之一。这一过程不仅需要对算法有深入理解,还需掌握 FPGA 的硬件特性和设计技巧。本文将详细介绍从算法到 RTL 实现的关...

关键字: 算法 寄存器传输级 数字系统

从本质上讲,算法是一种有条不紊、分步骤解决问题或完成任务的方法。无论是简单的数字相加公式,还是复杂的机器学习协议,算法都是软件应用的基础,确保任务能够高效有效地执行。

关键字: 算法 嵌入式

在自动驾驶技术的发展历程中,激光雷达(LiDAR)宛如一颗备受瞩目的新星,其独特的技术特性使其成为追求高安全性、高可靠性自动驾驶方案的首选。然而,这颗新星并非毫无争议,“价格昂贵、结构复杂、算法难度高” 等标签,也让一些...

关键字: 自动驾驶 激光雷达 算法

4月2日消息,近日,有关智能驾驶而引发的交通事故在网络上引起了大家的热烈讨论,对此,央视网评指出,“智能驾驶”,也请握紧方向盘。

关键字: 算法 智能驾驶

所谓排序算法,即通过特定的算法因式将一组或多组数据按照既定模式进行重新排序。这种新序列遵循着一定的规则,体现出一定的规律,因此,经处理后的数据便于筛选和计算,大大提高了计算效率。对于排序,我们首先要求其具有一定的稳定性,...

关键字: 排序算法 算法

快速排序通过一趟排序将待排序列分割成独立的两部分,其中一部分序列的关键字均比另一部分序列的关键字小,则可分别对这两部分序列继续进行排序,以达到整个序列有序的目的。

关键字: 快速排序 算法

算法,作为解决问题的精确描述,是描述策略机制的系统方法。让我们在周末轻松探讨五个具有深远影响的算法:Metropolis-Hastings算法、单纯形法、快速傅立叶变换、快速排序算法,以及计算特征值的QR算法。这些算法在...

关键字: 算法 快速排序算法

服务需要保护自己,以免被太多的请求淹没(无论是恶意或无意的),从而保持可用性。举个生活中的例子,某个景区,平时可能根本没什么人前往,但是一旦到了国庆假日就人满为患,这时景区管理人员就会实施一系列的限流举措,来限制进入的人...

关键字: 限流 算法
关闭