[0025] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
[0026] 如图1所示,一种基于低复杂度分层插值的HEVC分像素运动估计方法,该方法包括:
[0027] 步骤一:在整像素精度上对感兴趣区域初始化;
[0028] 步骤二:线性变换将像素原始值转换成对应整型的中间值;
[0029] 步骤三:1/2分像素采用8抽头滤波器进行插值计算;
[0030] 步骤四:线性逆变换获得原始值1/2分像素插值滤波结果;
[0031] 步骤五:运动矢量精炼至1/2分像素精度;
[0032] 步骤六:采用6抽头滤波器再次进行插值计算;
[0033] 步骤七:根据不同抽头滤波获得1/2分像素中间值,利用均值求解1/4分像素中间值;
[0034] 步骤八:对1/4分像素中间值进行逆变换获得最终1/4分像素插值结果;运动矢量精炼至1/4分像素精度。
[0035] 图2示出了不同精度像素位置关系。如图2所示,整像素点存放在存储模块(0,0)中,与整像素点同水平方向的1/2分像素点存放在存储模块(0,2)中,与整像素点同一垂直方向的1/2分像素点存放在存储模块(2,0)中,而剩下的1/2分像素点存放在存储模块(2,2)中。
[0036] 图3示出了1/2分像素插值模块示意图。如图3所示,该方法包括:线性变换,可以通过移位、加法等操作实现快速转换成对应整型数据用于中间计算过程;
[0037] 直接复制整像素点存入缓存0中用于后续计算。
[0038] 对整像素点采用HEVC中的8抽头FIR滤波器在水平方向滤波计算并将结果存入缓存2中。
[0039] 将缓存0中的值进行相应的线性逆变换后直接复制到存储模块(0,0)中。
[0040] 对缓存0中的值采用HEVC8抽头FIR滤波器进行垂直方向滤波并将结果进行相应的线性逆变换存入存储模块(2,0)中。
[0041] 将缓存2中的值进行相应的线性逆变换后直接复制到存储模块(0,2)中。
[0042] 同样地,对缓存2中的值采用HEVC8抽头FIR滤波器进行垂直方向滤波并将结果进行相应的线性逆变换存入存储模块(2,2)中。
[0043] 根据整像素运动估计获得运动矢量和1/2分像素插值结果,对运动矢量进行精炼获得1/2分像素精度的运动矢量。
[0044] 图4示出了1/4分像素插值模块示意图。如图4所示,该方法包括:
[0045] 对缓存0的值在垂直方向采用H.264的6抽头FIR滤波器进行滤波并将结果存入缓存1中。
[0046] 同样地,对缓存2的值在垂直方向采用H.264的6抽头FIR滤波器进行滤波并将结果存入缓存3中。
[0047] 根据缓存0,1,2,3的计算结果,采用邻近距离均值求解的方式分别计算1/4分像素的值,并将最终计算结果进行相应的线性逆变换分别存入存储模块(3,0)、(1,1)、(0,1)、(1,0)、(3,1)、(0,3)、(1,3)、(2,1)、(3,2)、(3,3)、(2,3)、(1,2)。
[0048] 根据1/2分像素运动估计获得运动矢量和1/4分像素插值结果,对运动矢量进行精炼获得1/4分像素精度的运动矢量。
[0049] 本发明实施例的方法主要应用于HEVC编码标准中,用于改进其分像素运动估计的复杂度,同时,保证编码压缩性能。
[0050] 本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0051] 结合本文中所公开的实施例描述的方法或步骤可以用硬件、处理器执行的软件程序,或者二者的结合来实施。软件程序可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0052] 尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内。