[10] [英]Iain E.G.Richardson 视频编解码器设计:开发图象与视频压缩系统 [11] 胡晓峰等多媒体技术教程 二、研究方案
1.研究目标、研究内容和拟解决的关键问题 研究目标:
在认真研读各方面的相关资料,著作和论文的基础上,参考MPEG4运动视频图象处理标准,着重研究视频运动检测方法,进行编程实验,最终完成运动检测方法的完整代码。
研究内容:
本课题主要以数字图象处理技术和数字信号理论为基础,利用MATLAB为实现软件,主要研究运动估计和运动补偿等运动检测方法。
a.运动估计:根据桢间的运动信息得到桢内像素点的运动矢量(Motion Vector,MV。视
频处理系统中,运动估计是非常重要的一个环节,它可以广泛应用于视频压缩,格式转换和滤波等。在去隔行中,运动估计好坏直接影响到变换后的效果。
b.运动补偿:基本原理是假设像素沿着一个轨迹运动时,它的亮度依然保持不变。运动补
偿的核心和前提是运动估计,运动估计用方向和大小两个参数描述检测到的视频流中的运动,并把检测到的运动和产生此运动的物体的具体位置一一对应,从而产生二维运动矢量场。
c.主要的运动检测方法如下图:
运动检测方法
思想可以不写 因为研究内容各小点已经写了 这个自己衡量吧 运动估计的思想: 1 基于像素的运动估计:是要每一个像素的MV ,运算量非常大,进而提出了像素递归算法。在像素递归算法中,MV 是递归得出的。当前像素的MV 是由在此之前已经编码的邻近像素的MV 值或当前像素邻场内的运动估计线性组合来表示的,依据该像素上的位移桢差(DFD 的梯度最小值对预测作进一步修正。
2 基于块的运动估计:是把图象分割成许多小块,只要每一个块足够小则每个块内的运动变化就可以很好的用一个简单模型表征,块内的像素看作具有相同的运动矢量。相位相关法和块匹配法都可以确定块位移。
3 多分辨率运动估计:各种运动估计的方法可以简化为求解一个误差最小化问题。但是最小化函数遗憾有许多局部最小,不容易达到全局最小,除非它接近所选择的初试解,而且最小化过程所涉及的计算量很大。用多分=分辨率的方法一依次精细的分辨率搜索最优化问题的解。
运动补偿的思想:
1 多假设运动补偿:不仅对预测信号进行补偿,而且同时对几个线性重叠的预测图象进行运动补偿,这样可以增加运动补偿的精确性,在编码上可以提该编码效率。如H.263和MPEG2中提到的PB 模式,就是一种简单的多假设运动补偿形式,它利用了 B 桢前后的两桢作为参考桢进行预测,能够有效的降低编码的比特率。重叠块运动补偿也是基于多假设运动补偿的思想。
2 重叠块运动补偿(OBMC :是一种基于插值窗函数的方法,它通过考虑相邻块的运动矢量间的
运动估计 运动补偿
基于像素 基于块的 多分辨率 重叠可变块 重叠块 多假设
相关性来进行预测插值,而插值的加权由窗口函数来决定,通过加权得到更加平滑化的运动场。3重叠可变快运动补偿:根据桢内运动内容自适应的把桢划分为较大快和较小的块,其中较大的块用于运动一致的区域,较小的块用于包含复杂运动的区域。通常实现方法是把一桢图象啊分割,并且用二叉树或四叉树结构来表示。
拟解决的关键问题:
a.编码端实现运动目标的分割 b.解码端实现运动目标的检测 c.运动目标跟踪
d.基于某种检测方法实现结果 e.静态背景的视频流中检测运动目标 f. 态背景的视频流中检测并跟踪运动目标
2.拟采取的研究方法、技术路线、实验方案及可行性分析 研究方法:
本课题使用MATLAB工具进行编程,本文主要研究运动估计和运动补偿等运动检测方法。通过对MPEG-4编码中的运动矢量进行阈值分割,形态滤波等,实现运动物体的检测。
技术路线:
本文利用MATLAB软件作为实现平台,并结合C和C++编程。具体思路如下: 1鉴于运动检测,涉及视频压缩和编码,对视频图象处理,即运动的图象处理,它将利用
MPEG-4运动图象处理标准,对视频分成单帧。
2本文提出的检测运动物体的方法就是在编码端,对提取的运动信息进行分析,滤除噪声
区域,以准确分割运动物体,将目标块聚类在最小的外接矩形框内。并且将此时划分出来的运动目标块进行标记,随编码流输出。
3在解码端,从码流中读取相应运动块标志信息,判断边缘块,在解码图像上叠加边框后
输出显示。对运动物体的跟踪则主要通过将每帧识别出的运动图像质心相连来实现,其中重点还
是单帧的运动目标检测。
4运动目标的跟踪,MPEG-4将图象桢分为I,P,B三种类型。利用运动编码,对整个物
体运动进行跟踪。 实验方案:
(1安装MATLAB软件 (2分析并设计编码端的算法 (3分析和设计解码端算法 (4设计好后,着手程序的编写
(5程序完成后使用模拟器进行调试、测试运行,并生成相应的软件包,运行,找BUG,调试。可行性分析:
本研究主要使用MATLAB编程语言。
基于学过C和C++程序设计,有较好编程基础,而MATLAB编程语言和C、C++较相似,因此,目前最需要做的仅是学会运用运动检测算法以及熟练掌握MATLAB编程语言,故而该研究是可行的。
3.预期研究成果及成果形式
认真学习并理解各种视频处理技术,如:MPEG2,MPEG4,H.263等,了解各种编码标准,如:熵编码,变换编码,预测编码等,及掌握运动检测方法进行运动检测。
最主要的是按照算法过程编程实现完整的运动检测的视频处理代码。包括:架构设计、详细设计、编码和调试、测试、安装部署及项目管理。
本文研究实现功能:能够处理任意段视频,实现对视频的压缩编码、运动目标追踪,运动目标检测。我觉得应该改成可以实现对视频流的运动估计和运动补偿。
三、论文进度计划(各研究环节的时间安排、实施进度、完成程度等 日期内容
2月22日 ----3月10日搜集视频运动检测方面的书籍和资料,并阅读相 关部分。规划出各个模块以及各个模块应该完成