基于数字图像运动矢量估计的预测编码研究与实现毕业论文
2020-02-17 23:13:19
摘 要
在数字通信中,由于带宽是有限的,并不会无限制的传输信息,对信息传输速率有较大的影响,需要对视频图像进行合适的编码,传输高质量的视频图像。其中,帧间预测编码技术在提高编码效率上发挥着关键作用,因此,本文对其做了深入的研究。
帧间预测最关键的技术就是运动估计与运动补偿,本文对运动估计的原理与快速搜索算法进行了详细讲解,特别是三步搜索算法。对视频图像序列进行了全搜索和三步搜索的算法测试,并比较了两种算法的运动估计效果,对得出的预测误差图像以及求出的运动矢量进行了DCT变换和霍夫曼编码。在接收端实现了运动矢量以及预测误差图像的解码,最终得到了经过压缩的测试图像。
实验结果表明,帧间预测编码技术可以实现视频图像的压缩,提高编码效率。利用全搜索算法进行运动估计所得到的预测效果更好,具有更多的信噪比,但是编码时间远远超过三步搜索算法,速度较慢。
关键词:帧间预测编码;运动估计;运动补偿;三步搜索算法;图像压缩
Abstract
In digital communication, because the bandwidth is limited, there will be no unlimited transmission of information, which has a great impact on the transmission rate of information. It is necessary to encode video image properly and transmit high quality video image. Inter-frame predictive coding technology plays a key role in improving coding efficiency. Therefore, this paper makes a thorough study on it.
The key technology of inter-frame prediction is motion estimation and motion compensation. In this paper, the principle of motion estimation and fast search algorithm are explained in detail, especially the three-step search algorithm. The full search and three-step search algorithms for video image sequences are tested, and the motion estimation results of the two algorithms are compared. DCT transform and Hoffman coding are performed on the predicted error images and the obtained motion vectors. At the receiving end, the motion vector and the prediction error image are decoded, and finally the compressed test image is obtained.
The experimental results show that the inter-frame predictive coding technology can realize video image compression and improve the coding efficiency. Full search algorithm has better prediction effect and more signal-to-noise ratio, but the encoding time is much longer than the three-step search algorithm and the speed is slower.
Key words: Interframe Predictive Codin;Motion Estimation;Motion Compensation;Three-Step Search Algorithms;Image Compression
目录
第1章 绪论 1
1.1研究目的与意义 1
1.2国内外研究现状 2
1.3论文研究内容及结构安排 2
第2章 运动补偿与编码原理 4
2.1全搜索算法 4
2.2快速搜索算法 4
2.2.1二维对数搜索算法 4
2.2.2三步搜索算法 5
2.2.3新三步法 6
2.3 DCT变换 7
2.3.1规律和特点 7
2.3.2 DCT系数的再量化处理 7
2.4霍夫曼编码 7
2.5本章小结 8
第3章 设计思路与算法设计 10
3.1设计思路 10
3.1.1运动估计与运动补偿 11
3.1.2编码和解码 11
3.1.3算法优劣对比 13
3.2算法设计 13
3.2.1视频图像预处理算法 13
3.2.2运动估计算法 13
3.2.3运动补偿算法 16
3.2.4变换编码与解码算法 16
3.2.5运动估计不同方案优劣评判算法 18
3.3本章小结 18
第4章 基于matlab仿真实现及结果分析 19
4.1仿真实现 19
4.2图像分析 26
4.3数据分析 27
4.4本章小结 28
第5章 总结与展望 29
5.1总结 29
5.2展望 29
参考文献 30
致 谢 31
附录 32
第1章 绪论
1.1研究目的与意义
随着社会的蓬勃发展和科技的进步,视频图像技术应用越来越广泛[1]。图像传递人们需要的信息,为人们增加生活的便利,慢慢成为信息技术开发和研究中非常受欢迎的方向。多媒体信息进行数字编码后,比如数字图像,拥有了诸多优点,可以抵抗更加严重的干扰,编码加密更方便。但随着用户在使用多媒体时产生的数据变得庞大,信息存储与网络传输有了更高规格的要求。多媒体技术的出现不但改变了使用计算机的方法和手段,也改变了人们交流的方式,让通信更加的便捷、高效。电视、电话、笔记本等多媒体设备让信息空间变得触手可及,也让现代人类的思维更加的自由,带来了众多的技术革新。不仅是工业技术发生了革新与转变,文化创作也因此发生了转变,信息社会也会因为多媒体技术发生划时代的改变。
信息技术在多种领域日渐成熟,相关的压缩技术也逐渐发展成熟,并有了一些系统性的应用。因为视频图像具备保真、准确和直观的特点,所以数字视频、数字图像的实时传输成为一个十分热门的方向。但是,由于视频图像在使用中产生海量的数据,如何利用有限的通信信道带宽传输必要的信息成为一个需要持续关注的课题。
只是扩展存储器的容量,提高信息的传输速率并不能从根本上解决问题,编码才是关键。多个实验结果证明视频图像在时间域和空间域存在大量的冗余,这部分多余的信息应该去除掉,实现数据的缩减,只对没有任何关系的信息进行编码的传输。以静止图像为例,临近像素的两个属性值,灰度值和色差值都变化不大,只在图像边界处出现了较大的变化。这意味着临近像素的冗余可以作为压缩编码的依据,共同部分不进行二次编码,只对新出现的信息编码,降低传输的比特数,实现数据压缩,即帧内编码。视频图像可以进行进一步的压缩,因为每一帧图像之间也存在运动物体的相关性,主要是时域冗余。可以进行运动补偿,消除这部分冗余,实现压缩。
视频的不同类型的编码可以解决不同种类的一系列问题,在多媒体计算机中应用广泛,使用压缩编码可以克服带宽与用户数据传输之间的矛盾。目前,进行运动估计与运动补偿后能够获得一个经过预测的图像,预测过后存在误差,可以对这两部分进行变换和编码,需要处理的信息量相比原本的图像少了许多,由此实现图像的编码压缩。
计算运动矢量需要对当前需要编码的帧和已经编码过的参考帧进行块的匹配,之后沿着块移动的方向形成一个预测帧。预测帧存在一定的误差 ,只对误差和运动矢量进行编码,此时需要编码的信息变少,编码比特数自然下降,完成对序列图像的编码压缩。使用运动补偿技术,借助运动矢量进行变换编码,完成视频图像的帧间预测压缩编码,这就是本文的研究目的。
1.2国内外研究现状
最先出现的压缩标准是H.261标准,此标准是应用最广泛的,进行DCT变换和运动补偿,不对整个图像编码,而是对预测误差图像进行编码传输。而H.263标准是低比特率类型的, H.263相比 H.261有了更进一步的优化,在预测方面不再单一的预测,有了前向,也有了双向。进行运动补偿时具有更高的精度,提高到了半个像素的规格。H.264 性能的改善是很多技术的改进的结果,这些新技术的采用产生了巨大的计算量[2]。MPEG1和MPEG2压缩标准实现具体的压缩,需要特定的算法。
目前,运动估计有两种,一种是基于像素的递归法,一种就是块匹配法。进行块匹配时,不用计算每一个像素点,需要进行的工作量大大减少,效率高,让块匹配算法有着非常广泛的应用。因此,运动估计决定了视频图像压缩是否成功,效果如何,并且快速、准确。利用运动矢量求出预测帧,得到预测误差,进行运动补偿即是目前的主要压缩算法。
在多种搜索算法中,快速搜索算法有着很大的优势,速度很快,效率很高,特别适合进行像素块的匹配,例如二维对数搜索法,三步搜索算法,新三步搜索算法,四步搜索算法,菱形法等。
与MPEG1标准相比, MPEG2有了相当大的改进,在场之间增加了预测,对图像的压缩效果更加明显,错误率也明显下降,特别适合于运动物体速度块的图像;MPEG2适合进行分层运动估计,在多种视频中应用广泛。至于MPEG4,它特别适合如今的编码趋势,以对象的要求去完成具体的编码,在数字通信中有越来越多的使用。它有很大的优势,可以在带宽很小的劣势情况下,仅仅采用帧间图像重建,压缩图像的数据,而图像不会收到很大的影响,需要传输的关键信息不被破坏,但是需要传输的码元却很少。
在国外的研讨中,数字图像压缩技术向着多个方面发展,有提高压缩比,加快速度,提升图像品质,更加智能和标准的进行压缩编码。目的是来满足多种通信系统和传输线路的要求,并根据研究方向逐渐优化变换编码方式。分布式压缩视频传感方法,为解决低复杂度视频编码问题提供了新的思路[3]。
1.3论文研究内容及结构安排
了解数字图象压缩编码的国际标准,对数字图象变换编码的相关理论知识和进行处理的原理与方法进行学习。在此基础上,计算当前帧(待编码的图像)的各像素块与其相邻帧(预测图像)的像素块的运动矢量,然后由其构成一个对当前帧的预测帧,求得其最佳预测误差,编码时只须传送预测误差值和运动矢量,用运动补偿技术结合变换编码,完成序列图像的编码压缩,并对一具体的应用进行分析和说明,最后用MATLAB进行仿真实验。得出前后对比的结果和数据,并进行分析得到一些有意义的结论。
本论文根据课题要求,将原理、设计和测试结果综合在一起,完成了相关的指标,其中的组织结构如下:
在第一部分比较笼统的讲述了本文需要研究的课题,包括目前的成果以及课题需求,第二部分对本文需要的原理进行了详细讲解,第三部分对后续的编码部分进行了理论上的讲解,分别讲解了最核心的运动估计与运动补偿,以及后续的图像编码部分。第四部分讲解了如何根据原理完成课题要求,以原理为基础进行算法与代码的设计,也就是设计思路和算法设计。第五部分和第六部分是对算法进行测试,对提取的数字图像进行帧间编码,并对最终的结果进行分析,判断不同算法的优劣。第七部分就是对整个课题设计过程进行总结回顾与展望。
第2章 运动补偿与编码原理
对于连续的帧图像,区别主要是背景中出现的物体运动不同导致的,对运动物体的参数进行检测,并根据这些参数由参考帧预测当前帧,这就是运动补偿技术MCP(motion compensated prediction)。关键的就是对运动物体进行匹配,求出具体的运动矢量,而具体的求解过程就被称为运动估计。
运动估计就是寻找合适的匹配块,运功估计的思想如图2.1所示:
图2.1 运动估计
寻找匹配块需要遵守相应的匹配准则,目前常用的准则主要有三个:
1)绝对误差和(SAD)准则;2)均方误差(MSE)准则;3)归一化互相关函数(NCCF)准则。
2.1全搜索算法
将需要检测的图像进行划分区域,按照顺序,每一个小块都进行对应的匹配,依然是进行准则下的比较,找到最佳的匹配块,根据选定的匹配准则,找到具有最小匹配误差的块,这个块就是所需的最佳匹配块。全搜索算法能够获得非常好的效果,因为考虑到了所有的部分,对每一个小的像素块都进行了处理。很多情况下,这种算法都可以被当做一种理想的情况,作为一种参考[4]。
2.2快速搜索算法
2.2.1二维对数搜索算法
二维对数搜索法是以原点(0,0)为初始搜索中心[5],这五个点是十字形散布的,每一轮搜索都是,找寻匹配准则的最小值点。这个算法的具体实现过程如图2.2所示:
图2.2 二维对数搜索算法
具体算法如下:
步骤1:从初始搜索点(0,0)展开搜索,按照设定的搜索距离,通常情况下搜索距离是2,对按照十字形散布的五个搜索点进行对应的公式计算,并通过比较找到最小值点。
步骤2:如果所找寻的点在边界几个点中出现,就把这个点视为新的搜索中心点,搜索距离不变,继续对5个点进行搜索,这几个点依然是相同分布;如果找到的点是几个搜索点的最中间的点,则继续按照原本的搜索中心点,取1/2的原搜索步长,分布依然不变,代入对应的公式进行数值计算并进行对比。
步骤3:以搜索中心点为基准,进行1 8的搜索点计算,找到MBD点,若此时的搜索步长变为1,则该点与原始搜索点的运动方向就是所寻求的运动矢量;否则重复步骤2。
2.2.2三步搜索算法
三步搜索的实现流程与上面提及的算法十分的相似,搜索起始点一样,但是搜索的点数不同,总共搜索9个点。按一定步长(三步搜索,步长一般为4,2,1),环绕着中心,总共有8个点,对这些点进行相关的公式计算,找寻最小匹配点。这个算法的具体实现过程如图2.3所示:
图2.3 三步搜索算法
具体算法如下:
步骤1:以原始搜索点为起点,选取一定的搜索距离,搜索点距离一般为4,在中心点四周的8个点执行搜索,按照对应的搜索距离进行块匹配的公式计算,并进行比较找寻最小值点。
步骤2:搜索距离减半,将搜索中心进行移动,移到第一轮搜索的MBD点,继续围绕搜索中心附近的8个点,进行相关的搜寻,还是进行块匹配准则的计算,并进行比较找寻最小值点。
步骤3:围绕搜索中心附近的8个点,进行相关的搜寻,找出最佳匹配点,若此时的搜索距离变为1,则该点与原始搜索点的运动方向就是所寻求的运动矢量;否则重复步骤2。
2.2.3新三步法
新三步法是在三步法的基础上改进的[6]。在第一次搜寻时添加一个内部的搜索环,对环上的点都进行搜索,找到最小点,并根据具体的情况进行后续搜索。对于图像中运动并不激烈的情况下,新三步法会获得更加低的计算复杂度;但是如果图像的运动非常多,非常复杂,新三步法计算速度会远远落后于三步法。这个算法的具体实现过程如图2.4所示:
图2.4 新三步法
具体算法如下:
步骤1:搜索点共有17个,分内环和外环,内环9个点,外环8个点。假如进行搜索时发现需要找的点在内部的搜索环的中心点上,流程直接结束;假如进行搜索时发现要找的点在内部搜索环的四周的8个点上,则进行步骤2.否则进行步骤3。
步骤2:将上一轮搜索找到的最佳匹配点作为新的搜索中心点,按照3x3的大小搜寻,如果发现目标的匹配块在搜寻区域的中间,则过程完结;不然重复步骤2.
步骤3:执行三步搜索算法法的步骤2和步骤3,算法完成。
2.3DCT变换
DCT变换就是离散余弦变换,在各种压缩领域有很多的应用,特别是视频图像,可以转换图像所在的领域,空域转变为频域,可以有效的去除数据和图像的相关性。特别是DCT变换与反变换的存在,可以进行图像的编码和解码后,进行DCT反变换,最终得到原本的数字图像。
2.3.1规律和特点
图像具有一个特点,在不同的域当中呈现出不同的特性,特别是进行频域变换后,在空间域中,图像内容分布凌乱,但是在频率域中,统计特性显示,图像信号经过DCT处理后,产生的系数会呈现出特定的分布,而且基本上都分布在非常狭窄的区域[7]。这些系数会呈现出非常独特的分布,在低频部分非常的多,而在高频非常的少。这种分布特性可以让DCT变换应用在数据压缩方面,比如将所含信息很少的部分舍弃掉,将频谱中所含信息主要多的部分保留。由此实现压缩[8]。
2.3.2DCT系数的再量化处理
通过DCT处理后的频率数据还可以在进行量化处理,可以更进一步的压缩数据量。可以利用通过适当的算法设计对DCT系数的进行更深层次的量化。将DCT系数分别除以对应的量化步长,并进行四舍五入取整处理,即可以得到进过进一步量化处理的DCT系数。
左上角的系数经过量化处理后一般是非零的,而右下角的系数经过量化处理后会出现很多的零值,这部分数值可以用来进行缩减编码量,系数变为零值的部分便减少了数据量的传输,实现了压缩。经过以上处理后,最关键的信息得到了保留,去除了没有用的信息,实现了真正的图像压缩。
2.4霍夫曼编码
霍夫曼编码属于变长编码,通常被称为 Huffman编码。这种编码经常和其他类型的编码方法一起使用,特别是在国际标准中。根据相应的算法思想,依据图像中像素出现的概率进行相应的判定,对这些不同的像素信息进行不同的编码。基本的编码思想很简单,就是进行概率的比较,大对短,小对长。也就是如果一个像素经常出现,给这个像素安排比较短的码字。如果一个像素不经常出现,可以给它安排一些比较长的码字。
利用这样的方法实现扬长避短,避免了资源浪费。因而编码后的码流长度可以比原始数据更短[9]。利用这种编码方式可以将码字的平均长度明显的减少,提高编码的信息传输效率,以这种方式实现无损压缩数据,保证质量和效率。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: