Nothing Special   »   [go: up one dir, main page]

CN1396762A - 用于扫描搜索区内参考宏块窗口的运动估计装置和方法 - Google Patents

用于扫描搜索区内参考宏块窗口的运动估计装置和方法 Download PDF

Info

Publication number
CN1396762A
CN1396762A CN02122743A CN02122743A CN1396762A CN 1396762 A CN1396762 A CN 1396762A CN 02122743 A CN02122743 A CN 02122743A CN 02122743 A CN02122743 A CN 02122743A CN 1396762 A CN1396762 A CN 1396762A
Authority
CN
China
Prior art keywords
reference macroblock
memory cell
current
register
image processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN02122743A
Other languages
English (en)
Other versions
CN1297134C (zh
Inventor
赵真显
卢亨来
李润泰
全炳宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/112,011 external-priority patent/US20030012281A1/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1396762A publication Critical patent/CN1396762A/zh
Application granted granted Critical
Publication of CN1297134C publication Critical patent/CN1297134C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/55Motion estimation with spatial constraints, e.g. at image or region borders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • H04N19/433Hardware specially adapted for motion estimation or compensation characterised by techniques for memory access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/43Hardware specially adapted for motion estimation or compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

公开了一种运动估计技术,将当前宏块与参考帧搜索区中的不同参考宏块进行比较。将当前宏块的运动矢量从与当前宏块最为匹配的参考宏块中导出。为减少装载新参考宏块所需的指令数目,复用参考宏块之间的重叠部分并且仅将非重叠部分装载到存储器存储部件。

Description

用于扫描搜索区内参考宏块窗口的运动估计装置和方法
                            技术领域
本发明涉及一种运动估计装置和方法。更具体地说,本发明涉及用于扫描搜索区内参考宏块窗口的运动估计装置和方法。
                            背景技术
该申请享有2001年7月9日申请的申请号为2001-40904的韩国专利申请的优先权,这里完整引入其内容以供参考。
视频编码器生成遵守视频压缩国际标准,比如H.261、H.263、MPEG-1、MPEG-2、MPEG-4、MPEG-7、以及MPEG-21的位流。这些标准广泛地应用于数据存储、基于互联网的图像服务、娱乐、数字广播、便携式视频终端等领域。
视频压缩标准使用将当前帧分成多个宏块(macroblock)(MB)的运动估计技术。计算当前MB和存在于参考帧搜索区内的其它参考MB之间的差异。搜索区中与当前MB最相似的参考MB被认为是“匹配块”并将其选中。将指示当前MB和匹配块之间相位差的当前MB的运动矢量进行编码。相位差是指当前MB和匹配块之间的位置差。由于只传送当前MB的运动矢量,故需要传送或存储的为较小量数据。
当前MB与搜索区的关系如图1所示。根据四分之一公共中间格式(Quarter Common Intermediate Format,QCIF),一帧包含176×144个像素,当前帧2包含99个当前MB,并且每个当前MB 10包含16×16个像素。在参考帧4中计算当前MB 10的运动矢量。参考帧4中搜索区12包括48×48个像素。
在搜索区12中,将与当前MB 10最相似的16×16参考MB识别为匹配块。可以用各种不同的方法计算当前MB与参考MB之间的差。例如通过使用绝对差均值(MAD)、绝对方差均值(MAE)、或绝对差总和(SAD)。SAD最为普遍因为它只需要减法和加法运算。
图2说明了一种基本完全搜索,其中将像素10_1和14_1分别装载到32位寄存器15和17。然后使用算术逻辑单元(ALU)30计算SAD。在用ALU 30比较当前MB 10和参考MB 14a之前,将它们存储在存储器中并一个像素一个像素地装载到32位寄存器15和17中。将存在于搜索区12中的参考MB14a、14b、14c等与当前MB 10一个像素一个像素地进行比较。
这种简单思想的估计方法提供了高精确度。但是,因为有太多的计算故限制了传送速率。该方法也不适合于由一些处理能力有限的多用途的中央处理单元(CPU),比如一些在手持个人计算机(PC)中使用的CPU进行的实时解码。
通过比较当前MB与搜索区内有限数目的参考MB可以使用一种快速搜索算法(没有示出)计算SAD。与上述完全搜索方法相比该种快速搜索算法可以显著地减少计算次数。然而,这种快速搜索算法降低了画面质量。
使用完全搜索方法发展出了一种快速计算SAD的方法。使用单指令多数据(Single Instruction Multiple Data,SIMD)方法可同时计算多个像素的SAD。该减少的运算次数提高了传送速率。
图3说明了使用SIMD部件的SAD计算。当前MB 10和参考MB 14a各自的八个像素10_8与14_8分别装载到64位寄存器16和18。SIMD机20同时计算装载到64位寄存器16和18中的八个像素的SAD。与典型的完全搜索算法其中单独计算每个像素的SAD不同,使用SIMD技术可以实现对多个像素同时并行计算SAD。
计算量随着搜索区12中下一个MB移位的方向而变化。如图3所示,每当选择下一个MB进行水平移位,必须从存储器中访问当前MB 10和参考MB 14中的八个像素并将其装载到寄存器16和18。这种大量的存储器访问增加了导出运动矢量所需的时间量并增加了能量消耗。
由于大量的存储器访问以及伴随的大能量消耗,这些传统运动估计方法不适合于移动环境。本发明致力于解决该问题以及其它与现有技术相关的问题。
                            发明内容
运动估计技术将当前宏块与参考帧搜索区内的不同参考宏块进行比较。从与当前宏块最为匹配的参考宏块中导出当前宏块的运动矢量。为减少装载新参考宏块所需的指令数目,复用参考宏块之间重叠的部分、并只将没有重叠的部分装载到存储器存储部件中。
                            附图说明
通过参考附图对本发明优选实施例的详细描述本发明前述的及其它目的、功能和优点将变得更为清楚。
图1是说明如何导出运动矢量的现有技术示意图。
图2是说明使用完全搜索方法并使用绝对差总和(SAD)的方法、执行运动矢量搜索的传统方法的现有技术示意图。
图3是说明使用单指令多数据(SIMD)方法执行运动矢量搜索的传统方法的现有技术示意图。
图4是根据本发明执行运动估计的系统的方框图。
图5是抽取过滤器的示意图。
图6是说明抽取后的当前宏块和相应的搜索区的示意图。
图7是说明根据本发明如何使用两组寄存器的示意图。
图8说明根据本发明如何在搜索区移位参考宏块。
图9是说明根据本发明如何识别运动矢量的流程图。
图10A-10D是比较不同运动估计技术的指令计数的图表。
图11A-11D说明传统运动估计方法与根据本发明的运动估计方法之间的其它差别。
图12比较根据本发明的垂直扫描技术和其它扫描技术并说明在存储器访问方面的差别。
图13概念性地说明图4中差异计算单元110的一部分。
                            具体实施方式
本发明通过在搜索区扫描参考MB时复用公共寄存器提供减少存储器访问次数的高效运动估计。。
图4是本发明优选实施例运动估计系统的方框图。运动估计系统包括当前帧(C/F)100、第一寄存器组102、差异计算单元110、搜索区(S/A)104、第二寄存器组106、以及控制器108。第一和第二寄存器组102及106分别为当前帧100的一个宏块(MB)和搜索区104的一个宏块存储像素。在一个例子中,一个MB的大小为16×16像素。第一和第二寄存器组102及106的每一个都可以存储一个16×16像素的数组。控制器108可以用软件或硬件构造。
图5说明了使用4∶1抽取过滤器实施的预处理步骤。在当前帧100(图4)上使用n∶1抽取过滤器以减少所需硬件资源。当前帧在图5中由输入帧130表示。帧130由四个4∶1抽取过滤器126a、126b、126c和126d分成四种抽取帧a、b、c和d,并存储在帧存储器128中。从电荷耦合图像捕获部件(CCD)120输出的视频信号通过模-数转换器(ACD)122转换成数字信号。从ADC 122输出的信号是RGB信号。预处理器124将RGB信号转换成YCbCr信号。在一个实施例中,抽取过滤器126只对Y信号进行抽取。
抽取过滤器126a用于输入帧130中的a种像素,抽取过滤器126b用于b种像素,抽取过滤器126c用于c种像素,并且抽取过滤器126d用于d种像素。抽取之后,抽取后帧a、b、c、和d存储在帧存储器128中。
作为对输入帧130进行4∶1抽取的结果,一个MB的大小减小到8×8个像素。对搜索区104进行与当前帧130同样比率的抽取。例如,对48×48个像素的搜索区进行4∶1抽取将搜索区的大小减小到24×24个像素。图6说明了经过4∶1抽取后一个当前MB 140及其相应的搜索区150。
为解释之便,将当前帧描述为经过图5中4∶1抽取过滤器的四种抽取后帧a、b、c、和d之一。当前帧100中的每个MB的大小为8×8个像素并且经过4∶1抽取过滤器的搜索区104的大小为24×24个像素。
第一寄存器组102(图4)存储当前帧100的一个当前MB,并且第二寄存器组106存储搜索区104的一个参考MB。第一和第二寄存器组102及106以图7中描述为画圈的数字的预定次序存储像素。对八个像素的各个组来说在第一和第二寄存器组102及106中每一个的计算次序都是确定的。
图7说明了图4中第一和第二寄存器组102及106的结构和装载顺序。第一寄存器组102存储当前MB并包括每个都存储八个像素的寄存器。以预定的次序从0到7指定这些寄存器。第二寄存器组106包括每个都存储八个像素的寄存器并且以预定的次序从8到15指定这些寄存器。为计算存储在第一寄存器组102中的当前MB与存储在第二寄存器器组106中的参考MB之间的差,用下面公式计算当前参考块的SAD和运动矢量MV。 SAD ( dx , dy ) = Σ m = x x + N - 1 Σ n = y y + n - 1 | I k ( m , n ) - I k - 1 ( m + dx , n + dy ) | ( MVx , MVy ) = min ( dx , dy ) ∈ R 2 SAD ( dx , dy )
其中,k(m,n)是第k个帧在(M,N)处的像素值。运动矢量(MVx,MVy)表示当前块到参考帧中最匹配块的位移。
差异计算单元110(图4)用图3中的单指令多数据(SIMD)方法同时计算八个像素的差。
图13概念性地说明了图4中的差异计算单元110。第一寄存器组102的每个寄存器142的每个像素和第二寄存器组106的每个寄存器144的每个像素之间的绝对差值存储在寄存器132中。例如,142a和144a之间的绝对差值存储在132a中,并且142b和144b之间的绝对差值存储在132b中。为计算142和144之间的绝对差,执行一个内部求和指令将存储在图13的点划线框内寄存器132中的每个差值相加。
如图13的点划线框所示,一个内部求和指令的执行仅用到多个相加器。在传统方法中为了将每个值相加,用一个相加指令和移位指令执行求和,因此与本方法相比需要额外的循环。所以,为完整地计算抽取后当前MB和抽取后参考MB之间的匹配块需执行八个内部求和指令。
一旦计算了当前MB 10和参考MB 14所有像素的SAD,通过将每个像素的SAD相加计算参考MB 14a的内部总和。在计算了搜索区12的所有参考MB的内部总和之后,将具有最小内部总和的参考MB识别为匹配块,并且计算结果作为图4中的MB差(E_MB)输出。图4中的控制器108控制如何使用SIMD扫描方法在搜索区104中移位参考MB窗口以减小存储器访问次数。
图12更详细地说明传统扫描方法和根据本发明的扫描方法的一些差别。对于完全搜索,根据传统扫描方法,当前参考块在水平或垂直方向移位一个像素得到下一个参考块,分别如图12_1和12_2所示。在这些情况下,当前比较的参考块中的大部分像素与下一个要比较的参考块中使用的像素相重叠。
对于图12_1中所示的水平扫描,只有下一个寄存器组106’_2的最右边区域包括相对于寄存器组106’_1中的像素而言的新像素。同样的,对于图12_2中所示的垂直扫描,只有下一个寄存器组106”_2的最下边区域包括相对于当前寄存器组106”_1而言的新像素。即便只有边缘区域包括新像素,对整个参考宏块106执行存储器访问。
根据本发明用于SIMD方案的垂直扫描在图12_3中说明。在图4中只有新像素106_2从主存储器装载到第二寄存器组106中。如图7所示,第二寄存器组160b复用存储在第一寄存器组160a中9到15寄存器区域中的重叠像素。将新的一行像素值只装载到第二寄存器组160b的第一寄存器区域8。在第二寄存器组160b中第一寄存器区域8下移到最后一个位置。存储与下一个参考块重叠的像素行的其它寄存器区域9至15在序列中上移1。例如,寄存器区域9移到了第一个位置,寄存器10移到了第二个位置,寄存器11移到了第三个位置等。
这种参考MB移位只需要一次存储器访问以在搜索区104中在每次垂直移位时读取一行新的没有重叠的像素(图4)。由于不需要从存储器中读取下一个参考MB的整个8×8像素数组,从而减少了用于扫描搜索区104的存储器访问次数。
图8说明了参考MB在搜索区104中的移位。图4中在控制器108的控制下垂直扫描参考MB窗口。参考MB窗口每次垂直移位一个像素行。虽然这里说明了垂直窗口移位,同样的技术可以用于水平窗口移位。当像素沿当前和参考帧的垂直列存储在存储器中的连续位置时可以使用水平移位。
如上所述,当使用能够存储一个MB数据的寄存器并且在搜索区中垂直移位参考MB窗口时,复用当前参考MB和下一个参考MB之间的重叠像素。这减少了控制器108扫描搜索区所需的存储器访问次数。当前MB存储在第一寄存器组中,并且当前参考MB存储在第二寄存器组中。
图9是更详细地说明本发明SIMD扫描方案的流程图。在步骤170,以n∶1的比率抽取当前帧和参考帧。为解释之便,在本实施例中n=4。参数HS指明搜索区中第一个参考MB的最后一列的位置,参数VS指明搜索区中第一个参考MB的最后一行的位置,以及参数DCM指明四个抽取后帧。
这里,第一个参考MB是搜索区中左边最上面的MB,并且第一个参考MB的第一个参数HS和第二个参数VS为零。在步骤172中,参数HS、VS、DCM都初始化为零,并且最小差异E MIN初始化为尽可能大的值,例如,无穷大。
将标识号0、1、2、和3分别分配给四个抽取后帧。在步骤174将参数DCM与值4进行比较以确定最后一个抽取帧的运动估计是否完成。如果最后一个抽取后帧的运动估计没有完成,在步骤176将当前MB装载到第一寄存器组140(参见图7)。
在步骤178确定HS参数是否小于17。当HS参数不小于17时,完成搜索区中最后一列(HS16)的运动估计。在步骤192将HS重设为零并且在块198中将DCM加1到下一个DCM帧。处理然后回到步骤174。
如果到HS16的运动估计没有完成,在步骤180确定VS参数是否小于17。如果VS小于17,在步骤182和184执行流水线操作程序。在步骤1 82只有最后一行VS1装载到参考MB(参见图8)。如果到最后一行的运动估计没有完成,即,如果参考MB窗口没有移位到最后一行VS16,在步骤182将参考MB装载到第二寄存器组160a。在步骤184计算当前MB和参考MB之间的差。
在这种情况下,垂直方向上的新行VS1存储到第一寄存器位置的寄存器区序列中。例如,将下一个参考MB的下一个新的没有重叠的像素行装载到第二寄存器组160b的寄存器8($register 8)中。其它的寄存器区,即,寄存器9($register 9)到寄存器15($register 15),在序列中向上移1位。即,图7中的第二寄存器组160b复用存储在寄存器区寄存器9($register 9)到寄存器15($register 15)中的像素。因此,仅从存储器中访问新行VS1(图8)的像素并将其存储在第二寄存器组160b的寄存器区寄存器8($register 8)中。
在步骤184,计算装载到图7中第一和第二寄存器组140及160中的MB之间的差。在步骤186将MB差异E_MB与最小差异E_MIN相比较。如果MB差异E_MB小于最小差异E_MIN,在步骤188将最小差异E_MIN设置为MB差异E_MB。如果MB差异E_MB不小于最小差异E_MIN,保持当前最小差异E_MIN,并且在步骤190将参数VS加1。然后重复步骤180到190直到对参考MB的垂直扫描到达最后一行VS16(图8)。
如果在步骤180确定了作为扫描到最后一行VS16的结果第二个参数VS不小于17,在步骤200将参数VS初始化为零。在步骤202将参数HS加1,并且处理回到步骤178。换句话说,参考MB窗口向右移位了一个像素位置。然后重复步骤180到190。
在参考MB窗口在水平方向移位到最后一列HS16后,即,如果在步骤178确定了参数HS不小于17,在步骤192将第一个参数HS重新初始化到零。在步骤198将DCM参数加1并且处理回到步骤174。增加DCM参数意味着执行了另一个抽取后帧的运动估计。
当所有抽取后帧的运动估计都已完成,即,如果在步骤174确定了DCM参数不小于4,在步骤204将具有最小差异的参考MB识别为匹配块。通过对当前帧所有MB重复上述的处理完成当前帧的运动估计。
如上所述,第一和第二寄存器组存储当前MB和参考MB。在搜索区中垂直移位参考MB窗口以进行运动估计。复用当前参考MB和下一个参考MB之间的重叠像素。结果,当将下一个参考MB装载到第二寄存器组中时需要较少的指令(装载/存储)。这样可以以较小的能量消耗获取快速运动估计。
图10a至10d说明了本发明相对于传统运动估计方法的优点。图10a指明了不执行抽取(即,完全搜索算法)的传统运动估计方法的指令计数。下面情况得到了确定:图10a的传统方法中总指令计数的26.2%用作存储器访问指令,并且指令计数的余下73.8%用于非存储器访问。图10a与图2对应,其中在搜索区中水平移位参考MB并且用SAD为每个像素执行运动估计。图10b说明了执行抽取的传统运动估计方法的总指令计数。图10c说明了使用抽取和SIMD的传统运动估计方法的总指令计数。
图10d说明了使用本发明的运动估计方法的总指令计数。对于图10b到10d中说明的三种情况,百分比27.0%、1.6%、以及0.9%分别为与图10a的传统运动估计方法相比较的存储器访问指令计数的相对比率。很显然用正交扫描访问非重叠部分的方法是减小存储器访问计数的最高效技术。
图11说明具有要求的四分之一公共中间格式(QCIF)的两帧提取99个最小SAD所需的总时钟周期数。在图11中,11a对应于图10a,11b对应于图10b,11c对应于图10c,以及11d对应于图10d。用正交扫描方案访问非重叠部分相对于使用普通SIMD的传统运动估计方法性能提高了两倍。
上述扫描技术可以使用用于比较当前宏块和参考宏块的单指令多数据(SIMD)部件或较长指令字(VLIW)部件来实现。用于匹配宏块的方案可以包括绝对差均值(MAD)、绝对方差均值(MAE)、或绝对差总和(SAD)方案。用于选择下一个参考宏块的方法可以包括快速算法或完全搜索算法。当然,也可以使用其它单指令/多数据部件、匹配方案、以及搜索算法。
该发明可以通过在通用数字计算机中运行一个来自计算机可用媒介,包括但不限于如磁存储媒介(例如,ROM、软盘、硬盘等)、光可读媒介(例如,CD-ROM、DVD等)的存储媒介、以及载波(例如,在互联网上传送)的程序实施。计算机可用媒介可以在由网络连接的分布式计算机系统中存储和执行。
上述系统可以使用专用处理器系统、微控制器、可编程逻辑部件、或执行一些或所有操作的微处理器。上述一些操作可以用软件实现并且其它操作可以用硬件实现。
为方便起见,将操作描述为各种内连的功能块或不同的软件模块。但是,这是不必要的并且可能会存在下面情况,即,这些功能块或模块等价地聚集在单独一个逻辑部件,程序或操作中而没有明显的界限。无论如何,功能块和软件模块或灵活的接口的各种功能特征可以单独实现,或者以硬件方式或软件方式与其它操作联合实现。
在以本发明的优选实施例描述和说明了其原理之后,应该清楚可以在布局和细节方面修改本发明而不悖离这些原理。所请求保护的是在下面权力要求的精神和范围内的所有修改和变化。

Claims (29)

1.一种图像处理装置,包括:
第一存储单元,用于存储当前宏块;
第二存储单元,用于存储第一参考宏块;
计算单元,用于计算第一存储单元和第二存储单元所存储的内容的差;以及
控制器,用于通过将第一参考宏块的非重叠部分替换为第二参考宏块的非重叠部分而将第二参考宏块装载到第二存储单元中。
2.如权利要求1所述的图像处理装置,其中计算单元的结果用于确定运动矢量。
3.如权利要求1所述的图像处理电路,其中计算单元包括单指令多数据(SIMD)部件。
4.如权利要求1所述的图像处理装置,其中通过由计算单元计算第一存储单元和第二存储单元之间的差,在第二存储单元中复用第一参考宏块与第二参考宏块重叠的部分。
5.如权利要求1所述的图像处理装置,其中第一存储单元包含每个都为当前宏块存储一组像素值的多个寄存器,以及第二存储单元包含为第一参考宏块存储一组像素值的多个寄存器。
6.如权利要求5所述的图像处理装置,其中计算单元同时将存储在第一存储单元的每个寄存器中的一组像素值与存储在第二存储单元的每个寄存器中的一组像素值进行比较。
7.如权利要求5所述的图像处理装置,其中第一存储单元中多个寄存器的每一个都存储当前宏块的一行或一列,以及第二存储单元中多个寄存器的每一个存储第一参考宏块的一行或一列。
8.如权利要求1所述的图像处理装置,其中将第二参考宏块的非重叠部分从存储器装载到第二存储单元。
9.如权利要求1所述的图像处理装置,其中控制器通过将第二存储单元中存储非重叠部分的第一个寄存器位置移动到最后一个寄存器位置、并将第二存储单元中存储第一参考宏块重叠部分的其它寄存器按次序上移,从而将第二参考宏块装载到第二存储单元。
10.如权利要求1所述的图像处理装置,包括预处理器,将当前帧抽取为多个抽取后当前帧、并将参考帧抽取为多个抽取后参考帧。
11.如权利要求1所述的图像处理装置,其中控制器和计算单元以软件或硬件形式实现。
12.如权利要求5所述的图像处理装置,其中计算单元包括:
第三存储单元,用于存储第一存储单元的每个寄存器的每个像素与第二存储单元的每个寄存器的每个像素之间的绝对差;以及
求和电路,用于导出存储在第三存储单元中的绝对差值的总和。
13.如权利要求12所述的图像处理装置,其中求和电路仅包含多个加法器。
14.如权利要求12所述的图像处理装置,其中单个内部求和指令导致求和电路生成所有存储在第三存储单元中的绝对差值的总和。
15.一种运动估计方法,包括:
装载当前宏块;
装载当前参考宏块;
比较当前宏块和当前参考宏块;以及
通过将装载后的当前参考宏块的非重叠部分替换成下一个参考宏块的非重叠部分来装载下一个参考宏块。
16.如权利要求15所述的方法,包括:复用当前参考宏块的重叠部分,以比较下一个参考宏块和当前宏块。
17.如权利要求15所述的方法,包括:
在一条指令下将非重叠的一组像素从下一个参考宏块装载到当前包含当前参考宏块非重叠部分像素的标识的寄存器;以及
复用其它寄存器中与下一个参考宏块重叠的像素。
18.如权利要求17所述的方法,包括从存储参考帧的存储器装载所标识的寄存器。
19.如权利要求17所述的方法,包括将存储下一个参考宏块的非重叠部分的标识寄存器的次序移动到最后一个寄存器位置,并将其它寄存器的次序上移。
20.如权利要求15所述的方法,包括将装载后当前宏块的每组像素值与装载后当前参考宏块的每组像素值同时进行比较。
21.如权利要求20所述的方法,其中每组像素值包含当前宏块的一行或一列、或当前参考宏块的一行或一列。
22.如权利要求15所述的方法,包括使用单指令多数据(SIMD)部件或较长指令字(VLIW)部件,用于比较当前宏块和当前参考宏块。
23.如权利要求15所述的方法,包括使用匹配宏块方案比较当前宏块和当前参考宏块。
24.如权利要求23所述的方法,其中匹配宏块方案为绝对差均值(MAD)、绝对方差均值(MAE)、或绝对差总和(SAD)。
25.如权利要求15所述的方法,包括使用快速算法或完全搜索算法选择下一个参考宏块。
26.如权利要求15所述的方法,包括:
将当前帧抽取为多个抽取后当前帧;
将参考帧抽取为多个抽取后参考帧;
从抽取后当前帧选择当前宏块;
在抽取后参考帧的搜索区中移位所选择的当前宏块,以识别与当前宏快最相似的参考宏块;以及
导出所识别出的参考宏块的运动矢量。
27.如权利要求20所述的方法,包括:
存储装载后的当前宏块的每组像素值与装载后的当前参考宏块的每组像素值之间的绝对差;以及
导出该绝对差值的总和。
28.如权利要求27所述的方法,包括仅使用加法器导出绝对差值的总和。
29.如权利要求28所述的方法,包括使用一条单独内部求和指令生成所有绝对差值的总和。
CNB021227438A 2001-07-09 2002-06-10 用于扫描搜索区内参考宏块窗口的运动估计装置和方法 Expired - Fee Related CN1297134C (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR20010040904 2001-07-09
KR40904/01 2001-07-09
KR40904/2001 2001-07-09
US10/112,011 US20030012281A1 (en) 2001-07-09 2002-03-29 Motion estimation apparatus and method for scanning an reference macroblock window in a search area
US10/112,011 2002-03-29

Publications (2)

Publication Number Publication Date
CN1396762A true CN1396762A (zh) 2003-02-12
CN1297134C CN1297134C (zh) 2007-01-24

Family

ID=26639222

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB021227438A Expired - Fee Related CN1297134C (zh) 2001-07-09 2002-06-10 用于扫描搜索区内参考宏块窗口的运动估计装置和方法

Country Status (4)

Country Link
JP (1) JP2003125415A (zh)
KR (1) KR100486249B1 (zh)
CN (1) CN1297134C (zh)
GB (1) GB2378345B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100370808C (zh) * 2005-06-13 2008-02-20 北京中星微电子有限公司 一种运动检测方法
CN100403803C (zh) * 2005-01-19 2008-07-16 威盛电子股份有限公司 具有快取的阶层式搜寻方法与系统
CN100405853C (zh) * 2004-02-27 2008-07-23 精工爱普生株式会社 动态图像编码装置及动态图像处理装置
CN101228796B (zh) * 2005-07-21 2010-06-16 三星电子株式会社 根据方向帧内残余预测对视频信号编码和解码的方法和设备
CN101179724B (zh) * 2007-12-11 2010-09-29 北京中星微电子有限公司 帧间压缩编码中的帧存储方法及装置
CN101064848B (zh) * 2006-04-27 2010-12-08 索尼株式会社 图像数据处理装置与方法
CN102340617A (zh) * 2010-07-14 2012-02-01 奇景光电股份有限公司 运动估算及运动补偿电路
CN101800893B (zh) * 2009-02-06 2013-01-16 宏碁股份有限公司 执行运动估计的低功率高性能视频编码方法

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519115B2 (en) * 2003-03-31 2009-04-14 Duma Video, Inc. Video compression method and apparatus
JP4516020B2 (ja) * 2003-08-28 2010-08-04 株式会社日立超エル・エス・アイ・システムズ 画像処理装置
KR100677562B1 (ko) 2005-02-03 2007-02-02 삼성전자주식회사 움직임 추정 방법 및 장치
US8270439B2 (en) 2005-07-08 2012-09-18 Activevideo Networks, Inc. Video game system using pre-encoded digital audio mixing
US8118676B2 (en) 2005-07-08 2012-02-21 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks
US9061206B2 (en) * 2005-07-08 2015-06-23 Activevideo Networks, Inc. Video game system using pre-generated motion vectors
US8284842B2 (en) 2005-07-08 2012-10-09 Activevideo Networks, Inc. Video game system using pre-encoded macro-blocks and a reference grid
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
KR101328931B1 (ko) * 2006-11-28 2013-11-14 엘지전자 주식회사 비디오 복호기 및 복호방법
EP2632165B1 (en) 2007-01-12 2015-09-30 ActiveVideo Networks, Inc. Interactive encoded content system including object models for viewing on a remote device
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
KR101520027B1 (ko) 2007-06-21 2015-05-14 삼성전자주식회사 움직임 추정 방법 및 장치
KR100909390B1 (ko) * 2007-09-18 2009-07-24 한국과학기술원 고속 움직임 보상 장치 및 방법
US8194862B2 (en) 2009-07-31 2012-06-05 Activevideo Networks, Inc. Video game system with mixing of independent pre-encoded digital audio bitstreams
CA2814070A1 (en) 2010-10-14 2012-04-19 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
US9204203B2 (en) 2011-04-07 2015-12-01 Activevideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
US10275128B2 (en) 2013-03-15 2019-04-30 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9326047B2 (en) 2013-06-06 2016-04-26 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
CN109120941A (zh) * 2018-09-03 2019-01-01 山东师范大学 一种视频图像数据重用方法、处理器及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07264602A (ja) * 1994-03-24 1995-10-13 Sony Corp 動きベクトル検出方法
KR100205146B1 (ko) * 1996-09-12 1999-07-01 이득렬 디지탈 비데오 인코더 시스템에서 움직임 예측 방법
GB2327827B (en) * 1996-11-29 1999-06-30 Sony Corp Image processing apparatus
KR100325253B1 (ko) * 1998-05-19 2002-03-04 미야즈 준이치롯 움직임벡터 검색방법 및 장치
KR100397055B1 (ko) * 2000-07-21 2003-09-06 (주)씨앤에스 테크놀로지 저전송율 영상통신을 위한 움직임 예측기 구조
KR100446235B1 (ko) * 2001-05-07 2004-08-30 엘지전자 주식회사 다중 후보를 이용한 움직임 벡터 병합 탐색 방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100405853C (zh) * 2004-02-27 2008-07-23 精工爱普生株式会社 动态图像编码装置及动态图像处理装置
CN100403803C (zh) * 2005-01-19 2008-07-16 威盛电子股份有限公司 具有快取的阶层式搜寻方法与系统
CN100370808C (zh) * 2005-06-13 2008-02-20 北京中星微电子有限公司 一种运动检测方法
CN101228796B (zh) * 2005-07-21 2010-06-16 三星电子株式会社 根据方向帧内残余预测对视频信号编码和解码的方法和设备
CN101064848B (zh) * 2006-04-27 2010-12-08 索尼株式会社 图像数据处理装置与方法
CN101179724B (zh) * 2007-12-11 2010-09-29 北京中星微电子有限公司 帧间压缩编码中的帧存储方法及装置
CN101800893B (zh) * 2009-02-06 2013-01-16 宏碁股份有限公司 执行运动估计的低功率高性能视频编码方法
CN102340617A (zh) * 2010-07-14 2012-02-01 奇景光电股份有限公司 运动估算及运动补偿电路
CN102340617B (zh) * 2010-07-14 2014-06-11 奇景光电股份有限公司 运动估算及运动补偿电路

Also Published As

Publication number Publication date
GB2378345B (en) 2004-03-03
KR100486249B1 (ko) 2005-05-03
JP2003125415A (ja) 2003-04-25
CN1297134C (zh) 2007-01-24
GB0213247D0 (en) 2002-07-17
KR20030007087A (ko) 2003-01-23
GB2378345A (en) 2003-02-05

Similar Documents

Publication Publication Date Title
CN1297134C (zh) 用于扫描搜索区内参考宏块窗口的运动估计装置和方法
US7020201B2 (en) Method and apparatus for motion estimation with all binary representation
CN1157956C (zh) 运动估计器
US8218635B2 (en) Systolic-array based systems and methods for performing block matching in motion compensation
US6970509B2 (en) Cell array and method of multiresolution motion estimation and compensation
Liu et al. HDTV1080p H. 264/AVC encoder chip design and performance analysis
CN1729486A (zh) 基于段的运动估计
WO1997022083A1 (en) Method and apparatus for motion estimation in a video signal
Shen et al. A novel low-power full-search block-matching motion-estimation design for H. 263+
Luo et al. A novel all-binary motion estimation (ABME) with optimized hardware architectures
US20030012281A1 (en) Motion estimation apparatus and method for scanning an reference macroblock window in a search area
CN1627825A (zh) 用于运动图像编码的运动估计方法
Yin et al. A hardware-efficient multi-resolution block matching algorithm and its VLSI architecture for high definition MPEG-like video encoders
US6016163A (en) Methods and apparatus for comparing blocks of pixels
US8279936B1 (en) Method and apparatus for fractional pixel expansion and motion vector selection in a video codec
US20050047502A1 (en) Method and apparatus for the efficient representation of interpolated video frames for motion-compensated coding
Baglietto et al. Parallel implementation of the full search block matching algorithm for motion estimation
Lin et al. Low-power parallel tree architecture for full search block-matching motion estimation
CN1875633A (zh) 跟踪快速移动的小物体的运动矢量场求精法
Chen A cost-effective three-step hierarchical search block-matching chip for motion estimation
CN1852442A (zh) 一种分层运动估计方法和超大规模集成电路
Li et al. A VLSI architecture design of an edge based fast intra prediction mode decision algorithm for H. 264/AVC
CN1201589C (zh) 运动估计方法和装置
CN1520180A (zh) 具有帧速率转换的图像处理装置及其方法
CN100340118C (zh) 运动估计的超大规模集成电路体系结构及数据缓存的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070124

Termination date: 20100610