CN101578883A - 改进视频错误隐藏的编解码方法及装置 - Google Patents

改进视频错误隐藏的编解码方法及装置 Download PDF

Info

Publication number
CN101578883A
CN101578883A CNA2006800354160A CN200680035416A CN101578883A CN 101578883 A CN101578883 A CN 101578883A CN A2006800354160 A CNA2006800354160 A CN A2006800354160A CN 200680035416 A CN200680035416 A CN 200680035416A CN 101578883 A CN101578883 A CN 101578883A
Authority
CN
China
Prior art keywords
matching area
coding
zone
macro block
information
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.)
Pending
Application number
CNA2006800354160A
Other languages
English (en)
Inventor
张大庆
王进
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN101578883A publication Critical patent/CN101578883A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/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/192Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • 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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种改进视频错误隐藏的编解码方法及装置,其中该编码方法包括步骤:获取与一个区域的一个最匹配区域的相关信息,该区域与该最匹配区域在同一个图像中;及将该最匹配区域的相关信息编入一个编码的视频流中,该编码的视频流中包括该区域。应用本发明的错误隐藏方式,仅须在编码时加入几个位元即可在解码纠错时使图像整体更加自然,图像质量亦可以得到明显的提高。

Description

改进视频错误隐藏的编解码方法及装置
技术领域
本发明涉及一种视频编解码方法及装置,特别的涉及一种改进视频错误隐藏的编解码方法及装置。
背景技术
在数字电视(SDTV/HDTV)以及多媒体应用方面,为了满足不同的需求,出现了许多的视频压缩标准,例如MPEG(Motion Picture ExpertsGroup,运动图像专家组),H.263和Quicktime等标准。这些标准的主要目的在于使得被压缩后视频流可以有更低的比特率(bit rate)和更好的质量。然而,由于编码视频流中单独的或者脉冲的比特错误(biterrors),即比特流错误(bit-stream errors),经常会使得解码装置的同步失败,从而直到下一个同步点之前无法进行解码,因此造成部份图像的质量下降。
避免图像质量下降的一个可能的方法,就是在解码装置中,利用错误隐藏技术在解码后的图像上遮蔽这些错误的部分。例如,PCT专利WO 2004/064397公开了一种解码后图像的错误隐藏方法。该方法包括在解码时对像素数据错误的宏块(Macroblock,MB)建立相对于邻块的帧内预测模式(intra-prediction mode),从而导出预测的像素数据来修正错误。
然而,在解码装置的这些错误隐藏技术的效果也是有限的。比如,对于上述的PCT专利,由于其只是在解码时推测出一个或几个相对于邻块的帧内预测模式,当像素数据错误的宏块与相邻宏块的差异较大时,这种方法的错误隐藏效果并不会使图像的质量提高。
对于错误隐藏另一个值得注意的问题是不同类型的编码宏块的重要性并不相同。例如,在MPEG-2中,编码帧可以被分为三类,即I帧,P帧和B帧,但是,无论是I帧,P帧还是B帧上的宏块,当图像的时间冗余度非常小时,都需要对其进行帧内编码(intra-coded)。由于帧内编码主要用于克服由于误码所导致的参考图像漂移对当前帧的影响;并且,一旦该帧内编码宏块丢失,解码器很难将其隐藏。因此,帧内编码宏块通常比帧间编码(inter-coded)宏块更为重要。而且,当视频数据在有可能出现错误(error-prone)的通道中传播时,帧内编码宏块可以通过更新图像内容的一些区域提高比特流的误码鲁棒性(Robustness)。所以,当这些帧内编码宏块丢失或损坏时,就需要更好地进行错误隐藏。
上述的方法无论对于哪一种类型宏块,通常以相邻的宏块为参考,采用不同的改写或复制方式来进行隐藏错误。这些方法都是基于一个假设,即:位置越接近的宏块,其相似度就越高。然而,当这种假设不成立时,其错误隐藏方法就达不到期待的效果。因此,需要提供一种改进视频错误隐藏的编解码方法及装置,能够在解码时进行更好的错误隐藏。
发明内容
本发明提供一种改进视频错误隐藏的编/解码方法及装置,可以使得替代宏块与原有宏块更加接近,图像的整体更加自然,同时图像质量亦可明显的提高。
根据本发明的一个实施例,提供一种改进视频错误隐藏的编码方法,包括步骤:获取与一个区域的一个最匹配区域的相关信息,该区域与该最匹配区域在同一个图像中;及将该最匹配区域的相关信息编入一个编码的视频流中,该编码的视频流中包括该区域。
根据本发明的另一个实施例,提供一种改进视频错误隐藏的解码方法,包括步骤:获取一个图像中的一个损坏宏块的匹配信息,该匹配信息用于指出该图像中至少一个匹配区域;根据该匹配信息,用该至少一个匹配区域替代该损坏宏块。
根据本发明的再一个实施例,提供一种改进视频错误隐藏的编码装置,包括:一个获取装置,用于获取与一个区域的一个最匹配区域的相关信息,该区域与该最匹配区域在同一个图像中;及一个写入装置,用于将该最匹配区域的相关信息编入一个编码的视频流中,该编码的视频流中包括该区域。
根据本发明的再一个实施例,提供一种改进视频错误隐藏的解码装置,包括:一个获取装置,用于获取一个图像中的一个损坏宏块的匹配信息,该匹配信息用于指出该图像中至少一个匹配区域;及一个替换装置,用于根据该匹配信息,用该至少一个匹配区域替代该损坏宏块。
根据本发明的实施例,最匹配区域是通过在一个图像中的一个特定范围内经过搜寻匹配而获得,使用该最匹配的替代宏块取代丢失或损坏宏块后,还原的宏块与原有宏块更加接近,图像质量可以得到明显的提高;并且仅须在编码时加入几个位元,不会增加很大的编码负担。
通过下文中参照附图,对本发明所作的描述和权利要求,本发明的其它目的和成就将显而易见,并可对本发明有全面的理解。
附图说明
图1是根据本发明的一实施例之错误隐藏的编码方法流程图;
图2a-2d是根据本发明的一实施例一个宏块的不同划分模式图;
图3是根据本发明的另一实施例之错误隐藏的编码方法流程图;
图4是一个MPEG编码图像的语法结构示意图;
图5是根据本发明的一实施例的MPEG编码图像的语法结构示意图;
图6是根据本发明的一实施例,将匹配向量信息或匹配向量不存在的信息编码入组头信息段的示意图;
图7是根据本发明的一实施例之错误隐藏的解码方法流程图;
图8是根据本发明的一实施例的编码装置的结构示意图;及
图9是根据本发明的一实施例的解码装置的结构示意图。
在所有的上述附图中,相同的标号表示具有相同、相似或相应的特征或功能。
具体实施方式
本发明提供一种改进的错误隐藏的方案。在编码时,通过特定模式将待编码宏块分成一个或多个子单元,寻找该模式下的每个子单元的最匹配区域,并将该最匹配区域的信息编入码流中。在解码时,如果该宏块丢失或损坏,则用该宏块的最匹配区域替代该丢失或损坏的宏块,从而使得替代后的子单元与原来更加接近,图像的整体更加自然,同时图像的质量亦可明显的提高。
由于帧内编码宏块相对于其他宏块更为重要,本发明的改进错误隐藏的编码可以仅对码流中的I帧,P帧和B帧上的帧内编码宏块进行,这样可以最大限度的提高编码效率,取得更好的隐藏效果。然而,这并不是限制本发明仅能应用于帧内编码宏块。本领域技术人员,在了解本说明书内容以后,完全可以将本发明应用于前向编码、双向编码或其他编码方式的宏块中。
图1是根据本发明的一个实施例,提供一种改进错误隐藏的编码方法流程图。在本实施例中,通过所有预定的模式搜索最匹配的区域。
首先在步骤S110中,按照一个预先设定的模式,搜索该模式下,在当前图像中与一个待编码宏块的最匹配区域。所谓的模式就是对当前待编码宏块的一种划分方式。待编码的宏块在特定的划分模式下被划分成一个或多个不同的子单元。针对每一个子单元,搜索当前图像中与其最匹配的区域。根据本发明的一个实施例,搜索可按如下的方式进行:首先,定义一个与待搜索的子单元的大小相同的搜索窗口。然后,以该搜索窗口遍历当前图像,找出与当前的子单元差异最小的区域。
当然,本技术领域的人员应当可以理解,也可用该搜索窗口遍历当前图像中的一个特定大小的区域,该特定区域可以由用户进行设定,例如是以待搜索的子单元为中心的一个特定大小的矩形区域,这样可以适当减少编码的计算量。
由于图像的复杂程度不同,如果只采用一个划分模式,不一定对所有的宏块都可以有很好的效果。因此,根据本发明的一个实施例,可以联合使用多种模式进行搜索,以使得到的最匹配区域与原有的图像更加接近。例如,可以预先设定使用多个划分模式。当一个预定模式的搜索完成后,在步骤S120,判断是否所有预定模式的搜索都已经完成。如果还有其他预定模式没有进行,则在步骤S130,进入未搜索的预定模式,再对该未搜索的预定模式进行搜索;直到所有的预定模式搜索完毕。
图2a-图2d中给出了一个宏块的四种可能的划分模式的示例。在图2a所示的模式中,待编码宏块被视为一个子单元进行搜索;而图2b和图2c所示的模式中,待编码宏块分别被进行了横向或纵向的分割,划分为两个的子单元;图2d所示的模式中,待编码宏块被平均分割成四个子单元,搜索分别对每个子单元单独进行。
对本发明而言,搜索的模式还有很多种,并不仅限于上述所列出的4种模式。例如,还可以将待编码宏块进行更细密分割,而且,分割可以是均匀的,也可以是非均匀的,或者将多个宏块作为一个整体进行搜索。根据本发明的一个实施例,可以按图2a-图2d所示的四种模式进行搜索,并且各个模式的顺序可以按预先定义的固定顺序,也可以按照随机顺序。
在步骤S140,把所有划分模式得到的结果进行比较,选择与待编码宏块差异最小的区域作为该待编码宏块的最匹配区域。为了比较各个模式之间的结果,首先要获得每种划分模式下,每个子单元与其最匹配区域之间的差异。该差异可以多种形式表示,例如,根据本发明的一个实施例,该差异可以用差的绝对值之和(Sum of AbsoluteDifference,SAD)的形式表示,即:
SAD = Σ x = 0 X Σ y = 0 Y | B ma ( x , y ) - B rf ( x , y ) | ;
其中,x表示宏块中象素的横坐标;X表示宏块中选定作为子单元的区域的宽度;y表示宏块中象素的纵坐标;Y表示宏块中选定作为子单元的区域的高度;Bma(x,y)表示待编码宏块中坐标为(x,y)的象素的亮度分量值;Brf(x,y)表示搜索到的匹配宏块中坐标为(x,y)的象素的亮度分量值。注:关于SAD的计算,一般地,可只采用Y亮度分量,当然,如果不计较计算复杂度时,也可采用另外2个分量:U(颜色信息中的色度信息)、V(颜色信息中的色差信息)。
该差异也可以用差的平方和(Mean Absolute Difference,MAD)的形式表示,即:
MAD = Σ x = 0 X Σ y = 0 Y [ B ma ( x , y ) - B rf ( x , y ) ] 2 ;
其中,x表示宏块中象素的横坐标;X表示宏块中选定作为子单元的区域的宽度;y表示宏块中象素的纵坐标;Y表示宏块中选定作为子单元的区域的高度;Bma(x,y)表示待编码宏块中坐标为(x,y)的象素的亮度分量值;Brf(x,y)表示搜索到的匹配宏块中坐标为(x,y)的象素的亮度分量值。注:同SAD的计算类似,关于MAD的计算,一般地,也可只采用Y亮度分量,而不采用另外2个分量:U(颜色信息中的色度信息)、V(颜色信息中的色差信息)。
在获得了每个子单元与其最匹配区域之间的差异后,将这些差异(MAD)相加就可以得到该待编码宏块的差异值。比较不同的划分模式下计算得到的该待编码宏块的差异值。差异值最小的划分模式下的一个或多个最匹配区域即为该待编码宏块的最匹配区域。由于模式的不同,该待编码宏块的一组最匹配区域可能分散在整个待编码的图像中。
即使采用多种模式进行搜索,所得到的最匹配区域也有可能与原有的图像有很大的差异。在这种情况下,错误隐藏步骤达不到预期的效果。如果仍然对其进行编码,将增加很多低效的编码量,造成资源的浪费。因此,可以对步骤S140得到的最匹配区域进行筛选,以提高编码率。
在步骤S150,将该最匹配区域与原有图像的差异与预先设定的阈值相比较,如果该差异满足阈值条件,即小于或等于阈值,则在步骤S160中,将该模式下的最匹配区域的信息编入一个编码的视频流中;如果该差异超过阈值,则在步骤S170中将用于表明不存在最匹配区域的信息编入编码的视频流中。最后结束上述编码过程。
根据本发明的一个实施例,用来筛选待编码宏块最匹配区域的阈值,可以是一个根据实际情况及经验得出的经验数值。例如,可将阈值设值为:2×W×H,其中W,H分别为所使用子单元的宽度和高度。或者2倍附近的值做为阈值。比如,如果宏块大小为16×16,阈值可以为512或512左右的数值。当然,阈值的取法还有可以很多,在这里不再一一举例。
根据本发明的一个实施例,最匹配区域的信息可以是包括模式信息以及该模式下指向该最匹配区域的一个或多个运动向量(motionvector)。通过模式信息可以子单元的特征信息,如一个宏块,或一个宏块的上半边,或一个宏块的左上四分之一区域。通过运动向量可以了解该最佳区域的位置。最匹配区域的信息也可以有其他的表现方式,例如直接给出最匹配区域的宽度和高度及一个顶点的位置,这里不再一一举例。
根据本发明的一个实施例,用于表示不存在最匹配区域的信息可以是码流中特定位置的一个标记。例如,如果该标记位为0,表示不存在最匹配区域;如果为1,则表示存在。
上述实施例可以有非常好的效果,但是考虑到在编码端的计算能力有限或者编码速度有较高要求的情况下,也可以直接进行阈值筛选,即每搜索完一个预定模式就和阈值进行比较,只要满足阈值条件就不再进行搜索了,从而可以不必搜索所有的预定模式。
根据本发明的另一实施例,图3提供一种改进错误隐藏的编码方法流程图。在该方法中通过一个特定模式进行搜索,获取该模式下待编码宏块所有子单元的最匹配区域;然后,判断该模式下,所有子单元的最匹配区域的差异是否都分别小于或等于阈值。如果是,将该最匹配区域信息编入一个编码的视频流中;否则利用其他模式进行搜索,直到找到满足阈值条件的最匹配区域或所有预定模式都搜索完毕。这样只要符合阈值条件即可以进行编码。这将极大的减少搜索过程的运算量,提高编码速度。
根据本发明的另一个实施例,也可以判断部份(例如大于75%)子单元的最匹配区域的差异是否都分别小于或等于阈值,而不必所有子单元的最匹配区域的差异是否都分别小于或等于阈值。
本实施例的步骤S310、S330、S340、S350、S360和S370分别与图1所示的实施例中的步骤S110、S120、S130、S160、S170和S180相似,这里不在赘述。
在步骤S320,将待编码宏块在该模式下的每一子单元与其最匹配区域之间的差异与预先设定的阈值相比较,如果所有子单元的差异小于或等于阈值,则转到随后的步骤S350处理;如果不满足阈值条件,则转到步骤S330,按其它的预定模式再进行搜索。如果所有的预定模式都进行搜索完毕,则转到步骤S360,将匹配区域不存在的信息编入一个编码的视频流中。
在本实施例中,步骤S320中阈值的大小与子单元的大小有关。例如,对于图2a所示的搜索模式中,如果宏块大小为16×16,子单元大小也是16×16,则阈值可以仍为512。在图2b所示的搜索模式中,子单元大小为16×8,像素共128个,则阈值可以取512/2=256;同理,图2c所示的搜索模式中的阈值也可以为512/2=256;图2d所示的搜索模式中的阈值可以取512/4=128。
以下详细说明如何将最匹配区域信息编入视频流中。具体的,以MPEG编码作为例子,在仅对帧内编码宏块应用本发明的方案的前提下,说明具体的编码方式。
图4是通常的MPEG编码图像的语法结构示意图。如图4所示,除了完全为视频信息的块以外,每个图像还包括:图像头信息段、组(Slice)头信息段和宏块头信息段。另外,每一个宏块的宏块头中包含有反映该宏块是帧内编码还是帧间编码的信息(图中未示出)。
如图5所示,根据本发明的一个实施例,将反映一个组内的帧内编码宏块匹配信息编码入每一个组的组头信息中。在MPEG标准中,在组头信息段除了标准规定的必要的信息外,还包括一段保留字段,可以用来根据需要编入其他的信息。在本实施例中,利用这一保留字段反映该组内每一个帧内编码宏块是否存在将最匹配区域及其最佳匹配向量信息。
图6是将帧内编码宏块的匹配区域及匹配向量等信息编码入组头信息段的示意图。所有编入组头信息段的相关信息组成帧内编码宏块匹配信息,帧内编码宏块匹配信息由一个不定长度的比特序列组成,其具体包括:标记(1):是否存在帧内编码宏块,如存在,则指出帧内编码宏块的位置;标记(2):该帧内编码宏块是否存在一与其匹配的区域,如存在,则将帧内编码宏块的划分模式信息和指向最匹配区域的运动向量编入码流。
标记(1)的第一位,即Intra_MB_existing_flag(参见表1),用于标记帧内编码宏块是否存在。
表1:帧内编码宏块是否存在标记编码表
  编码   Intra_MB_existing_flag
  0   不存在
  1   存在
如果存在,即Intra_MB_existing_flag为1,则其后相邻的5位就用来指明帧内编码宏块的位置,即Intra_MB_position(参见表2);如果不存在,则Intra_MB_existing_flag为0。
表2:Intra_MB_existing_flag为1时,帧内编码宏块在当前组的位置信息编码表
  5位编码   Intra_MB_position
  00001   组头后的第1个宏块
  00010   组头后的第2个宏块
  00011   组头后的第3个宏块
  00100   组头后的第4个宏块
  ……   ……
  10000   组头后的第16个宏块
  ……   ……
  11111   组头后的第31个宏块
标记(2)的第一位也是标记位,即Matching_area_existing_flag(见表3),用来指示是否存在与帧内编码宏块相匹配的区域。
表3:帧内编码宏块在当前图像中是否存在一匹配区域标记编码表
  编码   Matching_area_existing_flag
  0   不存在
  1   存在
如果该区域存在,即Matching_area_existing_flag为1,则其后的编码位指明对帧内编码宏块进行分割的模式,即MB_division_mode_type,亦即子单元的特征信息。见表4。
表4:Matching_area_existing_flag为1时,宏块分割模式编码表
  编码   MB_division_mode_type
  00   模式a
  01   模式b
  10   模式c
  11   模式d
对于图2a-图2d所示的四种模式来说,2位二进制编码就可以指明全部四种模式。例如:模式a,模式b,模式c及模式d。如果采用的模式多于四种,则可以相应的增加MB_division_mode_type的位数。
标记(2)的最后是该模式所产生的指向与该帧内编码宏块每一子单元最匹配区域的向量,其由水平向量,即horizontal_vector,和垂直向量,即vertical_vector组成(见表5)。
表5:与帧内编码宏块每一子单元匹配的运动向量编码表
  6位编码   horizontal_vector   6位编码   vertical_vector
  000001   1   000001   1
  000010   2   000010   2
  000011   3   000011   3
  000100   4   000100   4
  ……   ……   ……   ……
  100000   32   100000   32
  ……   ……   ……   ……
  111111   63   111111   63
根据表6所示的MPEG组头的语法,帧内编码宏块匹配信息的每8位构成一个字节(byte),成为一额外信息段,即extra_information_slice,最后不足8位的用填充位(比如1)补充完整。在每个为“1”的额外比特段,即extra_bit_slice后***一个额外信息段。例如:一个帧内编码宏块被分为4个子单元,则其包括1(帧内编码宏块存在)+5(帧内编码宏块位置)+1(匹配区域存在)+2(共有四种预定模式)+12(水平及垂直向量)×4(子单元个数)=57位,用7个填充位(比如1)补充完整,形成64个比特,共8个字节。然后按MPEG的语法编入组头信息中。有关于extra_information_slice以及相关语法可以参考MPEG的相关标准。
表6:组头(slice)语法
  slice()   bits   Mnemonic
  slice_start_code   32   Bslbf
  If(vertical_size>2800)
  slice_vertical_position_extension   3   Uimsbf
  if(<sequence_scalable_extension()is presentin the bitstream>)
  If(scalable_mode==”data partitioning”
  priority_breakpoint   7   Uimsbf
  quantiser_scale_code   5   Uimsbf
  If(nextbits()==’1’){
  intra_slice_flag   1   Bslbf
  Intra_slice   1   Uimsbf
  reserved_bits   7   Uimsbf
  while(nextbits()==’1’){
  extra_bit_slice/*with the value  “1”*/   1   Uimsbf
  extra_information_slice   8
          }
    }
  extra_bit_slice/*with the value  “0”*/   1   Uimsbf
  do{
    macroblock()
    }while(nextbits()!=‘000 0000 00000000 0000 0000’)
    next_start_code()
  }
以上通过一个具体MPEG标准的实例,说明了如何在视频流中包含相应的帧内编码宏块匹配信息。当然,在上述实施例中,也可以有很多替代方案,例如,可以将帧内编码宏块匹配信息编入到图像头段或者宏块头段或者用“0”来补充额外信息段。特别需要指出,对于其他的视频压缩标准,例如H.263或Quicktime,其语法与相关的要求与MPEG并不相同,帧内编码宏块匹配信息可以适应性的编入不同的标准而编入视频流的不同位置中。
图7是本发明的一个实施例进行视频解码的流程图。根据视频流中的帧内编码宏块匹配信息,当最匹配区域存在时,用最匹配区域替代丢失或损坏的宏块进行错误隐藏处理。
首先,在步骤S710,按照预先设定的标准对压缩视频数据进行解码,压缩视频流经过可变字长解码(VLD)后,对于已经丢失或损坏的宏块,获得其帧内编码宏块匹配信息。在步骤S720,从获取的帧内编码宏块匹配信息,判断该宏块是否存在匹配区域。如果存在(例如Matching_area_existing_flag为1),则在步骤S730用该区域替代丢失的或损坏的宏块。
如果该宏块被分割为多个子单元,则分别用各个子单元各自对应的最匹配区域分别替代丢失或损坏宏块的对应子单元。否则,如果与丢失的帧内编码宏块相匹配的最匹配区域不存在(例如Matching_area_existing_flag为0),则在步骤S740,可以利用传统方法(如预测模式,利用丢失宏块的周边图像插值或拷贝)对丢失的帧内编码宏块进行错误隐藏处理,形成新的解码图像,然后在步骤S750显示视频图像。最后结束该图像的解码过程。
图8是根据本发明的一个实施例的一种编码装置的结构示意图。该编码装置800包括:一个获取装置805和一个写入装置830。其中获取装置805包括一个搜寻装置810,如图中实线所示,搜寻装置810对于每个待编码宏块,在特定的模式下,搜索该宏块每个子单元在当前图像中的最匹配区域。写入装置830用来将最匹配区域信息写入到码流中。
根据本发明的在MPEG编码方式下的一个实施例,其中,仅对帧内编码宏块应用本发明的编码方法。写入装置830用来将帧内编码宏块是否存在的信息,帧内编码宏块的位置信息,最匹配区域是否存在的信息,划分模式信息和最匹配区域位置信息连续编码入所述组的组头信息段中,完成该图像的编码。特别地,采用运动向量(包括:水平及垂直向量)信息表示最匹配区域位置。
根据本发明的一个实施例,获取装置805还包括一个判断装置820。判断装置820用来判断搜寻装置810得到的最匹配区域与其对应的待编码宏块的子单元之间的差异是否满足阈值条件,即小于或等于阈值。如果满足,则将对应的最匹配区域信息传送给写入装置830。
根据本发明的一个实施例,在搜寻装置810中,预先设定多种划分模式。如果一个特定模式的搜索完成后,搜寻装置810则继续按其它未执行的预定划分模式搜索,直到全部的划分模式都已经被执行。搜寻装置810比较各个划分模式的搜索结果,并将所有划分模式中与待编码宏块差异最小的最匹配区域信息传送到判断装置820。
如果判断装置820判断该最匹配区域信息满足阈值条件,则将该最匹配区域信息传送给写入装置830。否则,通知写入装置830不存在满足阈值条件的匹配区域。写入装置830将不存在满足阈值条件的匹配区域信息编码入信息段中,完成该图像的编码。
根据本发明的另一个实施例,在搜寻装置810中,预先设定多种划分模式。如果一个特定模式的搜索完成后,搜寻装置810就将得到的最匹配区域信息传送到判断装置820。如果判断装置820判断该最匹配区域信息满足阈值条件,则将该最匹配区域信息传送给写入装置830。如果不满足阈值条件,则返回搜寻装置810继续按其它未执行的预定划分模式搜索(图中虚线所示),直到全部的划分模式都已经被执行。
如果所有的划分模式都已经被执行后,仍不存在满足阈值条件的匹配区域,则通知写入装置830不存在满足阈值条件的匹配区域。写入装置830将不存在满足阈值条件的匹配区域信息编码入信息段中,完成该图像的编码。对于上述编码过程的详细描述,可以参考上文中关于编码方法的描述。
该编码装置800还包括一个离散余弦变换装置(图中简称DCT)840、一个量化器(图中简称Q)850以及一个可变字长编码装置(图中简称VLC,Variable Length Coding)860。其中离散余弦变换装置840用于接收原始视频图像序列,进行离散余弦变换。
对于得到的DCT系数,量化器850用于根据不同的要求,设置不同的量化等级,从而降低数码率。只是在经过量化后,特别是按人眼的生理特征对低频分量和高频分量设置不同的量化,会使大多数高频分量的系数变为零。一般说来,人眼对低频分量比较敏感,而对高频分量不太敏感。因此对低频分量采用较细的量化,而对高频分量采用较粗的量化。
可变字长编码装置860根据量化器850提供的量化幅度将来自量化器的量化系数转换为可变长码,例如Huffman码,利用这样的方法来降低码率。同时写入装置830将所述的匹配信息写入到压缩的视频流中,本领域的技术人员应当理解,写入装置830也可以包含在可变字长编码装置860中。
图9是根据本发明一个实施例的一种解码装置的结构示意图。该解码装置900包括:一个运动补偿装置910,用于利用帧间的相关性,以减小时间冗余度。由于运动补偿不是本发明的重点,在此不再详述运动补偿的相关技术细节。
该运动补偿装置910包括一个错误隐藏装置920,该错误隐藏装置920可以确定出丢失或损坏的宏块是否在当前图像中具有可以用来替代该宏块的最匹配区域。如果存在,则利用该宏块的最匹配区域来替代该宏块,完成错误隐藏。
根据本发明的一个实施例,该错误隐藏装置920可以包括一个获取装置930,用于获取一个视频流中的一个损坏宏块的匹配信息,该匹配信息用于指出当前图像中是否存在可以用来取代该损坏宏块的最匹配区域。
根据本发明的一个实施例,错误隐藏装置920还进一步包括一个替换装置940,用于对丢失或损坏的宏块进行替换。如果损坏的宏块具有可以用来替换的最匹配区域,则利用码流中的划分模式信息和匹配区域的位置信息,获得该宏块对应的所有最匹配区域,然后用这些最匹配区域替换丢失或损坏的宏块,完成错误隐藏。关于这一部分,前文中已有详细说明,这里不再赘述。根据本发明的一个实施例,如果最匹配区域不存在,可以用其他现有的普通错误隐藏方式进行处理。
该解码装置900还包括一个可变字长解码装置(图中简称VLD,Variable Length Decoding)950、一个反转量化器(图中简称IQ)960以及一个反转离散余弦变换装置(图中简称IDCT)970。相应的解码功能分别与图8中编码装置800的可变字长编码装置860、量化器850以及离散余弦变换装置840相对应,此处不再赘述。
本发明的技术内容和技术特点已揭示如上,然而所属领域技术人员仍可能基于本发明的教示和揭示内容而作出种种不背离本发明精神的替代和修正。因此,本发明的保护范围应不限于实施例所揭示的内容,而应包括各种不背离本发明的替代和修正,并为上述权利要求书所涵盖。

Claims (17)

1.一种改进视频错误隐藏的编码方法,包括:
(a)获取与一个区域的一个最匹配区域的相关信息,该区域与该最匹配区域在同一个图像中;及
(b)将该最匹配区域的相关信息编入一个编码的视频流中,该编码的视频流中包括该区域。
2.根据权利要求1所述的方法,其中所述区域是一个宏块。
3.根据权利要求1所述的方法,其中所述区域是一个宏块的一个子单元,所述最匹配区域的相关信息包括该子单元的特征信息。
4.根据权利要求1所述的方法,其中所述区域是一个帧内编码的区域。
5.根据权利要求1所述的方法,其中步骤(a)还包括步骤:
在所述图像的一个特定范围内搜寻所述区域的所述最匹配区域;
判断该最匹配区域与该区域的差异是否小于一个阈值;
其中步骤(b)包括步骤:如果判断结果是肯定的,将该最匹配区域的相关信息编入所述编码的视频流中,该编码的视频流中包括该区域。
6.一种改进视频错误隐藏的解码方法,包括步骤:
(a)获取一个图像中的一个损坏宏块的匹配信息,该匹配信息用于指出该图像中至少一个匹配区域;
(b)根据该匹配信息,用该至少一个匹配区域替代该损坏宏块。
7.根据权利要求6所述的方法,其中所述损坏宏块是一个帧内编码的宏块。
8.根据权利要求6所述的方法,其中所述至少一个匹配区域中的一个与该损坏宏块的一个子单元相对应。
9.一种改进视频错误隐藏的编码装置,包括:
一个获取装置,用于获取与一个区域的一个最匹配区域的相关信息,该区域与该最匹配区域在同一个图像中;及
一个写入装置,用于将该最匹配区域的相关信息编入一个编码的视频流中,该编码的视频流中包括该区域。
10.根据权利要求9所述的装置,其中所述区域是一个宏块。
11.根据权利要求9所述的装置,其中所述区域是一个宏块的一个子单元,所述最匹配区域的相关信息包括该子单元的特征信息。
12.根据权利要求9所述的装置,其中所述区域是一个帧内编码的区域。
13.根据权利要求9所述的装置,其中所述获取装置还包括:
一个搜寻装置,用于在所述图像的一个特定范围内搜寻所述区域的所述最匹配区域;
一个判断装置,用于判断该最匹配区域与该区域的差异是否小于一个阈值;
其中所述写入装置用于:如果判断结果是肯定的,将该最匹配区域的相关信息编入所述编码的视频流中,该编码的视频流中包括该区域。
14.一种改进视频错误隐藏的解码装置,包括:
一个获取装置,用于获取一个图像中的一个损坏宏块的匹配信息,该匹配信息用于指出该图像中至少一个匹配区域;及
一个替换装置,用于根据该匹配信息,用该至少一个匹配区域替代该损坏宏块。
15.根据权利要求14所述的装置,其中所述获取装置用于获取所述至少一个最匹配区域的运动向量信息。
16.根据权利要求14所述的方法,其中所述损坏宏块是一个帧内编码的宏块。
17.根据权利要求14所述的方法,其中所述至少一个匹配区域中的一个与该损坏宏块的一个子单元相对应。
CNA2006800354160A 2005-09-26 2006-09-15 改进视频错误隐藏的编解码方法及装置 Pending CN101578883A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200510105033.3 2005-09-26
CN200510105033 2005-09-26
PCT/IB2006/053300 WO2007034385A2 (en) 2005-09-26 2006-09-15 Coding/decoding method and apparatus for improving video error concealment

Publications (1)

Publication Number Publication Date
CN101578883A true CN101578883A (zh) 2009-11-11

Family

ID=37889208

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800354160A Pending CN101578883A (zh) 2005-09-26 2006-09-15 改进视频错误隐藏的编解码方法及装置

Country Status (6)

Country Link
US (1) US20080260046A1 (zh)
EP (1) EP1949700A2 (zh)
JP (1) JP2009510822A (zh)
KR (1) KR20080061379A (zh)
CN (1) CN101578883A (zh)
WO (1) WO2007034385A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103167281A (zh) * 2011-12-14 2013-06-19 深圳光启高等理工研究院 一种图像处理方法及其装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012008037A1 (ja) * 2010-07-15 2012-01-19 富士通株式会社 動画像復号装置、動画像復号方法及び動画像符号化装置ならびに動画像符号化方法
EP3285492B1 (en) 2015-04-13 2021-06-02 Sony Corporation Reproduction device and reproduction method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2696026B1 (fr) * 1992-09-18 1994-12-30 Sgs Thomson Microelectronics Procédé de masquage d'erreurs de transmission d'image compressée en MPEG.
US6078616A (en) * 1997-03-13 2000-06-20 Sony Corporation Methods and apparatus for error concealment utilizing temporal domain motion vector estimation
GB2362533A (en) * 2000-05-15 2001-11-21 Nokia Mobile Phones Ltd Encoding a video signal with an indicator of the type of error concealment used
JP2003259369A (ja) * 2002-02-28 2003-09-12 Techno Mathematical Co Ltd 動画像の電子透かしを用いたエラー隠蔽方法
KR101050828B1 (ko) * 2003-08-26 2011-07-21 톰슨 라이센싱 하이브리드 인트라-인터 코딩된 블록을 디코딩하기 위한 방법 및 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103167281A (zh) * 2011-12-14 2013-06-19 深圳光启高等理工研究院 一种图像处理方法及其装置
CN103167281B (zh) * 2011-12-14 2017-02-08 深圳光启高等理工研究院 一种图像处理方法及其装置

Also Published As

Publication number Publication date
WO2007034385A2 (en) 2007-03-29
US20080260046A1 (en) 2008-10-23
JP2009510822A (ja) 2009-03-12
EP1949700A2 (en) 2008-07-30
KR20080061379A (ko) 2008-07-02
WO2007034385A3 (en) 2009-05-07

Similar Documents

Publication Publication Date Title
TWI669948B (zh) 編碼或解碼視頻資料之方法及裝置
US7903891B2 (en) Image encoding apparatus, image decoding apparatus, image encoding method, image decoding method, image encoding program, and image decoding program
CN1593065B (zh) 视频编码/解码的方法和装置
EP3086557B1 (en) Method for parallel video decoding
US20060153294A1 (en) Inter-layer coefficient coding for scalable video coding
CN101253775A (zh) 用于视频错误恢复的编解码方法及装置
TWI407798B (zh) 運動預測方法與視訊編解碼器
JP5194119B2 (ja) 画像処理方法及び対応する電子装置
CN1829329A (zh) 指示图像内的区域
US20060251177A1 (en) Error concealment and scene change detection
CN1848956A (zh) 用于改良视频编码中的错误隐藏的错误隐藏方法和编码器
CN1361991A (zh) 视频编码
CA2467496A1 (en) Global motion compensation for video pictures
CN114786019A (zh) 图像预测方法、编码器、解码器以及存储介质
TWI804999B (zh) 圖像編碼及解碼技術
JP2004527981A (ja) 予測タイプの選択によるビデオデータブロックのイントラ符号化
CN101578883A (zh) 改进视频错误隐藏的编解码方法及装置
CN100596203C (zh) 一种图像编解码方法及***
JP2008004984A (ja) 画像理装置および方法、プログラム、並びに記録媒体
CN101223785A (zh) 改进视频错误隐藏的编解码方法及装置
KR20180006877A (ko) 샘플값 보상을 위한 영상 부호화 방법과 그 장치, 및 샘플값 보상을 위한 영상 복호화 방법과 그 장치
An et al. Low-complexity motion estimation for H. 264/AVC through perceptual video coding.
KR101114472B1 (ko) H.264/avc 압축영역에서의 영상 워터마크 삽입 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20091111