毕业设计(论文)-多视点视频编码技术研究.doc_第1页
毕业设计(论文)-多视点视频编码技术研究.doc_第2页
毕业设计(论文)-多视点视频编码技术研究.doc_第3页
毕业设计(论文)-多视点视频编码技术研究.doc_第4页
毕业设计(论文)-多视点视频编码技术研究.doc_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州航空工业管理学院毕 业 论 文(设 计) 2015 届 通信工程 专业 1113074 班题 目 多视点视频编码技术研究 姓 名 学号 111307406 指导教师 职称 讲师 二一 五 年 五 月 二十五 日摘 要 近年来,随着信息技术的发展,原有的2D视频业务已经不能满足大家的需求,多视点视频因为能够为我们提供3D视觉感受,让视频更加有现场感而越来越受到通信视频领域的关注,成为此行业的研究热点之一。多视点视频我们可以这样来理解它的定义,所谓多视点就是多个不同的角度对同一个事物或者场景的拍摄效果,在实际生活中,我们常用一组组的摄像机来获得多视点视频。由于它可以让我们从不同打角度来看到这个场景,进而产生立体视频的效果。对于多视点视频,看上去是挺完美的,但是却存在着一个巨大的缺陷,随着摄像机的数目的增加它的数据量会呈现巨大的增加,为了解决这个缺陷,学术界提出了多视点视频编码(MVC)的概念。MVC主要目的就是高效压缩编码,随着时代的迅速发展,它已经成为此领域的研究重点。本文先是介绍视频编码的发展和国际标准,然后介绍多视点视频编码的关键技术,最后基于JMVC软件实现多视点视频编码并给出实验结果。 关 键 词 视频编码;多视点视频编码;联合多视点视频编码 Research on Multiview Video Coding TechnologyAuthor: Feiqiang Jia Tutor: Kexin ZhangAbstractIn recent years, with the development of information technology, the original 2D video business has been unable to meet the needs of everyone, multi view video because can provide a 3D visual sensation for us, to make the video more sense of the scene has received more and more attention in the field of communication and video, has become one of the research hotspot in the industry. Multi view video we can to understand its definition in this, the so-called multi view is different perspectives on the same object or scene shooting effect, in real life, we used a group of camera to obtain multi view video. Because it can let us from different angles to see this scene, and then produce the effect of stereoscopic video. For multi view video, appears to be very perfect, but there are a huge flaw, with camera number increases the amount of data will show a huge increase, in order to solve this problem, academic circles proposed concept of multiview video coding (MVC). The main purpose of MVC is to compress the coding efficiently, and it has become the focus of research in this field with the rapid development of time. First introduced international standard of video coding, and then introduces the key technology of multi view video coding, finally, on the basis of jmvc software realization of multi view video coding and the experimental results are presented. Key WordsVideo Coding;Multiview Video Coding;JointMultiviewVideoCoding目 录1 引言1 1.1 论文研究的目的与意义1 1.2 论文研究背景2 1.2.1 视频编码的发展历程2 1.2.2 图像视频编码的国家标准32 MVC介绍5 2.1 多视点视频的概念5 2.2 多视点视频编码的历史52.3 多视点视频编码的编解码框架62.4 多视点视频编码标准H.264/MPEG-4 AVC7 2.4.1 H.264简介7 2.4.2 帧间预测73 JMVC的源代码分析以及配置文件说明11 3.1 整体思路11 3.2 具体流程11 3.2.1 软件下载11 3.2.2 编码12 3.2.3 整流14 3.2.4 解码154实验结果165总 结20致 谢21参考文献22多视点视频编码技术研究111307406 贾飞强 指导教师:张克新 讲师第一章 引言1.1论文研究的目的与意义 多视点视频我们可以这样来理解它的定义,所谓多视点就是多个不同的角度对同一个事物或者场景的拍摄效果,在实际生活中,我们常用一组组的摄像机来获得多视点视频。由于它可以让我们从不同的角度来看到这个场景,进而产生立体视频的效果。就目前来说,多视点视频已经得到了广泛的应用,例如视频会议、远程医疗、3d电影等。对于多视点视频,看上去是挺完美的,但是却存在着一个巨大的缺陷,摄像机越多它的数据量就会越大,所以就出现了多视点视频编码,它可以对多视点视频进行高效的压缩。随着时代的发展,人们越来越需要3d视频的效果,所以,MVC逐渐成为视频编码领域的研究热点之一。 以前的视频编码的算法都是用编码信息在时间、空间上的相关性来简化计算的。而MVC的多个视点的视频都是对同一个场景的,他们的视频内容差不多,而且编码信息有很强的相关性,所以,MVC完全可以利用他们的相关性来简化编码过程。我们利用编码参数的显示界面来分析编码器的性能,这样可以很直接的反映出每个视点的码率大小、编码时间长短以及每一帧宏块的分布、运动矢量、视差矢量的分布情况。这样我们就可以很直观的找到编码器的不足之处。例如编码时间的曲线上可以看出i帧的编码时间比b帧和p帧的时间要短很多,而b、p帧与i帧最大的不同之处就是有比较多的运动估计,所以,减少编码时间的关键之处就是提高运动估计的效率。1.2论文研究背景 1.2.1视频编码的发展历程 这里他们是以经典的集合论为基石,描述信源用的是统计概率模型,但是却没有考虑信息接受者的特性以及事情本身原有的含义、重要性和他们会不会引起不同的结果。所以说,压缩编码是以香农信息论为起点,然后不断来完善的一个过程。 随着信息领域的发展,1986年,国际标准化组织成立了联合图片专家组(JPEG),1998年,又成立了运动图像压缩编码组织(MPEG)前者的任务主要是对静态图像的压缩编码;后者的主要任务是对运动图像的压缩编码编。 大家都知道,我们人类利用视觉可以获得总信息量的70%,而且获得的视频信息有很多优点,例如更直观、更可信等。因此,在视频通信中视频技术很关键。 视频技术有着非常广泛的应用,如视频会议、视频聊天、视频课程、网上购物等等,这些应用都要用到视频压缩。由于传送数量较大,如果只是增加内存的容量、增加传输的速率显然是不行的,所以就要用到压缩数据来解决这些问题,数据的压缩可以把大量的信息数据量变得更小,这样在传输中不仅节省了空间,而且提高了传输效率,与此同时更有利于计算机对这些视频的处理,这样便能保证视频和音频的质量变得更好。所以,视频压缩是一个非常重要的技术。由于视频数据通常都有很强的相关性,也就意味着他们有大量的冗余信息,我们通过视频的压缩可以去除这些冗余的信息,留下我们需要的信息,因此,视频数据压缩技术是可以实现的。 目前来说,图像编码可以分为两代:第一代是基于数据统计,第二代是基于内容,他们的针对方向不同,前者是去除数据冗余,后者是去除内容冗余。 随着图像编码发展,渐渐转向了基于内容的压缩编码方法,新一代的方法成为了研究热点,目前已经在此方面研究出了不少成果,相信以后会更进一步。 1.2.2 视频编码的国际标准 现有的视频编码标准有:H.261标准、H.263标准、MPEG-1标准、MPEG-2标准、MPEG-4标准等,下面分别简要介绍它们。 对于H.261标准,它是为ISDN所设计的,延时在150ms以内。H.261标准中的关键技术在于:运动估计、视差补偿、熵编码等。这里没有b帧,只有i、p帧,运动估计的精度不高。支持QCIF和CIF两种图像扫描格式。对于H.263标准,它是在H.261的基础上进行制定的,他们两者的原理和其他相关的技术大致相同,没什么太大的差别。另外,H.263也融合了一些其他的国际标准中的优点,如p、b帧预测、半像素精度的运动估计等,这使得他的性能比H.261要好。对于MPEG-1标准,它和H.261类似,原理框图大致相同。它的巧妙之处在于同时压缩图像数据的帧间和帧内。帧内压缩采用的是DCT变换,来减少空间冗余信息,帧间压缩则是采用插补法和预测法,与此同时DCT变换可以将预测误差给处理掉,达到进一步压缩的效果。 对于MPEG-2标准,它是在MPEG-1的基础上的进一步优化和扩展,算法和MPEG-1是相同的,是近年来电视的标准。 对于MPEG-4标准,它是针对于不同的应用领域,和MPEG-2有着很大的不同之处。它在刚开始制定的时候主要是针对可视电话、视频会议超低比热率压缩的需求。在MPEG-4制作的过程中,MPEG组织深刻的体会到了广大人民对于通信信息,尤其是对视频信息的喜爱直接转向了对于内容的访问检索和操作。正如前面所说的那样,MPEG-4和JPEG、MPEG-1/2有着很大的区别,它定义的是一种格式,并不是算法,它希望建立一个更加自由的通信环境。所以,我们可以这样来定义MPEG-4:支持大部分的多媒体应用,根据不同应用的特点来临时配置相对应的解码器。同理,对应编码方面也有与之对应的好处,那就是可以随时的把需要的新算法模块。它的应用范围非常广泛,如家庭购物、视频通话、远地监测、多媒体通信等。第二章 多视点视频编码介绍2.1 多视点视频概念 多视点视频指的是一组摄像机从不同的角度上来对同一个地方进行拍摄得到一组视频信号,它能呈现出3D的效果,再现场景,立体感会很强。多视点视频有着很广泛的应用,如三维电视、远程医学诊疗、视频监视系统、远程会议等。 多视点视频有很多优点,但是,和单视点视频比起来它有着一个很大的缺陷,那就是这组相机的数量越多,也就意味着数据量越大,巨大的数据量也就限制了它的应用,为了解决这个问题,JVT提出了多视点视频编码的概念。MVC的主要任务就是解决大数据的问题,也就是多视点视频压缩编码的效率问题,它已经成为视频通信领域中的热点,也是国际相关组织所关心的重要技术之一。2.2 多视点视频编码的历史 对多视点图像编码研究最早的是卢卡奇,在这项工作中,视差补偿视点间预测的方法的概念被介绍,在以后的工作中通过汀斯坦,预测编码方法和三维块变换立体图像压缩编码相比较。然后帕金斯提出了一种变换域技术视差补偿预测,以及混合分辨率编码方案。 MVC在国际标准第一支撑是在1996修正案的H.262/MPEG-2视频编码标准,它支持两种观点的编码。在该设计中,左视图被称为基层观,其编码和解码器兼容普通单视图。右视图进行编码作为一个使用左边的图片增强视图观为视角间预测参考图片。 考虑到最近的视频压缩技术和预期的需求状态的艺术多视点视频编码,在2005年10月MPEG号召建议CFP研究高效MVC技术,当时没有明确的要求,所有基于H.264/MPEG-4 AVC提案的答复,包括了某种形式的视点间预测。在CFP为期6个月的努力下,终于拿出了一个解决问题的方案,该方案采用分层预测,在时间和角度尺寸达到高的压缩性能。 在MVC的发展过程中,很多宏块级的编码工具被探究,如光照补偿、自适应滤波、运动跳过模式、视图合成预测等。结果表明,额外的编码增益,可以通过使用这些块级的编码工具来实现 在一个提供照明的编码增益分析中补偿运动跳过模式被报道,平均比特率降低了10%(相对一个MVC编码设计没有这些工具),一个序列的最大值约18%的序列特异性降低。而收益是显著的,这些工具不被采用在MVC的标准,因为在解码过程中,它们需要的语法影响低水平的编码设计的变化。它相信这些实施的担忧有压倒编码增益的好处的时候。这里还有一些担心的是,高质量视频采集和预处理实践可以减少被提出的技术的好处。然而,随着3D市场的成熟,块级编码工具的好处可以重新在未来3D的规范视频格式被探索。2.3 多视点视频编码的编解码框架多视点视频的编解码框架如图1所示,和普通视频编码的基本过程一样,包括编码、传输、解码。不同之处在于编码器的输入,这里是由n个视点视频组同时进入到编码器来进行编码。我们很容易看出,n的值越大,这组视频数据越来越大,所以,多视点视频编码应该把压缩效率的问题放在首位,尽量减少冗余信息,来解决这个问题。图1 多视点视频的编解码框架2.4 多视点视频编码标准H.264/MPEG-4 AVC 2.4.1 H.264简介H.264,同时也是MPEG-4第十部分,是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准。这个标准通常被称之为H.264/AVC(或者AVC/H.264或者H.264/MPEG-4 AVC或MPEG-4/H.264 AVC)而明确的说明它两方面的开发者。H264标准各主要部分有Access Unit delimiter(访问单元分割符),SEI(附加增强信息),primary coded picture(基本图像编码),Redundant Coded Picture(冗余图像编码)。还有Instantaneous Decoding Refresh(IDR,即时解码刷新)、Hypothetical Reference Decoder(HRD,假想参考解码)、Hypothetical Stream Scheduler(HSS,假想码流调度器)。 2.4.2 帧间预测 视图间预测,是所有用于MVC中描述设计的基本概念,是利用空间和时间冗余进行压缩。由于多视角场景的摄像机,通常是从附近的视点拍摄同一场景,存在着大量的视角间的冗余。照片不仅从预测时间参照,而且从视角间参考。该预测是自适应的,所以其中的时间和视角间参考最佳预测可以以块为基础的速率-失真成本方面进行选择。视图间预测是MVC设计的一个主要特点,它利用了灵活的参考图像管理功能,已经被设计到H.264/MPEG-4 AVC的启用,通过使解码图象从由图像间预测处理中使用的参考图像列表提供的其他意见。具体地,参考图片列表被保持的每个图像在给定的视图解码。每个这样的列表被初始化为通常用于单视点视频,这将包括可用于预测当前画面中的时间基准图像。此外,视角间参考图片被包括在列表中,并由此也可用于当前图象的预测。根据MVC的说明书中,视角间参考图片必须被包含在同一存取单元中作为当前的画面,其中,一个存取单元中包含与一个特定的捕获或显示即时的所有NAL单元。使用从另一视图中的图片在不同时间MVC设计不允许在一个视图中一个图像的预测在给定的时间。这将涉及跨不同接入单位面试的预测,这将带来额外的复杂性,有限的编码效益。保持的参考画面与用于单视点视频一致的管理,所有这些可通过H.264/MPEG-4 AVC流以信号的存储器管理控制操作命令适用于其中相关联的语法元素出现一个特定视图。同样情况也适用于滑动窗口和自适应存储器控制处理,可以用来作为不用于参考标记照片。H.264/MPEG-4 AVC的参考图像标记过程对于每个视图独立地施加,从而使得编码器可以使用可用的译码器存储器容量以灵活的方式。此外,正如它有可能为编码器重新排列的一个参考图像列表,其包括时间参考图像的参考图像的位置,它也可以将视角间参考图片时,在列表中的任何期望的位置。在MVC规范为此提供了一组扩展的重新排序命令。MVC引入视图之间的依赖关系,随机接入,还必须将视图尺寸考虑在内。具体地,除了意见被访问(称为目标视图),在其上它们依赖于目的的视角间参考任何意见也需要进行访问和译码,通常需要一些额外的解码时间或延迟。对于其中的随机存取或视图切换是很重要的,预测的结构可以被设计成最小化接入延迟,和MVC设计提供了一种方式的编码器来描述预测结构用于此目的。为了实现获得在给定的视图的特定图象,解码器应首先确定一个合适的接入点。在H.264/MPEG-4 AVC中,每个IDR图像提供一个干净的随机存取点,由于这些图片可以独立地解码,并且所有的编码画面跟随它们在比特流顺序可以也被解码而不时间预测从之前的任何图像解码该IDR图片。在MVC中的上下文中,IDR图片在给定的视图禁止使用任何的在其上的特定视图取决于在那个特定瞬间的观点时间预测的; 然而,视图间预测可以用于编码IDR图片的非基础意见。这能够使用视图间预测来编码IDR图片减小到编码非基础视图,同时还使在比特流中的该时间位置的随机接入所需要的比特率。此外,MVC还引入一个额外的画面类型,被称为锚定图片的图。锚画面是类似于IDR图片的,因为它们不使用时间预测对一个给定视图取决于任何视图的编码,尽管它们确实允许从同一访问单元内的其它次视图间预测。此外,禁止对于如下两个比特流顺序和显示顺序使用该先于比特流顺序的锚定图片作为图像间预测的参照任何图片中的锚定图片中的任何图像,并且对于前面的那个锚图片在解码任何画面为了跟随它显示顺序。这提供了用于访问给定的视图一个干净的随机接入点。锚图片和IDR图像之间的差是类似于“开放GOP”之间的差值“封闭式GOP”,以前在H.262/MPEG-2环境中应用的概念,与封闭GOP相关的IDR图片和与开放GOP相关的锚画面有关。与锚定图片,它允许使用在比特流顺序的锚定图片之前作为参照画面为在比特流顺序的锚定图片后按照画面的图像间预测的图片,但只有当使用这种类型的引用的图像先于锚画面显示顺序。在MVC中,既IDR和锚画面被有效地编码,并且它们能够在时间和视图尺寸的随机存取。第三章 基于JMVC实现多视点视频编码 JMVC(JointMultiviewVideoCoding)是多视点视频编解码MVC的参考软件,由联合视频小组JVT(JointVideoTeam)负责实现和改进更新。 3.1 整体思路 首先下载JMVC,并生成相应的库和应用程序,然后使用编码器H264AVCEncoderLibTestStatic对多视点视频原始序列(YUV文件)中的每个序列按照参考关系,分别依次进行编码压缩,得到“.264”文件;将264文件利用码流整合工具MVCBitStreamAssembler进行合并,合并成一个“.264”文件;最后使用解码器H264AVCDecoderLibTestStatic对整合后的264文件进行解码,解码后得到YUV原始视频。3.2 具体流程(以exit视频序列为例) 3.2.1 软件下载JMVC下载解压之后,文件夹截图如下图2 JMVC软件内容 在下载的文件夹中JMVC/H264Extension/build/windows下找H264AVCVideoEncDec.sln文件,使用MicrosoftVisualStudio.NET软件打开,可以看到生成的所有工程。在lib目录下有4个库文件,在bin下有6工具的文件,生成如下图图3 JMVC软件生成图 3.2.2 编码JMVC的编码器可以对指定的单个视点进行编码,一般按照配置文件中所写的视点顺序来对多个视点依次进行编码。(1)配置文件编码器的主要输入为配置文件,在配置文件中对相关信息进行设置,对应的配置文件主要参数如图4所示。配置文件说明:InputFile: 输入视频的文件名。OutputFile:输出视频的文件名 SourceWidth和SourceHeight: 输入视频的大小。FrameRate:输入视频的帧率。 FrameToBeEncoded: 进行编码的帧数。 GOPSize:GOP的大小。 NumViewsMinusOne:视频序列中的视点数ViewOrder:编码顺序图4 编码过程的配置文件(2) 进行编码配置文件完成之后,我们需要在dos下输入运行指令:H264AVCEncoderLibTestStaticd.exe -vf encoderMVC.cfg 0进行第一个视点的编码,编码完成后会在bin文件夹中输出一个.264和.yuv的文件,这样就完成了第一个视点的编码。我们修改运行指令最后的0,依次完成其他的视点的编码。输出截图如下图5 编码输出3.2.3 整流 在编码器对所有视点的视频进行编码后,利用码流整合工具将编码的结果整合到一个文件中.(1)配置文件 整流过程中也是需要配置文件的,它的配置文件很简单,这里我们最好指定具体路径,这样可以避免一些不必要的错误,配置文件截图如下:图6 整流过程的配置文件配置文件说明:输入是编码之后的8个.264文件,按照编码时候的顺序来写,我们自己定义整流器整合后输出文件为exit.264。(2) 进行整流配置文件完成之后,我们需要在dos下输入运行指令:MVCBitStreamAssemblerStaticd -vf assembler.cfg进行整流,整流完成后,在配置文件中我们定义的路径下会生成一个.264文件,输出截图如下图7 整流输出3.2.4 解码 使用解码器对整合后的264文件进行解码,解码后得到YUV原始视频。解码过程并不需要配置文件,我们直接在dos下输入运行指令:H264AVCDecoderLibTestStaticd.exe exit.264 new.yuv 8其中:exit.264:解码器的输入,也就是整流的输出文件名。new.yuv:解码器的输出,这里我定义它的文件名为new。8:该序列中的视点数解码器的输出为8个yuv视频,文件名为“new_视点号.yuv”解码之后输出截图如下:图8 解码输出第4章 实验结果 实验结果可以分为两个方面来说明,一方面是通过编码前后视频大小比较来体现MVC的压缩效率问题;另一方面是通过编解码前后视频的内容比较来体现MVC是否实现。为了更有说服力,这里我们选择三组视频序列进行编解码,通过两个方面的比较,然后的出结论。这三组视频序列分别是exit、race1、ballroom。需要说明的是exit视频组为8个视点,race1有4个视点、ballroom为2个视点。(1) 编码前后视频大小截图exit原视频序列图9 原视频序列exit编码后视频序列图10 编码后视频序列race1原视频序列图11 原视频序列race1编码后视频序列图12 编码后视频序列ballroom原视频序列图13 原视频序列ballroom编码后视频序列图14 编码后视频序列结论: 通过上面三组视频序列的视频大小比较,可以计算出exit视频序列编码前大小是编码后的约450倍,race1视频序列编码前大小是编码后的约300倍,ballroom视频序列编码前大小是编码后的约230倍,总体来说,MVC技术压缩效率很好。(2) 编解码前后视频内容截图exit视频序列编码前图15 编码前exit视频序列解码后图16 解码后race1视频序列编码前图17 编码前race1视频序列解码后图18 解码后ballroom视频序列编码前图19 编码前ballroom视频序列解码后图20 解码后结论:通过上面三组视频序列的视频内容对比,可以看出编解码前后的视频内容是相同的,所以我们实现了多视点视频的编解码。第五章 总 结从论文题目下来到软件的下载,到软件的运行成功,到配置文件的修改,到编解码完成,到论文的完成,这里的每一步对我来说都是一个挑战,这也是我大学四年期间独立完成的最有价值的课题。开始的迷茫,中途的疑惑,完成后的喜悦,让我在这大学的最后一个月里收获颇多,也算是为大学画上了圆满的句号。在这段完成毕业设计的时间里,我学到了很多以前完全没有听说过的知识,以前对博客完全不了解,对MVC完全没听说过,更别说视频编码中的预测结构、视差估计等相关技术了,这多时间里,我无时无刻不是在查资料,做笔记,向同学请

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论