CN1149850C - 对移动图象进行编码的方法和装置 - Google Patents

对移动图象进行编码的方法和装置 Download PDF

Info

Publication number
CN1149850C
CN1149850C CNB991229932A CN99122993A CN1149850C CN 1149850 C CN1149850 C CN 1149850C CN B991229932 A CNB991229932 A CN B991229932A CN 99122993 A CN99122993 A CN 99122993A CN 1149850 C CN1149850 C CN 1149850C
Authority
CN
China
Prior art keywords
pixel block
vector
previous
image
coding
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.)
Expired - Fee Related
Application number
CNB991229932A
Other languages
English (en)
Other versions
CN1264255A (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.)
Hudson Soft Co Ltd
Original Assignee
Hudson Soft 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
Application filed by Hudson Soft Co Ltd filed Critical Hudson Soft Co Ltd
Publication of CN1264255A publication Critical patent/CN1264255A/zh
Application granted granted Critical
Publication of CN1149850C publication Critical patent/CN1149850C/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/008Vector quantisation
    • 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/649Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding the transform being applied to non rectangular image segments

Landscapes

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

Abstract

比较要编码的当前图象象素块B与先前帧的预定区域R内的先前图象象素块F,以查找使象素块B和F之间的匹配误差最小的特定先前图象象素块F,如匹配误差超过可接受值,得出一或多个正交基系,用于经帧间自适应正交变换接近当前图象象素块的AC分量矢量,作为其嵌套,具先前图象数据的预定区域N包括象素块K,对图象数据进行编码。如匹配误差不超过可接受值,据表示特定先前图象象素块F的移动矢量<M><M>对当前图象象素块B进行编码。

Description

对移动图象进行编码的方法和装置
本发明涉及用于对移动图象进行编码的方法和装置以及用于记录对移动图象进行编码的程序的介质,具体地,涉及用于电视、动画、彩色图形游戏等中移动图象数据的进行高比率压缩编码的方法和装置,进一步地,涉及用于记录对它们进行编码的程序的记录介质。
迄今,已经知道有用于移动补偿进行帧间编码(移动补偿的帧间编码)的系统,它能对例如电视中的移动图象信号以高效率进行信息压缩的编码。图1示出一种现有技术,其中显示了用于移动补偿的帧间编码的常规系统的构造。
图1中,视频缓冲器51顺序地存储所输入的当前图象数据VD。同时,帧存储器57存储通过解码再现的一帧之前的先前图象数据FD。该先前图象数据FD被读出,以便用所补偿的图象的移动来进行当前图象数据VD的帧间期望编码。更详细地,移动矢量计算单元55通过块匹配检索计算来计算帧之间的图象(象素块)的移动。
在一个块匹配检索计算的例子中,假设象素块BD的象素数据为Bk(k=1至16),在帧存储器57的检索区域R中的8×8象素的第i个象素块RDi的象素数据为Yi.k(k=1至16),两个象素块Si之间的差的绝对值总和Si通过块匹配计算被计算出来。
Si=∑‖Bk-Yi.k‖    (k=1至16)
然后,找出使得差的绝对值总和Si最小的最优象素块Yi.k,从而获得最优移动矢量MV。
同时,变量延迟缓冲器59用作从先前图象数据FD中提取对应于(最优)移动矢量的象素块,以得出用于移动补偿的期望的块数据PD。另外,减法器52将来自要被编码的各个象素数据VD减去用于移动补偿PD的相应的期望数据,以产生剩余差数据PE。量化器53对剩余差数据PE进行量化,以产生要传送的编码数据CE。
在此状态下,去量化器54对编码数据CE进行去量化,产生剩余差数据PE’。加法器55将上述的用于移动补偿的期望数据加到剩余差数据PE’,以再现当前象素数据VD’。帧缓冲器56顺序地累加如此再现的当前象素数据VD’。在一帧数据被累加之后,用于该一帧的再现的数据被转移到帧存储器57,作为前述的帧的图象数据FD。
但是,其中用于各象素的剩余差数据PE被量化的上述方法不能减少与原始图象本身相关的的冗余信息,从而无法预期高比率的数据压缩。在这方面,在最近的移动图象压缩的系统中颇流行的MPEG(移动图象专家组)系统在16×16图象元素(象素)块中以移动补偿进行帧间期望操作,在与所得出的期望剩余差相关的8×8象素单元中进行二维DCT(离散的余弦变换),量化所得出的序列并且进行哈弗曼(Haffman)编码,从而得到相对高比例的数据压缩。
然而,通过这种用于移动补偿的帧间期望操作得到的期望剩余差的主要部分趋向集中到原始图象块的外围部分。特别是当原始图象由包含平坦部分和具有陡峭梯度的外围部分的动画图象或彩色图形游戏图象组成时,该趋向更为显著。因此,如果期望剩余差由一种例如上述的传统MPEG的固定系统的正交基系(DCT)立即导出,需要许多包含较低和较高频率的分量的导出系数(序列),并且无法获得高比例的数据压缩。此外,如果采用低精度对高频分量进行量化以提高数据压缩比,则不仅会丢失外围部分的图象信息,而且由于在外围部分产生的蚊(mosquito)噪音而使图象质量恶化。
因此,本发明的目的是提供一种用于对移动图象进行编码的方法,它能够获得高图象质量和高比例的数据压缩(编码效率)。
本发明的另一个目的是提供一种用于对移动图象进行编码的装置,它能够获得高图象质量和高编码效率。
本发明的再一个目的是提供一种用于记录以高质量和高效率对移动图象进行编码的程序的记录介质。
根据本发明的第一个特性,本发明的上述目的由一种对移动图象进行编码的方法实现,该方法包括下列步骤:
逐个地将要被编码的一个当前图象的象素块与在一个预定的先前的帧的区域内的先前的图象的一个象素块进行比较;
查找使匹配误差最小化的一个特定的先前图象象素块;
如果相关于所述特定的先前图象象素块的所述匹配误差超过一个可接受的数值,则得出一个或多个正交基系,用于通过帧间自适应正交变换接近所述当前图象象素块中的AC分量矢量,该转换在包括所述特定的先前图象象素块的一个预定的区域内具有作为其嵌套的先前图象数据;及
据此对所述图象数据进行编码。
根据本发明的第一个特性,用这样的机制获得了高图象质量和高比例的数据压缩,其中利用移动图象的先前的帧的通常可以得到帧间较高的相关性的图象数据,以帧间自适应正交变换的方式,用一个或多个正交基系来接近相对于先前的图象数据的具有超过一个可接受值的的匹配误差的当前象素块。另外,由于利用在包括特定的先前象素块F的一个预定的区域内的先前图象数据的机制使相关于作为帧间自适应正交变换的嵌套(对应于矢量量化的编码册)的当前象素块B的匹配误差最小化,当前象素块B(交变电流分量矢量)能以改进的效率由少数的正交基来编码。再有,特别当原始图象由包含许多平坦部分和具有陡峭梯度的动画图象或彩色图形的游戏图象组成时,可以期待在真实地维护原始图象质量情况下编码效率的显著改善(编码数量减少)。
在本发明中,“先前的帧”可以是在显示移动图象的顺序中在当前帧之前紧挨着的一帧,或者是在显示该移动图象的顺序中在当前帧之后显示的一帧,并且其图象数据的准备优先于当前帧的显示,用于当前帧编码的参考。
根据本发明的第二个特征,基于根据本发明的第一个特性的特定先前象素块的一个AC分量矢量<F>来产生用于接近当前象素块的AC分量矢量<B>的第一个基。
根据本发明的第一个特性,由于特定先前象素块F使相关于当前象素块B的匹配误差最小化,通过第二个特性的机制可实现有效的接近,其中先前象素块F的AC分量矢量<F>被用(利用)作为用于接近当前象素块的AC分量矢量的第一个基,主要是在于消除搜索基的计算负担的必要性。另外,利用该原始图象(先前的图象)的自身相似性,第二或之后的正交基系能容易地形成,以用于接近剩余差矢量,它们将分量集中到当前图象的外围部分,减少了作为所期望的全部所需要的基的数量。
根据本发明的第三个特性,假设在第二个特性中用于接近当前象素块的AC分量矢量<B>的正交基系由基于嵌套象素块Uq的各归一化正交基<V’q>的线性组合α1<V’1>+α2<V’2>+…+αnk<V’nk>表示,nk为整数,其中包括特定先前象素块F,将该组合利用AC分量矢量<Uq>的组合变换到等价的线性组合:
β1<U1>+β2<U2>+…+βnk<Unk>
它等价于上面的组合,而基的数量nk、标量导出系数βq(q=1至nk)、嵌套象素块Uq的座标(x,y)以及至少与AC分量矢量<Uq>(q=2至nk)相关联的子采样间隔(sx,sy)被编码。
根据本发明的第三个特性的方法,利用本发明的机制,最后得出线性组合:
β1<U1>+β2<U2>+…+βnk<Unk>
它采用了由用于接近当前象素块的AC分量矢量<B>的nk个象素(nk≤1)组成的嵌套象素块Uq的AC分量矢量<Uq>,并且基的数量nk、标量导出系数βq(q=1至nk)、嵌套象素块Uq的座标(x,y)以及至少与AC分量矢量<Uq>(q=2至nk)相关联的子采样间隔(sx,sy)被编码,从而借助于以下积和计算通过解码可容易地获得解码的图象:
β1<U1>+β2<U2>+…+βnk<Unk>
相对于嵌套象素块Uq的AC分量矢量<Uq>,它是一个非正交基系。因此,能高速(实时)地再现解码的图象,而不给如通常成本受限制的游戏机那样的机器的CPU、存储器等等带来负担。这种用于对移动图象进行编码的该方法大大有助于移动图象的再现。
根据本发明的第四个特性,如果根据第三个特性的基的nk的数量超过一个预定值,当前象素块B本身就被编码。这里,“当前象素块B本身”是指当前象素块B的全部信息,它与编码方法无关。例如,当前象素块B的全部数据可以被编码,否则,当前象素块B可以被分成该块的平均值(DC),并且剩余AC分量也被编码。当新出现的当前图象数据不存在于先前的图象数据中时,这种情况是可能的。因此,采用根据本发明的第四个特性的方法可对移动图象的任何场景进行编码。
根据本发明的第五个特性,当前象素块B和与其相应的特定的先前象素块F都被划分成相同尺寸的子级象素块,它们中的每一个都受到帧间自适应正交变换。
根据本发明的第五个特性的方法,利用对具有少量图象单元(象素)的各子级象素块进行帧间自适应正交变换的机制,来自对每个子级象素块的帧间自适应正交变换的负担显著地减少。另外,由于该机制对每个子级象素块进行接近,所以整个当前象素块B的接近精度得以提高。
根据本发明的第六特征,如果在第一个特性中的相关于特定的先前象素块F的匹配误差不超过一个可接受的值,则根据表示特定的先前象素块F的移动矢量<M>对当前象素块B进行编码。因此,一种用于整个图象的高速编码方法是所预期的。应当注意,在移动图象中的不移动的部分的特定的当前象素块B的移动矢量<M>为(0,0)。
根据本发明的第七个特征,用于对移动图象进行编码的装置包括:
一个第一存储器,用于存储当前时间的图象数据;
一个第二存储器,用于存储先前帧的图象数据;
一个移动矢量计算单元,用于计算表示这样的特定先前象素块中的一个移动矢量,即通过顺序地将要编码的当前象素块与先前的帧的一个预定的区域内的先前象素块进行比较,该特定的先前象素块使匹配误差最小;和
一个帧间自适应正交变换编码单元,用于计算一个或多个正交基系,以借助于帧间自适应正交变换接近当前象素块AC分量矢量,该变换在包括特定的先前象素块的预定的区域内具有作为嵌套的先前图象数据,并且如果相关于该特定的先前象素块的匹配误差超过一个可接受的值,就对该基系进行编码。
当然,帧间自适应正交变换编码单元可以包括本发明的第二至第五个特性中所确定的任何处理功能。
根据本发明的第八个特性,如果相关于特定的先前象素块的匹配误差不超过可接受的值,则根据表示该特定的先前象素块的移动矢量,借助于在第七个特性中的帧间自适应正交变换编码单元对当前象素块进行编码。
根据第九个特性,在根据本发明的第八或第九个特性的装置中,进一步提供一个解码单元,用于根据帧间自适应正交变换编码单元的编码输出和第二存储器中的先前的帧的图象数据来顺序地对当前时间的象素块进行解码/存储,以将它们作为先前的帧的图象数据传送到第二存储器。根据本发明的第九个特性,在移动图象编码装置中采用共同的先前图象数据,而移动图象解码装置用于编码/解码和再现。
在根据本发明的第十个特性的能由计算机读出的记录介质中,记录有用于在计算机中执行上述第一至第六个特性所确定的处理程序。
结合附图,本发明将被更详细地说明,附图中:
图1是用于移动图象编码的一个常规方法的方块图;
图2是用于解释本发明的概念的示意图;
图3是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的结构方框图;
图4是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图5是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图6是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图7是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图8是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图9是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图10是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图11是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的流程方框图;
图12是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的图象示意图;
图13是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的图象示意图;
图14是根据本发明的一个最佳实施例的移动补偿的帧间AOT编码的图象示意图;
图15是表示本发明的一个最佳实施例中的编码量与图象质量之间的关系的示意图;和
图16是表示本发明的一个最佳实施例中的编码量与图象质量之间的关系的示意图。
下面将参考附图对本发明的最佳实施例进行解释。在所有附图中,相同的符号指示相同的或相应的部分。另外,在整个说明书中,符号<>表示一个矢量,符号‖‖表示一个矢量的维数,并且符号·表示一个矢量的内积。在附图和公式中的矢量以粗体字符书写。
图3示出根据一个实施例的移动补偿的帧间AOT(自适应正交变换)编码的结构,图3(A)示出移动图象编码装置的一个方框图。在图1中,标号11表示存储输入的当前图象数据VD的一个视频缓冲器;标号16表示存储前一帧的先前图象数据FD(要再现的已解码的图象数据)的一个帧存储器;标号12表示用于计算这样一个特定的先前象素块的移动矢量<M>的一个矢量计算单元,通过当前图象数据VD中要编码的当前象素块MB和先前图象数据FD中的之间的块匹配检索计算,该特定的先前象素块使相关于当前象素块MB的匹配误差最小;标号13表示用于响应搜索移动矢量<M>的结果而执行根据本发明的普通的移动补偿帧间编码或移动补偿的帧间AOT编码过程的一个帧间AOT编码单元;标号14表示用于根据从帧间AOT编码单元13输出的编码数据CD以及帧存储器16中的先前图角数据FD来编码/再现当前图象数据VD’的一个解码单元;标号15表示顺序地累加来自解码单元14的再现图象数据VD’的一个帧缓冲器,以便当有帧累加时,立即传输一帧数据到帧存储器16,作为一个前面帧的先前图象数据FD。
图3(B)是一个适合于与上述的移动图象编码装置组合运用的移动图象解码装置的方框图。在图3(B)中,标号33表示存储前一帧的先前图象数据(解码/再现的图象数据)FD的一个帧存储器;标号31表示一个解码单元,它根据输入的编码数据CD以及在帧存储器33中的先前图象数据FD而执行普通的移动补偿的帧间解码或移动补偿的帧间AOT解码过程;以及,标号32表示顺序地累加来自解码单元31的再现图象数据VD’的一个帧缓冲器,以便当有帧累加时,立即传输一帧累加的数据到帧存储器33,作为一个前面帧的先前图象数据FD。
在移动图象编码/解码装置中的这些功能块可以由一些硬件结构或一些软件结构实现,它们包括一个CPU(比如DSP)以及存储那些处理程序等的存储器(ROM、RAM等等)。通过对曾经存储在存储器(CD-ROM、ROM盒等等)中并且稍后从存储器读出的移动图象数据的解码(再现),由移动图象编码装置生产的编码数据CD不仅可用于包括电视信号通信的数据通信,而且可用于提供游戏软件、CG动画软件等等。下面,将更详细地说明在移动图象编码装置中进行的处理,因为上述的移动图象解码装置的结构包括在移动图象编码装置的结构中。
图12和图13是根据实施例的移动补偿的帧间AOT编码方法的图象示意图(1)和(2)。图12示出块匹配检索过程的图象,而图13示出移动补偿的帧间AOT编码方法的图象。以下,将参考这些附图简要地解释根据本实施例的移动补偿的帧间AOT编码方法。
图12中,视频缓冲器11存储输入的当前图象数据VD,而帧存储器16存储前一帧的先前图象数据FD。当前图象数据VD的一个例子是转换到YUV系统的RGB系统的图象,其中Y对应于亮度数据(8比特),U和V分别对应于色差数据(各8比特)。虽然以下将主要描述亮度数据Y的处理,但数据U和V可以类似的方式处理。利用包括在当前图象数据VD(例如8×8象素的宏块MB)中的要编码的当前象素块B,移动矢量计算单元12执行相关于在先前图象数据FD的一个预定搜查区域R内部的8×8象素的先前象素块的块匹配计算,并且进一步检测使两个象素块B和F之间的匹配误差最小的特定的先前象素块F,以从对应于当前象素块B的先前象素块B’的位置得出指向检测到的特定的先前象素块F的最小移动矢量<M>。
根据本发明,根据移动矢量<M>的搜索结果,帧间AOT编码单元13执行普通的移动补偿帧间编码或移动补偿的帧间AOT编码。更详细地,如果由对应于移动矢量<M>的特定的先前象素块F在可接受的误差范围4Z之内接近当前象素块B,则只有移动矢量<M>被编码输出,而如果当前象素块B不能大约在可接受的误差范围4Z之内接近,则执行下面描述的移动补偿的帧间AOT编码。
图13中,当前象素块B和对应于移动矢量<M>的特定的先前象素块F被分成子级象素块B1至B4以及F1至F4,各分别包括4×4个象素。从每个子级象素块,块DC值被分离(即提取AC成份)。这些AC成份被分别命名为当前子级象素矢量<B1>至<B4>以及先前子级象素矢量<F1>至<F4>。
然后,首先,当前子级象素矢量<B1>由相应的先前子级象素矢量<F1>接近。更详细地,相对于先前子级象素矢量<F1>,得出第一个单位矢量<V’1>(规范正交基),它再被用来以第一个正交基矢量α1<V’1>来接近当前子级象素矢量<B1>,其中α1是一个标量系数,它使以下的剩余差矢量<d1>的尺寸在接近之后为最小:
D1=‖<B1>-α1<V’1>‖2
如果D1处于可接受的误差范围Z之内,则不进行基的进一步搜索。
然而,如果D1不处于可接受的误差范围Z之内,则在嵌套区域N搜索用于接近剩余差矢量<d1>的第二个正交基矢量α2<V’2>。更详细地,例如,嵌套象素块U(2,1)是从嵌套区域N采样的,以释放一个DC值,使得该剩余AC分量成为候选的第二象素矢量<Unk>(nk=2)。嵌套象素块U(2,1)中的(2,1)是指分别关于X轴的每两个象素及关于Y轴的每一个象素所进行采样。然后,使此候选的第二象素矢量<U2>与第一个单位矢量<V’1>正交,以得出候选的第二个规范正交基矢量<V’2>,它被用来以候选的第二个正交基矢量α2<V’2>来接近剩余差矢量<d1>,其中α2是一个标量系数,它使以下的剩余差矢量<d2>的尺寸在上述接近之后为最小:
D2=‖<d1>-α2<V’2>‖2
因此,根据在嵌套图象区域N之内的所有预定的采样格式对各个候选的第二象素矢量<U2>执行类似于上面的处理,最后,使尺寸D2最小的特定的候选的第二个正交基矢量α2<V’2>就成为第二个正交基矢量α2<V’2>。相应的候选第二象素块U2被命名为第二象素块U2。如果D2处于可接受的误差范围Z之内,此时中止在嵌套图象区域N中的进一步搜索。
然而,如果D2不处于可接受的误差范围Z之内,从嵌套区域N搜索用于接近剩余差矢量<d2>的第三个正交基矢量α3<V’3>。其过程是类似的。如果尺寸Dn处于可接受的误差范围Z之内,此时完成在嵌套图象区域N中的搜索。
进一步地,以上得出的正交基系α1<V’1>,α2<V’2>,...αn<V’n>序列被变换成为由标量导出系数β和嵌套象素矢量<U>的乘积所构成的一个基序列β1<U1>,β2<U2>,……,βn<Un>,其中对应于这些标量导出系数β和嵌套象素矢量<U>等的嵌套象素块U的坐标以编码输出。其他当前子级象素矢量β2至β4的编码被同样地执行。下面将详细地说明根据一个实施例的移动补偿的帧间AOT编码方法。
图4至11是根据另一实施例的移动补偿的帧间AOT编码方法的流程图((1)至(8)),图4示出其主要处理过程。每次当用于一帧的图象数据受到编码处理时,输入则至该处理。在步骤S1,表示要被编码的当前象素块B的位置矢量<P>的位置寄存器Px、Py被初始化为Px=0、Py=0。在步骤S2,由位置寄存器Px、Py表示的由8×8象素组成的当前象素块BPx、BPy分别被读出。在步骤S3,执行稍后所述的移动矢量计算方法。该矢量计算过程是这样的一个过程,其中与当前象素块BPx,Py呈最佳接近的特定的先前象素块FPx+Mx,Py+My从帧存储器16中取出。在步骤S4,所得出的移动矢量<M>以编码方式输出,其中Mx,My为移动矢量寄存器,存有移动矢量<M>的X和Y分量,Px, Py该移动矢量<M>是从在位置上对应于当前象素块BPx,Py的先前象素块B’指向通过上述的移动矢量计算得出的特定的先前象素块FPx+Mx,Py+My。在步骤S5,判断在两个象素块B和F之间匹配误差:
Dmin=‖<BPx,Py>-<FPx+Mx,Py+My>‖2
是否小于可接受的误差4Z。4Z是指前面确定的每个4×4象素的子级象素块的可接受的误差Z的4倍。在这方面,如果需要高图象质量,用户可以选择可接受的误差Z为小的一个,而如果低图象质量是可接受的,就可将它选择为宽的范围。
如果Dmin<4Z,当前象素块BPx,Py可由可接受的误差范围内的先前象素块FPx+Mx,Py+My接近,然后转到步骤S6,以编码形式输出块划分标志F=0(没有块划分)。除非Dmin<4Z,否则转到步骤S7,以编码形式输出块划分标志f=1(划分一个块)。块划分标志F仅需要一比特。在步骤8,执行稍后描述的帧间AOT处理。
在此情况下,8×8象素的当前象素块BPx,Py被划分成四个当前子级象素块BPx,Py、BPx+4,Py、BPx,Py+4和BPx+4,Py+4,其中每一个的DC值(子级象素块的平均值)被分离出并且以编码形式输出,并产生当前子级象素矢量:
<BPx,Py>,<BPx+4,Py>,<BPx,Py+4>和<BPx+4,Py+4>。
同时,对应于上述8×8象素的当前象素块BPx,Py的由8×8象素组成的先前象素块FPx+Mx,Py+My被分成由4×4象素组成的四个先前的子级象素块:
<FPx,Py>,<FPx+4,Py>,<FPx,Py+4>和<FPx+4,Py+4>,
其中DC值(子级象素块的平均值)被分离出,并分别产生由剩余AC分量组成的先前的子级象素矢量:
<FPx+Mx,Py+My>,<FPx+Mx+4,Py+My>,<FPx+Mx,Py+My+4>,<FPx+Mx+4,Py+My+4>。
例如,对于当前子级象素矢量<BPx,Py>,根据在位置上对应于嵌套图象区域N内的先前的子级象素矢量<FPx+Mx,Py+My>,执行稍后所述的帧间AOT处理,并且如有必要,从嵌套图象区域N进一步提取一个或多个嵌套象素矢量<U2>,<U3>,等等。其他的当前子级象素矢量<BPx+4,Py>、<BPx,Py+4>和<BPx+4,Py+4>被同样地处理。
在步骤S9,位置寄存器Px加8,并在步骤S10判断Px是否较小V(例如,V=1280行)。如果Px<V,返回步骤S2,并且对于在X轴上移动8个象素的下一个当前象素块BPx+8,Py执行类似于上面的编码程。之后的步骤是相同的。只要Px不小于V,则转到步骤S11,位置寄存器Px被初始化为零,并且位置寄存器Py加8。在步骤S12,判断Py是否小于W(例如,W=60行)。如果Py<W,返回到步骤S2,并且对在Y轴上移动8个象素的下一个当前象素块BPx,Py+8执行类似于上面的编码过程。之后的步骤是相同的。只要Py不小于W,则完成一个帧的移动补偿的帧间AOT编码过程。
图5示出根据上面的图4所示的步骤S3中的计算移动矢量的过程。在步骤S21,一个大的数值被设置在用于保持块匹配误差的最小值的最小值寄存器Dmin中,并且指示匹配检索区域R内的坐标的寄存器i和j被分别初始化为i=-16及j=-16。在步骤22,指示帧存储器16中的坐标的寄存器x和y被分别刷新为x=Px+i及y=Py+j。在步骤S23,得出块匹配误差的数量D=‖BPx,Py-Fx,y2。。在步骤S24,判断D是否小于Dmin。如果D<Dmin,最小值寄存器Dmin被刷新为等于D,保存移动矢量的寄存器Mx和My分别为Mx=i及My=j,正如它们是的那样。如果D不小于Dmin,那么跳过步骤S25的过程。
在步骤S26,寄存器i加1,并且在步骤S27判断i是否小于16。如果i>16,返回到步骤S22,并且对在X轴上移动1个象素的下一个先前象素块Fx+1,y执行类似于上面的编码过程。之后的步骤是相同的。只要i不小于16,则转到步骤S28,寄存器i被初始化为i=-16,并且寄存器j加1。在步骤S29,判断j是否小于16。如果j<16,返回到步骤S22,对在Y轴上移动1个象素的下一个先前象素块Fx,y+1执行类似于上面的编码过程。之后的步骤是相同的。只要j不小于16,则完成移动矢量计算处理。此时,最小值寄存器Dmin保存最小值块匹配误差D,而移动矢量寄存器Mx和My分别保存特定的先前象素块Fx,y的移动矢量<M>,它提供块匹配误差D的此最小值。
图6示出上述图4中步骤S8的帧间AOT处理。在步骤31,8×8象素的当前象素块BPx,Py被分成四个当前子级象素块B1至B4,它们的每一个的DC值(当前子级象素块的亮度数据Y的平均值)被分离出并且以编码形式输出。DC值被分离出之后的剩余AC分量被命名为当前子级象素矢量,即<B1>至<B4>。在步骤32,同样地,由8×8象素组成的先前象素块FPx+Mx,Py+My被分成由4×4象素组成的四个先前的子级象素块F1至F4,它们的每一个的DC值(先前的子级象素块的亮度数据Y的平均值)被分离出。在DC值被分离出之后的剩余AC分量被命名为先前的子级象素矢量<F1>至<F4>。
在步骤S33,用于指示子级象素矢量<Bi>、<Fi>的寄存器i被初始化为i=1。在步骤S34,基数量计数器即nk被初始化为nk=1。在步骤S35,得出剩余差矢量<d>的数量,即
D=‖<Bi>-αi<Fi>‖2,其中当前子级象素矢量<Bi>与相应的前述子级象素矢量<Fi>理想地接近,其中αi=<Bi>·<Fi>/‖<Fi>‖2
图14(A)以图象形式示出用先前的子级象素矢量<Fi>进行当前子级象素矢量的最佳接近的过程。在该图中,剩余差矢量<d>的数量D:
D=‖<Bi>-αi<Fi>‖2,在基矢量αi<Fi>与剩余差矢量<d>正交的情况下是最小的,而
<d>=<Bi>-αi<Fi>  (内积为零),
因此,用于理想地接近的归一化基矢量<Fi>的标量系数αi由如下获得:
(BiiFi)·αiFi=0
αiBi·Fii 2Fi·Fi=0
&alpha; i = B i &CenterDot; F i | | F i | | 2
回到图6,在步骤S36,判断剩余差矢量<d>的数量D是否小于Z。如果D<Z,当前子级象素矢量<Bi>能以用于移动的已补偿的先前的子级象素矢量<Fi>来接近,这样,转到步骤S37,其中用于基数量nk的标量导出系数αi为1并且基矢量<Fi>以编码形式输出。由移动图象编码装置的解码单元14或由移动图象解码装置的解码单元31已经知道对应于基矢量<Fi>的先前的子级象素矢量Fi的位置座标。如果D不小于Z,转到步骤S38,执行稍后所述的自适应正交变换过程。这种自适应正交变换过程是用于从嵌套图象区查找在可接受的误差Z之内接近当前子级象素矢量<Bi>所需要的一个或多个嵌套象素矢量<U>的过程。
在步骤S39,判断在步骤S38中用于AOT处理所需的总基数nk是否大于7。如果nk>7,转到步骤S40,因为从该AOT过程的结果不能期望高图象质量和高图象压缩率。在步骤S40,基数量nk为8,并且输出当前子级象素矢量<Bi>。在当前帧出现一个全新的象素块Bi时,会出现这种情况。如果nk不大于7,(nk=2至7),转到步骤S41,其中基数量nk、在数量上共为nk个的标量导出系数βq(q=1至nk)、除第一基矢量<Fi>以外的在数量上共为nk-1个的基矢量<Uq>(q=2至nk)的坐标(x,y)、以及子采样间隔(sx,sy)的均以编码形式输出。稍后将说明标量导出系数βq
在步骤S42,寄存器i加1,并在步骤S43判断i是否小于5。如果i小于5,则转到步骤S34,对于下一个当前子级象素矢量<Bi+1>执行类似于上面的处理。只要i不小于5,则当前子级象素矢量<B1>至<B4>的编码过程完成,离开此过程。
图7至图9示出上面的图6中的步骤S38的自适应正交变换过程。现参考图12说明这种自适应正交变换过程。假设当前象素块B的位置矢量为<P>,并且由帧间移动补偿过程所检测的移动矢量<M>为<M>,围绕位置矢量<P>+<M>的一个j[-16,15]×k[-16,15]象素的区域被作为嵌套图象区N,使得与当前象素块B最相关的此区域被编码。为了搜索的基矢量<Unk>,子级象素块的顶点:
<j,k>∈[-16,15]×[-16,15]
为每一个水平的和垂直的象素而设置,子采样间隔为(sx,sy)∈{(1,1),(1,2),(1,3),…(2,1),(2,2),(2,3),…(3,1),(3,2),(3,3),…}。
例如,对于(sx,sy)=(2,1),从嵌套图象数据中的在x方向每次一个象素地扩展的区域收集总计为4×4象素的象素数据。进一步地,DC值被分离出以作为基矢量<U(2,1)>。对于(sx,sy)=(1,2),从嵌套图象数据中的在y方向每次一个象素地扩展的区域收集总计为4×4象素的象素数据。进一步地,DC值被分离出以作为基矢量<U(1,2)>。对于(sx,sy)=(2,3),从在嵌套图象数据中的分别在x和y方向扩展的区域收集总计为4×4象素的象素数据。进一步地,DC值被分离出以作为基矢量<U(2,3)>。如这些例子,嵌套图象区N的尺寸、对于嵌套象素块U的子采样间隔等等可以任意地设置。
回到图7,在步骤S51,根据:
<d>=<Bi>-αi<Fi>
得出剩余差矢量<D>,它用于由相应的先前的子级象素矢量<Fi>理想地接近的当前子级象素矢量<Bi>。在步骤S52,标量系数αi、先前的子级象素矢量<Fi>和归一化的先前的子级象素矢量<F’i>被分别储存在出口区域α(nk)、V(nk)和V’(nk),根据存储器中的基数量nk(=1),再将基数量计数器设为nk=2。
在步骤S53,一个大的数值被设置到剩余差寄存器Emin,并且指示嵌套图象区的坐标的寄存器j和k被初始化为j=-16,k=-16。在步骤S54,指示帧存储器16中的坐标的寄存器x和y被刷新为x=Px+Mx+j,y=Py+My+k,进一步地,子采样间隔sx和sy被初始化为sx=1,sy=1。在步骤S55,根据子采样间隔(sx,sy)的4×4象素的子级象素块Unk,x,y,sx,sy从帧存储器16的由地址(x,y)开始的位置被提取出来,并且从该块中分离出DC分量。该DC分量被命名为基矢量<Unk>。在步骤S56,采用Gram-Schmidt正交方法,使基矢量<Unk>与归一化的基矢量<V’1>至<V’nk-1>正交,以得出归一化的基矢量<V’nk>。
在图14(B)中,Gram-Schmidt正交方法以图象方式示出。在该图中,第一个基矢量<F1>被选为第一个正交基矢量<V1>,实际上也是如此。进一步地,第一个归一化的正交基矢量<V’1>作为一个单位矢量,可以由以下公式表示:
V &prime; 1 = F i | | F i | | = &alpha; 11 F 1 = &alpha; 11 V 1
其中α11是一个标量系数。接下来,假设第二个基矢量<U2>从嵌套图像中提取出来,利用此第二个基矢量<U2>,可得出与上述的第一个归一化的正交基<V’1>正交的第二个正交基<V2>:
V2=U2+mV’1                            ………[公式1]
然后,根据关系:
<V2>·<V’1>=0,
下列的关系可得出:
V2·V’1=(U2+mV’1)·V’1=U2·V’1+m(V’1·V’1)=U2·V’1+m=0则标量系数m为:
m=-(U2·V’1)
以此代替上面的公式1中的标量系数,则第二个正交基<V2>表示为:
V2=U2-(U2·V’1)V’1
进一步地,第二个归一化的正交基矢量<V’2>作为一个单位矢量,能如下得出:
V 2 = V 2 | | V 2 | | = U 2 - ( U 2 &CenterDot; V &prime; 1 ) V &prime; 1 | | U 2 - ( U 2 &CenterDot; V &prime; 1 ) V &prime; 1 | |
以下的过程,同样地进行。一般地,第n个归一化的正交基矢量<V’n>如下得出:
V &prime; n = V n | | V n | | = U n - ( U n &CenterDot; V &prime; 1 ) V &prime; 1 - &CenterDot; &CenterDot; &CenterDot; - ( U n &CenterDot; V &prime; n - 1 ) V &prime; n - 1 | | U n - ( U n &CenterDot; V &prime; 1 ) V &prime; 1 - &CenterDot; &CenterDot; &CenterDot; - ( U n &CenterDot; V &prime; n - 1 ) V &prime; n - 1 | |
回到图8,在步骤S58,利用归一化的正交基矢量<V’nk>,通过α(nk)=<d>·<V’nk>,可得出基矢量<V,nk>的标量系数α(nk),以使与剩余差矢量<d>的距离最小,条件是‖<V’nk>‖2=1。此理想的接近类似于以图象方式在图14(A)中所显示的内容。在步骤S59,用由正交基矢量αnk<V’nk>接近的剩余差矢量<d>,可得出误差矢量的数量εr=‖<d>-αnk<V’nk>‖2。在步骤S60,判断εr是否小于Emin。如果εr小于Emin,则在步骤S61,εr、x、y、sx和sy被保存在寄存器Emin,X,Y,SX和SY中以存储与最小值εr的相关的各种信息。标量系数αnk然后被储存在寄存器α中,正交基矢量<Vnk>然后被储存在用于正交基矢量的存储器区域V中,而归一化的正交基矢量<V’nk>则被储存在用于归一化的正交基矢量的存储器区域V’中。如果上述步骤S60判断εr不小于Emin,则上述步骤S61的过程被跳过。
在步骤S62,子采样间隔sx加1,并在步骤S63判断sx是否小于5。在sx小于5的情况下,返回到图6中的步骤S55,现在以不同的采样间隔sx提取的其他类型的象素矢量<Unk>受到类似于上面的处理。之后的过程被同样地执行。在步骤S63的判断中,只要sx不小于5,sx就被初始化为1,并在步骤64中,sy加1。在步骤S65,判断sy是否小于5。如果sy小于5,返回到图6中的步骤S55,现在以不同的采样间隔sy提取的另一类型的象素块U受到类似于上面的处理。在步骤S63判断中,只要sy不小于5,则对于嵌套图象区域N中的开始位置(x,y)的根据不同的采样间隔(sx,sy)所提取的象素块Unk的所有类型进行检查。
在步骤S66中,嵌套图象区N中的开始位置寄存器j加1,并且在步骤S67判断j是否小于16。如果j小于16,返回到图7中的步骤S54,并且现在在嵌套图象区N中从开始位置在j(水平)方向移动一个象素而提取的各类型的象素块Unk受到类似的处理。之后的过程被同样地执行。只要j不小于16,在步骤S68,开始位置寄存器j就被初始化为-16,并且开始位置寄存器k加1。在步骤S69,判断k是否小于16。在k小于16的情况下,返回到图7中的步骤S54,并且现在在嵌套图象区N中从开始位置在k(垂直)方向移动一个象素而提取的各类型的象素块Unk受到类似的处理。在步骤S69的判决中,只要k不小于16,则根据所有子采样间隔:
(sx,sy)∈{(1,1),(1,2),(1,3),(1,4),(2,1),(2,2),(2,3),....,(4,4)}
对于在嵌套图象区域N中所有开始位置:
(j,k)∈[16,15]x[16,15]提取的所有类型的象素块Unk都被进行检查。这样,过程前进到图8中的步骤S71。
在步骤S71,保存有与最小值εr相关的信息的每个寄存器X,Y,SX,SY和α的存储器内容和各存储区域V、V’的内容分别存储到出口区域x(nk),y(nk),sx(nk),sy(nk),α(nk),V(nk)和V(nk)中。在步骤S72,判断Fmin是否小于Z。在Emin不小于Z的情况下,在步骤S73,根据:
<d>=<d>-αnk<V’nk>
来刷新剩余差矢量<d>。在步骤S74,基数量计数器nk加1。在步骤S75,判断nk是否大于7。在nk不大于7的情况下,返回到图7中的步骤S53,执行类似于上面的处理,以接近如上述那样刷新的剩余差矢量<d>。之后的过程被同样地进行。然后,只要在步骤S72的判断中剩余差矢量<d>的数量Emin小于可接受的值Z,则转到步骤S76。
图14(C)示出用于基数量nk=3的剩余差矢量<d>的接近的图象。首先能得出使相关于剩余差矢量<d>的误差εr最小的第一个基矢量α1<V’1>。然后,能得出与第一个基矢量α1<V’1>正交的并且使相关于刷新的保留剩余差矢量<d’>的误差εr最小的第二个正交基矢量α2<V’2>。然后,能获得与该第二个正交基矢量α2<V’2>正交并且使相关于刷新的保留剩余差矢量<d”>的误差εr最小的第三个正交基矢量α3<V’3>。
回到图9,在步骤S76,正交基矢量αq<V’q>(q=1至nk)的一系列线性组合被变换成由标量导出系数βq与所提取的象素(非正交基)矢量<Uq>(q=1至nk)形成的一个线性组合。
这里将解释上述的步骤S76中的变换方法。假设q为q=1至nk,并且,提取的象素矢量<Uq>的矩阵U、标量导出系数βq的矩阵B、归一化的正交基矢量<V’q>的矩阵V’以及标量系数αq的矩阵A分别为:
U=[U1,U2,…Unk]
&beta; = &beta; 1 &beta; 2 . . . . &beta; nk
V &prime; = [ V &prime; 1 , V &prime; 2 , &CenterDot; &CenterDot; &CenterDot; V &prime; nk ] - - - A = a 1 a 2 . . . . a nk
在上述步骤S76中的变换可以如此实现:
Uβ=V’A
对于矩阵B的解,从该公式的左边用矩阵UT(UT是U的转置矩阵)乘以矩阵U,使变换矩阵U为平方矩阵,得到:
UTUβ=UTV’A
该矩阵(UTU)被推导为:
U T U = U 1 U 2 . . . . U nk
[ U 1 , U 2 , &CenterDot; &CenterDot; &CenterDot; U nk ] = U 1 &CenterDot; U 1 U 1 &CenterDot; U 2 . . . U 1 &CenterDot; U nk U 2 &CenterDot; U 1 U 2 &CenterDot; U 2 . . . U 2 &CenterDot; U nk . . . . . . . . . . . . . . . . U nk &CenterDot; U 1 U nk &CenterDot; U 2 . . . U nk &CenterDot; U nk
由于<Ui>·<Ui>表示一个内积并且<Ui>·<Uj>=<Uj>·<Ui>,就得出关于对角线元素对称的平方矩阵,并且如<Ui>那样的逆矩阵不同于<Uj>。因此,进一步地,矩阵(UTU)被左乘一个逆矩阵(UTU)-1,得到:
(UTU)-1UTUβ=β=(UTU)-1UTV’A
在此,假设三维矢量<U1>=[1,2,3]和<U2>=[4,2,1],则该平方矩阵(UTU)为:
U T U = U 1 U 2
U 1 U 2 = U 1 &CenterDot; U 1 U 1 &CenterDot; U 2 U 2 &CenterDot; U 1 U 2 &CenterDot; U 2 = 14 11 11 21
并且逆矩阵(UTU)-1为:
[ U T U ] - 1 = 21 173 - 11 173 - 11 173 14 173
由于由此得出其标量导出系数βq(q=1至nk)的结构,所提取的象素块Uq(q=1到nk)的坐标和子采样间隔的信息以编码形式输出,上述通过Gram-Schmidt方法的正交计算在解码时并不需要执行,归一到1的归一化可被省略。
如果在步骤S75的判断中nk大于7,则该过程被中止,因为在编码输出中不再期望更高的图象质量和更高的成像压缩比,即使此自适应正交变换过程继续进行。
图10和图11分别示出根据一个实施例的解码过程。尽管这些过程是移动图象编码装置中的解码过程,但它们也适用于移动图象解码装置中的解码过程。图10示出解码的主要过程,其中用于一个图像的第一编码数据CD在接收到时就被输入。在步骤S81,指示8×8象素的解码象素块T的存储座标的位置寄存器Px、Py被初始化为Px=0、Py=0。在步骤S82,移动矢量<M>的编码数据(Mx,My)和块划分标志(对应于一个比特)从编码数据CD中被读出。在步骤S83,判断块划分标志f是否等于O。如果f=0(该块不划分),在步骤S84,8×8象素的先前象素块FPx+Mx,FPy+My从存储器16的地址(Px+Mx,Py+My)中读出并且作为解码象素块TPx,Py储存在帧缓冲器15的地址(Px,Py)中。如果f=1(块被划分),则在步骤S85中执行稍后所述的帧间逆AOT解码过程。
在步骤S86,位置寄存器Px加8,并且在步骤S7判断Px是否小于V。如果Px小于V,返回到步骤S82,对在X轴方向移动8象素的下一个解码象素块TPx+8,Py执行类似于上面的解码过程。之后的过程被同样地进行。在步骤S87的判断中,只要Px不小于V,转到步骤S88,将位置寄存器Px初始化为0,并且位置寄存器Py加8。在步骤S89,判断Py是否小于W。如果Py小于W,返回到步骤S82,对在Y轴方向移动8象素的下一个解码象素块TPx,Py+8执行类似于上面的解码过程。之后的过程被同样地执行。只要当Py不小于W,就完成对于一帧的解码过程。
图11示出图10中的步骤S85的帧间逆AOT解码过程。在步骤S90,从编码数据CD中读出各子级象素块的DC值DCi(i=1至4)。在步骤S91,用于指示先前的子级象素块Fi和解码的子级象素块Ti的寄存器i被初始化为i=0。在步骤S92,从编码数据CD中读出基数量nk。在步骤S93,判断nk是否大于7。如果nk大于7,转到步骤S94,从编码数据CD中读出当前子级象素矢量<Bi>。DC值DCi被加到该矢量上,其和作为当前子级象素块Ti被储存在帧缓冲器15的相应的位置(该位置由位置寄存器(Px,Py)和用于子级象素块的索引寄存器i指定)。
如果nk不大于7,转到步骤S95,8×8象素的先前象素块FPx+Mx,FPy+My被分成四个4×4象素的先前的子级象素块Fi(i=1至4),它们的每一个的DC值DCi(i=1至4)被分离出。剩余的AC分量被称为先前的子级象素矢量Fi(i=1至4)。
在步骤S96,判断nk是否等于1。如果nk为1,转到步骤S97,从编码数据CD中读出标量系数αi,它由解码的子级象素矢量<Ti>=αi<Fi>+DCi再现并且储存在帧缓冲器15的相应的位置。如果nk不为1,则在步骤S98,从编码数据CD中读出如nk一样多的标量导出系数βq、如nk-1一样多的所提取的象素块<Uq>(q=2至nk)的坐标(x,y),以及子采样间隔(sx,sy)。在步骤S99,基于这些数据将子级象素块Bi的DC值DCi加到非正交基矢量Bq<Uq>的线性组合上,以产生解码的子级象素矢量<Ti>,它们被储存在帧缓冲器15的相应的位置。在此,这种情况下的第一个基矢量<U1>=<F1>在解码单元14中是已知的。
在步骤S100,寄存器i加1,并且在步骤S101判断i是否小于5。如果i小于5,返回到步骤S92,对于下一个解码的子级象素块Ti执行类似于上面的解码过程。只要i不小于5,解码的子级象素块T1至T4的解码再现过程就结束并且被中止。
下面,分别用根据本发明的AOT方法和传统的DCT方法来比较移动补偿的帧间期望中误差的编码效率。图15和图16分别示出AOT(1)和DCT(2)的编码量(每一象素的比特)和以PSNR(峰峰值信噪比)表示的图象质量之间的关系。图15显示的是一个风景“花园”,而图16显示的是一个招贴图片“移动物体”。在此,尽管未示出采样图象,“花园”(Y分量,720乘486象素,256级灰度)是由http://www.ee.princeton,edu^ykchen/coding.html#SEQ的RPI制作的共用视频序列和共用静止画面下载的,而“移动物体”(G分量,720乘486象素,256级灰度)是从http://www.ee.princeton,edu^ylrchen/coding.html#SEQ的RPI制作的共用视频序列和共用静止画面下载的。
用于比较测验的条件被确定为:
BPP=(数据总量[比特])/(原始图象中的象素数量)
PSNR = 20 log 10 ( 255 / &epsiv; 2 ) [ dB ]
其中ε2表示各象素的均方误差,包括哈弗曼表和移动矢量的编码的数据总量。图象数据采取单色密度图象,采用了四个连续帧。“移动物体”的G成份用作移动图象数据。在AOT或DCT中,对每个8×8象素的宏块在垂直的方向上执行移动补偿帧间期望。移动矢量<M>=(Mx,My)的尺寸取为-16≤Mx,My<15,并且使平方误差最小的<M>经全部搜索而获得。移动矢量<M>的该两个分量是所期望的并且用哈弗曼编码互相独立地编码。另外,不失真的数据用于第0帧,据此计算出用于第一个帧的所期望的误差。在DCT的量化表中,所有分量均为16。对于每帧来说,哈弗曼编码表是理想的。此基的压缩算法是根据MPEG-2[文献9]。
在与“花园”相关的图15及与“移动物体”相关的图16中,各图的(A)、(B)和(C)分别对应于第一、第二和第三帧的处理结果;实线对应于AOT的结果;虚线对应于DCT的结果;从左边开始,在格线上的那些节点分别对应于可接受的误差Z:1600、800、400、200和100。从图14和15,显见对于DCT需要1.12至1.17BPP的编码量,以获得帧间AOT用1.0BPP的编码量可完成的图象质量。同样地,可以看到用帧间AOT的编码量小于用DCT的编码量的10%至25%,对于35至40dB范围的图象质量这是实用的。
当比较“移动物体”的结果和“花园”的结果时,对于自然景致“花园”采用AOT的编码效率所得到的改善比一个物体以简单形式水平移动所形成的“移动物体”的编码效率的改善更为显著。这是认为由于“花园”包括更复杂的物体和移动,从而其采用DCT的帧间期望的误差比用于“移动物体”的帧间期望的误差大并且复杂。当目标图象的相邻的象素(图象单元)之间的相互关系显著时,DCT为具有最高编码效率的正交变换。因此,对于在DCT的图象平面内的主要分量来说,方向依赖性更为显著,并且DCT几乎不用作适合于该处的帧间估算的误差的压缩的一个基系。
相反地,AOT中的第一个基是通过移动补偿而获得的最高相关象素(亮度)矢量,据此从与第一个基正交的第二个基直接地完成适于期望的误差的接近的高频分量。实际上,集中于围绕着目标的外围的分量的第二个基是容易形成的,由此可以预期基的数量的减少。可以认为,由于效率,采用一个比传统的正交变换(比如DCT)小的编码量就有可能达到误差接近。因此,应可有把握地说,具有与总是可用的先前的帧的相关性的AOT可以达到比DCT更高的编码效率,在DCT中基矢量从要编码的数据中独立地确定。
虽然参考实际数值(比如比特数,象素数量,等等)的例子说明了上述的实施例,本发明当然并不限于这些示例性的数值。
虽然根据图5描述了移动矢量计算过程的例子,但用各种其他的已知方法也可得出移动矢量。
另外,在图3(A)的移动图象编码装置中,编码数据CD受进一步的哈弗曼编码之后可以输出。另外,在图3(B)的移动图象解码装置中,编码数据CD受进一步的哈弗曼解码之后可以输入。
如上所述,在电视、动画、CG游戏等中的移动图象数据可以高图象质量并且用高数据压缩比率(编码效率)被高速地编码/解码,这对于移动图象处理技术的贡献是相当显著的。
虽然已经完整地和清楚地描述了具体的实施例,但后附的权利要求并不限制于此,而是为了构成对于本领域的技术人员来说是可以达至的所有修改和替换结构的实施,它们都公平地属于此处所阐述的基本教导之中。

Claims (7)

1.一种用于对移动图象进行编码的方法,包括下述步骤:
逐个地将要被编码的当前图象的象素块与在一个预定的先前帧的区域内的先前的图象的一个象素块进行比较;
查找使匹配误差最小化的一个特定的先前图象象素块;
如果相关于所述特定的先前图象象素块的所述最小匹配误差超过一个可接受的数值,则得出一个或多个正交基系,用于通过帧间自适应正交变换接近所述当前图象象素块中的AC分量矢量,该转换在包括所述特定的先前图象象素块的一个预定的区域内具有作为其嵌套的先前图象数据,并且对所述一个或多个正交基系进行编码;及
如果相关于所述特定的先前象素块的最小匹配误差不超过一个可接受的值,则根据表示一个特定的先前象素块的移动矢量对所述当前象素块进行编码。
2.根据权利要求1所述的用于对移动图象进行编码的方法,其特征在于,基于所述特定的先前象素块的一个AC分量矢量来产生用于在所述当前图象象素中接近AC分量矢量的第一个基。
3.根据权利要求2所述的用于对移动图象进行编码的方法,其特征在于,
假设所述用于接近当前图象象素块的AC分量矢量的正交基系由基于嵌套象素块Uq的各归一化正交基<V’q>的线性组合:
α1<V’1>+α2<V’2>+…+αnk<V’nk>
表示,nk为整数,其中包括所述特定的先前象素块;
将所述组合利用AC分量矢量<Uq>的组合变换到线性组合:
β1<U1>+β2<U2>+…+βnk<Unk>
此组合等价于上面所述的组合;和,
所述基的所述数量nk、标量导出系数βq(q=1至nk)、嵌套象素块Uq的座标(x,y)以及至少与AC分量矢量<Uq>(q=2至nk)相关联的子采样间隔(sx,sy)被编码。
4.根据权利要求3所述的用于对移动图象进行编码的方法,其特征在于,如果所述基nk的数量超过一个预定值,则所述当前图象象素块本身被编码。
5.根据权利要求1至4的其中任一所述的用于对移动图象进行编码的方法,其特征在于,所说当前象素块和与其相应的特定的先前象素块都被划分成相同尺寸的子级象素块;及
各所述子级象素块都受到帧间自适应正交转换。
6.一种用于对移动图象进行编码的装置,它包括:
一个第一存储器,用于存储包含一个象素块的当前图象数据;
一个第二存储器,存储包含一个象素块的先前的帧的图象数据;
一个移动矢量计算单元,用于计算表示这样的在所述先前的帧中的特定的象素块的一个移动矢量,即通过顺序地将要编码的所述当前图象的象素块与所述先前的帧的一个预定的区域内的先前象素块进行比较,该所述先前的帧中的特定的象素块使匹配误差最小;和
一个帧间自适应正交转换编码单元,用于计算一个或多个正交基系,以借助于帧间自适应正交变换接近当前象素块AC分量矢量,该变换在包括所述特定的先前象素块的一个预定的区域内具有作为嵌套的先前的图象数据,并且如果相关于所述特定的先前象素块的最小匹配误差超过一个可接受的值,就对所述一个或多个正交基系进行编码,并且如果相关于所述特定的先前象素块的最小匹配误差不超过一个可接受的值,则根据表示一个特定的先前象素块的移动矢量对所述当前象素块进行编码。
7.根据权利要求6所述的用于对移动图象进行编码的装置,其特征在于,它还包括:
一个解码单元,用于根据所述帧间自适应正交变换编码单元的编码输出和所述第二存储器中的先前的帧的所述图象数据来顺序地对所述当前时间的象素块进行解码/存储,以将它们作为先前的帧的所述图象数据传送到所述第二存储器。
CNB991229932A 1998-12-24 1999-12-24 对移动图象进行编码的方法和装置 Expired - Fee Related CN1149850C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP36760898A JP2000197054A (ja) 1998-12-24 1998-12-24 動画像符号方法及びそのプログラムを記録した記録媒体並びに装置
JP367608/1998 1998-12-24

Publications (2)

Publication Number Publication Date
CN1264255A CN1264255A (zh) 2000-08-23
CN1149850C true CN1149850C (zh) 2004-05-12

Family

ID=18489743

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB991229932A Expired - Fee Related CN1149850C (zh) 1998-12-24 1999-12-24 对移动图象进行编码的方法和装置

Country Status (8)

Country Link
US (1) US6731810B1 (zh)
EP (1) EP1014727A3 (zh)
JP (1) JP2000197054A (zh)
KR (1) KR100378339B1 (zh)
CN (1) CN1149850C (zh)
CA (1) CA2292820A1 (zh)
MX (1) MXPA99012106A (zh)
TW (1) TW454159B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001091469A1 (en) * 2000-05-19 2001-11-29 Koninklijke Philips Electronics N.V. Method, system and apparatus
JP4570065B2 (ja) * 2001-04-13 2010-10-27 Kddi株式会社 適応直交変換符号化装置
US7151856B2 (en) * 2002-04-25 2006-12-19 Matsushita Electric Industrial Co., Ltd. Picture coding apparatus and picture coding method
US7903892B2 (en) * 2002-10-29 2011-03-08 Ati Technologies Ulc Image analysis for image compression suitability and real-time selection
US7643679B2 (en) 2003-02-13 2010-01-05 Ati Technologies Ulc Method and apparatus for block based image compression with multiple non-uniform block encodings
US8111928B2 (en) 2003-02-13 2012-02-07 Ati Technologies Ulc Method and apparatus for compression of multi-sampled anti-aliasing color data
US7764833B2 (en) * 2003-02-13 2010-07-27 Ati Technologies Ulc Method and apparatus for anti-aliasing using floating point subpixel color values and compression of same
US7606429B2 (en) * 2005-03-25 2009-10-20 Ati Technologies Ulc Block-based image compression method and apparatus
US20080129361A1 (en) * 2006-12-05 2008-06-05 Rajesh Mamidwar Method and system for programmable delays on transport outputs
US9218643B2 (en) * 2011-05-12 2015-12-22 The Johns Hopkins University Method and system for registering images
JP6537396B2 (ja) * 2015-08-03 2019-07-03 キヤノン株式会社 画像処理装置、撮像装置および画像処理方法
EP3166313A1 (en) 2015-11-09 2017-05-10 Thomson Licensing Encoding and decoding method and corresponding devices
CN111787330B (zh) * 2020-06-16 2022-03-08 眸芯科技(上海)有限公司 支持解码压缩帧缓存自适应分配的编码方法及应用

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157743A (en) * 1987-10-28 1992-10-20 Canon Kabushiki Kaisha Image information coding apparatus
FR2700632B1 (fr) * 1993-01-21 1995-03-24 France Telecom Système de codage-décodage prédictif d'un signal numérique de parole par transformée adaptative à codes imbriqués.
AUPM661494A0 (en) * 1994-07-01 1994-07-28 Commonwealth Scientific And Industrial Research Organisation Fractal representation of data
US6215910B1 (en) * 1996-03-28 2001-04-10 Microsoft Corporation Table-based compression with embedded coding
ES2182972T3 (es) * 1996-04-19 2003-03-16 Nokia Corp Codificador y descodificador de video utilizando procedimientos de segmentacion y fusion de movimiento.
US6463341B1 (en) * 1998-06-04 2002-10-08 The United States Of America As Represented By The Secretary Of The Air Force Orthogonal functional basis method for function approximation

Also Published As

Publication number Publication date
KR100378339B1 (ko) 2003-03-29
TW454159B (en) 2001-09-11
CA2292820A1 (en) 2000-06-24
MXPA99012106A (es) 2004-12-01
CN1264255A (zh) 2000-08-23
EP1014727A2 (en) 2000-06-28
US6731810B1 (en) 2004-05-04
EP1014727A3 (en) 2001-06-27
KR20000052551A (ko) 2000-08-25
JP2000197054A (ja) 2000-07-14

Similar Documents

Publication Publication Date Title
CN1149850C (zh) 对移动图象进行编码的方法和装置
CN1193620C (zh) 视频编码器的运动估计方法及系统
CN1187988C (zh) 运动补偿装置和运动图象编码装置及方法
CN1076932C (zh) 图像信号编码和解码的方法与装置
CN1064207C (zh) 图象重播装置
CN1678074A (zh) 用于在分层运动估计中产生运动矢量的方法和装置
CN1808469A (zh) 图像检索装置及方法、程序和程序记录介质
CN1658673A (zh) 视频压缩编解码方法
CN1875636A (zh) 视频发送装置以及视频接收装置
CN1158875C (zh) 数字图像像素填补法及用该法的数字图像编码与解码装置
CN1910931A (zh) 视频编码方法及装置、视频解码方法及装置、其程序及记录该程序的记录介质
CN1240226C (zh) 有漂移补偿的视频代码转换器和用于补偿漂移的设备
CN1705375A (zh) 预测编码器/解码器以及预测编码/解码方法
CN1655621A (zh) 视频通信装置与方法
CN1374789A (zh) 数字图象压缩方法
CN1197359C (zh) 获得增强译码的降低分辨率的视频信号的设备和方法
CN1909666A (zh) 运动检测装置
CN1331451A (zh) 信息检索系统
CN1941913A (zh) 用于跳跃图像的方法和设备
CN1742488A (zh) 用于编码和解码立体视频的方法和装置
CN1578477A (zh) 用于色彩图像的视频编码/解码装置和方法
CN1212561A (zh) 图象处理方法、图象处理装置、和数据存储媒体
CN1180627C (zh) 图像编码/解码方法,图像编码装置和图像解码装置
CN1816154A (zh) 用于运动估计的方法和装置
CN1489391A (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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee