CN1630374A - 用于前向预测的隔行扫描视频帧的场的预测运动矢量 - Google Patents

用于前向预测的隔行扫描视频帧的场的预测运动矢量 Download PDF

Info

Publication number
CN1630374A
CN1630374A CNA2004100771922A CN200410077192A CN1630374A CN 1630374 A CN1630374 A CN 1630374A CN A2004100771922 A CNA2004100771922 A CN A2004100771922A CN 200410077192 A CN200410077192 A CN 200410077192A CN 1630374 A CN1630374 A CN 1630374A
Authority
CN
China
Prior art keywords
motion vector
vector predictor
field
macro block
polarity
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
CNA2004100771922A
Other languages
English (en)
Other versions
CN100579229C (zh
Inventor
T·W·豪尔克姆
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1630374A publication Critical patent/CN1630374A/zh
Application granted granted Critical
Publication of CN100579229C publication Critical patent/CN100579229C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding
    • 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/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets

Abstract

描述用于编码和解码隔行扫描的视频中预测图象的技术和工具。例如,视频编码器或解码器为隔行扫描的P场的一部分(例如,一个块或宏块)的运动矢量计算运动矢量预测值,包括在为该部分使用相同极性或使用相反极性的运动矢量预测值之间选择。编码器/解码器至少部分地基于为该运动矢量计算的运动矢量预测值来处理运动矢量。该处理可以包括在编码过程中计算运动矢量与运动矢量预测值之间的差分,并在解码过程中由运动矢量差分与运动矢量预测值来重新构造运动矢量。该选择可以至少部分地基于在该部分周围的近邻的相反极性运动矢量的计数和/或相同极性运动矢量的计数。

Description

用于前向预测的隔行扫描视频帧的场的预测运动矢量
相关申请信息
本发明要求2003年九月7日提交的美国临时专利申请号60/501,081,标题为“Video Encoding and Decoding Tools and Techniques(视频编码和解码工具与技术)”的利益,通过引用将它包括在此。
技术领域
描述用于隔行扫描视频编码和解码的技术与工具。例如,视频编码器/解码器为隔行扫描视频帧的场计算运动矢量预测值。
背景技术
数字视频消耗大量的存储器和传输容量。典型的未加工的数字视频序列每秒包括15或30个图象。每个图象可以包括几万或几十万像素(pixel)(也称为pels(象素))。每个像素代表图象中的一个微小元素。在未加工的形式中,计算机通常用24比特或更多的比特来表示一个像素。因而,典型的未加工的数字视频序列的每秒比特数,或者比特率可以是5百万比特/秒或更多。
许多计算机和计算机网络缺乏资源来处理未加工的数字视频。因此,工程师使用压缩(也称为编码(coding或encoding))来降低数字视频的比特率。压缩可以是无损的,其中视频的质量不受损害,但对比特率的减少受到视频复杂性的限制。或者,压缩可以是有损的,其中视频的质量受到损害,但对比特率的减少更有效。解压缩与压缩相反。
一般而言,视频压缩技术包括“帧内(intra)”压缩和“帧间(inter)”或预测压缩。帧内压缩技术压缩单独的图片,一般称为I图片或关键图片。帧间压缩技术参考先前和/或后面的图片来压缩图片,且一般称为预测图片、P图片或B图片。
I.在Windows Media Video(视窗媒体视频)版本8和9中的帧间压缩
Microsoft(微软)公司的Windows Media Video版本8[“WMV8”]包括视频编码器和视频解码器。WMV8编码器使用帧内和帧间压缩,WMV8解码器使用帧内和帧间解压缩。Windows Media Video版本9[“WMV9”]的早期版本对于许多操作使用相似的结构。
WMV8编码器中的帧间压缩使用基于分块的运动补偿预测编码,后跟随剩余误差(residual error)变换编码。图1和2例示在WMV8编码器中对于预测帧的基于分块的帧间压缩。特别地,图1例示预测帧110的运动估计,而图2例示预测帧的运动补偿块的预测剩余部分(prediction residual)的压缩。
例如,在图1中,WMV8编码器为预测帧110中的宏块(macroblock)115计算运动矢量。为了计算运动矢量,编码器搜索参考帧130的搜索区135。在搜索区135内,编码器将来自预测帧110的宏块115与各种候选宏块比较,以便找出一个良好匹配的候选宏块。编码器输出指定用于匹配宏块的(熵编码的)运动矢量的信息。
由于运动矢量值常常与在空间上环绕运动矢量的值有关系,用于传输运动矢量信息的数据压缩可以通过选择来自相邻宏块的运动矢量预测值并使用该预测值为当前宏块预测运动矢量来完成。编码器可以编码运动矢量与预测值之间的差分。在通过将差分加到预测值上来重新构造运动矢量之后,解码器使用运动矢量,用来自在参考帧130的信息来为宏块115计算预测宏块,其中参考帧130是先前重新构造的、在编码器和解码器可得到的帧。预测很少是完美的,因此编码器通常编码预测宏块与宏块115本身之间像素差的块(也称为误差或剩余块)。
图2例示在WMV8编码器中误差块235的计算与编码的例子。误差块235是预测块215与原来的当前块225之间的差。编码器将DCT 240应用于误差块235,得到一个8×8的系数块245。编码器随后量化250DCT系数,得到8×8最化的DCT系数块255。编码器将8×8块255扫描260到一维阵列265中,使得系数通常从最低频率到最高频率排序。编码器使用游程长度编码(run lengthencoding)270的变体来熵编码经扫描的系数。编码器从一个或多个行程/级/最后(run/level/last)表275选择一个熵代码并输出这个熵代码。
图3示出用于帧间编码块的相应解码过程300。在图3中概括地说,使用具有一个或多个游程/级/最后表315的可变长度解码(variable lengthdecoding)310和游程长度解码(run length decoding)320,解码器解码(310,320)表示预测剩余部分的经熵编码的信息。解码器将存储经熵解码的信息的一维阵列325逆扫描330到二维块335中。解码器逆量化并逆离散余弦变换(一起,340)数据,得到重新构造的误差块345。在一个独立的运动补偿路径中,解码器使用用于离参考帧的位移的运动矢量信息355来计算预测的块365。解码器将预测块365与重新构造的误差块345结合起来,来形成重新构造的块375。
原来的与重新构造的帧之间的改变量就是失真,而编码帧所需要的位数表示帧的速率。失真量约略与速率成反比。
II.隔行扫描的视频和逐行扫描的视频
典型的隔行扫描视频帧由不同时间开始的两个场组成。例如,参考图4,隔行扫描的视频帧400包括顶场410和底场420。通常,在一个时间(时间t)开始扫描偶数行(顶场)并在一个不同(一般稍后)时间(例如时间t+1)开始扫描奇数行(底场)。这个时序可以在存在运动的隔行扫描的视频帧的区域中产生锯齿化牙状特点,因为在不同时间开始扫描两个场。因此,可以按照场结构重新安排隔行扫描的视频帧,将奇数行一起分组在一个场中,而将偶数行一起分组在另一个场中。这种安排,称为场编码,在高度运动的图象中对于减少这样的锯齿化边缘人为假象是有用的。另一方面,在静止区域中,可在没有这样的重新安排的情况下,更有效地保持隔行扫描视频帧中的图象细节。因此,在静止或低度运动的隔行扫描视频帧中常常使用帧编码,其中保持原来交替的场行安排。
典型的逐行扫描视频帧由一个具有非交替行的内容的帧组成。与隔行扫描的视频相比,逐行扫描的视频不将视频帧划分成独立的场,而是在单一时间开始从左至右、由顶至底扫描整个帧。
III.在WMV9的早期版本中隔行扫描P帧编码与解码
Windows Media Video版本9[“WMV9”]的早期版本,使用隔行扫描P帧编码和解码。在WMV9的这些早期版本中,隔行扫描的P帧可以包含以场模式或者以帧模式编码的宏块,或者被跳过的宏块,其中通常在一个接一个宏块基础上作出判决。两个运动矢量与每一个场编码的宏块相关联,而一个运动矢量与每一个帧编码的宏块相关联。编码器联合地编码宏块中块的运动信息,包括水平和垂直运动矢量差分分量,有可能连同其它信令(signaling)信息。
在编码器中,通过计算运动矢量与运动矢量预测值之间的差分来编码运动矢量,其中运动矢量预测值是根据相邻的运动矢量来计算的。而且,在解码器中,通过将运动矢量差分加到运动矢量预测值上来重新构造运动矢量,其中运动矢量预测值再次是根据相邻的运动矢量计算的(这次是在解码器中)。
图5、6和7示出在WMV9的早期版本中的隔行扫描的P帧中,分别用于帧编码的宏块和场编码的宏块的运动矢量预测值的候选预测值的例子。图5示出用于隔行扫描的P帧中的内部位置中当前的帧编码宏块的候选预测值A、B和C(不是宏块行中第一或最后一个宏块,不是在顶行中)。可以从不同于那些标注A、B和C的候选方向获得预测(例如在诸如在当前宏块是一行或顶行中的第一个宏块或最后一个宏块时这样的特殊情况下,因为对于这样的情况某些预测值是不能得到的)。对于当前帧编码的宏块,取决于相邻的宏块是场编码的还是帧编码的来不同地计算预测值候选。对于相邻的帧编码宏块,简单地取运动矢量作为预测值候选。对于相邻的场编码宏块,通过对顶与底场运动矢量取平均来确定候选运动矢量。
图6和7示出用于在宏块行中但不在顶行中、不是第一或最后一个宏块的场编码宏块中的当前场的候选预测值A、B和C。在图6中,当前场是底场,并使用相邻宏块中的底场运动矢量作为候选预测值。在图7中,当前场是顶场,并使用顶场运动矢量作为候选预测值。因而,对于当前的场编码宏块中的每一个场,用于每一个场的运动矢量预测值候选的数量最多是三,其中每一个来自同一场类型(例如顶或底)的每一个候选作为当前场。
用于当前宏块或当前宏块的场的预测值是根据候选预测值来选择的,并根据预测值来计算运动矢量差分。可以通过在编码器或解码器任意一边将运动矢量差分加到选择的运动矢量预测值上,来重新构造运动矢量。通常,由经编码的运动信息来重新构造亮度运动矢量,而由重新构造的亮度运动矢量来导出色度运动矢量。
IV.用于视频压缩和解压缩的标准
除WMV8和WMV9的早期版本之外,若干国际标准涉及视频压缩和解压缩。这些标准包括运动图片专家组[“MPEG”]1、2和4标准和来自国际电信联合会[“ITU”]的H.261、H.262、H.263和H.264标准。用于在国际标准中实现数字视频序列的数据压缩的一种基本方法是要减少图片之间的时间冗余(temporalredundancy)。这些流行的压缩方案(MPEG-1、MPEG-2、MPEG-4、H.261、H.263等)使用运动估计和补偿。例如,将当前帧被划分成统一的正方形区域(例如块和/或宏块)。为每一当前区域通过发送用于该区域的运动矢量信息来指定匹配的区域。运动矢量表示在先前编码(和重新构造)的帧中要用作当前区域的预测值的区域的位置。导出当前区域与参考帧中的区域之间一个接一个像素的差,称为误差信号。这个误差信号通常具有比原来的信号低的熵。因此,可以用较低的速率来编码该信息。如在WMV8和WMV9的早期版本中,由于运动矢量值常常与在空间环绕的运动矢量有关系,用于表示运动矢量信息的数据的压缩可以通过编码当前运动矢量与基于先前编码的相邻运动矢量的预测值之间的差分来完成。
此外,有些国际标准描述在隔行扫描视频帧中的运动估计和补偿。H.262标准允许隔行扫描的视频帧编码为单一帧或为两个场,其中可以自适应地在一帧接一帧的基础上选择帧编码或场编码。H.262标准描述基于场的预测,它是只使用参考帧的一个场的预测模式。H.262标准还描述双主预测(dual-primeprediction),这是一种预测模式,其中为隔行扫描的P图象中一个16×16块平均两个前向的基于场的预测。H.262标准的7.6节描述“场预测”,包括在两个参考场之间选择用于隔行扫描视频帧的当前场的宏块的运动补偿。7.6.3节描述运动矢量预测和重新构造,其中用于给定宏块的重新构造的运动矢量变成用于随后被编码/被解码的宏块的运动矢量预测值。这样的运动矢量预测在许多情况下未能恰当地为隔行扫描视频帧的场的宏块预测运动矢量。
给出对数字视频的视频压缩和解压缩的急迫重要性,不会惊讶视频压缩和解压缩是高度发展的领域。无论前面的视频压缩和解压缩技术有什么好处,但是,它们不具有下面的技术和工具的优点。
发明内容
总而言之,详细的描述是针对用于编码和解码隔行扫描的视频中预测视频图象的各种技术和工具的。所述的技术包括为隔行扫描视频帧的块或宏块计算运动矢量预测值的技术。这些技术在许多情况下提高运动矢量预测值的准确性,从而减少了与编码用于隔行扫描视频帧的场的运动矢量信息相关联的比特率。可以组合地或独立地使用各种技术和工具。
在第一方面,编码器/解码器为隔行扫描的P场的一部分(例如块或宏块)的运动矢量计算运动矢量预测值,包括在为该部分使用相同极性运动矢量预测值与使用相反极性运动矢量预测值之间选择。编码器/解码器至少部分地基于为运动矢量计算的运动矢量预测值来处理运动矢量。该处理可以包括在编码过程中计算运动矢量与运动矢量预测值之间的运动矢量差分,和在解码过程中由运动矢量差分与运动矢量预测值重新构造运动矢量。该选择可以至少部分地基于在该部分周围的近邻的相反极性运动矢量的计数和/或近邻的相同极性运动矢量的计数。该选择还可以至少部分地基于比特流中单个比特信号。该选择可以包括至少部分地基于在该部分周围的近邻的相反极性运动矢量的计数和/或近邻的相同极性运动矢量的计数来确定主导预测值,并基于主要预测值和比特流中的单个比特信号来选择相同极性运动矢量预测值或者相反极性运动矢量预测值。
该选择还可以包括,如果用于该部分的运动矢量参考相同极性场,则选择相同极性运动矢量预测值,或者如果用于该部分的运动矢量参考相反极性场,则选择相反极性运动矢量预测值。
可以作为在该部分周围的近邻的多个相同极性的运动矢量预测值候选的中值来计算相同极性运动矢量预测值,并可以作为在该部分周围的近邻的多个相反极性的运动矢量预测值的中值来计算相反极性运动矢量预测值。相同极性运动矢量预测值候选可以通过定标相反极性运动矢量预测值候选来导出,并且相反极性运动矢量预测值可以通过定标相同极性运动矢量预测值候选来导出。
在另一方面,编码器/解码器至少部分地基于多个相邻的运动矢量为隔行扫描的P场的一部分的运动矢量计算运动矢量预测值,其中,多个相邻的运动矢量包括一个或多个相反极性运动矢量和一个或多个相同极性运动矢量。编码器/解码器至少部分地基于为运动矢量计算的运动矢量预测值来处理运动矢量。可以作为多个相同极性运动矢量预测值候选的中值来计算相同极性运动矢量预测值,其中,至少基于定标来自一个或多个相反极性运动矢量之一的值来导出多个候选的至少一个,以及可以作为多个相反极性运动矢量预测值候选的中值来计算相反极性运动矢量预测值,其中,至少基于定标来自一个或多个相同极性运动矢量之一的值来导出多个候选的至少一个。
在另一方面,编码器/解码器处理隔行扫描的预测视频帧,这是通过为视频帧中当前场中的宏块确定运动矢量预测值候选的第一集合,运动矢量预测值候选的第一集合引用具有相对于当前场的相同极性的第一参考场。至少部分地基于运动矢量预测值候选的第一集合中的一个或多个,为宏块计算第一运动矢量预测值。为宏块确定运动矢量预测值候选的第二集合,运动矢量预测值候选的第二集合引用具有相对于当前场的相反极性的第二参考场。至少部分地基于运动矢量预测值候选的第二集合的一个或多个,为宏块计算第二运动矢量预测值。
在该处理中使用第一和第二运动矢量预测值,诸如通过选择第一和第二运动矢量预测值之一并基于选择的运动矢量预测值为宏块计算运动矢量差分,和/或选择第一和第二运动矢量预测值之一并将选择的预测值与运动矢量差分结合起来,为宏块重新构造运动矢量。可以熵编码运动矢量差分。
在另一方面,通过定标具有不同于第一极性的第二极性的实际运动矢量值来计算第一极性运动矢量预测值候选。当为隔行扫描的P场的一部分的运动矢量计算运动矢量预测值时,使用第一极性运动矢量预测值候选。在编码过程中计算运动矢量与运动矢量预测值之间的运动矢量差分。在解码过程中由运动矢量差分与运动矢量预测值来重新构造运动矢量。第一极性运动矢量预测值候选具有与该部分相反的场极性,其中,实际运动矢量值具有与该部分相同的场极性,以及其中,调整定标以从相同极性定标成相反极性。或者,第一极性运动矢量预测值候选可以具有与该部分相同的场极性,其中,实际运动矢量值具有与该部分相反的场极性,以及其中,调整定标以从相反极性定标成相同极性。定标至少部分地基于参考帧距离。
在另一方面,编码器/解码器为视频帧中当前场中的宏块确定第一运动矢量预测值候选,第一运动矢量预测值候选具有第一极性。编码器/解码器为宏块确定第二运动矢量预测值候选,其中,第二运动矢量预测值候选是由第一运动矢量预测值候选使用定标操作来导出的。第二运动矢量预测值候选具有不同于第一极性的极性。
在另一方面,编码器/解码器为视频帧中当前场中的宏块确定第一运动矢量预测值候选,第一运动矢量预测值候选引用具有第一极性和参考距离的场。编码器/解码器为宏块确定第二运动矢量预测值候选,其中,第二运动矢量预测值候选是由第一运动矢量预测值候选使用至少部分地基于参考距离变化的定标操作来导出的。第二运动矢量预测值候选具有不同于第一极性的极性。
在另一方面,解码器解码比特流中的一个场层次处的第一元素,和比特流中一个宏块层次处的第二元素与第三元素。第一元素包括用于视频帧中当前场的参考场数量信息,它表示用于当前场的两个参考场。第二元素包括用于当前场中的当前宏块的宏块模式信息。第三元素包括用于当前宏块的运动矢量数据,其中,运动矢量数据包括差分运动矢量数据。解码器为宏块处理运动矢量数据。该处理包括为当前宏块确定第一和第二运动矢量预测值,以及至少部分地基于第一和第二运动矢量预测值和至少部分地基于差分运动矢量数据,为当前宏块重新构造运动矢量。第一运动矢量预测值是奇数场预测值而第二运动矢量预测值是偶数场预测值。
在另一方面,解码器解码运动矢量数据,运动矢量数据共同地用信号表示水平差分运动矢量分量、垂直差分运动矢量分量和表示是否使用主导的或非主导的运动矢量预测值的标志。解码器至少部分地基于经解码的运动矢量数据,重新构造运动矢量。该重新构造可以包括基于该标志在使用主导运动矢量预测值或非主导运动矢量预测值之间选择,将水平差分运动矢量分量与选择的预测值的水平分量结合起来,以及将垂直差分运动矢量分量与选择的预测值的水平分量结合起来。
通过下面参考附图进行的不同实施例的详细描述,将使另外的特征和优点显而易见。
附图说明
图1示出在按照背景技术的视频编码器中的运动估计。
图2示出在按照背景技术的视频编码器中对8×8的预测剩余部分块进行基于块的压缩。
图3示出在按照背景技术的视频编码器中对8×8的预测剩余部分块进行基于块的解压缩。
图4示出按照背景技术的隔行扫描视频帧。
图5示出WMV9的早期版本中用于当前的帧编码宏块的候选运动矢量预测值。
图6和7示出WMV9的早期版本中用于当前的场编码宏块的候选运动矢量预测值。
图8是合适的计算环境的方框图,可结合该环境实现几个所述的实施例。
图9是一般化的视频编码器系统的方框图,可结合该系统实现几个所述实施例。
图10是一般化的视频编码器系统的方框图,可结合该系统实现几个所述实施例。
图11是在几个所述的实施例中使用的宏块格式的图。
图12A是隔行扫描视频帧的部分的图,示出顶场和底场的交替行。图12B是为编码/解码而组织为帧的隔行扫描视频帧的图,而图12C是为编码/解码而组织为场的隔行扫描视频帧。
图13和14是代码列表,示出分别用于3个值的中值和4个值的中值计算的伪代码。
图15和16示出隔行扫描的P场,每个场具有两个参考场。
图17示出对于当前与参考场极性的不同组合,运动矢量的垂直分量与相应空间位置之间的关系。
图18是流程图,示出用于为具有两个可能的参考场的隔行扫描的P场选择运动矢量预测值。
图19示出用于当前宏块的由三个候选运动矢量预测值组成的两个集合。
图20A-20F是代码列表,示出用于计算二个参考隔行扫描的P场中的运动矢量预测值的伪代码。
图21A-21B是代码列表,示出用于定标来自一个场的预测值来导出来自另一个场的预测值。
图22和23是示出与不同参考帧距离相关联的定标操作值的表。
图24示出在组合的实现中用于隔行扫描的P场的帧层比特流语法。
图25示出在组合的实现中用于隔行扫描的P场的场层比特流语法。
图26示出在组合的实现中用于隔行扫描的P场的宏块层比特流语法。
图27A和27B是代码列表,示出例示为一个参考隔行扫描的P场解码运动矢量差分的伪代码。
图28A和28B是代码列表,示出例示为两个参考隔行扫描的P场解码运动矢量差分和主导/非主导预测值信息的伪代码。
图29A和29B示出用于隔行扫描的P场中的1MV宏块的候选运动矢量预测值的宏块的位置。
图30A和30B示出用于在混合的1MV/4MV隔行扫描的P场中的1MV宏块的候选运动矢量预测值的块的位置。
图31A、31B、32A、32B、33和34示出用于在混合的1MV/4MV隔行扫描的P场中的4MV宏块中不同位置的块的候选运动矢量预测值的块的位置。
图35A-35F是代码列表,示出在组合的实现中用于计算两个参考隔行扫描的P场中的运动矢量预测值的伪代码。
图36是代码列表,示出用于确定两个参考隔行扫描的P场中的参考场的伪代码。
具体实施方式
本申请涉及用于隔行扫描的视频的有效压缩和解压缩的技术和工具。在所述的各种实施例中,例如,视频编码器和解码器在编码和解码隔行扫描视频帧中的预测场时结合用于预测运动矢量的技术,以及与包括不同层(layer)或级(level)(例如,序列级,图象(picture)/图象(image)级,场级,宏块级和/或块级)的比特流格式或语法一起使用的信令技术。例如在数字视频广播系统(例如,电缆、卫星、DSL等)中,可以使用这些技术和工具。
特别地,所述的技术和工具提高了用于隔行扫描视频帧的正向预测场的块和/或宏块的运动矢量预测值的质量,从而允许运动矢量被更有效地编码。例如,描述用于使用周围的块和/或宏块的相邻运动矢量为当前场的块和/或宏块产生预测值运动矢量的技术,其中相邻运动矢量共同地参考两个场中的一个或两个作为参考。在所述技术和工具中实现的创新包括但不限于下列内容:
1)为隔行扫描的P场(interlaced P-field)中的块或宏块产生两个运动矢量预测值:一个运动矢量预测值用于“偶数”参考场而一个运动矢量预测值用于“奇数”参考场。编码器/解码器为当前块或宏块考虑达六个运动矢量预测值候选(三个用于偶数运动矢量预测值,三个用于奇数运动矢量预测值)。多达六个运动矢量预测值候选的使用允许进行比现有方法更好的运动矢量预测。
2)使用来自由当前运动矢量引用的参考场的运动矢量预测值:如果当前运动矢量引用参考帧的相应场中的区域(指当前场与参考场是相同极性的),则使用来自那个参考场的运动矢量预测值。同样,如果使用相反极性场作为参考,则使用来自那个参考场的运动矢量预测值。这允许进行比现有方法更好的运动矢量预测值。
3)使用定标操作为现有运动矢量候选的相反极性产生运动矢量预测值候选。编码器/解码器取用来自候选块/宏块位置的运动矢量,其中该运动矢量或者引用奇数场或者引用偶数场。编码器/解码器随后定标运动矢量来导出其它极性的运动矢量预测值候选。例如,如果一个毗邻宏块的实际运动矢量引用奇数场,则使用那个值作为来自毗邻宏块的奇数运动矢量预测值候选,并使用经定标的运动矢量值(从实际值导出的)作为来自毗邻宏块的偶数运动矢量预测值候选。尽管运动矢量预测值候选只是从三个块/宏块位置(具有三个运动矢量值)获得的,但编码器/解码器的不同极性运动矢量预测值候选的推导给出总数六个候选以供从中选择。
4)在导出运动矢量预测值候选时使用取决于参考帧距离的定标操作。编码器/解码器使用当前场与两个参考场之间的相对时间距离来执行定标操作,定标操作从来自另一个场的现有运动矢量候选为缺少的极性导出预测值候选。考虑相对瞬时距离以执行定标的编码器/解码器,可以产生比假定不变的参考距离的编码器/解码器更准确的预测值。
对于在此所述的实现的各种可替换方案是可能的。例如,参考流程图描述的技术可以通过改变流程图中所示阶段的顺序、通过重复或省略某些阶段等来改变。作为另一个例子,尽管某些实现是参考特定的宏块和/或块格式来描述的,但也可以使用其它格式。而且,参考隔行扫描的P场类型预测描述的技术和工具也可应用于其它类型的预测。
可以组合地或独立地使用各种技术和工具。不同的实施例实现所述技术和工具中的一个或多个。在视频编码器或解码器中,或者在不是明确地受限于视频编码或解码的某些其它系统中,可以使用在此描述的技术和工具。
I.计算环境
图8例示合适的计算环境800的一般化例子,在该环境中可实现几个所述的实施例。计算环境800不是想要建议对使用范围或功能的任何限制,而是可在各种各样的通用或专用计算环境中实现这些技术和工具。
参考图8,计算环境800包括至少一个处理单元810和存储器820。在图8中,这个最基本的配置830包括在虚线中。处理单元810执行计算机可执行指令,并可以是真实的或虚拟的处理器。在多处理器系统中,多个处理单元执行计算机可执行指令以增加处理能力。存储器820可以是易失性存储器(例如,寄存器、高速缓存、RAM),非易失性存储器(例如,ROM、EEPROM、闪存等),或者两者的组合。存储器820存储实现具有隔行扫描的P场的二个参考场运动矢量预测值的视频编码器或解码器的软件880。
计算环境可具有另外的特征。例如,计算环境800包括存储器840,一个或多个输入设备850,一个或多个输出设备860,以及一个或多个通信连接870。互连机制(未示出)诸如总线、控制器或网络将计算环境800的组件互相连接。一般地,操作系统软件(未示出)为在计算环境800中执行的其它软件提供操作环境,并协调计算环境800的组件的活动。
存储器840可以是可移动的或不可移动的,并包括磁盘、磁带或盒、CD-ROM、DVD或任何可用于存储信息并在计算环境800内可以访问的其它介质。存储器840存储用于实现视频编码器或解码器的软件880的指令。
输入设备850可以是接触式输入设备诸如键盘、鼠标、笔或轨迹球,语音输入设备,扫描设备或给计算环境800提供输入的其它设备。对于音频或视频编码,输入设备850可以是声卡,视频卡,TV调谐卡,或以模拟或数字形式接收音频或视频输入的相似设备,或将音频或视频样本读入计算环境800的CD-ROM或CD-RW。输出设备860可以是显示器,打印机,扬声器,CD-写入器,或从计算环境800提供输出的其它设备。
通信连接870允许在通信介质上与另外的计算实体通信。通信介质传送信息,诸如计算机可执行指令、音频或视频输入或输入,或在经调制的数据信号中的其它数据。经调制的数据信号是一种信号,具有以将信息编码在该信号的这样一种方式设置或改变的其一个或多个特性。作为例子,而非限制,通信介质包括以电子、光、红外线、RF、声音或其它载波实现的有线或无线技术。
可以在计算机可读介质的一般环境中描述本技术和工具。计算机可读介质是可以在计算环境内访问的任何可用介质。作为例子,而非限制性地,就计算环境800而言,计算机可读介质包括存储器820、存储装置840、通信介质和上述的任何组合。
可以在计算机可执行指令的一般环境中描述本技术和工具,诸如包括在计算环境中在目标真实的(target real)或虚拟(virtual)的处理器上执行的程序模块中的计算机可执行指令。通常,程序模块包括例程、程序、库、对象、类、组件、数据结构等,它们执行特定的任务或实现特定的抽象数据类型。在各种实施例中按需要,可在程序模块之间组合或分开程序模块的功能。用于程序模块的计算机可执行指令可在本地或分布式计算环境内执行。
为了表达,详细描述使用象“估计(estimate)”、“补偿(compensate)”、“预测(predict)”和“应用(apply)”这样的术语来描述计算环境中的计算机操作。这些术语是对由计算机执行的操作的高级抽象,且不应该与由人执行的动作混淆。相应于这些术语的实际计算机操作取决于实现而变化。
II.一般化的视频编码器和解码器
图9是一般化的视频编码器900的方框图,可结合它实现所述的实施例。图10是一般化的视频解码器1000的方框图,可结合它实现所述的实施例。
在编码器900与解码器1000内的模块之间所示的关系表示在编码器和解码器中的一般信息流;为了简单,未示出其它关系。特别地,图9和10通常不示出表示用于视频序列、图象、宏块、块等的编码器设置、模式、表等的边信息(side information)。这样的边信息是在输出比特流中发送的,一般在熵编码边信息之后。输出比特流的格式可以是Windows Media Video版本9格式或其它格式。
编码器900和解码器1000处理视频图象,视频图象可以是视频帧、视频场或帧和场的组合。在图象或宏块级的比特流语法和语义可取决于使用帧还是使用场。可以改变宏块组织和整个时序。编码器900和解码器1000是基于块的,并使用4:2:0宏块格式用于帧,其中每个宏块包括四个8×8亮度块(有时视为一个16×16宏块)和两个8×8色度块。对于场,可使用相同或不同的宏块组织和格式。可在不同阶段进一步子划分8×8块,例如在频率变换和熵编码阶段。在下面更详细地描述示例视频帧组织。可供替换地,编码器900和解码器1000是基于对象的,使用不同的宏块或块格式,或者对不同于8×8块和16×16宏块的大小或配置的像素执行操作。
取决于实现和所希望的压缩类型,可增加、省略编码器或解码器的模块,将它们划分成多个模块,与其它模块组合起来,和/或用相似的模块代替它们。在可替换的实施例中,具有不同模块和/或模块的其它配置的编码器或解码器执行一个或多个所述技术。
A.视频帧组织
在某些实现中,编码器900和解码器1000处理按如下组织的视频帧。帧包含视频信号的空间信息的行。对于逐行扫描的视频,这些行包含从一个时刻开始并继续通过至帧的底部的连续行的样本。逐行扫描的视频帧被划分成宏块,诸如图11中所示的宏块1100。宏块1100包括四个8×8亮度块(Y1至Y4)和两个8×8色度块,后者与四个亮度块位置在一起,但在水平与垂直方向只有一半分辨率,按照常规的4:2:0的宏块格式。可在不同阶段进一步细分8×8块,例如,在频率变换和熵编码阶段。逐行I帧是帧内编码的逐行扫描视频帧。逐行扫描的P帧是使用前向预测编码的逐行扫描视频帧,而逐行扫描的B帧是使用双向预测编码的逐行扫描视频帧。逐行扫描的P和B帧可包括帧内编码的宏块和不同类型的预测宏块。
对于隔行扫描的视频,帧由两个场即顶场和底场组成。这些场之一比另一个晚开始一个场周期。图12a示出隔行扫描的视频帧1200的部分,在隔行扫描的视频帧1200的左上部分包括顶场和底场的交替行。
图12b示出为编码/解码而组织为帧1230的图12a的隔行扫描视频帧1200。隔行扫描视频帧1200已被划分成宏块,诸如宏块1231和1232,它们使用如在图11中所示的4:2:0格式。在亮度平面中,每个宏块1231、1232包括来自顶场的8行,与来自底场的8交替总数16行,且每一行16像素长。(没有示出宏块1231、1232内亮度块和色度块的实际组织和布置,且实际上对于不同的编码选择可以变化)。在给定的宏块内,可共同地或者独立地以任何各种各样的相位编码顶场信息和底场信息。隔行扫描的I帧是隔行扫描视频帧的两个帧内编码的场,其中宏块包括两个场的信息。隔行扫描的P帧是使用正向预测编码的隔行扫描视频帧的两个场,而隔行扫描的B帧是使用双向预测编码的隔行扫描视频帧的两个场,其中宏块包括两个场的信息。隔行扫描的P和B帧可包括帧内编码的宏块和不同类型的预测宏块。
图12c示出为编码/解码而组织为场1260的图12a的隔行扫描视频帧1200。隔行扫描视频帧1200的两个场的每一个被划分成宏块。顶场被划分成宏块,诸如宏块1261,而底场被划分成宏块,诸如宏块1262。(再一次,宏块使用如在图11中所示的4:2:0格式,但未示出宏块内亮度块和色度块的组织和布置)。在亮度平面中,宏块1261包括来自顶场的16行,而宏块1262包括来自底场的16行,每一行16像素长。隔行扫描的I场是隔行扫描视频帧的单一、独立表示的场。隔行扫描的P帧是使用正向预测编码的隔行扫描视频帧的单一、独立表示的场,而隔行扫描的B场是使用双向预测编码的隔行扫描视频帧的单一、独立表示的场。隔行扫描的P和B场可包括帧内编码的宏块和不同类型的预测宏块。
术语图片(picture)指源、编码的或重新构造的图象(image)数据。对于逐行扫描视频,图片是逐行扫描视频帧。对于隔行扫描的视频,图片可以指隔行扫描的视频帧,帧的顶场,或帧的底场,取决于上下文。
B.视频编码器
图9是一般化的视频编码器系统900的方框图。编码器系统900接收包括当前图片905在内的视频图片序列,并产生压缩的视频信息995作为输出。视频编码器的特定实施例一般使用一般化编码器900的变体或补充版本。
编码器系统900压缩预测图片和关键图片(key picture)。为了表示,图9示出关键图片通过编码器系统900的路径和预测图片的路径。编码器系统900的许多组件用于压缩关键图片和预测图片两者。由那些组件执行的准确操作可以根据正在压缩的信息类型变化。
预测图片(也称为p图片,对于双向预测称为b-图片,或帧间编码的图片)是按照来自一个或多个其它图片(一般称为参考图片或锚(anchor))的预测值(或差)来表示的。预测剩余部分(prediction residual)是所预测的与原来的图片之间的差。相反,在不参考其它图片的情况下压缩关键图片(也称为I图片,帧间编码的图片)。
如果当前图片905是正向预测的图片,则运动估计器(motionestimator)910根据一个或多个参考图片来估计宏块或当前图片905的像素的其它集合的运动,参考图片是在图片存储器(picture store)920、922中缓冲的重新构造的先前的图片。如果当前图片905是双向预测的图片(B图片),则运动估计器910根据两个或多个重新构造的参考图片来估计当前图片905中的运动。一般地,运动估计器根据至少一个在时间上在前的参考图片和至少一个在时间上在后的参考图片来估计B图片中的运动。因此,编码器系统900可以使用独立的存储器920和922用于后向和正向参考图片。关于双向预测图片的更多信息,见2003年七月18日提交的美国专利申请序列号10/622,378,标题为“Advanced Bi-Directional Predictive Coding of Video Frames(视频帧的高级双向预测编码)”。
运动估计器910可以按像素、像素、像素或者其它增量来估计运动,并可以在一个接一个图片基础或其它基础上切换运动估计的分辨率。运动估计的分辨率可以水平地和垂直地相同或不同。运动估计器910作为边信息输出运动信息915,诸如差分运动矢量信息。编码器900通过例如为运动矢量计算一个或多个预测值,计算运动矢量与预测值的差分并熵编码差分来编码运动信息。为了重新构造运动矢量,运动补偿器930将预测值与差分运动矢量信息组合起来。下面描述用于计算运动矢量预测值、计算差分运动矢量和为隔行扫描的P场重新构造运动矢量的各种技术。
运动补偿器930将重新构造的运动矢量应用于重新构造的图片925,以形成经运动补偿的当前图片935。但是预测很少是完美的,而经运动补偿的当前图片935与原来的当前图片905之间的差是预测剩余部分945。可供替换地,运动估计器和运动补偿器应用另外类型的运动估计/补偿。
频率变换器960将空间域视频信息转换成频域(即光谱)数据。对于基于块的视频图片,频率变换器960将离散余弦变换[“DCT”],DCT的变体,或者其它块变换应用于像素数据或预测剩余部分数据块,产生频率变换系数块。可供替换地,频率变换器960应用另一种常规频率变换诸如傅立叶变换或使用小波或子带分析。频率变换器960可应用8×8、8×4、4×8、4×4或其它尺寸的频率变换。
量化器970随后量化光谱数据系数块。量化器以在一个接一个图片基础或其它基础上变化的步长,对光谱数据应用均匀的标量量化。可供替换地,量化器对光谱数据系数应用另一种类型的量化,例如非均匀的、矢量的或非自适应的量化,或者在不使用频率变换的编码器系统中直接量化空间域数据。除自适应量化之外,编码器900可以使用帧丢弃(frame dropping)、自适应滤波或其它技术用于速率控制。
如果在预测图片中给定的宏块没有某些类型的信息(例如,没有用于宏块的运动信息和没有剩余部分信息),则编码器900可将宏块编码为跳过的宏块(skipped macroblock)。如果有,则编码器在压缩的视频信息995的输出比特流中用信号表示跳过的宏块。
当需要重新构造的当前图片用于后续的运动估计/补偿时,逆量化器976对量化的光谱数据系数执行逆量化。逆频率变换器966随后执行频率变换器960的逆操作,产生(为预测图片)重新构造的预测剩余部分或重新构造的关键图片。如果当前图片905是关键图片,则取重新构造的关键图片作为重新构造的当前图片(未示出)。如果当前图片905是预测图片,则将重新构造的预测剩余部分加到经运动补偿的当前图片935上,以形成重新构造的当前图片。图片存储器920、922之一缓冲在预测下一个图片时使用的重新构造的当前图片。在某些实施例中,编码器将解块(de-blocking)的滤波器应用于重新构造的图片以自适应地平滑图片中的不连续。
熵编码器980压缩量化器970的输出和某个边信息(例如,对于运动信息915,量化步长)。典型的熵编码技术包括算术编码(arithmetic coding),差分编码(differential coding),霍夫曼编码(Huffman coding),行程长度编码(run length coding),LZ编码(LZ coding),词典编码(dictionary coding),和上述的组合。熵编码器980一般使用不同编码技术用于不同种类的信息(例如,DC系数,AC系数,不同种类的边信息),并可以从特定编码技术内多个编码表中选择。
熵编码器980提供压缩视频信息995给多路复用器[“MUX”]990。MUX 990可包括缓冲器,并可将缓冲器级指示器(buffer level indicator)反馈回比特率自适应模块用于速率控制。在MUX 990之前或之后,可以为在网络上传输,信道编码压缩的视频信息995。信道编码(channel coding)可以将差错检测和校正数据应用于压缩的视频信息995。
C.视频解码器
图10是一般的视频解码器系统1000的方框图。解码器系统1000接收用于视频预测值的压缩序列的信息1095,并产生包括重新构造的图片1005的输出。视频解码器的特定实施例一般使用通用的解码器1000的变体或补充版本。
解码器系统1000解压缩预测图片和关键图片。为了表示,图10示出关键图片通过解码器系统1000的路径和正向预测图片的路径。解码器系统1000的许多组件用于解压缩关键图片和预测图片两者。由那些组件执行的准确操作可以根据正在解压缩的信息的类型变化。
DEMUX 1090接收用于压缩的视频序列的信息1095并使接收的信息可用于熵解码器1080。DEMUX 1090可包括抖动缓冲器(jitter buffer)和其它缓冲器。在DEMUX 1090之前或之后,压缩的视频信息可以被信道解码并为差错检测和校正对其处理。
熵解码器1080熵解码经熵编码的量化的数据和经熵编码的边信息(例如,对于运动信息1015,量化步长),一般应用编码器中所执行的熵编码的逆操作。熵解码技术包括算术解码(arithmetic decoding),差分解码(differentialdecoding),霍夫曼编码(Huffman decoding),行程长度解码(run lengthdecoding),LZ解码(LZ decoding),词典解码(dictionary decoding),以及上述的组合。熵解码器1080一般为不同种类的信息使用不同的解码技术(例如,DC系数,AC系数,不同种类的边信息),并可以从特定编码技术内的多个编码表中选择。
解码器1000解码运动信息1015,例如通过为运动矢量计算一个或多个预测值,熵解码差分运动矢量,以及将经解码的差分运动矢量与预测值组合起来重新构造运动矢量。下面描述用于为隔行扫描的P帧计算运动矢量预测值、计算差分运动矢量和重新构造运动矢量的各种技术。
运动补偿器1030将运动信息1015应用于一个或多个参考图片1025以形成正在重新构造的图片1005的预测1035。例如,运动补偿器1030使用一个或多个宏块运动矢量来查找参考图片1025中的宏块。一个或多个图片存储器(例如,图片存储器1020、1022)存储先前重新构造的图片用作参考图片。一般地,B图片具有多于一个参考图片(例如,至少一个在时间上在先的参考图片和至少一个在时间上在后的参考图片)。因此,解码器系统1000可以使用分开的图片存储器1020和1022用于后向和前向参考图片。运动补偿器1030可以以像素、像素、像素或其它增量来补偿运动,并可以在一个接一个图片基础或其它基础上切换运动补偿的分辨率。运动补偿的分辨率可以在水平或垂直上相同或不同。可供替换地,运动补偿器应用另一种类型的运动补偿。通过运动补偿器的预测很少是完美的,因此解码器1000还重新构造预测剩余部分。
逆量化器1070逆量化经熵解码的数据。一般而言,逆量化器以在一个接一个图片基础或其它基础上变化的步长,对经熵解码的数据应用均匀的、标量的逆量化。可供替换地,逆量化器对数据应用其它类型的逆量化,例如,非均匀的、矢量的或非自适应的量化,或者在不使用逆频率变换的解码器系统中直接逆量化空间域数据。
逆频率变换器1060将量化的、频域数据转换成空间域视频信息。对于基于块的视频图片,逆频率变换器1060对频率变换系数的块应用逆DCT[“IDCT”]、IDCT的变体或其它逆块变换,分别为关键图片或预测图片产生像素数据或预测剩余部分数据。可供替换地,逆频率变换器1060应用另外的常规逆频率变换诸如逆傅立叶变换或使用小波或子带综合。逆频率变换器1060可应用8×8、8×4、4×8、4×4或其它大小的逆频率变换。
对于预测图片,解码器1000将重新构造的预测剩余部分1045与运动补偿预测1035结合起来以形成重新构造的图片1005。当解码器需要重新构造的图片1005用于随后的运动补偿,图片存储器之一(例如图片存储器1020)缓冲重新构造的1005以在预测下一个图片时使用。在某些实施例中,解码器1000对重新构造的图片应用解块滤波器(de-blocking filter)以自适应地平滑图片中的不连续。
III.运动矢量预测值
可以使用用于宏块(或块)的运动矢量来预测那些宏块(或块)的因果关系的近邻中的运动矢量。例如,编码器/解码器可以从用于相邻的候选宏块的运动矢量之中为当前宏块选择运动矢量预测值,并预测地使用该运动矢量预测值为当前宏块编码运动矢量。编码器/解码器可以使用三个值的中值(median-of-three)预测,四个值的中值(median-of-four)预测,或某种其它技术来从来自相邻宏块的候选运动矢量之中为当前宏块确定运动矢量预测值。在图13的伪代码1300中描述用于三个值的中值预测的过程。在图14的伪代码1400中描述用于四个值的中值预测的过程。
IV.用于隔行扫描图片的场编码
典型的隔行扫描视频帧由在不同时间扫描的两个场(例如,顶场和底场)组成。一般而言,通过将场编码在一起(“帧模式”编码)来编码隔行扫描视频帧的静止区域更有效。另一方面,通过独立地编码场(“场模式”编码)来编码隔行扫描视频帧的移动区域常常更有效,因为两个场倾向于不同的运动。正向预测的隔行扫描视频帧可被编码为两个独立的正向预测场一隔行扫描的P场。独立地为正向预测隔行扫描视频帧编码场可能是有效的,例如,当遍及隔行扫描的视频帧有高度运动,并因此在场之间有更多的差异。
A.用于隔行扫描的P场的参考场
隔行扫描的P场引用一个或多个其它场(一般为先前的场,可以编码在比特流中或者可以不编码在比特流中)。例如,在某些实现中,隔行扫描的P场可具有一个或两个参考场。如果隔行扫描的P场具有两个参考场,则用于P场的块或宏块的特定运动矢量参考这两个参考帧中所选择的一个。图15和16示出具有两个参考场的隔行扫描的P场的例子。在图15中,当前场1510参考在时间上在前的帧中的顶场1520和底场1530。由于场1540和1550是隔行扫描的B场,它们不用作为参考场。在图16中,当前场1610参考紧接在包含当前场1610的隔行扫描视频帧之前的预测帧中的顶场1620和底场1630。在其它情况下,隔行扫描的P场引用单个场,例如,最近的或次最近的I场或P场。
可供替换地,隔行扫描的P场可使用来自从不同类型或时间位置的帧得到的其它场的场作为参考场。
B.场图片坐标系统和场极性
运动矢量单位可以用像素/子-像素(sub-pixel)单位或场单位来表示。例如,如果运动矢量的垂直分量表示六个四分之一像素单位的位移,这表示一又二分之一场行的位移,因为在场中每行一个像素高。
图17示出在一个实现中运动矢量的垂直分量与空间位置之间的关系。在图17中所示的例子示出三个不同情景1710、1720和1730,用于当前和参考场类型(例如顶和底)的三种不同组合。如果当前和参考场的场类型不同,则极性“相反”。如果场类型相同,则极性“相同”。对于每一种情景,图17示出当前场中的像素的一个垂直列和参考场中的像素的第二垂直列。实际上,这两个列是水平对齐的。圆圈表示实际的整数像素位置而X表示内插的二分之一或四分之一像素位置。水平分量值(未示出)不需要考虑因隔行扫描引起的任何偏移,因为相应的场是水平对齐的。负值表示进一步向上偏移,且在相反的方向中,如所示的正值垂直偏移。
在情景1710中,极性“相反”。当前场是顶场而参考场是底场。相对于当前场,参考场的位置因隔行扫描在向下方向中偏移二分之一像素。因而,垂直运动矢量分量值0表示参考场中的位置,它在当前场中的位置之下偏移二分之一像素,作为默认的“无运动”值。垂直分量值+2表示在当前场中位置之下偏移整个像素(以绝对值)的位置,它是参考场中的内插值,而垂直分量+4表示在当前场中位置之下偏移一又二分之一像素(以绝对值)的位置,它是参考场中的实际值。
在情景1720中,极性也“相反”。当前场是底场而参考场是顶场。相对于当前场,参考场的位置因隔行扫描在向上方向中偏移二分之一像素。因而,垂直运动矢量分量0表示参考场中高于当前场中位置二分之一像素的位置(以绝对值),垂直分量值+2表示与当前场中位置相同水平(以绝对值)的位置,而垂直分量+4表示在当前场中位置之下偏移二分之一像素的位置(以绝对值)。
在情景1730中,极性“相同”,没有应用垂直偏移,因为当前场的位置与相对于参考场的位置相同。
可供替换地,按照不同的惯例表示运动矢量的位移。
V.在用于预测编码/解码隔行扫描的P场的运动矢量预测方面的创新
所述实施例包括用于编码和解码隔行扫描的视频(例如隔行扫描的P场)的技术和工具。所述技术和工具可以彼此结合或者结合其它技术和工具使用,或者可以独立地使用。
特别地,所述技术和工具规定例如为隔行扫描的P场的块和/或宏块产生运动矢量预测值的方法,其中隔行扫描的P场使用两个场作为参考用于运动补偿预测编码。所述技术和工具实现一个或多个创新,包括但不限于下列内容:
1.产生两个运动矢量预测值-一个用于偶数场参考,一个用于奇数场参考。每个预测值是从三个先前编码的、候选的相邻运动矢量导出的。
2.使用来自相同参考场的运动矢量预测值作为当前运动矢量(都参考相同的参考场)。
3.定标一个场的实际运动矢量预测值候选值,为其它场产生运动矢量预测值候选用于运动矢量预测。
4.使用定标操作(它使用当前场与两个参考场之间的相对时间距离),由另一种极性的现有运动矢量预测值候选,为一种参考极性导出运动矢量预测值候选。
在隔行扫描的视频中,可不使用运动预测(帧内或I场)、使用前向运行预测(P场)或使用双向预测(B场)来编码场。所述技术和工具包括为隔行扫描的P场的部分计算运动矢量预测值,尤其在可以参考两个最近的(以显示顺序)I或P场中任何一个时发生运动补偿的情况下。假定两个参考场是相反极性的,即指一个参考场表示隔行扫描视频帧的奇数行,而另一个参考场表示相同或不同的隔行扫描视频帧的偶数行。这是在图24中表示的信令协议的情况,它示出用于隔行扫描的图片的场图片类型的语法元素(FPTYPE)。或者,例如,再次参考图15,当前场1510参考顶场1520和底场1530,它们分别表示视频帧的奇数和偶数行。
A.在两个参考场图片中的运动矢量预测
用两个参考场P-场,当前场可以在相同的时间方向上引用两个场(例如两个最近的在前参考场)。在两个参考场隔行扫描的P场的情况下,编码器和解码器为块或宏块的运动矢量在两个运动矢量预测值之间选择。在某些实施例中,一个预测值用于与当前场相同极性的参考场,而另一个用于相反极性的参考场。其它极性组合也有可能。
在某些实施例中,编码器/解码器通过查找奇数场预测值和偶数场为当前块或宏块计算运动矢量预测值,并选择一个预测值来处理宏块。例如,图18示出一种技术1800,用于为具有两个可能的参考场的隔行扫描的P场的块或宏块计算运动矢量预测值。
在1810,编码器/解码器确定奇数场运动矢量预测值和偶数场运动矢量预测值。运动矢量预测值之一因而具有与当前场相同的极性,而另一个运动矢量预测值具有相反极性。
在1820,编码器/解码器从奇数场运动矢量预测值与偶数场运动矢量预测值之中选择运动矢量预测值。例如,编码器在运动矢量预测值之间基于哪一个给出更好的预测的运动矢量预测值来选择。或者,编码器选择参考相同参考场的运动矢量预测值作为当前正在预测的运动矢量。编码器使用简单的选择信号或使用更复杂的结合上下文信息(contextual information)以提高编码效率的信令,用信号表示要使用哪一个运动矢量预测值。上下文信息可表示奇数场或偶数场中的哪一个、或者相同极性场或相反极性场中的哪一个是在块或宏块周围的近邻中主要使用的。解码器基于选择信号和/或上下文信息来选择要使用哪一个运动矢量预测值。
在1830,编码器/解码器使用所选择的运动矢量预测值来处理运动矢量。例如,编码器编码运动矢量与运动矢量预测值之间的差分。或者,解码器通过将运动矢量差分与运动矢量预测值结合起来解码运动矢量。
可供替换地,编码器和/或解码器可跳过确定奇数场运动矢量预测值或确定偶数场运动矢量预测值。例如,如果编码器确定将为用于特定块或宏块的运动补偿使用奇数场,则编码器只确定奇数场运动矢量预测值。或者,如果解码器根据上下文和/或用信号表示的信息确定将为运动补偿使用奇数场,则解码器只确定奇数场运动矢量预测值。因此,编码器和解码器可避免不必要的操作。
在一个实现中,解码器使用下列技术来为当前隔行扫描的P场确定运动矢量预测值:
对于隔行扫描的P场中每一个具有运动矢量的块或宏块,获得两组三个候选的运动矢量预测值。在图19中示出相对于当前宏块1900的相邻宏块,从它们获得这些候选的运动矢量预测值。这些候选中的三个来自于偶数参考场,三个来自于奇数参考场。由于在每个候选方向(A、B或C)中相邻宏块将或者是帧内编码的或者具有实际的运动矢量(它或者引用偶数场或者引用奇数场),因此有必要导出其它场的运动矢量。例如,对于给定的宏块,假定预测值A具有引用奇数场的运动矢量。在这种情况下,“偶数场”预测值候选A是从“奇数场”预测值候选A的运动矢量导出的。这个推导是使用定标操作来完成的。(例如,见下面图21A和21B的说明)。可供替换地,推导是以另一种方式完成的。
一旦已获得三个奇数场候选运动矢量预测值,就使用中值操作(medianoperation)来从三个奇数场候选中导出一个奇数场运动矢量预测值。同样,一旦已获得三个偶数场候选运动矢量预测值,就使用中值操作从三个偶数场候选中导出一个偶数场运动矢量预测值。可供替换地,使用另一种机制基于候选场运动矢量预测值来选择场运动矢量预测值。解码器决定使用偶数场还是使用奇数场作为运动矢量预测值(例如,通过选择主导预测值),并使用偶数或奇数运动矢量预测值来重新构造运动矢量。
在图20A-20F中的伪代码2000例示用于从如在图19中安排的预测值A、B、C产生运动矢量预测值的过程。尽管图19示出在当前隔行扫描的P场的中间的一个典型宏块的近邻,但图20A-20F的伪代码2000处理宏块位置的各种特殊情况。此外,可使用伪代码2000为在各种位置的块的运动矢量计算运动矢量预测值。
在伪代码2000中,应该理解,术语“相同场”和“相反场”是相对于当前正在编码或解码的场而言的。例如,如果当前场是偶数场,则“相同场”是偶数参考场,而“相反场”是奇数参考场。伪代码2000中的变量samefieldpred_x和samefieldpred_y表示来自相同场的运动矢量预测值的水平和垂直分量,而变量oppositefieldpred_x和oppositefieldpred_y表示来自相反场的运动矢量预测值的水平和垂直分量。变量samecount和oppositecount分别跟踪有多少用于当前块或宏块的近邻的运动矢量引用对于当前场的“相同”的极性参考场和有多少引用“相反”极性参考场。在伪代码的开始处将变量samecount和oppositecount初始化为0。
使用在伪代码2000中提到的定标操作scaleforsame()和scaleforopposite()从近邻的实际运动矢量值为“其它”场导出运动矢量预测值候选。定标操作是由实现决定的。下面参考图21A、21B、22和23描述示例定标操作。可供替换地,例如,使用其它定标操作来补偿诸如在图17中所示的垂直位移。
图20A和20B示出用于为典型的内部块或宏块计算运动矢量预测值。将用于“帧内”近邻的运动矢量设置为0。对于每一近邻,设置相同场运动矢量预测值和相反场运动矢量预测值,其中一个是由近邻的运动矢量的实际值设置的,而另一个是从它导出的。为相同场运动矢量预测值和相反场运动矢量预测值计算候选的中值,并根据samecount和oppositecount确定“主导(dominant)”预测值。变量dominatepredictor表示哪一个场包含主导运动矢量预测值。如果运动矢量预测值具有与三个候选预测值中大多数相同的极性,则它是主导的。(用信号表示的值predictor_flag,连同运动矢量差分数据一起被解码,表示使用主导还是非主导预测值)。
在图20C中的伪代码处理每行只有一个宏块的隔行扫描的P场中的宏块的情况,其中的宏块没有近邻B和C。在图20D和20E中的伪代码处理在隔行扫描的P场左边缘的块或宏块的情况,其中的块或宏块没有近邻C。这里,如果运动矢量预测值具有与多于两个候选预测值的相同极性,则它是主导的,而在平分(tie)的情况下,奇数场运动矢量预测值是主导的。最后,在图20F中的伪代码处理例如隔行扫描的P场的首行中的宏块的情况。
B.用于从另一个场运动矢量预测值导出一个场运动矢量预测值的定标
在一个实施例中,编码器/解码器使用在图21A和21B的伪代码中例示的定标操作从另一个场运动矢量预测值导出一个场运动矢量预测值。SCALEOPP、SCALESAME1、SCALESAME2、SCALEZONE1_X、SCALEZONE2_Y、ZONE1OFFSET_X和ZONE1OFFSET_Y的值是由实现决定的。图22的表2200中和图23的表2300中所示的两个可能的值集合,前者用于当前场是隔行扫描的视频帧中的第一个场,而后者用于当前场是隔行扫描视频帧中的第二个场。在表2200和2300中,参考帧距离是作为当前场与包含在时间上最远的参考场之间的B图片(即包括两个B场的视频帧)的数量来定义的。
在表2200与表2300中所示的例子中,N的值取决于运动矢量范围。例如,扩展的运动矢量范围可以通过语法元素EXTENDED_MV=1来用信号表示。如果EXTENDED_MV=1,则MVRANGE语法元素存在于图片首部中并用信号表示运动矢量范围。如果EXTENDED_MV=0,则使用默认的运动矢量范围。表1示出N与MVRANGE之间的关系。
表1:在图22和23中N的推导
    MVRANGE(运动矢量范围)     N
    0或默认值     1
    10     2
    110     8
    111     16
在表2200和2300中的值可以根据实现来修改。
可供替换地,不使用扩展的运动矢量范围信息,或者以某种其它方法来执行定标。
VI.组合的实现
现在描述用于比特流语法和解码器的详细的组合实现,之外还描述具有与主组合实现微小差别的可替换组合实现。
A.比特流语法
在各种组合实现中,以具有多个层(layer)(例如,序列、帧、场、宏块、块和/或子块层)的比特流的形式提供用于隔行扫描的P场的数据。用于包括隔行扫描的P场的每一帧的数据由帧首部和跟随其后的用于场层的数据组成。在图24中示出构成用于包括隔行扫描的P场的帧的帧首部的比特流元素。在图25中示出构成用于隔行扫描的P场的场首部的比特流元素。在图26中示出构成用于隔行扫描的P场的宏块层的比特流元素。下面的章节描述在涉及用信号表示隔行扫描的P场的块或宏块的运动矢量预测值的帧、场和宏块层中所选择的比特流元素。
I.选择的帧层元素
图24示出在组合实现中用于包括隔行扫描的P场的帧的帧级(frame-level)比特流语法。下面描述具体的比特流元素。
帧编码模式(Frame Coding Mode)(FCM)(可变大小)
FCM是可变长度代码字(variable length codeword)[“VLC”],用于表示图片片码类型。FCM取下面在图2中所示的用于帧编码模式的值:
表2:帧编码模式VLC
    FCM值     帧编码模式
    0     逐行扫描
    10     帧-隔行扫描
    11     场-隔行扫描
场图片类型(Field Picture Type)(FPTYPE)(3位)
FPTYPE是在用于包括隔行扫描的P场的帧的帧首部中存在的三比特语法元素。FPTYPE取按照下面表3用于不同组合的场类型的值。
表3:场图片类型FLC
    FPTYPE FLC     第一场类型     第二场类型
    000     I     I
    001     I     P
    010     P     I
    011     P     P
    100     B     B
    101     B     BI
    110     BI     B
    111     BI     BI
P参考距离(P Reference Di stance)(REFDIST)(可变大小)REFDIST是可变大小的语法元素。这个元素表示当前帧与参考帧之间的帧数量。表4示出用于编码REFDIST值的VLC。
表4:REFDIST VLC表
    参考帧距离   VLC代码字(二进制)     VLC大小
    0     00     2
    1     01     2
    2     10     2
    N     11[(N-3)1s]0     N
表4中最后一行表示用于表示比2大的参考帧距离的代码字。它们被编码为(二进制)11,跟随着N-3个1,其中N是参考帧距离。代码字中的最后位是0。
例如:
N=3,VLC代码字=110,VLC大小=3
N=4,VLC代码字=1110,VLC大小=4
N=5,VLC代码字=11110,VLC大小=5
在可替换的组合实现中,在用于隔行扫描的P场的场层的开始处代替在用于包括隔行扫描的P场的帧的帧层处用信号表示图片类型信息,并省略P参考距离。
2.选择的场层元素
图25示出在组合实现中用于隔行扫描的P场的场级(field-level)比特流语法。下面描述具体的比特流元素。
参考图片的数量(Number of Reference Pictures)(NUMREF)(1比特)
NUMREF语法元素是一个一比特语法元素,表示当前场引用一个还是两个先前的参考场图片。如果NUMREF=0,则当前P场图片可只引用一个场。在这种情况下,在图片层比特流中跟随着REFFIELD语法元素。对于具有两个参考场的隔行扫描的P场,NUMREF=1。
参考场图片指示器(Reference Field Picture Indicator)(REFFIELD)(1比特)
如果NUMREF=0,REFFIELD是在隔行扫描的P场图片首部中存在的一个1位语法元素。REFFIELD表示使用哪一个先前解码的场作为参考。如果REFFIELD=0,则使用在时间上最近的(以显示顺序)I或P场作为参考。如果REFFIELD=1,则使用在时间上次最近的I或P场图片作为参考。
扩展的MV范围标志(Extended MV Range Flag)(MVRANGE)(可变大小)
MVRANGE是在序列层EXTENDED_MV位设置为1时存在的可变大小的语法元素。MVRANGE VLC表示运动矢量范围。
扩展的差分MV范围标志(Extended Differential MV RangeFlag)(DMVRANGE)(可变大小)
如果序列级语法语法元素EXTENDED_DMV=1,则存在DMVRANGE,它是可变大小的语法元素。DMVRANGE VLC表示运动矢量差分范围。
运动矢量模式(Motion Vector Mode)(MVMODE)(可变大小或1比特)
MVMODE语法元素用信号表示四种运动矢量编码模式之一或一种强度补偿模式。若干后续的元素提供另外的运动矢量模式和/或强度补偿信息。
宏块模式表(Macroblock Mode Table)(MBMODETAB)(2或3比特)
MBMODETAB语法元素是定长字段。对于隔行扫描的P场,MBMODETAB是3比特值,表示使用八个霍夫曼表中的哪一个来解码宏块层中的宏块模式语法元素(MBMODE)。
运动矢量表(Motion Vector Table)(MVTAB)(2或3比特)
MVTAB语法元素是一个2或3位值。对于其中NUMREF=1的隔行扫描的P场,MVTAB是3比特语法元素,表示使用八个隔行扫描的霍夫曼表中的哪些来解码运动矢量数据。
4MV块图案表(4MV Block Pattern Table)(4MVBPTAB)(2比特)
4MVBPTAB语法元素是一个2比特值。对于隔行扫描的P场,只有当MVMODE(或MVMODE2,如果MVMODE设置为强度补偿)表示图片是“混合的MV”类型时才提供它。4MVBPTAB语法元素用信号表示使用四个霍夫曼表中的哪一个来解码4MV宏块中的4MV块图案(4MVBP)语法元素。
3.选择的宏块层元素
图26示出在组合实现中用于隔行扫描的P场的宏块级(macroblock-level)比特流语法。下面描述具体的比特流元素。用于宏块的数据由宏块首部和跟随其后的块层数据构成。
宏块模式(Macroblock Mode)(MBMODE)(可变大小)
MBMODE语法元素表示宏块类型(1MV、4MV或帧内),并存在CBP标志和运动矢量数据,如在下面VI.B.3.节中详细描述的。
运动矢量数据(Motion Vector Data)(MVDATA)(可变大小)
MVDATA是可变大小的语法元素,它编码用于宏块的运动矢量的差分,在下面VI.B.3.节中详细描述它的解码。
4MV块图案(4MV Block Pattern)(4MVBP)(4比特)
4MVBP语法元素表示4个亮度块中哪一个包含非零运动矢量差分,在下面VI.B.3.节中详细描述其使用。
块级运动矢量数据(Block-level Motion Vector)(BLKMVDATA)(可变大小)
BLKMVDATA是可变大小的语法元素,包含用于块的运动信息,并存在于4MV宏块中。
混合运动矢量预测(Hybrid Motion Vector Prediction)(HYBRIDPRED)(1比特)
HYBRIDPRED是每运动矢量1比特语法元素。如果预测值显式地编码在比特流中,则提供一个比特表示使用预测值A还是预测值C作为运动矢量预测值。
B.解码隔行扫描的P场
下面的章节描述用于在组合实现中解码隔行扫描的P场的过程。
1.帧/场层解码
参考图片
P场图片可引用一个或两个先前编码的场。在图片层中的NUMREF语法元素是一个一比特语法元素,表示当前场可引用一个还是两个先前的参考场图片。如果NUMREF=0,则当前隔行扫描的P场图片的块和宏块可只引用一个场。如果NUMREF=1,则当前隔行扫描的P场图片的块或宏块可使用两个在时间上最近的(以显示顺序)I或P场图片中的任何一个作为参考。
图15和16示出两个参考P-场的例子。
P场图片类型
隔行扫描的P场图片可以两种类型之一:1MY或混合的MV(Mixed-MV)。下面的章节描述每种类型。在1MV P场中,每个运动补偿的宏块使用单个运动矢量来表示用于在宏块中所有6个块的预测的块的位移。1MV模式是由MVMODE和MVMODE2图片层语法元素用信号表示的。
在混合的MV P场中,每个运动补偿的宏块可编码为1MV或4MV宏块。在4MV宏块中,4个亮度块的每一个具有与其相关联的运动矢量。在混合的MV P场中,用于每一个宏块的1MV或4MV是由MBMODE语法元素在每个宏块表示的。混合的MV模式是由MVMODE和MVMODE2图片层语法元素用信号表示的。
2.宏块层解码
在隔行扫描的P场中的宏块可以是3种可能类型之一:1MV、4MV和帧内(Intra)。宏块类型是由宏块层中的MBMODE语法元素用信号表示的。下面的章节描述1MV和4MV类型以及如何用信号表示它们。
1MV宏块
1MV宏块可在1MV和混合的MV P场图片中出现。在1MV宏块中,对于宏块中所有6个宏块,单个运动矢量代表当前和参考图片之间的位移。对于1MV宏块,在宏块层中的MBMODE语法元素表示三项内容:
1)宏块类型是1MV
2)CBPCY语法元素是否存在
3)MVDATA语法元素是否存在
如果MBMODE语法元素表示CBPCY语法元素存在,则CBPCY语法元素存在于相应位置中的宏块层中。CBPCY表示6个块中哪些被编码在块层中。如果MBMODE语法元素表示CBPCY语法元素不存在,则假定CBPCY等于0且不存在用于宏块中6个块的任何一个的块数据。
如果MBMODE语法元素表示MVDATA语法元素存在,则MVDATA存在于相应位置中的宏块层中。MVDATA语法元素编码运动矢量差分。将运动矢量差分与运动矢量预测值结束起来重新构造运动矢量。如果MBMODE语法元素表示MVDATA语法元素不存在,则假定运动矢量差分是零并因此运动矢量等于运动矢量预测值。
4MV宏块
4MV宏块只可在混合的MV图片中出现。在4MV宏块中,在宏块中的4个亮度块的每一个具有相关联的运动矢量,它表示用于那个块的当前和参考图片之间的位移。用于色度块的位移是从4个亮度运动矢量导出的。
对于4MV宏块,宏块层中的MBMODE语法元素表示三项内容:
1)宏块类型是4MV
2)CBPCY语法元素是否存在
4MVBP语法元素表示4个亮度块中的哪些包含非零运动矢量差分。4MVBP语法元素解码成0与15之间的值。对于4MVBP中的4个比特位置(bit position)的每一个,值0表示不存在用于那个块的运动矢量差分(BLKMVDATA)并假定运动矢量差分是0。值1表示在相应位置中存在用于那个块的运动矢量差分(BLKMVDATA)。例如,如果4MVBP解码成值1100(二进制),则比特流包含用于块0和1的BLKMVDATA而没有用于块2和3的BLKMVDATA。
在可替换的实现中,MBMODE语法元素可以表示4MVBP语法元素是否存在;如果MBMODE语法元素表示4MVBP语法元素不存在,则假定用于所有4个亮度块的运动矢量差分数据(BLKMVDATA)存在。
取决于MVMODE/MVMODE2语法元素表示混合的MV还是表示全部1MV(all-1MV),MBMODE用信号表示如下的信息。表5示出MBMODE如何用信号表示关于在全部1MV图片中的宏块的信息。
表5:在全部-1MV图片中的宏块模式
    索引     宏块类型     CBP存在     MV存在
    0     帧内     否     无效
    1     帧内     是     无效
    2     1MV     否     否
    3     1MV     否     是
    4     1MV     是     否
    5     1MV     是     是
表6示出MBMODE如何用信号表示关于混合的MV图片中的宏块的信息。
表6:在混合的1MV图片中的宏块模式
    索引     宏块类型     CBP存在     MV存在
    0     帧内     否     无效
    1     帧内     是     无效
    2     1MV     否     否
    3     1MV     否     是
    4     1MV     是     否
    5     1MV     是     是
    6     4MV     否     无效
    7     4MV     是     无效
使用8个表之一来用信号表示MBMODE。在图片层处通过MBMODETAB语法元素用信号表示该表。
3.运动矢量解码过程
下列章节描述用于P场图片的块或宏块的运动矢量解码过程。
解码运动矢量差分
MVDATA或BLKMVDATA语法元素为宏块中的宏块或块编码运动信息。1MV宏块具有单个MVDATA语法元素,而4MV宏块可具有零与四个之间的BLKMVDATA元素。下面的章节描述如何为一个参考(one-reference)(图片层语法元素NUMREF=0)和两个参考(two-reference)(图片层语法元素NUMREF=1)情况计算运动矢量差分。
在一个参考场图片中的运动矢量差分
在只有一个参考场的场图片中,在宏块层中每个MVDATA或BLKMVDATA语法元素共同地编码两项内容:1)水平运动矢量差分分量和2)垂直运动矢量差分分量。
MVDATA或BLKMVDATA语法元素是可变长的霍夫曼码字(Huffman codeword)和跟随着的定长码字。霍夫曼码字的值确定定长码字的大小。在图片层中的MVTAB语法元素指定用于解码可变大小的码字的霍夫曼表。
在图27A中的伪代码2700例示如何为一个参考场解码运动矢量差分。在伪2700中计算值dmv_x和dmv_y。按如下定义这些值:
dmv_x:差分水平运动矢量分量,
dmv_y:差分垂直运动矢量分量,
k_x,k_y:用于长运动矢量的固定长度,
k_x和k_y取决于如由MVRANGE符号定义的运动矢量范围。
表7:由MVRANGE指定的k_x和k_y
MVRANGE k_x k_y range_x range_y
    0(默认值)     9     8     256     128
    10     10     9     512     256
    110     12     10     2048     512
    111     13     11     4096     1024
extend_x:用于水平运动矢量差分的扩展范围,
extend_y:用于垂直运动矢量差分的扩展范围,
extend_x和extend_y是从DMVRANGE图片场语法元素导出的。如果DMVRANGE表示使用用于水平分量的扩展范围,则extend_x=1。否则extend_x=0。同样,如果DMVRANGE表示使用用于垂直分量的扩展范围,则extend_y=1,否则extend_y=0。
offset_table(偏移表)是在伪代码2700中使用的数组,并如在图27A中所示的那样定义。
在图27B中的伪代码2710例示在可替换的组合实现中如何为一个参考场编码运动矢量差分。伪代码2710以不同的方式解码运动矢量差分。例如,伪代码2710省略了扩展的运动矢量差分范围的处理。
在两个参考场图片中的运动矢量差分
在使用场图片编码隔行扫描帧时出现两个参考场图片。序列的每个帧被分成两个场,每个场使用实际上是逐行扫描的编码路径来编码每个场。场图片常常具有两个参考场,并在下面描述在这种情况下场图片运动矢量的编码。
在具有两个参考场的场图片中,在宏块层中的每个MVDATA或BLKMVDATA语法元素共同地编码三项内容:1)水平运动矢量差分分量,2)垂直运动矢量差分分量和3)是否使用主导或非主导的预测值,即由运动矢量引用两个场中的哪一个。
MVDATA或BLKMVDATA语法元素是变长的霍夫曼码字并跟随着的定长码字。霍夫曼码字的值确定定长码字的大小。在图片层中的MVTAB语法元素指定用于解码可变大小的码字的霍夫曼表。
在图28A中的伪代码2800例示如何编码运动矢量差分和主导/非主导的预测值信息。
在图28A中的伪代码2800中计算值predictor_flag、dmv_x和dmv_y。除在图27A中的伪代码2700中所示的变量和数组之外,伪代码2800包含变量predictor_flag,它是表示使用主导还是非主导运动矢量预测值的二进制标志(0=使用主导预测值,1=使用非主导的预测值),以及表size_table,它是如在图28中所示的那样定义的数组。
在图28B中的伪代码2810例示在可替换的组合实现中如何为两个参考场解码运动矢量差分。伪代码2810以不同的方法解码运动矢量差分。例如,伪代码2810省略了扩展的运动矢量差分范围的处理。
运动矢量预测值
通过将前一节中计算的运动矢量差分加到运动矢量预测值上来计算运动矢量。预测值是由多达三个相邻的运动矢量来计算的。下面的章节描述在这个组合实现中如何为1MV P场图片和混合的MV P场图片计算运动矢量预测值。
在1MV隔行扫描的P场中的运动矢量预测值
图29A和29B示出为隔行扫描的P场的1MV宏块的候选运动矢量预测值考虑的宏块位置。在1MV隔行扫描的P场中,从左边、上部和右上的宏块取候选预测值,除了在宏块是行中最后一个宏块的情况之外。在这种情况下,预测值B是从左上的宏块取得的,而不是右上。对于帧是一个宏块宽的特殊情况,预测值总是预测值A(上部的预测值)。当前宏块在首行中的特殊情况(没有A和B预测值,或者根本没有预测值),参考上面图20A-20F来处理。
在混合的MV P图片中的运动矢量预测值
图30A-34示出为混合的MV P场图片中的1MV或4MV宏块的多达3个候选运动矢量预测值考虑的宏块位置。在下列图中,较大的正方形是宏块边界,而较小的正方形是块边界。对于帧是一个宏块宽的特殊情况,预测值总是预测值A(上部预测值)。当前块或宏块在顶行中的特殊情况是参考上面图20A-20F来处理的。
图30A和30B示出为混合的1MV/4MV隔行扫描的P场中的1MV当前宏块的候选运动矢量预测值考虑的块位置。相邻的宏块可以是1MV或4MV宏块。图30A和30B示出假定近邻是4MV时(即预测值A是在当前宏块之上的宏块中的块2的运动矢量,而预测值C是紧接着当前宏块的左边的宏块中的块1的运动矢量)候选运动矢量的位置。如果任何近邻是1MV宏块,则取在图29A和29B中所示的运动矢量预测值作为用于整个宏块的矢量。如图30B所示,如果宏块是行中最后的宏块,则预测值B来自左上的宏块中的块3而不是来自右上的宏块中的块2,否则反之。
图31A-34示出为在4MV宏块中的4个亮度块的每一个的候选运动矢量预测值考虑的块位置。图31A和31B示出为在混合的1MV/4MV隔行扫描的P场中的4MV宏块中在位置0处的块的候选运动矢量预测值考虑的块位置;图32A和32B示出为在混合的隔行扫描的P场中的4MV宏块中在位置1处的块的候选运动矢量预测值考虑的块位置;图33示出为在混合的1MV/4MV隔行扫描的P场中的4MV宏块中在位置2处的块的候选运动矢量预测值考虑的块位置;以及图34示出为在混合的1MV/4MV隔行扫描的P场中的4MV宏块中在位置3处的块的候选运动矢量预测值考虑的块位置。再一次,如果近邻是1MV宏块,则为宏块的块使用用于宏块的运动矢量预测值。
对于宏块是行中第一个宏块的情况,与行中其余宏块的块0不同地处理块0的预测值B。在这种情况下,从紧接在当前宏块之上的宏块中的块3而不是从当前宏块之上和左边的宏块中的块3来取预测值B,否则反之。同样,对于宏块是行中最后一个宏块,不同地处理块1的预测值B。在这种情况下,从紧接在当前宏块之上的宏块中的块2而不是从当前宏块之上和右边的宏块中的块2来取预测值B,否则反之。如果宏块在第一宏块列中,则将块0和2的预测值C设置为等于0。
主导和非主导的MV预测值
在两个参考场P场图片中,对于每个帧间编码的宏块,导出两个运动矢量预测值。一个来自主导场,而另一个来自非主导场。主导场被认为是包含近邻的实际值运动矢量预测值候选的大部分的场。在平分的情况下,用于相反场的运动矢量预测值被认为是主导预测值。在主导/非主导预测值的计算中不考虑帧内编码的宏块。如果所有候选预测值宏块是帧内编码的,则主导和非主导运动矢量预测值设置为零,并从相反的场取主导预测值。
计算运动矢量预测值
如果NUMREF=1,则当前场图片可参考两个最近的场图片,且为块或宏块的每个运动矢量计算两个运动矢量预测值。在图35A-35F中的伪代码3500描述在组合实现中如何为于两个参考情况计算运动矢量预测值。(在图20A-20F中的伪代码2000描述在另一个实现中如何为两个参考情况计算运动矢量预测值)。在两个参考图片(NUMREF=1)中,当前场可引用两个最近的场。一个预测值用于相同极性的参考场,而另一个用于具有相反极性的参考场。
在组合实现中的定标操作
图21A-B是代码图,示出用于定标来自一个场的预测值来导出来自另一个场的预测值的伪代码2100。在图22的表2200中(对于当前场是第一个场的情况)和在图23的表2300中(对于当前场是第二个场的情况),示出在这个组合实现中的SCALEOPP、SCALESAME1、SCALESAME2、SCALEZONE1_X、SCALEZONE1_Y、ZONE1OFFSET_X和ZONE1OFFSET_Y的值。在图片首部中的REFDIST中编码参考帧距离。参考帧距离是REFDIST+1。
重新构造运动矢量
下面的章节描述如何为1MV和4MV宏块重新构造亮度和色度运动矢量。在重新构造运动矢量之后,随后可使用它作为相邻的运动矢量来为邻近的宏块预测运动矢量。如果运动矢量用于两个参考场隔行扫描的P场中的块或宏块,则运动矢量将具有相关联的“相同”或“相反”的极性,且可用于为运动矢量预测值的其它场极性导出运动矢量预测值。
亮度运动矢量重新构造
在所有情况(1MV和4MV宏块)下,通过如下将差分加到预测值上来重新构造亮度运动矢量:
mv_x=(dmv_x+predictor_x)smod range_x
mv_y=(dmv_y+predictor_y)smod range_y
模操作“smod”是带符号模,按如下定义:
A smod b=((A+b)%(2*b))-b
这确保重新构造的矢量是有效的。(A smod b)位于-b与b-1之内。range_x和range_y取决于MVRANGE。
如果隔行扫描的P场图片使用两个参考图片(NUMREF=1),则将在解码运动矢量差分之后导出的predictor_flag与从运动矢量预测值导出的dominatpredictor值结合起来以确定使用哪一个场作为参考。在图36中的伪代码3600描述如何确定参考场。
在1MV宏块中,将存在用于4个构成宏块的亮度分量的块的单个运动矢量。如果MBMODE语法元素表示在宏块层中不存在MV数据,则dmv_x=0和dmv_y=0(mv_x=predictor_x且mv_y=predictor_y)。
在4MV宏块中,在宏块中的每一个帧间编码的亮度块将具有其自己的运动矢量。因此在每个4MV宏块中将存在0与4个之间的亮度运动矢量。如果4MVBP语法元素表示不存在用于块的运动矢量信息,则对于那个块dmv_x=0和dmv_y(mv_x=predictor_x且mv_y=predictor_y)。
色度运动矢量重新构造
色度运动矢量是从亮度运动矢量导出的。在可替换的实现中,对于4MV宏块,基于亮度块或场的状态作出关于将色度块作为帧间还是帧内编码的决定。
已经参考各种实施例描述和例示了我的发明的原理,将认识到,可以在不脱离这样的原理的情况下在安排和细节上修改各种实施例。应该理解,在此描述的程序、过程或方法与任何特定类型的计算环境无关,或者不受限于它们,除非另有说明。可与各种类型的通用或专用计算环境一起使用或执行按照在此描述的教导的操作。在软件中所示的实施例的元素可在硬件中实现,反之亦然。
由于许多可能的实施例可应用我的发明原理,我要求我的发明所有这样的实施例都落在所附的权利要求书及其等价物的范围和精神之中。

Claims (46)

1.一种方法,其特征在于,所述方法包括:
为隔行扫描的P场的一部分的运动矢量计算运动矢量预测值,包括在为所述部分使用相同极性运动矢量预测值与使用相反极性运动矢量预测值之间选择;以及
至少部分地基于为运动矢量计算的运动矢量预测值来处理运动矢量。
2.如权利要求1所述的方法,其特征在于,所述处理的步骤包括在编码过程中计算运动矢量与运动矢量预测值之间的运动矢量差分。
3.如权利要求1所述的方法,其特征在于,所述处理的步骤包括在解码过程中由运动矢量差分和运动矢量预测值来重新构造运动矢量。
4.如权利要求1所述的方法,其特征在于,所述部分是-宏块。
5.如权利要求1所述的方法,其特征在于,所述部分是-宏块的-块。
6.如权利要求1所述的方法,其特征在于,所述选择的步骤至少部分地基于在所述部分周围的一个近邻的相反极性运动矢量的计数和/或基于所述近邻的相同极性运动矢量的计数。
7.如权利要求1所述的方法,其特征在于,所述选择的步骤至少部分地基于比特流中的单个比特信号。
8.如权利要求1所述的方法,其特征在于,所述选择的步骤包括:
至少部分地基于在所述部分周围的一个近邻的相反极性运动矢量的计数和/或所述近邻的相同极性运动矢量的计数,确定主导预测值;以及
基于主导预测值与比特流中单个比特信号来选择相同极性运动矢量预测值或相反极性运动矢量预测值。
9.如权利要求1所述的方法,其特征在于,所述选择的步骤包括:
如果用于所述部分的运动矢量参考相同极性的场,则选择相同极性的运动矢量预测值,或者如果用于所述部分的运动矢量参考相反极性的场,则选择相反极性的运动矢量预测值。
10.如权利要求1所述的方法,其特征在于,还包括可以作为在所述部分周围的一个近邻的多个相同极性的运动矢量预测值候选的中值来计算相同极性的运动矢量预测值。
11.如权利要求10所述的方法,其特征在于,通过定标一个相反极性的运动矢量预测值候选来导出多个相同极性的运动矢量预测值候选的至少一个。
12.如权利要求1所述的方法,其特征在于,还包括作为在所述部分周围的一个近邻的多个相反极性的运动矢量预测值的候选的中值来计算相反极性的运动矢量预测值。
13.如权利要求12所述的方法,其特征在于,通过定标一个相同极性的运动矢量预测值候选来导出多个相反极性的运动矢量预测值候选的至少一个。
14.如权利要求1所述的方法,其特征在于,还包括为隔行扫描的P场的多个其它部分的每一个重复所述计算和处理步骤。
15.一种方法,其特征在于,包括:
至少部分地基于多个相邻的运动矢量来为隔行扫描的P场的一部分的运动矢量计算运动矢量预测值,其中,所述多个相邻的运动矢量包括一个或多个相反极性运动矢量和一个或多个相同极性运动矢量;以及
至少部分地基于为运动矢量计算的运动矢量预测值来处理运动矢量。
16.如权利要求15所述的方法,其特征在于,所述处理的步骤包括在编码过程中计算运动矢量与运动矢量预测值之间的运动矢量差分。
17.如权利要求15所述的方法,其特征在于,所述处理的步骤包括在解码过程中由运动矢量差分和运动矢量预测值来重新构造运动矢量。
18.如权利要求15所述的方法,其特征在于,所述部分是-宏块。
19.如权利要求15所述的方法,其特征在于,所述部分是-宏块的-块。
20.如权利要求15所述的方法,其特征在于,还包括作为多个相同极性的运动矢量预测值候选的中值来计算相同极性的运动矢量预测值,其中,至少基于定标来自一个或多个相反极性的运动矢量之一的值来导出多个候选的至少一个。
21.如权利要求15所述的方法,其特征在于,还包括作为多个相反极性的运动矢量预测值候选的中值来计算相反极性的运动矢量预测值,其中,至少基于定标来自一个或多个相同极性的运动矢量之一的值来导出多个候选的至少一个。
22.一种处理隔行扫描的预测视频帧的方法,其特征在于,所述方法包括:
为视频帧中当前场中的宏块确定运动矢量预测值候选的第一集合,运动矢量预测值候选的第一集合引用相对于当前场具有相同极性的第一参考场;
至少部分地基于运动矢量预测值候选的第一集合中的一个或多个,为宏块计算第一运动矢量预测值;
为宏块确定运动矢量预测值候选的第二集合,运动矢量预测值候选的第二集合引用具有相对于当前场的相反极性的第二参考场;
至少部分地基于运动矢量预测值候选的第二集合中的一个或多个,为宏块计算第二运动矢量预测值;以及
在所述处理步骤中使用第一和第二运动矢量预测值。
23.如权利要求22所述的方法,其特征在于,所述使用第一和第二运动矢量预测值的步骤包括选择第一和第二运动矢量预测值之一并基于选择的运动矢量预测值来为宏块计算运动矢量差分,所述方法还包括熵编码运动矢量差分。
24.如权利要求22所述的方法,其特征在于,还包括为宏块熵解码运动矢量差分,其中,所述使用第一和第二运动矢量预测值的步骤包括选择第一和第二运动矢量预测值之一并将选择的预测值与运动矢量差分结合起来为宏块重新构造运动矢量。
25.一种具有在其上存储用于在视频解码器中执行如权利要求22所述的方法的计算机可执行指令的计算机可读介质。
26.一种具有在其上存储用于在视频解码器中执行如权利要求22所述的方法的计算机可执行指令的计算机可读介质。
27.一种方法,其特征在于,包括:
通过定标具有不同于第一极性的第二极性的实际运动矢量值,来计算第一极性运动矢量预测值候选;以及
当为隔行扫描的P场的一部分的运动矢量计算运动矢量预测值时,使用第一极性运动矢量预测值候选。
28.如权利要求27所述的方法,其特征在于,还包括在编码过程中计算运动矢量与运动矢量预测值之间的运动矢量差分。
29.如权利要求27所述的方法,其特征在于,还包括在解码期间由运动矢量差分与运动矢量预测值来重新构造运动矢量。
30.如权利要求27所述的方法,其特征在于,所述部分是-宏块。
31.如权利要求27所述的方法,其特征在于,所述部分是-宏块的-块。
32.如权利要求27所述的方法,其特征在于,第一极性运动矢量预测值候选具有与所述部分相反的场极性,其中,实际运动矢量值具有与所述部分相同的场极性,以及其中,调整所述定标以从相同极性定标成相反极性。
33.如权利要求27所述的方法,其特征在于,第一极性运动矢量预测值候选具有与所述部分相同的场极性,其中,实际运动矢量值具有与所述部分相反的场极性,以及其中,调整所述定标以从相反极性定标成相同极性。
34.如权利要求27所述的方法,其特征在于,所述定标是至少部分地基于参考帧距离。
35.一种处理隔行扫描的预测视频帧的方法,其特征在于,所述方法包括:
为视频帧中当前场中的宏块确定第一运动矢量预测值候选,第一运动矢量预测值候选具有第一极性;
为宏块确定第二运动矢量预测值候选,其中,第二运动矢量预测值候选是从第一运动矢量预测值候选使用定标操作来导出的;以及
其中,第二运动矢量预测值候选具有不同于第一极性的极性。
36.一种具有在其上存储用于在视频解码器中执行如权利要求35所述的方法的计算机可执行指令的计算机可读介质。
37.一种具有在其上存储用于在视频解码器中执行如权利要求35所述的方法的计算机可执行指令的计算机可读介质。
38.一种处理隔行扫描的预测视频帧的方法,其特征在于,所述方法包括:
为视频帧中当前场中的宏块确定第一运动矢量预测值候选,第一运动矢量预测值候选引用具有第一极性和参考距离的场;以及
为宏块确定第二运动矢量预测值候选,其中,第二运动矢量预测值候选是从第一运动矢量预测值候选使用至少部分地基于参考距离变化的定标操作来导出的。
39.如权利要求38所述的方法,其特征在于,第二运动矢量预测值候选具有不同于第一极性的极性。
40.一种具有在其上存储用于在视频解码器中执行如权利要求38所述的方法的计算机可执行指令的计算机可读介质。
41.一种具有在其上存储用于在视频解码器中执行如权利要求38所述的方法的计算机可执行指令的计算机可读介质。
42.一种为编码的视频数据比特流中的当前帧解码数据的方法,其特征在于,所述方法包括:
解码比特流中一个场级处的第一元素,第一元素包括用于视频帧中的当前场的参考场数量信息,参考场数量信息表示用于当前场的两个参考场;
解码比特流中一个宏块级处的第二元素,第二元素包括用于当前场中的当前宏块的宏块模式信息;以及
解码宏块级处的第三元素,第三元素包括用于当前宏块的运动矢量数据,其中,运动矢量数据包括不同的运动矢量数据;以及
为宏块处理运动矢量数据,所述处理的步骤包括:
为当前宏块确定第一和第二运动矢量预测值,其中,第一运动矢量预测值是奇数场预测值而第二运动矢量预测值是偶数场预测值;以及
至少部分地基于第一和第二运动矢量预测值并至少部分地基于差分运动矢量数据,为当前宏块重新构造运动矢量。
43.一种解码隔行扫描的P场的当前宏块的方法,其特征在于,所述方法包括:
解码运动矢量数据,运动矢量数据共同地用信号表示水平差分运动矢量分量、垂直差分运动矢量分量和表示是否使用主导的或非主导的运动矢量预测值的标志;以及
至少部分地基于解码的运动矢量数据,重新构造运动矢量。
44.如权利要求43所述的方法,其特征在于,运动矢量是用于当前宏块的。
45.如权利要求43所述的方法,其特征在于,运动矢量是用于当前宏块的一个块的。
46.如权利要求43所述的方法,其特征在于,所述重新构造的步骤包括:
基于标志在使用主导运动矢量预测值或非主导运动矢量预测值之间选择;
将水平差分运动矢量分量与选择的预测值的水平分量结合起来;以及
将垂直差分运动矢量分量与选择的预测值的水平分量结合起来。
CN200410077192A 2003-09-07 2004-09-07 用于处理具有多个参考图片的隔行视频的方法 Active CN100579229C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US50108103P 2003-09-07 2003-09-07
US60/501,081 2003-09-07
US10/857,473 US7567617B2 (en) 2003-09-07 2004-05-27 Predicting motion vectors for fields of forward-predicted interlaced video frames
US10/857,473 2004-05-27

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN200810144049.9A Division CN101335896B (zh) 2003-09-07 2004-09-07 用于前向预测的隔行扫描视频帧的场的预测运动矢量

Publications (2)

Publication Number Publication Date
CN1630374A true CN1630374A (zh) 2005-06-22
CN100579229C CN100579229C (zh) 2010-01-06

Family

ID=34228797

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200810144049.9A Active CN101335896B (zh) 2003-09-07 2004-09-07 用于前向预测的隔行扫描视频帧的场的预测运动矢量
CN200410077192A Active CN100579229C (zh) 2003-09-07 2004-09-07 用于处理具有多个参考图片的隔行视频的方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN200810144049.9A Active CN101335896B (zh) 2003-09-07 2004-09-07 用于前向预测的隔行扫描视频帧的场的预测运动矢量

Country Status (9)

Country Link
US (2) US7567617B2 (zh)
EP (2) EP1528812B1 (zh)
JP (4) JP4921971B2 (zh)
KR (3) KR101104019B1 (zh)
CN (2) CN101335896B (zh)
ES (1) ES2601927T3 (zh)
MX (1) MXPA06002595A (zh)
PL (1) PL1528812T3 (zh)
WO (1) WO2005027497A2 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100592778C (zh) * 2005-11-07 2010-02-24 索尼株式会社 记录和重放设备及方法、记录设备和重放设备及方法
CN102210150A (zh) * 2008-11-07 2011-10-05 三菱电机株式会社 运动图像编码装置以及运动图像解码装置
CN101127913B (zh) * 2006-08-18 2013-05-22 富士通半导体股份有限公司 具有提供参考运动向量的位置的机制的帧间预测处理器
CN107371025A (zh) * 2011-06-24 2017-11-21 太阳专利托管公司 解码方法及解码装置
CN111919439A (zh) * 2018-04-02 2020-11-10 华为技术有限公司 一种视频编解码方法和装置
CN112771860A (zh) * 2018-10-04 2021-05-07 高通股份有限公司 针对视频译码中最差情况的带宽减少的仿射限制

Families Citing this family (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
US7415162B2 (en) * 2003-05-27 2008-08-19 Zaxel Systems, Inc. Method and apparatus for lossless data transformation with preprocessing by adaptive compression, multidimensional prediction, multi-symbol decoding enhancement enhancements
US7428341B2 (en) 2003-05-27 2008-09-23 Zaxel Systems, Inc. Method and apparatus for lossless data transformation with preprocessing by adaptive compression, multidimensional prediction, multi-symbol decoding enhancement enhancements
US20050013498A1 (en) 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US7499495B2 (en) * 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
US7616692B2 (en) * 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7599438B2 (en) * 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7620106B2 (en) * 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
US20050207490A1 (en) * 2004-03-18 2005-09-22 Wang Jason N Stored picture index for AVC coding
KR101104828B1 (ko) * 2004-12-09 2012-01-16 삼성전자주식회사 움직임 벡터 연산 장치 및 그 방법
US20060215754A1 (en) * 2005-03-24 2006-09-28 Intel Corporation Method and apparatus for performing video decoding in a multi-thread environment
US8300015B2 (en) * 2005-07-05 2012-10-30 Stmicroelectronics S.A. Method of detecting the movement of an entity equipped with an image sensor and device for implementing same
US8179967B2 (en) * 2005-07-05 2012-05-15 Stmicroelectronics S.A. Method and device for detecting movement of an entity provided with an image sensor
US7916784B2 (en) * 2005-10-20 2011-03-29 Broadcom Corporation Method and system for inverse telecine and field pairing
JP4760551B2 (ja) * 2006-06-05 2011-08-31 ソニー株式会社 動きベクトル復号化方法および復号化装置
JP4760552B2 (ja) * 2006-06-06 2011-08-31 ソニー株式会社 動きベクトル復号化方法および復号化装置
KR100763917B1 (ko) * 2006-06-21 2007-10-05 삼성전자주식회사 고속으로 움직임을 추정하는 방법 및 장치
DE102006043707A1 (de) * 2006-09-18 2008-03-27 Robert Bosch Gmbh Verfahren zur Datenkompression in einer Videosequenz
KR101365566B1 (ko) * 2007-01-04 2014-02-25 삼성전자주식회사 영상 부호화 및 복호화 방법과 장치
US8111750B2 (en) * 2007-03-20 2012-02-07 Himax Technologies Limited System and method for 3-D recursive search motion estimation
KR101366241B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상 부호화, 복호화 방법 및 장치
US8917775B2 (en) * 2007-05-02 2014-12-23 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding multi-view video data
US8488676B2 (en) * 2007-05-14 2013-07-16 Himax Technologies Limited Motion estimation method
US8254455B2 (en) * 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
WO2009051419A2 (en) 2007-10-16 2009-04-23 Lg Electronics Inc. A method and an apparatus for processing a video signal
KR100939917B1 (ko) 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 움직임 예측을 통한 부호화 시스템 및 움직임 예측을 통한부호화 방법
WO2009115901A2 (en) * 2008-03-19 2009-09-24 Nokia Corporation Combined motion vector and reference index prediction for video coding
JP5406465B2 (ja) * 2008-04-24 2014-02-05 株式会社Nttドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法及び画像予測復号プログラム
JP5012647B2 (ja) * 2008-04-30 2012-08-29 ソニー株式会社 画像処理装置およびその方法、並びにプログラム
KR101445791B1 (ko) * 2008-05-10 2014-10-02 삼성전자주식회사 움직임 벡터 변환을 이용한 비월 주사 영상 부호화/복호화방법 및 장치
US8325801B2 (en) * 2008-08-15 2012-12-04 Mediatek Inc. Adaptive restoration for video coding
JP5294767B2 (ja) * 2008-09-16 2013-09-18 キヤノン株式会社 動画再生装置、動画再生方法、プログラム及び記録媒体
KR101279573B1 (ko) 2008-10-31 2013-06-27 에스케이텔레콤 주식회사 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
US8189666B2 (en) 2009-02-02 2012-05-29 Microsoft Corporation Local picture identifier and computation of co-located information
JP5221430B2 (ja) * 2009-03-24 2013-06-26 株式会社東芝 画像圧縮装置および画像伸張装置
JP2011061273A (ja) * 2009-09-07 2011-03-24 Sony Corp 動きベクトル算出装置、動きベクトル算出方法およびプログラム
US9060176B2 (en) * 2009-10-01 2015-06-16 Ntt Docomo, Inc. Motion vector prediction in video coding
KR101459714B1 (ko) * 2009-10-28 2014-11-13 에스케이텔레콤 주식회사 공간 분할을 이용한 움직임 벡터 부호화/복호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20110068792A (ko) 2009-12-16 2011-06-22 한국전자통신연구원 적응적 영상 부호화 장치 및 방법
WO2011074919A2 (ko) * 2009-12-17 2011-06-23 에스케이텔레콤 주식회사 영상 부호화/복호화 방법 및 장치
US8885711B2 (en) 2009-12-17 2014-11-11 Sk Telecom Co., Ltd. Image encoding/decoding method and device
US9621892B2 (en) * 2009-12-18 2017-04-11 Sony Corporation Emulation of Bi predicted pictures using adjacent pictures for improved video
US9036692B2 (en) * 2010-01-18 2015-05-19 Mediatek Inc. Motion prediction method
US20110213932A1 (en) * 2010-02-22 2011-09-01 Takuma Chiba Decoding apparatus and decoding method
US20110216829A1 (en) * 2010-03-02 2011-09-08 Qualcomm Incorporated Enabling delta compression and modification of motion estimation and metadata for rendering images to a remote display
ES2713173T3 (es) * 2010-03-31 2019-05-20 Orange Procedimientos y dispositivos de codificación y de decodificación de una secuencia de imágenes que implementan una predicción por compensación de movimiento anticipado, y programa de ordenador correspondiente
WO2011121894A1 (ja) 2010-03-31 2011-10-06 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
WO2011131089A1 (en) * 2010-04-22 2011-10-27 Mediatek Inc. Motion prediction method
US9510009B2 (en) * 2010-05-20 2016-11-29 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
US9124898B2 (en) * 2010-07-12 2015-09-01 Mediatek Inc. Method and apparatus of temporal motion vector prediction
KR20120016991A (ko) * 2010-08-17 2012-02-27 오수미 인터 프리딕션 방법
US20120051442A1 (en) * 2010-08-31 2012-03-01 Cristarella Sarah J Video Processor Configured to Correct Field Placement Errors in a Video Signal
KR101914018B1 (ko) * 2010-09-30 2018-10-31 미쓰비시덴키 가부시키가이샤 동화상 복호 장치, 동화상 복호 방법, 동화상 부호화 장치, 동화상 부호화 방법 및 기록 매체
US9635382B2 (en) * 2011-01-07 2017-04-25 Texas Instruments Incorporated Method, system and computer program product for determining a motion vector
GB2487197B (en) * 2011-01-11 2015-06-17 Canon Kk Video encoding and decoding with improved error resilience
WO2012096164A1 (ja) * 2011-01-12 2012-07-19 パナソニック株式会社 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
JP2012151576A (ja) 2011-01-18 2012-08-09 Hitachi Ltd 画像符号化方法、画像符号化装置、画像復号方法及び画像復号装置
US9749657B2 (en) 2011-01-21 2017-08-29 Sharp Kabushiki Kaisha Buffer compression for motion vector competition
US9319716B2 (en) 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
CN107277541B (zh) 2011-02-09 2020-05-08 Lg 电子株式会社 编码和解码图像的方法及使用该方法的设备
GB2488798B (en) * 2011-03-08 2015-02-11 Canon Kk Video encoding and decoding with improved error resillience
GB2501835B (en) 2011-03-09 2014-09-03 Canon Kk Video encoding and decoding
GB2488816A (en) 2011-03-09 2012-09-12 Canon Kk Mapping motion vectors from a plurality of reference frames to a single reference frame
JP5982734B2 (ja) 2011-03-11 2016-08-31 ソニー株式会社 画像処理装置および方法
JP5786478B2 (ja) * 2011-06-15 2015-09-30 富士通株式会社 動画像復号装置、動画像復号方法、及び動画像復号プログラム
CN107257457B (zh) 2011-10-17 2020-04-21 株式会社Kt 利用解码装置解码视频信号的方法
BR112013027350B1 (pt) 2011-10-28 2022-06-07 Sun Patent Trust Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem e aparelho de decodificação de imagem
ES2780188T3 (es) * 2011-10-28 2020-08-24 Sun Patent Trust Método de codificación de imagen, método de decodificación de imagen, aparato de codificación de imagen y aparato de decodificación de imagen
US9503750B2 (en) * 2011-11-04 2016-11-22 Futurewei Technologies, Inc. Binarization of prediction residuals for lossless video coding
CN103959774B (zh) * 2011-11-18 2017-11-24 谷歌技术控股有限责任公司 用于高效视频编码的运动信息的有效存储
US9386309B2 (en) 2011-11-18 2016-07-05 Google Technology Holdings LLC Explicit way for signaling a collocated picture for high efficiency video coding (HEVC) using a single reference list
US9392235B2 (en) 2011-11-18 2016-07-12 Google Technology Holdings LLC Explicit way for signaling a collocated reference picture for video coding
BR112014012187A2 (pt) 2011-11-21 2017-05-30 Motorola Mobility Llc determinação implícita e determinação implícita e explícita combinadas de imagem colocalizada para predição temporal
US9300959B2 (en) 2011-12-26 2016-03-29 Google Technology Holdings LLC Implicit determination of collocated picture for temporal prediction
CN102547292B (zh) * 2012-02-15 2018-07-06 北京大学深圳研究生院 使用非固定参考场前向预测跳过模式的编码解码方法
CN104937939B (zh) 2012-04-11 2018-10-23 谷歌技术控股有限责任公司 用于时间运动矢量预测符标志的编码器和解码器及其方法
US9549177B2 (en) 2012-04-11 2017-01-17 Google Technology Holdings LLC Evaluation of signaling of collocated reference picture for temporal prediction
US20150326874A1 (en) * 2012-06-21 2015-11-12 Telefonaktiebolaget L M Ericsson (Publ) Apparatus and method for coding a video signal
WO2014007515A1 (ko) 2012-07-02 2014-01-09 엘지전자 주식회사 영상 정보 코딩 방법 및 이를 이용하는 장치
EP2870758B1 (en) * 2012-07-03 2016-11-16 Telefonaktiebolaget LM Ericsson (publ) Controlling deblocking filtering
US9319681B2 (en) 2012-07-18 2016-04-19 Google Technology Holdings LLC Signaling of temporal motion vector predictor (MVP) enable flag
US9442904B2 (en) * 2012-12-21 2016-09-13 Vmware, Inc. Systems and methods for applying a residual error image
CN105009576B (zh) 2013-03-13 2018-12-14 华为技术有限公司 深度查询表的编码方法
KR102121558B1 (ko) 2013-03-15 2020-06-10 삼성전자주식회사 비디오 이미지의 안정화 방법, 후처리 장치 및 이를 포함하는 비디오 디코더
GB2512829B (en) * 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
EP3010232A4 (en) * 2013-06-12 2017-01-25 Mitsubishi Electric Corporation Image encoding device, image encoding method, image decoding device, and image decoding method
CN103338372A (zh) * 2013-06-15 2013-10-02 浙江大学 一种视频处理方法及装置
KR101377136B1 (ko) * 2013-08-29 2014-03-26 삼성전자주식회사 영상 복호화 장치
FR3011429A1 (fr) * 2013-09-27 2015-04-03 Orange Codage et decodage video par heritage d'un champ de vecteurs de mouvement
JP6730191B2 (ja) 2013-12-22 2020-07-29 エルジー エレクトロニクス インコーポレイティド 予測された信号と変換コーディングされた信号とを用いたビデオ信号の予測方法及び装置
JP5750191B2 (ja) * 2014-10-15 2015-07-15 日立マクセル株式会社 画像復号化方法
CN104361862A (zh) 2014-11-28 2015-02-18 京东方科技集团股份有限公司 阵列基板及其驱动方法、显示面板、显示装置
JP5911982B2 (ja) * 2015-02-12 2016-04-27 日立マクセル株式会社 画像復号化方法
CN108141588A (zh) * 2015-09-24 2018-06-08 Lg电子株式会社 图像编码系统中的帧间预测方法和装置
JP5951915B2 (ja) * 2016-03-30 2016-07-13 日立マクセル株式会社 画像復号化方法
JP5946980B1 (ja) * 2016-03-30 2016-07-06 日立マクセル株式会社 画像復号化方法
US20190158860A1 (en) * 2016-05-13 2019-05-23 Sharp Kabushiki Kaisha Video decoding device
JP6181242B2 (ja) * 2016-06-08 2017-08-16 日立マクセル株式会社 画像復号化方法
JP6217997B2 (ja) * 2016-07-25 2017-10-25 ソニー株式会社 画像処理装置および方法
US11245921B2 (en) 2017-06-26 2022-02-08 Interdigital Vc Holdings, Inc. Multiple predictor candidates for motion compensation
KR20200012957A (ko) * 2017-06-30 2020-02-05 후아웨이 테크놀러지 컴퍼니 리미티드 인터-프레임 예측 방법 및 디바이스
US11665365B2 (en) 2018-09-14 2023-05-30 Google Llc Motion prediction coding with coframe motion vectors
US11051034B2 (en) 2018-10-08 2021-06-29 Qualcomm Incorporated History-based motion vector predictor
CN113228675A (zh) * 2018-12-21 2021-08-06 北京字节跳动网络技术有限公司 视频处理中的运动矢量比特深度
US10979716B2 (en) * 2019-03-15 2021-04-13 Tencent America LLC Methods of accessing affine history-based motion vector predictor buffer
WO2021196087A1 (zh) * 2020-04-01 2021-10-07 华为技术有限公司 视频增强的方法及装置
US20230328275A1 (en) * 2022-04-06 2023-10-12 Tencent America LLC Systems and methods for explicit signaling of scaling factors for joint coding of motion vector difference

Family Cites Families (263)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56128070A (en) * 1980-03-13 1981-10-07 Fuji Photo Film Co Ltd Band compressing equipment of variable density picture
JPS60158786A (ja) 1984-01-30 1985-08-20 Kokusai Denshin Denwa Co Ltd <Kdd> 画像動き量検出方式
US4661849A (en) * 1985-06-03 1987-04-28 Pictel Corporation Method and apparatus for providing motion estimation signals for communicating image sequences
EP0207774B1 (en) 1985-07-02 1992-03-04 Matsushita Electric Industrial Co., Ltd. Block encoder
US4661853A (en) * 1985-11-01 1987-04-28 Rca Corporation Interfield image motion detector for video signals
FR2599577B1 (fr) * 1986-05-29 1988-08-05 Guichard Jacques Procede de codage par transformation pour la transmission de signaux d'image.
US4800432A (en) * 1986-10-24 1989-01-24 The Grass Valley Group, Inc. Video Difference key generator
DE3704777C1 (de) 1987-02-16 1988-04-07 Ant Nachrichtentech Verfahren zum UEbertragen und zum Wiedergeben von Fernsehbildsequenzen
NL8700565A (nl) 1987-03-10 1988-10-03 Philips Nv Televisiesysteem waarin aan een transformatiekodering onderworpen gedigitaliseerde beeldsignalen worden overgebracht van een kodeerstation naar een dekodeerstation.
EP0287238B1 (en) * 1987-04-13 1991-09-11 Imperial Chemical Industries Plc Process and apparatus for the production of a hot pressurised gas stream by catalytic combustion
EP0290085B1 (de) * 1987-05-06 1996-03-20 Philips Patentverwaltung GmbH System zur Übertragung von Videobildern
DE3854337T2 (de) 1987-06-09 1996-02-01 Sony Corp Bewegungskompensierte Interpolation von digitalen Fernsehbildern.
EP0294962B1 (en) 1987-06-09 1995-07-19 Sony Corporation Motion vector estimation in television images
FR2648254B2 (fr) * 1988-09-23 1991-08-30 Thomson Csf Procede et dispositif d'estimation de mouvement dans une sequence d'images animees
US4985768A (en) 1989-01-20 1991-01-15 Victor Company Of Japan, Ltd. Inter-frame predictive encoding system with encoded and transmitted prediction error
US5379351A (en) * 1992-02-19 1995-01-03 Integrated Information Technology, Inc. Video compression/decompression processing and processors
JPH07109990B2 (ja) * 1989-04-27 1995-11-22 日本ビクター株式会社 適応型フレーム間予測符号化方法及び復号方法
AU612543B2 (en) 1989-05-11 1991-07-11 Panasonic Corporation Moving image signal encoding apparatus and decoding apparatus
USRE35910E (en) 1989-05-11 1998-09-29 Matsushita Electric Industrial Co., Ltd. Moving image signal encoding apparatus and decoding apparatus
JPH03117991A (ja) * 1989-09-29 1991-05-20 Victor Co Of Japan Ltd 動きベクトル符号化装置及び復号化装置
US5144426A (en) 1989-10-13 1992-09-01 Matsushita Electric Industrial Co., Ltd. Motion compensated prediction interframe coding system
EP0424026B1 (en) 1989-10-14 1997-07-23 Sony Corporation Video signal transmitting system and method
NL9000424A (nl) 1990-02-22 1991-09-16 Philips Nv Overdrachtsysteem voor gedigitaliseerde televisiebeelden.
JPH082107B2 (ja) * 1990-03-02 1996-01-10 国際電信電話株式会社 動画像のハイブリッド符号化方法及びその装置
JPH03265290A (ja) 1990-03-14 1991-11-26 Toshiba Corp テレビジョン信号走査線変換器
US5103306A (en) * 1990-03-28 1992-04-07 Transitions Research Corporation Digital image compression employing a resolution gradient
US5091782A (en) * 1990-04-09 1992-02-25 General Instrument Corporation Apparatus and method for adaptively compressing successive blocks of digital video
US4999705A (en) * 1990-05-03 1991-03-12 At&T Bell Laboratories Three dimensional motion compensated video coding
US5155594A (en) 1990-05-11 1992-10-13 Picturetel Corporation Hierarchical encoding method and apparatus employing background references for efficiently communicating image sequences
US5068724A (en) 1990-06-15 1991-11-26 General Instrument Corporation Adaptive motion compensation for digital television
JP3037383B2 (ja) 1990-09-03 2000-04-24 キヤノン株式会社 画像処理システム及びその方法
US5175618A (en) 1990-10-31 1992-12-29 Victor Company Of Japan, Ltd. Compression method for interlace moving image signals
US5193004A (en) * 1990-12-03 1993-03-09 The Trustees Of Columbia University In The City Of New York Systems and methods for coding even fields of interlaced video sequences
USRE35093E (en) 1990-12-03 1995-11-21 The Trustees Of Columbia University In The City Of New York Systems and methods for coding even fields of interlaced video sequences
US5111292A (en) * 1991-02-27 1992-05-05 General Electric Company Priority selection apparatus as for a video signal processor
JPH0630280A (ja) * 1991-03-19 1994-02-04 Nec Eng Ltd 2値画像データのブロック別選択型符号化前処理方式
JP3119888B2 (ja) * 1991-04-18 2000-12-25 松下電器産業株式会社 信号処理方法及び記録再生装置
DE4113505A1 (de) * 1991-04-25 1992-10-29 Thomson Brandt Gmbh Verfahren zur bildsignalcodierung
JPH04334188A (ja) 1991-05-08 1992-11-20 Nec Corp 動画像信号の符号化方式
SK399892A3 (en) * 1991-05-24 1993-07-07 British Broadcasting Corp Video image processing
US5467136A (en) 1991-05-31 1995-11-14 Kabushiki Kaisha Toshiba Video decoder for determining a motion vector from a scaled vector and a difference vector
US5317397A (en) * 1991-05-31 1994-05-31 Kabushiki Kaisha Toshiba Predictive coding using spatial-temporal filtering and plural motion vectors
JP2977104B2 (ja) 1991-07-26 1999-11-10 ソニー株式会社 動画像データエンコード方法および装置、並びに動画像データデコード方法および装置
US5539466A (en) 1991-07-30 1996-07-23 Sony Corporation Efficient coding apparatus for picture signal and decoding apparatus therefor
JP3092280B2 (ja) * 1991-07-30 2000-09-25 ソニー株式会社 画像信号の高能率符号化及び復号化装置
JP2699703B2 (ja) * 1991-07-31 1998-01-19 松下電器産業株式会社 動き補償予測方法とそれを用いた画像信号符号化方法
JPH0541862A (ja) * 1991-08-03 1993-02-19 Sony Corp 動きベクトルの可変長符号化方式
US5428396A (en) 1991-08-03 1995-06-27 Sony Corporation Variable length coding/decoding method for motion vectors
JP3001688B2 (ja) 1991-08-05 2000-01-24 株式会社大一商会 パチンコ球の循環制御装置
DE69217150T2 (de) 1991-09-30 1997-07-17 Philips Electronics Nv Bewegungsvektorschätzung, Bewegungsbildkodierung- und -speicherung
JP2991833B2 (ja) 1991-10-11 1999-12-20 松下電器産業株式会社 インターレス走査ディジタルビデオ信号の符号化装置及びその方法
JP2586260B2 (ja) * 1991-10-22 1997-02-26 三菱電機株式会社 適応的ブロッキング画像符号化装置
JP3134424B2 (ja) 1991-10-31 2001-02-13 ソニー株式会社 可変長符号化方法及び装置
JP2962012B2 (ja) * 1991-11-08 1999-10-12 日本ビクター株式会社 動画像符号化装置及びその復号装置
JPH05137131A (ja) * 1991-11-13 1993-06-01 Sony Corp フレーム間動き予測方法
US5227878A (en) 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
US5510840A (en) * 1991-12-27 1996-04-23 Sony Corporation Methods and devices for encoding and decoding frame signals and recording medium therefor
US5284453A (en) * 1992-02-05 1994-02-08 Kun Steve I Rescue package composed of a life raft connected to a canister of materials to inflate the raft
US5317379A (en) * 1992-02-11 1994-05-31 Rosemount Analytical Inc. Chemical species optical analyzer with multiple fiber channels
US5594813A (en) * 1992-02-19 1997-01-14 Integrated Information Technology, Inc. Programmable architecture and methods for motion estimation
US6441842B1 (en) 1992-02-19 2002-08-27 8×8, Inc. Video compression/decompression processing and processors
US5293229A (en) * 1992-03-27 1994-03-08 Matsushita Electric Corporation Of America Apparatus and method for processing groups of fields in a video data compression system
US5287420A (en) * 1992-04-08 1994-02-15 Supermac Technology Method for image compression on a personal computer
KR0166716B1 (ko) 1992-06-18 1999-03-20 강진구 블럭 dpcm을 이용한 부호화/복호화방법 및 장치
JP3443867B2 (ja) * 1992-06-26 2003-09-08 ソニー株式会社 画像信号符号化、復号化方法及び画像信号記録媒体
US6101313A (en) 1992-06-29 2000-08-08 Sony Corporation High efficiency encoding and decoding of picture signals and recording medium containing same
US6226327B1 (en) * 1992-06-29 2001-05-01 Sony Corporation Video coding method and apparatus which select between frame-based and field-based predictive modes
US5412435A (en) * 1992-07-03 1995-05-02 Kokusai Denshin Denwa Kabushiki Kaisha Interlaced video signal motion compensation prediction system
JPH06153180A (ja) 1992-09-16 1994-05-31 Fujitsu Ltd 画像データ符号化方法及び装置
JPH06113287A (ja) 1992-09-30 1994-04-22 Matsushita Electric Ind Co Ltd 画像符号化装置と画像復号化装置
US5982437A (en) 1992-10-26 1999-11-09 Sony Corporation Coding method and system, and decoding method and system
KR0166722B1 (ko) 1992-11-30 1999-03-20 윤종용 부호화 및 복호화방법 및 그 장치
US5400075A (en) * 1993-01-13 1995-03-21 Thomson Consumer Electronics, Inc. Adaptive variable length encoder/decoder
US5491516A (en) * 1993-01-14 1996-02-13 Rca Thomson Licensing Corporation Field elimination apparatus for a video compression/decompression system
US5544286A (en) 1993-01-29 1996-08-06 Microsoft Corporation Digital video data compression technique
JPH0626195A (ja) * 1993-02-16 1994-02-01 Yasuyuki Tsuruta 構築物施工用結合具
JPH06243418A (ja) * 1993-02-22 1994-09-02 Matsushita Electric Ind Co Ltd 積層型磁気ヘッド
US5592228A (en) 1993-03-04 1997-01-07 Kabushiki Kaisha Toshiba Video encoder using global motion estimation and polygonal patch motion estimation
US5376968A (en) 1993-03-11 1994-12-27 General Instrument Corporation Adaptive compression of digital video data using different modes such as PCM and DPCM
EP2334083B1 (en) 1993-03-24 2013-08-28 Sony Corporation Method of coding and decoding motion vector and apparatus thereof, and method of coding and decoding picture signal and apparatus thereof
JP3500634B2 (ja) * 1993-04-08 2004-02-23 ソニー株式会社 動きベクトル検出装置
US5442400A (en) 1993-04-29 1995-08-15 Rca Thomson Licensing Corporation Error concealment apparatus for MPEG-like video data
DE69416717T2 (de) * 1993-05-21 1999-10-07 Nippon Telegraph & Telephone Bewegtbildkoder und -dekoder
JPH06343172A (ja) * 1993-06-01 1994-12-13 Matsushita Electric Ind Co Ltd 動きベクトル検出方法及び動きベクトル符号化方法
US5448297A (en) 1993-06-16 1995-09-05 Intel Corporation Method and system for encoding images using skip blocks
JPH0730896A (ja) * 1993-06-25 1995-01-31 Matsushita Electric Ind Co Ltd 動きベクトル符号化及び復号化方法
US5517327A (en) * 1993-06-30 1996-05-14 Minolta Camera Kabushiki Kaisha Data processor for image data using orthogonal transformation
US5477272A (en) 1993-07-22 1995-12-19 Gte Laboratories Incorporated Variable-block size multi-resolution motion estimation scheme for pyramid coding
US5453799A (en) 1993-11-05 1995-09-26 Comsat Corporation Unified motion estimation architecture
JP3050736B2 (ja) * 1993-12-13 2000-06-12 シャープ株式会社 動画像符号化装置
KR0155784B1 (ko) 1993-12-16 1998-12-15 김광호 영상데이타의 적응형 가변장 부호화/복호화방법
US5465118A (en) 1993-12-17 1995-11-07 International Business Machines Corporation Luminance transition coding method for software motion video compression/decompression
US5694173A (en) 1993-12-29 1997-12-02 Kabushiki Kaisha Toshiba Video data arranging method and video data encoding/decoding apparatus
EP0675652B1 (fr) 1994-03-30 2009-05-13 Nxp B.V. Procédé et circuit d'estimation de mouvement entre images à deux trames entrelacées, et dispositif de codage de signaux numériques comprenant un tel circuit
US5550541A (en) 1994-04-01 1996-08-27 Dolby Laboratories Licensing Corporation Compact source coding tables for encoder/decoder system
TW283289B (zh) 1994-04-11 1996-08-11 Gen Instrument Corp
US5650829A (en) 1994-04-21 1997-07-22 Sanyo Electric Co., Ltd. Motion video coding systems with motion vector detection
US5689305A (en) * 1994-05-24 1997-11-18 Kabushiki Kaisha Toshiba System for deinterlacing digitally compressed video and method
US5457495A (en) 1994-05-25 1995-10-10 At&T Ipm Corp. Adaptive video coder with dynamic bit allocation
US5767898A (en) 1994-06-23 1998-06-16 Sanyo Electric Co., Ltd. Three-dimensional image coding by merger of left and right images
US5594504A (en) * 1994-07-06 1997-01-14 Lucent Technologies Inc. Predictive video coding using a motion vector updating routine
KR0126871B1 (ko) 1994-07-30 1997-12-29 심상철 양방향 이동벡터 추정을 위한 고속 블럭정합 방식
US5684538A (en) 1994-08-18 1997-11-04 Hitachi, Ltd. System and method for performing video coding/decoding using motion compensation
FR2725577B1 (fr) * 1994-10-10 1996-11-29 Thomson Consumer Electronics Procede de codage ou de decodage de vecteurs mouvement et dispositif de codage ou de decodage mettant en oeuvre ledit procede
US5550847A (en) 1994-10-11 1996-08-27 Motorola, Inc. Device and method of signal loss recovery for realtime and/or interactive communications
JP3474005B2 (ja) 1994-10-13 2003-12-08 沖電気工業株式会社 動画像符号化方法及び動画像復号方法
US5552832A (en) 1994-10-26 1996-09-03 Intel Corporation Run-length encoding sequence for video signals
EP0710033A3 (en) * 1994-10-28 1999-06-09 Matsushita Electric Industrial Co., Ltd. MPEG video decoder having a high bandwidth memory
US5623311A (en) * 1994-10-28 1997-04-22 Matsushita Electric Corporation Of America MPEG video decoder having a high bandwidth memory
US5619281A (en) * 1994-12-30 1997-04-08 Daewoo Electronics Co., Ltd Method and apparatus for detecting motion vectors in a frame decimating video encoder
EP0721287A1 (en) 1995-01-09 1996-07-10 Daewoo Electronics Co., Ltd Method and apparatus for encoding a video signal
JP3732867B2 (ja) 1995-03-09 2006-01-11 株式会社ルネサステクノロジ 画像伸張装置
EP0731614B1 (en) * 1995-03-10 2002-02-06 Kabushiki Kaisha Toshiba Video coding/decoding apparatus
KR0181027B1 (ko) * 1995-03-20 1999-05-01 배순훈 화소 단위 움직임 추정을 이용하는 영상처리 시스템
KR0171118B1 (ko) * 1995-03-20 1999-03-20 배순훈 비디오신호 부호화 장치
KR0181063B1 (ko) 1995-04-29 1999-05-01 배순훈 특징점을 이용한 움직임 보상에서의 그리드 형성방법 및 장치
JP3803122B2 (ja) * 1995-05-02 2006-08-02 松下電器産業株式会社 画像メモリ装置および動きベクトル検出回路
US5654771A (en) 1995-05-23 1997-08-05 The University Of Rochester Video compression system using a dense motion vector field and a triangular patch mesh overlay model
GB2301972B (en) 1995-06-06 1999-10-20 Sony Uk Ltd Video compression
US5835149A (en) 1995-06-06 1998-11-10 Intel Corporation Bit allocation in a coded video sequence
GB2301971B (en) 1995-06-06 1999-10-06 Sony Uk Ltd Video compression
US5731850A (en) * 1995-06-07 1998-03-24 Maturi; Gregory V. Hybrid hierarchial/full-search MPEG encoder motion estimation
US6208761B1 (en) * 1995-07-11 2001-03-27 Telefonaktiebolaget Lm Ericsson (Publ) Video coding
US5687097A (en) 1995-07-13 1997-11-11 Zapex Technologies, Inc. Method and apparatus for efficiently determining a frame motion vector in a video encoder
US5668608A (en) 1995-07-26 1997-09-16 Daewoo Electronics Co., Ltd. Motion vector estimation method and apparatus for use in an image signal encoding system
US5825830A (en) 1995-08-17 1998-10-20 Kopf; David A. Method and apparatus for the compression of audio, video or other data
GB2305797B (en) 1995-09-27 2000-03-01 Sony Uk Ltd Video data compression
US5883678A (en) 1995-09-29 1999-03-16 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus for reducing an alpha-map signal at a controlled reduction ratio
US6307967B1 (en) 1995-09-29 2001-10-23 Kabushiki Kaisha Toshiba Video coding and video decoding apparatus
US5959673A (en) 1995-10-05 1999-09-28 Microsoft Corporation Transform coding of dense motion vector fields for frame and object based video coding applications
US5929940A (en) 1995-10-25 1999-07-27 U.S. Philips Corporation Method and device for estimating motion between images, system for encoding segmented images
KR100211917B1 (ko) 1995-10-26 1999-08-02 김영환 물체 모양정보 부호화 방법
US5991463A (en) * 1995-11-08 1999-11-23 Genesis Microchip Inc. Source data interpolation method and apparatus
US5963673A (en) 1995-12-20 1999-10-05 Sanyo Electric Co., Ltd. Method and apparatus for adaptively selecting a coding mode for video encoding
JP2798035B2 (ja) * 1996-01-17 1998-09-17 日本電気株式会社 適応動きベクトル補間による動き補償フレーム間予測方法
US5692063A (en) 1996-01-19 1997-11-25 Microsoft Corporation Method and system for unrestricted motion estimation for video
US5787203A (en) 1996-01-19 1998-07-28 Microsoft Corporation Method and system for filtering compressed video images
US5799113A (en) 1996-01-19 1998-08-25 Microsoft Corporation Method for expanding contracted video images
US5737019A (en) 1996-01-29 1998-04-07 Matsushita Electric Corporation Of America Method and apparatus for changing resolution by direct DCT mapping
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
DE69614500T2 (de) 1996-02-27 2001-11-22 St Microelectronics Srl Speicherverminderung für das Grundprofil und die Hauptebene eines MPEG-2-Dekoders
US5982438A (en) 1996-03-22 1999-11-09 Microsoft Corporation Overlapped motion compensation for object coding
US5847776A (en) 1996-06-24 1998-12-08 Vdonet Corporation Ltd. Method for entropy constrained motion estimation and coding of motion vectors with increased search range
JP3628810B2 (ja) * 1996-06-28 2005-03-16 三菱電機株式会社 画像符号化装置
EP0825778A3 (en) 1996-08-22 1998-06-10 Cirrus Logic, Inc. Method for motion estimation
DE19637522A1 (de) 1996-09-13 1998-03-19 Bosch Gmbh Robert Verfahren zur Reduzierung von Daten in Videosignalen
US6233017B1 (en) * 1996-09-16 2001-05-15 Microsoft Corporation Multimedia compression system with adaptive block sizes
JP4049280B2 (ja) * 1996-09-24 2008-02-20 株式会社ハイニックスセミコンダクター グレースケール形状情報符号化/復号化装置及び方法
KR100303685B1 (ko) * 1996-09-30 2001-09-24 송문섭 영상 예측부호화 장치 및 그 방법
US5748789A (en) * 1996-10-31 1998-05-05 Microsoft Corporation Transparent block skipping in object-based video coding systems
JPH10145779A (ja) * 1996-11-06 1998-05-29 Sony Corp フィールド検出装置およびフィールド検出方法、画像符号化装置および画像符号化方法、並びに記録媒体および記録方法
US6130963A (en) 1996-11-22 2000-10-10 C-Cube Semiconductor Ii, Inc. Memory efficient decoding of video frame chroma
US5905542A (en) * 1996-12-04 1999-05-18 C-Cube Microsystems, Inc. Simplified dual prime video motion estimation
KR100413153B1 (ko) * 1996-12-12 2003-12-31 마쯔시다덴기산교 가부시키가이샤 화상 부호화 장치, 화상 복호화 장치 및 기록 매체
US6377628B1 (en) * 1996-12-18 2002-04-23 Thomson Licensing S.A. System for maintaining datastream continuity in the presence of disrupted source data
US6167090A (en) 1996-12-26 2000-12-26 Nippon Steel Corporation Motion vector detecting apparatus
EP0786907A3 (en) 1997-01-24 2001-06-13 Texas Instruments Incorporated Video encoder
US6201927B1 (en) * 1997-02-18 2001-03-13 Mary Lafuze Comer Trick play reproduction of MPEG encoded signals
US6005980A (en) * 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
US5991447A (en) * 1997-03-07 1999-11-23 General Instrument Corporation Prediction and coding of bi-directionally predicted video object planes for interlaced digital video
US5844613A (en) 1997-03-17 1998-12-01 Microsoft Corporation Global motion estimator for motion video signal encoding
US6263065B1 (en) 1997-03-18 2001-07-17 At&T Corp. Method and apparatus for simulating central queue for distributing call in distributed arrangement of automatic call distributors
US6404813B1 (en) * 1997-03-27 2002-06-11 At&T Corp. Bidirectionally predicted pictures or video object planes for efficient and flexible video coding
KR100345423B1 (ko) 1997-03-31 2002-07-26 마츠시타 덴끼 산교 가부시키가이샤 동화상 표시 방법 및 그 장치
JP3217987B2 (ja) * 1997-03-31 2001-10-15 松下電器産業株式会社 動画像信号の復号方法および符号化方法
US5973755A (en) 1997-04-04 1999-10-26 Microsoft Corporation Video encoder and decoder using bilinear motion compensation and lapped orthogonal transforms
JP2002507339A (ja) 1997-05-30 2002-03-05 サーノフ コーポレイション 非線形ピラミッドを用いた階層的な運動推定実行方法及び装置
JP3164031B2 (ja) * 1997-05-30 2001-05-08 日本ビクター株式会社 動画像符号化復号化装置、動画像符号化復号化方法、及び動画像符号化記録媒体
US6067322A (en) * 1997-06-04 2000-05-23 Microsoft Corporation Half pixel motion estimation in motion video signal encoding
US6057884A (en) * 1997-06-05 2000-05-02 General Instrument Corporation Temporal and spatial scaleable coding for video object planes
EP2288165B1 (en) * 1997-06-09 2015-12-16 Hitachi, Ltd. Image decoding method
US6574371B2 (en) 1997-06-09 2003-06-03 Hitachi, Ltd. Image decoding method
JPH1169345A (ja) 1997-06-11 1999-03-09 Fujitsu Ltd フレーム間予測動画像符号化装置及び復号装置並びにフレーム間予測動画像符号化方法及び復号方法
GB9712651D0 (en) 1997-06-18 1997-08-20 Nds Ltd Improvements in or relating to encoding digital signals
US6359929B1 (en) * 1997-07-04 2002-03-19 Matsushita Electric Industrial Co., Ltd. Image predictive decoding method, image predictive decoding apparatus, image predictive coding apparatus, and data storage medium
JP2897763B2 (ja) * 1997-07-28 1999-05-31 日本ビクター株式会社 動き補償符号化装置、復号化装置、符号化方法及び復号化方法
KR100244291B1 (ko) 1997-07-30 2000-02-01 구본준 동영상 움직임 벡터 코딩 방법
US6310918B1 (en) 1997-07-31 2001-10-30 Lsi Logic Corporation System and method for motion vector extraction and computation meeting 2-frame store and letterboxing requirements
US6266091B1 (en) 1997-07-31 2001-07-24 Lsi Logic Corporation System and method for low delay mode operation video decoding
FR2766946B1 (fr) * 1997-08-04 2000-08-11 Thomson Multimedia Sa Procede et dispositif de pretraitement pour estimation de mouvement
US6281942B1 (en) 1997-08-11 2001-08-28 Microsoft Corporation Spatial and temporal filtering mechanism for digital motion video signals
KR100252342B1 (ko) 1997-08-12 2000-04-15 전주범 움직임 벡터 부호화 방법 및 그 장치
KR100249223B1 (ko) 1997-09-12 2000-03-15 구자홍 엠팩(mpeg)-4의움직임벡터코딩방법
US6148033A (en) 1997-11-20 2000-11-14 Hitachi America, Ltd. Methods and apparatus for improving picture quality in reduced resolution video decoders
US6111914A (en) 1997-12-01 2000-08-29 Conexant Systems, Inc. Adaptive entropy coding in adaptive quantization framework for video signal coding systems and processes
CN1220388C (zh) 1997-12-01 2005-09-21 三星电子株式会社 运动向量预测方法
US5973743A (en) * 1997-12-02 1999-10-26 Daewoo Electronics Co., Ltd. Mode coding method and apparatus for use in an interlaced shape coder
EP0921683B1 (en) 1997-12-02 2010-09-08 Daewoo Electronics Corporation Method and apparatus for encoding mode signals for use in a binary shape coder
JP3740813B2 (ja) 1997-12-12 2006-02-01 ソニー株式会社 画像符号化方法および画像符号化装置
KR100523908B1 (ko) * 1997-12-12 2006-01-27 주식회사 팬택앤큐리텔 격행주사 영상에 대한 영상신호 부호화 장치 및 그 방법
US6339656B1 (en) * 1997-12-25 2002-01-15 Matsushita Electric Industrial Co., Ltd. Moving picture encoding decoding processing apparatus
US5946043A (en) 1997-12-31 1999-08-31 Microsoft Corporation Video coding using adaptive coding of block parameters for coded/uncoded blocks
JPH11275592A (ja) * 1998-01-22 1999-10-08 Victor Co Of Japan Ltd 動画像符号列変換装置及びその方法
US6122017A (en) * 1998-01-22 2000-09-19 Hewlett-Packard Company Method for providing motion-compensated multi-field enhancement of still images from video
WO1999041697A1 (en) * 1998-02-13 1999-08-19 Quvis, Inc. Apparatus and method for optimized compression of interlaced motion images
EP0940774A3 (en) 1998-03-05 2000-07-05 Matsushita Electric Industrial Co., Ltd. Motion vector coding and decoding apparatus and method
EP0944245B1 (en) 1998-03-20 2001-07-25 SGS-THOMSON MICROELECTRONICS S.r.l. Hierarchical recursive motion estimator for video images encoder
KR100281462B1 (ko) 1998-03-30 2001-02-01 전주범 격행 부호화에서 이진 형상 신호의 움직임 벡터 부호화 방법
US6408029B1 (en) 1998-04-02 2002-06-18 Intel Corporation Method and apparatus for simplifying real-time data encoding
JP3888597B2 (ja) 1998-06-24 2007-03-07 日本ビクター株式会社 動き補償符号化装置、及び動き補償符号化復号化方法
US6519287B1 (en) * 1998-07-13 2003-02-11 Motorola, Inc. Method and apparatus for encoding and decoding video signals by using storage and retrieval of motion vectors
JP4026238B2 (ja) * 1998-07-23 2007-12-26 ソニー株式会社 画像復号装置及び画像復号方法
US6275531B1 (en) 1998-07-23 2001-08-14 Optivision, Inc. Scalable video coding method and apparatus
US6219070B1 (en) * 1998-09-30 2001-04-17 Webtv Networks, Inc. System and method for adjusting pixel parameters by subpixel positioning
GB2343579A (en) 1998-11-07 2000-05-10 Ibm Hybrid-linear-bicubic interpolation method and apparatus
US6081209A (en) 1998-11-12 2000-06-27 Hewlett-Packard Company Search system for use in compression
US6418166B1 (en) 1998-11-30 2002-07-09 Microsoft Corporation Motion estimation and block matching pattern
US6983018B1 (en) * 1998-11-30 2006-01-03 Microsoft Corporation Efficient motion vector coding for video compression
US6563953B2 (en) * 1998-11-30 2003-05-13 Microsoft Corporation Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock
US6496608B1 (en) 1999-01-15 2002-12-17 Picsurf, Inc. Image data interpolation system and method
BR0004370A (pt) 1999-02-05 2000-12-19 Sony Corp Aparelhos e processos de codificação e de decodificação e sistema e método de codificação
US6259741B1 (en) 1999-02-18 2001-07-10 General Instrument Corporation Method of architecture for converting MPEG-2 4:2:2-profile bitstreams into main-profile bitstreams
JP3778721B2 (ja) 1999-03-18 2006-05-24 富士通株式会社 動画像符号化方法および装置
IT1313382B1 (it) 1999-03-18 2002-07-23 St Microelectronics Srl Stima del moto ricorsiva spazio temporale con sottocampionamento ad 1/2 di macroblocco e ad 1/4 di pixel
US6320593B1 (en) 1999-04-20 2001-11-20 Agilent Technologies, Inc. Method of fast bi-cubic interpolation of image information
EP1092321A1 (en) 1999-04-30 2001-04-18 Koninklijke Philips Electronics N.V. Video encoding method with selection of b-frame encoding mode
US6519005B2 (en) * 1999-04-30 2003-02-11 Koninklijke Philips Electronics N.V. Method of concurrent multiple-mode motion estimation for digital video
US6968008B1 (en) 1999-07-27 2005-11-22 Sharp Laboratories Of America, Inc. Methods for motion estimation with adaptive motion accuracy
US6735249B1 (en) 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
GB9928022D0 (en) 1999-11-26 2000-01-26 British Telecomm Video coding and decording
US6493392B1 (en) 1999-12-27 2002-12-10 Hyundai Electronics Industries Co., Ltd. Method for coding digital interlaced moving video
KR100619377B1 (ko) 2000-02-22 2006-09-08 주식회사 팬택앤큐리텔 움직임 추정 방법 및 장치
US6473460B1 (en) * 2000-03-31 2002-10-29 Matsushita Electric Industrial Co., Ltd. Method and apparatus for calculating motion vectors
JP3662171B2 (ja) * 2000-06-05 2005-06-22 三菱電機株式会社 符号化装置及び符号化方法
US6449312B1 (en) * 2000-06-08 2002-09-10 Motorola, Inc. Method of estimating motion in interlaced video
US6647061B1 (en) * 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
JP4682410B2 (ja) 2000-10-12 2011-05-11 ソニー株式会社 画像処理装置及び画像処理方法
KR100355831B1 (ko) * 2000-12-06 2002-10-19 엘지전자 주식회사 2차원 최소 비트 예측 기반의 움직임 벡터 부호화 방법
KR100887524B1 (ko) * 2001-02-13 2009-03-09 코닌클리케 필립스 일렉트로닉스 엔.브이. 모션 정보 코딩 및 디코딩 방법
US6778610B2 (en) 2001-03-02 2004-08-17 Redrock Semiconductor, Ltd. Simultaneous search for different resync-marker patterns to recover from corrupted MPEG-4 bitstreams
US7206453B2 (en) 2001-05-03 2007-04-17 Microsoft Corporation Dynamic filtering for lossy compression
DE60141961D1 (de) * 2001-09-10 2010-06-10 Texas Instruments Inc Verfahren und Vorrichtung zur Bewegungsvektorenabschätzung
US6950469B2 (en) 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US20030095603A1 (en) * 2001-11-16 2003-05-22 Koninklijke Philips Electronics N.V. Reduced-complexity video decoding using larger pixel-grid motion compensation
US20030099294A1 (en) * 2001-11-27 2003-05-29 Limin Wang Picture level adaptive frame/field coding for digital video content
JP2005510985A (ja) * 2001-11-21 2005-04-21 ジェネラル・インストルメント・コーポレーション デジタルビデオコンテンツのマクロブロックレベルにおける適応フレーム/フィールド符号化
US6980596B2 (en) * 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
CN101448162B (zh) 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
WO2003053066A1 (en) 2001-12-17 2003-06-26 Microsoft Corporation Skip macroblock coding
US8780970B2 (en) 2001-12-21 2014-07-15 Polycom, Inc. Motion wake identification and control mechanism
KR20060111735A (ko) * 2002-01-18 2006-10-27 가부시끼가이샤 도시바 동화상 복호화방법 및 장치
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
EP1347649A1 (en) 2002-03-18 2003-09-24 Lg Electronics Inc. B picture mode determining method and apparatus in video coding system
MXPA03011334A (es) * 2002-04-19 2004-04-20 Matsushita Electric Ind Co Ltd Metodo de calculo de un vector de movimiento.
US7277587B2 (en) 2002-04-26 2007-10-02 Sharp Laboratories Of America, Inc. System and method for lossless video coding
JP2004048711A (ja) * 2002-05-22 2004-02-12 Matsushita Electric Ind Co Ltd 動画像の符号化方法および復号化方法およびデータ記録媒体
EP1422946A4 (en) 2002-07-26 2008-04-02 Matsushita Electric Ind Co Ltd MOVING IMAGE PROCEDURE, MOVABLE IMAGE DECODING METHOD AND RECORD MEDIUM
US7020200B2 (en) * 2002-08-13 2006-03-28 Lsi Logic Corporation System and method for direct motion vector prediction in bi-predictive video frames and fields
KR100506864B1 (ko) 2002-10-04 2005-08-05 엘지전자 주식회사 모션벡터 결정방법
JP3878591B2 (ja) * 2002-11-01 2007-02-07 松下電器産業株式会社 動画像符号化方法および動画像復号化方法
US20050013498A1 (en) * 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
US7577200B2 (en) * 2003-09-07 2009-08-18 Microsoft Corporation Extended range variable length coding/decoding of differential motion vector information
US7616692B2 (en) 2003-09-07 2009-11-10 Microsoft Corporation Hybrid motion vector prediction for interlaced forward-predicted fields
US7317839B2 (en) * 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
US7961786B2 (en) * 2003-09-07 2011-06-14 Microsoft Corporation Signaling field type information
US7623574B2 (en) 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7295616B2 (en) 2003-11-17 2007-11-13 Eastman Kodak Company Method and system for video filtering with joint motion and noise estimation
KR100586882B1 (ko) 2004-04-13 2006-06-08 삼성전자주식회사 모션 스케일러빌리티를 지원하는 코딩 방법 및 장치
FR2872973A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede ou dispositif de codage d'une sequence d'images sources
JP3129986U (ja) 2006-12-26 2007-03-08 ライオン株式会社 板状緩衝材

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100592778C (zh) * 2005-11-07 2010-02-24 索尼株式会社 记录和重放设备及方法、记录设备和重放设备及方法
CN101127913B (zh) * 2006-08-18 2013-05-22 富士通半导体股份有限公司 具有提供参考运动向量的位置的机制的帧间预测处理器
CN102210150A (zh) * 2008-11-07 2011-10-05 三菱电机株式会社 运动图像编码装置以及运动图像解码装置
CN107371025A (zh) * 2011-06-24 2017-11-21 太阳专利托管公司 解码方法及解码装置
CN107371025B (zh) * 2011-06-24 2020-04-14 威勒斯媒体国际有限公司 解码方法及解码装置
CN111919439A (zh) * 2018-04-02 2020-11-10 华为技术有限公司 一种视频编解码方法和装置
US11394996B2 (en) 2018-04-02 2022-07-19 Huawei Technologies Co., Ltd. Video coding method and apparatus
CN112771860A (zh) * 2018-10-04 2021-05-07 高通股份有限公司 针对视频译码中最差情况的带宽减少的仿射限制

Also Published As

Publication number Publication date
PL1528812T3 (pl) 2014-03-31
US7567617B2 (en) 2009-07-28
JP2011166816A (ja) 2011-08-25
JP2007504760A (ja) 2007-03-01
KR20060133943A (ko) 2006-12-27
KR20090108110A (ko) 2009-10-14
JP2008278547A (ja) 2008-11-13
CN100579229C (zh) 2010-01-06
US20050053137A1 (en) 2005-03-10
EP1528812A1 (en) 2005-05-04
MXPA06002595A (es) 2006-06-05
JP5174581B2 (ja) 2013-04-03
US8625669B2 (en) 2014-01-07
EP2290991A1 (en) 2011-03-02
CN101335896B (zh) 2015-05-20
WO2005027497A3 (en) 2005-05-06
KR100681370B1 (ko) 2007-02-12
KR20050025567A (ko) 2005-03-14
CN101335896A (zh) 2008-12-31
EP1528812B1 (en) 2013-07-10
WO2005027497A2 (en) 2005-03-24
EP2290991B1 (en) 2016-08-10
US20090168890A1 (en) 2009-07-02
JP2005086825A (ja) 2005-03-31
KR101083904B1 (ko) 2011-11-22
JP4921971B2 (ja) 2012-04-25
KR101104019B1 (ko) 2012-01-06
ES2601927T3 (es) 2017-02-16
JP4698186B2 (ja) 2011-06-08

Similar Documents

Publication Publication Date Title
CN1630374A (zh) 用于前向预测的隔行扫描视频帧的场的预测运动矢量
CN1075323C (zh) 运动矢量编码和解码方法及装置,图像信号编码和解码方法及装置
CN1265649C (zh) 运动图像的编码方法、解码方法、编码装置及解码装置
CN1054486C (zh) 图象信号编码方法和装置和图象信号解码方法和装置
CN1297148C (zh) 动画图像编码传送系统、动画图像编码传送方法、该系统和方法使用的适合的编码装置、译码装置、编码方法、译码方法以及程序
CN1537384A (zh) 用于子像素值内插的方法
CN1251518C (zh) 数字信号转换方法和数字信号转换装置
CN1224271C (zh) 图像编码译码装置
CN1203679C (zh) 用于自动转码编码的视频图象数据的方法和设备
CN1513268A (zh) 编码方法、译码方法、编码装置、译码装置、图象处理系统、编码程序和译码程序
CN1846437A (zh) 为隔行扫描和逐行扫描视频编码和解码宏块和运动信息中的革新
CN1650636A (zh) 编码设备和编码方法、解码设备和解码方法、记录介质以及程序
CN1638484A (zh) 图像编码装置、方法及程序和图像解码装置、方法及程序
CN101060628A (zh) 图像数据传输方法、图像处理装置和摄像系统
CN1801945A (zh) 编码视频序列变换装置和编码视频序列变换方法
CN1719905A (zh) 编码装置、编码方法、编码方法程序及相应的记录媒体
CN1211372A (zh) 图像编码设备和图像解码设备
CN1625900A (zh) 视频帧间运动估算的方法和装置
CN1237067A (zh) 图象编码和解码装置、方法及数据存储媒体
CN1934866A (zh) 视频解码设备
CN1705375A (zh) 预测编码器/解码器以及预测编码/解码方法
CN101035288A (zh) 可变长度解码方法及装置
CN1882096A (zh) 运动图像的编码方法、解码方法、编码装置及解码装置
CN1243393A (zh) 移动矢量测量方法及记录媒体、移动检测装置及方法
CN1722843A (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
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20050622

Assignee: Sony (China) Co., Ltd.

Assignor: Sony Corp

Contract record no.: 2012990000569

Denomination of invention: Method for processing interlaced video with a plurality of reference diagrams

Granted publication date: 20100106

License type: Common License

Record date: 20120806

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20050622

Assignee: Sony (China) Co., Ltd.

Assignor: Sony Corp

Contract record no.: 2012990000569

Denomination of invention: Method for processing interlaced video with a plurality of reference diagrams

Granted publication date: 20100106

License type: Common License

Record date: 20120806

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150429

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150429

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.