论文部分内容阅读
视频解码是一类最典型的多媒体应用,其计算量大、耗能高。现代多媒体计算平台可利用视频解码复杂度固有的动态变化特征来自适应地调整所需资源,从而节省能耗,其前提是对视频解码复杂度进行准确估计。本文基于解码复杂度与压缩视频帧长之间的线性关系,提出了一套完整的视频解码复杂度建模及预测体系,目标是对各种应用场景下具有不同特征的压缩码流进行解码复杂度预测。首先根据线性模型系数在视频语义层参数作用下的统计特征,为帧内编码帧抽象出两条模型系数随视频语义层参数变化的定量规律:当视频分辨率保持不变时,模型系数不随视频内容和压缩码率的变化而改变;当视频分辨率发生变化时,模型系数一个保持不变,一个随分辨率的变化呈比例变化,且比例为视频分辨率的比值。基于上述规律提出了一种利用离线分析对帧内编码帧解码复杂度进行预测的算法。分别对H.264.MPEG-4压缩码流在基于Simplescalar的软件仿真平台和基于DSP的嵌入式硬件平台上进行测试,实验结果表明预测精度很高,预测误差呈现明显的正态分布且对所有测试序列解码复杂度预测误差均小于4%,在实验所选用的TI TMS20DM642嵌入式平台上算法在线开销仅为54个时钟周期/帧。之后给出了一种采用状态变量分析法对系统进行理论建模和在线估计的方法以实现对帧间编码帧解码复杂度预测。区别于传统的直接对输入和输出之间的依赖关系进行研究,本算法将解码系统定义为表征视频内容特征的状态所驱动的系统,状态的变迁作用于输入输出之间的依赖关系。通过建立状态方程描述系统状态的变迁轨迹以实现对解码复杂度动态估计。对解码器各模块解码复杂度进行建模分析和化简,最终得到作用于线性模型的状态变量——即模型系数的物理含义,再结合压缩视频流中相邻帧编码信息(预测或编码模式,运动矢量精度及运动矢量范围)和被编码残差之间质与量的关系,将系统状态方程定义为以解码复杂度估计误差为约束条件的分段线性函数,估计误差阈值通过离线分析获得。使用该状态方程对解码复杂度进行在线估计,分别对H.264、MPEG-4压缩码流在基于Simplescalar的软件仿真平台和基于DSP的嵌入式硬件平台上进行测试,实验结果表明预测精度非常高,对解码复杂度的平均估计误差在7%以内,而且状态方程更新过程简单,在线运行复杂度非常低,特别适用于嵌入式移动设备。最后,为解决控制参数需通过离线分析获得,不适用于云环境下多媒体应用这一问题,采用卡尔曼滤波器在线计算控制参数。从卡尔曼滤波对状态变量更新具有滞后性这一问题出发,指出系统输出方程的选择应能体现压缩视频流瞬时特征变化。通过理论分析阐述了视频帧长作为视频内容,码率控制和率失真优化共同作用下的产物对压缩码流特征天然具有的表征性,线性模型作为连接帧长和解码复杂度的简洁关系式,具有必然性和理论基础。基于上述结论在卡尔曼滤波框架下定义线性模型为系统输出方程;模型系数为系统状态变量且其物理含义如帧间编码帧解码复杂度预测算法中所述;根据相邻帧物理特征的连续性,定义相邻帧状态变量相等,真实差别通过系统噪声体现。采用卡尔曼滤波流程对上述解码系统进行建模并提出了一套完整的预测算法,在线运行时可根据输入压缩码流特征动态计算状态变量初值、预测误差方差以及过程噪声方差等卡尔曼滤波参数。通过软仿真和硬仿真两种方式分别对H.264和MPEG-4全序列压缩码流进行测试。实验结果表明算法能很好的对各种特征的压缩码流解码复杂度进行预测,结果非常精确,对帧内编码帧预测误差绝对值均值不超过1%,对帧间编码帧预测误差绝对值均值不超过5%。预测过程不需要引入任何离线分析,算法适用于编码参数未知的云环境下多媒体应用。