一种视频编码的二维方向运动估计硬件电路及其方法技术

技术编号:19598694 阅读:89 留言:0更新日期:2018-11-28 06:47
本发明专利技术涉及视频压缩技术领域,提出了一种视频编码的二维方向快速运动估计硬件电路及其方法。本发明专利技术所提出的关键电路部件包括四组PE_G运算估计单元电路、参考帧缓存阵列、最小代价裁决电路和控制电路四大模块,其核心是应用特殊的PE_G运算电路和参考帧缓存阵列相配合,实现搜索区域二维方向的左右和上下滑动运动估算,适用于多种不同类型搜索点的运动估计,包括但不限于四倍、两倍下采样搜索点以及原始整像素的运动估计过程。本发明专利技术特别适用于逐层渐进和全像素搜索的方式,支持4x4到16x16各种分块的运动估计,满足实时编码硬件电路的运动估算。

【技术实现步骤摘要】
一种视频编码的二维方向运动估计硬件电路及其方法
本专利技术属于视频压缩
,尤其涉及一种视频编码的二维方向快速运动估计硬件电路及其方法。
技术介绍
在数字多媒体领域,消费者对于视频“高分辨率、高帧率、高图像质量“的追求越来越大,但原始视频信号因其巨大的数据量,对视频系统有限的网络带宽和系统存储容量提出了巨大的挑战,因此,如何实时的传送或者解析视频信息,视频压缩技术起到不可或缺的作用。高质量、高效的视频压缩算法和硬件结构,越来越受业界的青睐。视频压缩技术的目的是在保持一定视觉质量的情况下,有效的去除视频数据的冗余信息。其中,去除空间和时间的冗余是视频压缩技术的主要手段。在去除时间冗余信息这方面,主要应用了运动估计(MotionEstimation,ME)来消除帧与帧之间的时域相关性,计算当前帧像素块在参考帧中的绝对差值(theSumofAbsoluteDifference,SAD),最终在参考帧搜索区域找到最佳匹配的分块。这样,在编码端只需要传输当前块与参考帧最佳匹配块的差值(再经过一系列的变换、量化、熵编码等步骤得到少量的比特数)和运动矢量(MotionVector,MV),达到压缩的目的。运动估计作为视频编码的核心模块,也是视频压缩中最复杂的部件,其搜索算法和实现过程对编码压缩质量起到决定性的作用。目前,运动估计的大部分算法在软件层面有较好的性能,如三步、菱形等固定模式的快速搜索算法,以及逐次消元和局部失真等基于宏快时域和空域的搜索算法等。但这些算法在硬件实时系统中,由于结构复杂和存储需求,大多数都难以满足芯片面积、功耗、性能的需求。硬件实现中,全像素搜索和逐层渐进搜索(也称为分级搜索、金字塔搜索等)是一种适合硬件电路实现的方式。全像素搜索运算量巨大,在外部存储器带宽和内部存储器容量一定的条件下,如何选择合适的搜索区域大小,保证实时编码的处理速度和减低面积、功耗成本,这是一个较为困扰的难题。而逐层渐进搜索的方法,是对参考帧搜索区域像素进行下采样,下采样采用不同的尺寸进行分层,一般是对块区域进行加权平均得到下采样点,然后再在这些分层上进行搜索,最终再在分层搜索点区域进行局部整像素全搜索,大大的增加了搜索的范围,但分层搜索如何合理的安排搜索的方式,保证搜索准确度和节省搜索时间,这是一个难点。
技术实现思路
本专利技术提出了一种二维方向的快速运动估计硬件电路及其方法,其目的就是为了找到一种适用于渐进式搜索和全像素搜索的硬件电路和搜索方式,在满足实时编码视频质量的同时,有效的降低视频编码运动估计的运算复杂度。本专利技术解决其技术问题所采用的技术方案是:一种二维方向的快速运动估计硬件电路及其方法,所述的电路包括运动估计控制模块、四组PE_G运动估计电路、参考帧缓存阵列、当前帧部分块缓存阵列以及最小代价裁决模块。所述的运动估计方法步骤如下。步骤1:对原始参考帧水平方向[-128,127]和垂直方向[-32,31]像素搜索区域进行4倍下采样,下采样的方法是对每个4x4块像素点的加权平均得到4倍下采样搜索点,此步骤在输入参考帧参考数据时同时进行,减少迭代时间。步骤2:对步骤1中的4倍下采样搜索区域64x16大小划分三种不同类别的搜索点:2.1离中心点位置邻近的区域设置水平和垂直步骤为1;2.2离中心点较近的区域设置水平和垂直步长为2;2.3离中心点较远的左右边缘区域设置水平和垂直步长为4;按照2.1-2.3步骤在4倍下采样区域进行运动搜索,流水的输入列数据到参考帧缓存阵列,配合控制模块的PE_G控制电路和参考帧缓存控制电路进行水平和垂直方向二维的快速运动估算滑动,得到三个区域中4倍下采样搜索的最佳搜索点的位置坐标和运动矢量。步骤3:对步骤2得到的最佳搜索点对应在原始参考帧搜索区域进行2倍下采样操作,搜索点以步骤2最佳搜索点中心拓展5x5大小,然后如步骤2对该区域进行5x5区域的二维快速滑动运动估算,得到最佳搜索点和运动矢量。步骤4:对步骤3得到的最佳搜索点对应到原始整像素的坐标位置,以该坐标位置为中心拓展5x5整像素搜索区域,在该区域进行整像素运动估算,得到最佳搜索点和运动矢量。对应如上所述的步骤1-4,本专利技术公开一种二维方向的快速运动估计硬件电路与之相配合,这种核心运算电路为4组PE_G电路,每个PE_G由4x4的像素PE阵列和一个加法树电路组成,PE_G电路的参考帧列像素输入到每个PE带垂直方向的5选1输入,每个PE参考像素相比垂直方向的上一个PE有一个像素的偏差,通过PE_G控制电路传输dn_cmd的值,进行垂直方向运动估计的滑动,而水平方向则通过控制模块对缓存阵列的控制输入。本专利技术的有益效果是:(1)它用于多种不同模式的运动估计过程,模式包括不同倍率的下采样像素点的运动估计,以及局部全像素区域的整像素运动估计过程。(2)它适用于多种不同尺度的矩形像素块运动估计,包括4x4、4x8、8x4、8x8、16x8、8x16、16x16等分块。(3)配合控制模块对参考帧缓存阵列和四组估算单元PE_G的控制,能够实现搜索点在搜索区域的二维方向(左右和上下流动)快速运算。附图说明图1是本专利技术一种二维方向的快速运动估计硬件电路结构框图。图2是本专利技术核心硬件电路模块PE_G的内部硬件示意图。图3是常用四倍下采样(4:1)搜索点类别示意图。图4是四倍下采样搜索中水平和垂直方向步进为1的运动估算过程。图5是四倍下采样搜索中水平和垂直方向步进为2的运动估算过程。图6是四倍下采样搜索中水平和垂直方向步进为4的运动估算过程。图7是四倍下采样搜索中4组PE_G运动估算过程示意。图8和图9是二倍下采样搜索(2:1),4组PE_G在5x5区域的运动估算示意图。图10是16x16第一个4x16区域整像素搜索,4组PE_G在5x5区域进行运动估算过程。图11是16x16第二个4x16区域整像素搜索,4组PE_G在5x5区域进行运动估算过程。具体实施方式下面结合附图和实施例对本专利技术进一步说明。图1是本专利技术核心硬件电路的结构框图,它主要由五部分组成:(1)控制模块(101),它包含PE_G运算控制单元(102)和对参考帧缓存阵列的控制单元(103)。PE_G运算控制单元根据当前搜索点的类别(4倍下采样、2倍下采样、原始采样搜索点等),向PE_G流水的下发控制命令,包括PE_G的输出使能控制信号和PE_G运算单元的垂直步长信号。参考帧缓存阵列的控制信号主要是根据当前搜索点的类别,选择对应4x8大小的寄存器阵列流水的输入到对应的PE_G单元中去;(2)运算估计电路单元PE_G(105和106)。通过控制信号,选择PE_G的运算组合,分别是四组PE_G垂直的进行运算估计,或者四个PE_G形成一个正方形的模式进行运算;(3)参考帧缓存阵列(107和108),它主要由两组4x12的像素列寄存器组成,4列像素通过移位流水地输入。处于不同的搜索点类别,其输入缓存像素点有不同的选择。当搜索点为4倍下采样或者原始整像素点时,其输入如图7所示;当输入为2倍下采样点时,其输入如图8所示;(4)当前宏快输入块缓存阵列(109)。该模块由4个4x4的寄存器块组成,其输入块数据既可以是原始整像素点,也可以是下采样的输入点;(5)最小代价裁决模块。该模块根据不同的搜索点类别,本文档来自技高网
...

【技术保护点】
1.一种视频编码的二维方向快速运动估计硬件电路及其方法,其特征包括:一个为上述运动估计硬件电路,能够实现在多种类型的搜索点区域进行二维方向(左右和上下滑动)的快速运动估计;一个为上述运动估计硬件电路适用于逐层渐进式和全像素搜索的运动估计过程;一个为上述运动估计硬件电路,具备通用性,适用于多种不同的分块运动估计,支持但不限于4x4、4x8、8x4、8x8、16x8、8x16、16x16等分块的运动估计。

【技术特征摘要】
1.一种视频编码的二维方向快速运动估计硬件电路及其方法,其特征包括:一个为上述运动估计硬件电路,能够实现在多种类型的搜索点区域进行二维方向(左右和上下滑动)的快速运动估计;一个为上述运动估计硬件电路适用于逐层渐进式和全像素搜索的运动估计过程;一个为上述运动估计硬件电路,具备通用性,适用于多种不同的分块运动估计,支持但不限于4x4、4x8、8x4、8x8、16x8、8x16、16x16等分块的运动估计。2.根据权利要求1所述的二维方向的快速运动估计硬件电路,其特征电路包括控制器模块、四组PE_G运动估算单元、参考帧缓存阵列模块和最小代价裁决模块,其核心电路为每个PE_G运动估算单元。3.根据权利要求2所述的PE_G核心电路模块,其特征在于:每个PE_G运算模块由4x4的PE阵列组成的绝对值差电路和SAD加法树电路组成,PE_G输入包含三个部分组成,参考帧4x8像素的输入、当前帧4x4块的输入以及PE_G控制电路dn_cmd信号,其中,通过控制模块发送dn_cmd信号的值,实现在搜索区域相同列的上下滑动运动估算。4.根据权利要求2所述的参考帧缓存阵列模块,其特征在于:参考帧缓存阵列分为两组4列12行的阵列,当四组PE_G运算单元组合为垂直方向列搜索时,四组PE_G并行的排列成一列进行运动估计,为实现二维方向的左右滑动,四列缓存寄存器采用移位寄存的方式进行,控制模块当完成一列搜索像素垂直方向的搜索时,缓存下一列到移位寄存器阵列中,整体移动实现左右滑动;当四组PE_G运算单元组合为两组正方形搜索方式时,可针对8x8块的搜索,此时缓存阵列单元的排列方式对应的正方形的方式进行运动估计;当四组PE_G用于正像素的全搜索时,参考帧缓存阵列通过多次读取参考像素块数据,重复多次完成一个大分块所有搜索像素的运动估计。5.根据权利要求1所述的方法,实现多种不同分块的全像素运动估计,其特征在于:最小代价裁决电路根据搜索点类型进行最小代价运算,4倍下采样搜索点的以4x4下采样块像素作为每个最佳搜索点的最小代价块运算单元,2倍下采样搜索点以8x8下采样块像素作为每个最佳搜索...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:珠海亿智电子科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1