为便于描述宏块的活动特征,采用下式表示宏块的活动度[8]:
其中,m和n 为宏块在帧中的位置,w和h 为帧的宽度和高度,Lt(u,v)和Lt-1(u,v)分别代表当前帧与前一帧对应的像素点(u,v)的亮度值,mvx和mvy分别为当前帧与前一帧对应位置的水平与垂直运动矢量。
从式(8.1)可看出,处于活动区域内的宏块的局部运动性要大于静止区域内宏块的局部运动性。相应地,在进行比特分配时应考虑到这一点。此外,当视频序列中出现场景切换时,由于切换处前后两个连续帧的对应宏块之间时域冗余消失,相应的运动矢量增大,此时会增加编码的比特数,并降低压缩性能。而在当前视频编码器的码率控制方法中却并没有充分考虑到这一点。对此,定义第i帧的场景切换因子如下:
其中,λ为一常数,FCi为帧的复杂度系数,由下式计算:
式中,i为帧的编号。MADratio(j,i)为第j个GOP中第i帧的预测MAD与第j个GOP中i帧之前的所有帧的MAD的比值。ν1 与ν2 为权重因子,分别取3.19 和0.47[8]。从式(8.2)、(8.3)可知,场景切换因子SCF取决于两个连续的帧间的MAD值的大小。换言之,两个连续帧间的时域冗余越小,则SCF越大,反之则越小。(www.xing528.com)
在式(8.1)、(8.3)的基础上,定义第i帧的活动度FAi如下:
其中,γ1、γ2 及γ3 为权重因子,其值由实验中得到,分别取1.65、0.82 及0.26。LMAi表示第i帧内所有宏块局部运动度的平均值,表示为
其中,M和N分别为第i帧水平方向与垂直方向的宏块个数。由式(7.4)可见,帧的活动度综合考虑了场景切换与宏块的局部运动性,客观上更符合人眼视觉系统的特点,有利于对运动矢量较大、纹理较为复杂的视频帧进行编码。
基于以上讨论,在本章的下一小节的码率控制方法中引入帧的活动度,以优化比特分配、更有效地消除编码视频帧中的冗余信息,其有效性也在实验中得到了验证。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。