CN1859573A - 帧内预测编码方法及其系统 - Google Patents
帧内预测编码方法及其系统 Download PDFInfo
- Publication number
- CN1859573A CN1859573A CN 200510030398 CN200510030398A CN1859573A CN 1859573 A CN1859573 A CN 1859573A CN 200510030398 CN200510030398 CN 200510030398 CN 200510030398 A CN200510030398 A CN 200510030398A CN 1859573 A CN1859573 A CN 1859573A
- Authority
- CN
- China
- Prior art keywords
- coding
- band
- conversion
- frame
- result
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及视频图象压缩技术,公开了一种帧内预测编码方法及其系统,使得帧内预测编码时有更好的预测效果和更高的编码效率。本发明中,对每一个条带进行至少两次编码,每一次编码的对象各不相同,可以是该条带的原始数据,也可以是该条带的原始数据进行指定类型变换后的结果,从各次编码的结果中选出编码效率最好的一种输出,同时输出一个标识,用于指示编码效率最好的那次编码的对象类型,即是原始数据还是变换后的数据,如果是变换后的数据则需要进一步指出是哪一种类型的变换,可以用编号对不变换及各种可能变换类型作一个区分。在解码时先对条带进行正常解码,再按标识对应的变换类型对解码结果进行相应的逆变换。
Description
技术领域
本发明涉及视频图象压缩技术,特别涉及帧内预测编码方法及其系统。
背景技术
H.264视频压缩编码标准由国际电信联盟电信标准部(InternationalTelecommunication Union Telecommunication Standardization Sector,简称“ITU-T”)联合国际标准组织(International Organization for Standardization,简称“ISO”)和国际电工委员会(International Electrotechnical Commission,简称“IEC”)的运动图像专家组(Moving Picture Expert Group,简称“MPEG”)制定。
目前,H.264已经逐渐成为多媒体通信中的主流标准,大量采用H.264标准的多媒体实时通信产品,比如会议电视、可视电话、第三代(3rdGeneration,简称“3G”)移动通信终端,以及网络流媒体产品先后问世。可以说,是否支持H.264已经成为这个市场领域中决定产品竞争力的关键因素。尤其是随着3G移动通信系统的出现和网际协议(Internet Protocol,简称“IP”)网络的迅速发展,视频网络通信正逐步成为通信的主要业务之一。
从发展来看,ITU-T继制定了H.261、H.263、H.263+等视频压缩标准后,于2003年正式发布了H.264标准,它同时也是MPEG-4第10部分的主要内容。H.264标准的制定更加有效地提高了视频编码效率和网络适配性,随着H.264的推广和使用,IP网络和移动无线网络的多媒体通信进入了一个飞跃发展的新阶段。
下面简单介绍H.264标准的消息构成及发送机制:H.264标准采用分层模式,定义了视频编码层(Video Coding Layer,简称“VCL”)和网络抽象层(Network Abstraction Layer,简称“NAL”),后者专为网络传输设计,能适应不同网络中的视频传输,进一步提高网络的“亲和性”。H.264引入了面向IP包的编码机制,有利于网络中的分组传输,支持网络中视频的流媒体传输;具有较强的抗误码特性,特别适应丢包率高、干扰严重的无线视频传输的要求。H.264的所有待传送数据,包括图像数据及其他消息均封装为统一格式的包传送,即网络抽象层单元(NAL Unit,简称“NALU”)。每个NALU是一个一定语法元素的可变长字节字符串,包括包含一个字节的头信息,可用来表示数据类型,以及若干整数字节的负荷数据。一个NAL单元可以携带一个编码片、各自类型数据分割或一个序列或图像参数集。为了加强数据可靠性,每帧图像都被分为若干个条带(Slice),每个Slice由一个NALU承载,Slice又是由若干个更小的宏块组成,即为最小的处理单元。一般的说,前后帧对应位置的Slice相互关联,不同位置的Slice相互独立,这样可以避免Slice之间发生误码相互扩散。
图1示出H.264的压缩处理框架。H.264的基本处理单位为16×16宏块,采用了多帧参考、帧内预测、多宏块模式、4×4整数变换和量化、环滤波、1/4象素运动预测、基于上下文的自适应可变长编码(Context-based AdaptiveVariable Length Coding,简称“CAVLC”)和上下文自适应的二进制算术编码(Context-Adaptive Binary Arithmetic Coding,简称“CABAC”)熵编码等先进技术,因此H.264的压缩效率比MPEG-2、H.263、MPEG-4ASP提高一倍多。从2005年1月的第MPEG71次会议到2006年6月,联合视频组(JointVideo Team,简称“JVT”)将进行H.264分层编码标准制定工作,基本层兼容H.264main profile,采用了MCTF的算法框架,由此可以较好地实现空间(spatial)分层、时间(temporal)分层、质量(quality或SNR)分层、复杂度(complexity)分层等功能。JVT视频分层编码(Scalable video coding,简称“SVC”)最新参考模型为联合视频分层编码模型(Joint Scalable VideoModel,简称“JSVM”)3。
H.264采用多方向INTRA预测技术,这种技术利用当前帧已编码的周围块信息预测当前编码块,提高了INTRA帧的压缩效率。下面对简要介绍H.264中的亮度预测、色度预测以及帧内预测。
亮度预测包括16×16块预测和4×4块预测两种预测单位。其中16×16块预测如图2所示,包括vertical(垂直)、horizontal(水平)、DC和Plane(平面)四种预测模式。4×4块预测如图3所示,包括Vertical(垂直)、Horizontal(水平)、DC、Diagonal Down-Left(对角线-左下)、DiagonalDown-Right(对角线-右下)、Vertical-Left(垂直-左)、Horizontal-Down(水平-下)、Vertical-Right(垂直-右)和Horizontal-Up(水平-上)九种预测模式。
色度预测是以8×8块大小为单位进行的,如图4所示,包括Vertical、Horizontal、DC和Plane四种预测模式,类似于16×16 INTRA亮度预测。
值得一提的是,在帧内预测(INTRA prediction)方面,JSVM3基本层采用H.264帧内预测方法,增强层在H.264的预测模式基础上增加了一种预测模式:I_BL,I_BL就是将当前层的宏块从低层对应宏块逐象素进行预测,参见图5。
在实际应用中,上述方案存在以下问题:如果当前宏块与其右边块或下边块的相关性比左边块或上边块更强,则上述现有技术的方案的预测效果和编码效率尚未达到理想水平。
造成这种情况的主要原因在于,由于H.264 INTRA预测技术都是利用当前帧已编码的周围块(即当前宏块的左边块和上边块)信息预测当前编码块,因此只有一半的块已被编码而被用于预测。由于是按照从上到下从左到右的顺序依次预测编码,所以当前宏块的右边块和下边块信息不能用来进行预测,如图6所示。但是,如上所述,如果当前宏块与其右边块或下边块的相关性比左边块或上边块更强,则用右边块或下边块信息来预测时效果将更好。
发明内容
有鉴于此,本发明的主要目的在于提供一种帧内预测编码方法及其系统,使得帧内预测编码时有更好的预测效果和更高的编码效率。
为实现上述目的,本发明提供了一种帧内预测编码方法,包含以下步骤:
对所述帧内各独立编码的条带按指定编码方式进行至少两次编码,其中每一次编码的对象是该条带的原始数据或对原始数据进行指定类型变换后的结果,并且每一次编码的对象各不相同;
从各次编码的结果中选择编码效率最好的一种输出作为最终的编码结果,同时输出所选结果所对应的编码对象类型标识;其中,
所述指定编码方式对所述条带内宏块是按固定顺序依次编码的,并且在编码时根据已编码的宏块预测当前宏块的编码;所述指定类型变换是可逆的并且在变换前后保持所述条带内各宏块间的相关性不变。
其中,在解码时包含以下步骤:
按与所述指定编码方式对应的解码方式对所述帧内的每一个条带进行解码;
如果所述编码对象类型标识所对应的编码对象不是所述条带的原始数据,则根据该标识所对应的指定类型变换对所述解码结果进行相应的逆变换。
此外在所述方法中,按所述指定编码方式进行两次编码,其中一次的编码对象是条带的原始数据,另一次的编码对象是将该条带的原始数据旋转180度后的结果。
此外在所述方法中,通过速率扭曲代价指标评价所述各次编码的编码效率高低。
此外在所述方法中,所述指定类型变换包含以下之一或其任意组合:
各种角度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转。
此外在所述方法中,所述条带包含整数个宏块行或非整数个宏块行。
此外在所述方法中,所述帧采用分层编码或非分层编码。
本发明还提供了一种帧内预测编码系统,在编码侧包含:
至少一个变换模块,用于对帧内条带的原始数据进行指定类型的变换,各变换模块的变换类型各不相同;
至少两个编码模块,用于对所述条带的原始数据或经所述变换模块变换后的结果按指定编码方式进行预测编码,且各编码模块的输入各不相同;
选择模块,用于从来自各所述编码模块的编码结果中选择编码效率最好的一种输出,同时输出所选结果所对应的编码对象类型标识;其中,
所述指定编码方式对所述条带内宏块按固定顺序依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码;所述指定类型变换是可逆的并且在变换前后保持所述条带内各宏块间的相关性不变。
其中,在解码侧包含:
解码模块,用于对输入的帧内条带进行解码;
逆变换模块,用于对来自所述解码模块的数据根据所述编码对象类型标识所对应的指定类型变换进行相应的逆变换。
通过比较可以发现,本发明的技术方案与现有技术的主要区别在于,对每一个条带进行至少两次编码,每一次编码的对象各不相同,可以是该条带的原始数据,也可以是该条带的原始数据进行指定类型变换后的结果,从各次编码的结果中选出编码效率最好的一种输出,同时输出一个标识,用于指示编码效率最好的那次编码的对象类型,即是原始数据还是变换后的数据,如果是变换后的数据则需要进一指出是哪一种类型的变换,可以用编号对不变换及各种可能变换类型作一个区分。指定类型变换必须是可逆的并且在变换前后能够保持所述条带内各宏块间的相关性不变。变换包括各种角度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转等等。
在解码时先对条带进行正常解码,再按所述标识对应的变换类型对解码结果进行相应的逆变换。
这种技术方案上的区别,带来了较为明显的有益效果,即改善了预测效果、提高了编码效率。因为每一次编码的对象是作过不同类型变换的,所以每次编码时虽然都是按固定顺序依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码,但是不同的变换导致了每次编码时已编码的宏块各不相同,其预测的效果也各不相同,通过比较编码效率可以达到比一次性编码更优的编码效率。举例来说,如果对每一个条带只进行两次INTRA预测编码,第一次是对原始条带进行INTRA预测编码,第二次是对原始条带旋转180度后的数据进行INTRA预测编码,第一次编码时只能参考上方和左方已编码的宏块,而第二次编码时可以参考原条带中下方和右方的已编码宏块,再从这两次编码中取优输出,则该输出结果相对于原先只对原始条带进行一次正常INTRA预测编码的方式总体上会有明显提高。
附图说明
图1是现有技术中H.264压缩处理框架的示意图;
图2是现有技术中H.264数据帧的16×16宏块帧内亮度预测模式示意图;
图3是现有技术中H.264数据帧的4×4宏块帧内亮度预测模式示意图;
图4是现有技术中H.264数据帧的8×8宏块帧内色度预测模式示意图;
图5是现有技术中增强层的I_BL预测模式示意图;
图6是现有技术中帧内预测的参考象素示意图;
图7是包含整数个宏块行的条带结构图;
图8是对原始数据进行180度旋转的结果对比示意图;
图9是包含非整数个宏块行的条带结构图;
图10是本发明的帧内预测编码的系统结构示意图;
图11是本发明第一实施方式的帧内预测编码的编码方法流程图;
图12是本发明第一实施方式的帧内预测编码的解码方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
本发明的核心在于,在对原始数据进行编码前,先对原始数据进行不同类型的变换,但是该变换必须是可逆的并且在变换前后能够保持条带内各宏块间的相关性不变,如各种角度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转等等。然后,分别对原始数据以及经过不同类型变换后的结果进行编码,从各次编码的结果中选出编码效率最好的一种输出,同时输出一个标识,用于指示编码效率最好的那次编码的对象类型,比如说,编码效率最好的那次编码的对象类型是原始数据还是变换后的数据,如果是变换后的数据,该标识还可以进一步指出是经过哪一种类型的变换。输出的编码效率最好的编码数据在进行解码时,先进行正常解码,再根据用于指示编码效率最好的那次编码的对象类型的标识对解码结果进行相应的逆变换。
由此可见,通过对经过不同类型变换的数据分别进行编码,使得每次编码时虽然都是按固定顺序依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码,但是不同的变换导致了每次编码时已编码的宏块各不相同,其预测的效果也各不相同,所以,可以通过比较选择一种编码效率最好的编码结果,也就是说,可以达到比一次性编码更优的编码效率,改善了预测效果、提高了编码效率。
本发明的帧内预测编码的系统结构如图10所示。该系统包含两部分:编码侧与解码侧。
在编码侧中包含至少一个变换模块、至少两个编码模块以及一个选择模块。其中,变换模块用于对帧内条带的原始数据进行指定类型的变换,如180度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转等变换,各变换模块的变换类型各不相同,比如说,变换模块1的变换类型是180度的旋转;那么变换模块2的变换类型可以是沿条带对角线的翻转,也可以是沿条带水平或垂直中轴线的翻转,只要不与变换模块1的变换类型相同即可;编码模块用于对帧内条带的原始数据或经所述变换模块变换后的结果按指定编码方式进行预测编码;选择模块用于从来自各编码模块的编码结果中选择编码效率最好的一种输出,同时输出所选结果所对应的编码对象类型标识。
在解码侧中包含解码模块以及逆变换模块。其中,解码模块用于对输入的帧内条带进行解码;逆变换模块用于对来自所述解码模块的数据根据选择模块输出的编码对象类型标识所对应的指定类型变换进行相应的逆变换,并将经过逆变换的结果输出。
以上对本发明的帧内预测编码的系统结构进行了说明,下面对该系统的动态工作过程进行简单介绍。
帧内条带的原始数据输入到编码侧的各个变换模块中,由各个变换模块对该原始数据进行指定类型的变换,并将变换后的结果输入到编码侧中不同的编码模块。
编码侧中的各编码模块对输入的经过变换模块变换后的数据或帧内条带的原始数据按指定编码方式进行预测编码,所述指定编码方式是对所述条带内宏块按固定顺序依次编码,例如从上到下从左到右的顺序,并且在编码时根据已编码的宏块预测当前宏块的编码方式,并将编码结果输出到编码侧的选择模块。由于各编码模块的输入各不相同,因此各编码模块输出的编码结果也各不相同。
选择模块从来自各所述编码模块的编码结果中选择编码效率最好的一种编码结果,并将该编码结果以及所选结果所对应的编码对象类型标识输出到解码侧的解码模块。
解码侧的解码模块对输入的编码结果,也就是对帧内条带的编码效率最好的一种编码结果进行解码,并将解码后的数据输入到逆变换模块。最后,由逆变换模块根据编码对象类型标识所对应的指定类型变换对来自所述解码模块的数据进行相应的逆变换,例如原先编码前旋转过180度则逆变换时再旋转180度,并将经过逆变换的结果输出,如果编码对象类型标识所对应的对象类型是原始数据,则无需经过逆变换,直接将解码后的数据输出。
本发明第一实施方式的帧内预测编码的编码方法如图11所示。在本实施方式中,帧内的每一个条带包含整数个宏块行,其结构如图7所示。并且,所述帧是H.264数据帧且采用非分层编码。
在步骤111中,由变换模块对帧内每一个条带的原始数据进行指定类型的变换。具体地说,编码侧的各个变换模块对帧内条带的原始数据进行不同的指定类型变换。其中,所述指定类型的变换是指可逆的并且在变换前后保持该条带内各宏块间的相关性不变的变换,如各种角度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转等任意组合或其中之一。举例来说,如果在编码侧只有一个变换模块,且该变换模块所进行的是180度的旋转变换。那么,当帧内条带的原始数据输入到该变换模块后,该变换模块就对所输入的原始数据进行180度的旋转,如图8所示:(1)为原始数据的图像;(2)为旋转后的图像。
接着,进入步骤112中,由编码模块对编码对象进行编码,并将编码结果输出到选择模块。具体地说,编码侧的各编码模块对原始数据或经过变换模块变换后的数据按指定编码方式进行预测编码,再将编码结果输出到选择模块。由于各变换模块对原始数据所进行的是各不相同的指定类型变换,所以,经过变换后的数据也是各不相同。简单地说,各编码模块是对不同的编码对象按指定的编码方式进行预测编码。其中,所述的指定编码方式是对所述条带内宏块按固定顺序依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码方式,如“INTRA”编码。针对上述案例,由于在编码侧只有一个变换模块,且该模块对帧内条带的原始数据进行了180度的旋转变换。那么,在编码侧就应有两个编码模块,分别对帧内条带的原始数据以及经过180度旋转变换后的数据按指定的编码方式(如“INTRA”编码)进行预测编码。也就是说,在编码侧需要进行两次编码,其中一次的编码对象是帧内条带的原始数据,另一次的编码对象是将该条带的原始数据旋转180度后的结果。由于所述的指定编码方式是对所述条带内宏块按固定顺序,如从左到右,从上到下的顺序,依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码方式。因此,当编码对象是帧内条带的原始数据时,编码模块按指定编码方式对当前宏块进行预测编码时所考虑的是当前宏块在原始数据中的左侧象素列和上边象素行的信息;当编码对象是帧内条带的原始数据经过180度旋转变换后的数据时,编码模块按指定编码方式对当前宏块进行预测编码时所考虑的实际上是当前宏块在原始数据中的右侧象素列和下边象素行的信息,所以,不同的编码模块可以达到不同的预测效果。
接着,进入步骤113,由选择模块在各个编码结果中选择编码效率最好的一种编码结果输出,同时输出所选结果所对应的编码对象类型标识。具体地说,编码侧的选择模块通过速率扭曲代价(Rate Distort-cost,简称“RD-cost”)指标对来自各编码模块的编码结果作出评价,选择一种编码效率最好的编码结果输出,同时,输出用于指示编码效率最好的那次编码对象类型的标识,比如说,将该标识放在编码后的条带头信息中,使得该标识随着该编码结果一同输出到解码侧。针对上述案例,选择模块通过RD-cost指标分别对编码对象是帧内条带的原始数据的编码结果以及编码对象是将原始数据旋转180度后的数据的编码结果作出评价,选择出编码效率最好的一种编码结果,并将该编码结果以及该编码结果所对应的编码对象类型标识一同输出给解码侧。比如说,如果编码对象是帧内条带的原始数据,则所对应的编码对象类型标识是0;如果编码对象是将原始数据旋转180度后的数据,则所对应的编码对象类型标识是1。并且,选择模块通过RD-cost指标评价出将原始数据旋转180度后的编码效率更好,那么,选择模块就将为1的编码对象类型标识以及编码对象是将原始数据旋转180度后的数据的编码结果输出到解码侧。
本发明第一实施方式的帧内预测编码的解码方法如图12所示。
在步骤121中,当解码侧接收到编码对象类型标识以及编码结果后,由解码模块按与指定编码方式对应的解码方式对接收到的编码结果进行解码。针对上述案例,如果编码模块的指定编码方式是“INTRA”编码,那么,解码模块则需按照与“INTRA”编码方式相对应的解码方式对接收到的编码结果进行解码。
接着,进入步骤122,解码侧判断接收到的编码结果所对应的编码对象是否为帧内条带的原始数据。具体地说,解码侧根据接收到的编码对象类型标识判断该编码结果所对应的编码对象是否为帧内条带的原始数据,如果是,则进入步骤124,将解码后的结果输出;如果不是,则进入步骤123,对解码结果进行相应的逆变换。针对上述案例,解码侧接收到的编码对象类型标识为1,并且,编码对象类型标识为1所对应的编码对象是将原始数据旋转180度后的数据,因此,解码侧可以获知所接收到的编码结果所对应的编码对象不是帧内条带的原始数据,而是将原始数据旋转180度后的数据。
在步骤123中,解码侧的逆变换模块根据编码对象类型标识所对应的指定类型变换对解码结果进行相应的逆变换。针对上述案例,由于编码对象类型标识所对应的指定类型变换是对帧内条带的原始数据进行180度旋转的变换,因此,逆变换模块需要对解码结果进行相应的逆变换,也就是对解码结果再次进行180度的旋转,抵消变换模块对帧内条带的原始数据所作的变换,并进入步骤124,将经过逆变换后的解码结果输出。
在本实施方式中,通过对帧内条带的原始数据以及经过变换后的数据分别进行编码,得到不同的编码结果,再从不同的编码结果中取优输出,使得帧内预测编码时有更好的预测效果和更高的编码效率。
本发明的第二实施方式与第一实施方式基本相同,不同之处仅在于帧内条带的结构。在第一实施方式中,帧内的每一个条带包含整数个宏块行,而在本实施方式中,帧内的每一个条带也可以包含非整数个宏块行,也就是说,条带内的第一个宏块也可以不是一个宏块行的第一个宏块,条带内的最后一个宏块也可以不是一个宏块行的最后一个宏块,如图9所示。但是,由于包含非整数个宏块行的条带结构同样可以进行指定类型的变换,也可以通过逆变换抵消由变换模块所进行的变换,因此,本实施方式的步骤与第一实施方式完全相同。
本发明的第三实施方式是在第一、第二实施方式的基础上,当所述帧采用分层编码的情况。在本实施方式中,对分层中基本层的编码方式与第一实施方式完全相同,在此不再赘述。对分层中的增强层按指定编码方式进行预测编码时,如果是对帧内条带的原始数据进行180度旋转后的数据进行预测编码,那么,计算每一个宏块的I_BL模式时,基本层的对应条带也必须旋转180度,以便进行求差计算。当然,也可以将第一次对帧内条带的原始数据按指定编码方式进行预测编码时的I_BL计算结果保存下来,在第二次对原始数据进行180度旋转后的数据按指定编码方式进行预测编码时直接利用。在选择编码效率最高的一种编码结果时,条带中的每个宏块计算时的帧内方向预测和I_BL模式判定,都是选择RD_cost最优的依据。
虽然通过参照本发明的某些优选实施方式,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (9)
1.一种帧内预测编码方法,其特征在于,包含以下步骤:
对所述帧内各独立编码的条带按指定编码方式进行至少两次编码,其中每一次编码的对象是该条带的原始数据或对原始数据进行指定类型变换后的结果,并且每一次编码的对象各不相同;
从各次编码的结果中选择编码效率最好的一种输出作为最终的编码结果,同时输出所选结果所对应的编码对象类型标识;其中,
所述指定编码方式对所述条带内宏块是按固定顺序依次编码的,并且在编码时根据已编码的宏块预测当前宏块的编码;所述指定类型变换是可逆的并且在变换前后保持所述条带内各宏块间的相关性不变。
2.根据权利要求1所述的帧内预测编码方法,其特征在于,在解码时包含以下步骤:
按与所述指定编码方式对应的解码方式对所述帧内的每一个条带进行解码;
如果所述编码对象类型标识所对应的编码对象不是所述条带的原始数据,则根据该标识所对应的指定类型变换对所述解码结果进行相应的逆变换。
3.根据权利要求1所述的帧内预测编码方法,其特征在于,按所述指定编码方式进行两次编码,其中一次的编码对象是条带的原始数据,另一次的编码对象是将该条带的原始数据旋转180度后的结果。
4.根据权利要求1所述的帧内预测编码方法,其特征在于,通过速率扭曲代价指标评价所述各次编码的编码效率高低。
5.根据权利要求1至4中任一项所述的帧内预测编码方法,其特征在于,所述指定类型变换包含以下之一或其任意组合:
各种角度的旋转、沿条带对角线的翻转、以及沿条带水平或垂直中轴线的翻转。
6.根据权利要求1至4中任一项所述的帧内预测编码方法,其特征在于,所述条带包含整数个宏块行或非整数个宏块行。
7.根据权利要求1至4中任一项所述的帧内预测编码方法,其特征在于,所述帧采用分层编码或非分层编码。
8.一种帧内预测编码系统,其特征在于,在编码侧包含:
至少一个变换模块,用于对帧内条带的原始数据进行指定类型的变换,各变换模块的变换类型各不相同;
至少两个编码模块,用于对所述条带的原始数据或经所述变换模块变换后的结果按指定编码方式进行预测编码,且各编码模块的输入各不相同;
选择模块,用于从来自各所述编码模块的编码结果中选择编码效率最好的一种输出,同时输出所选结果所对应的编码对象类型标识;其中,
所述指定编码方式对所述条带内宏块按固定顺序依次编码,并且在编码时根据已编码的宏块预测当前宏块的编码;所述指定类型变换是可逆的并且在变换前后保持所述条带内各宏块间的相关性不变。
9.根据权利要求8所述的帧内预测编码系统,其特征在于,在解码侧包含:
解码模块,用于对输入的帧内条带进行解码;
逆变换模块,用于对来自所述解码模块的数据根据所述编码对象类型标识所对应的指定类型变换进行相应的逆变换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100303984A CN100466745C (zh) | 2005-10-11 | 2005-10-11 | 帧内预测编解码方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100303984A CN100466745C (zh) | 2005-10-11 | 2005-10-11 | 帧内预测编解码方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1859573A true CN1859573A (zh) | 2006-11-08 |
CN100466745C CN100466745C (zh) | 2009-03-04 |
Family
ID=37298428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100303984A Expired - Fee Related CN100466745C (zh) | 2005-10-11 | 2005-10-11 | 帧内预测编解码方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100466745C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009094946A1 (en) * | 2008-01-28 | 2009-08-06 | Huawei Technologies Co., Ltd. | Code stream marking method and device, and coding-decoding system |
CN101222639B (zh) * | 2007-01-09 | 2010-04-21 | 华为技术有限公司 | 多视点视频技术中的视间预测方法、编码器和解码器 |
CN101325714B (zh) * | 2007-06-13 | 2010-10-27 | 华为技术有限公司 | 变换数据处理方法和装置以及编码、解码方法和装置 |
CN101222645B (zh) * | 2007-01-12 | 2011-02-02 | 三菱电机株式会社 | 图像编码装置、图像解码装置和图像编码方法、图像解码方法 |
CN102387358A (zh) * | 2010-08-27 | 2012-03-21 | 无锡中星微电子有限公司 | 帧内宏块编码方法、解码方法及其编码器、解码器 |
CN103039075A (zh) * | 2010-05-21 | 2013-04-10 | Jvc建伍株式会社 | 图像编码装置、图像编码方法及图像编码程序、以及图像解码装置、图像解码方法及图像解码程序 |
CN104219531A (zh) * | 2014-09-29 | 2014-12-17 | 北方工业大学 | 基于线状帧内块拷贝的hevc屏幕内容编码 |
CN104247422A (zh) * | 2011-11-07 | 2014-12-24 | 华为技术有限公司 | 用于改进帧内预测的新的角度表 |
CN110392257A (zh) * | 2012-07-02 | 2019-10-29 | 韩国电子通信研究院 | 视频解码/编码方法和计算机可读记录介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9172968B2 (en) | 2010-07-09 | 2015-10-27 | Qualcomm Incorporated | Video coding using directional transforms |
US10992958B2 (en) | 2010-12-29 | 2021-04-27 | Qualcomm Incorporated | Video coding using mapped transforms and scanning modes |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1229740A3 (en) * | 1996-01-22 | 2005-02-09 | Matsushita Electric Industrial Co., Ltd. | Method and device for digital image encoding and decoding |
EP1835762A3 (en) * | 1996-05-28 | 2007-10-03 | Matsushita Electric Industrial Co., Ltd. | decoding apparatus with intra prediction |
KR100303685B1 (ko) * | 1996-09-30 | 2001-09-24 | 송문섭 | 영상 예측부호화 장치 및 그 방법 |
JP3734488B2 (ja) * | 2004-08-06 | 2006-01-11 | シャープ株式会社 | 画像符号化装置 |
-
2005
- 2005-10-11 CN CNB2005100303984A patent/CN100466745C/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222639B (zh) * | 2007-01-09 | 2010-04-21 | 华为技术有限公司 | 多视点视频技术中的视间预测方法、编码器和解码器 |
CN101222645B (zh) * | 2007-01-12 | 2011-02-02 | 三菱电机株式会社 | 图像编码装置、图像解码装置和图像编码方法、图像解码方法 |
CN101325714B (zh) * | 2007-06-13 | 2010-10-27 | 华为技术有限公司 | 变换数据处理方法和装置以及编码、解码方法和装置 |
CN101500160B (zh) * | 2008-01-28 | 2015-04-29 | 华为技术有限公司 | 一种码流标识方法、装置及编解码系统 |
WO2009094946A1 (en) * | 2008-01-28 | 2009-08-06 | Huawei Technologies Co., Ltd. | Code stream marking method and device, and coding-decoding system |
CN103039075B (zh) * | 2010-05-21 | 2015-11-25 | Jvc建伍株式会社 | 图像编码装置、图像编码方法、以及图像解码装置、图像解码方法 |
CN103039075A (zh) * | 2010-05-21 | 2013-04-10 | Jvc建伍株式会社 | 图像编码装置、图像编码方法及图像编码程序、以及图像解码装置、图像解码方法及图像解码程序 |
CN102387358A (zh) * | 2010-08-27 | 2012-03-21 | 无锡中星微电子有限公司 | 帧内宏块编码方法、解码方法及其编码器、解码器 |
CN104247422A (zh) * | 2011-11-07 | 2014-12-24 | 华为技术有限公司 | 用于改进帧内预测的新的角度表 |
CN104247422B (zh) * | 2011-11-07 | 2018-09-11 | 华为技术有限公司 | 用于改进帧内预测的新的角度表的方法和装置 |
CN110392257A (zh) * | 2012-07-02 | 2019-10-29 | 韩国电子通信研究院 | 视频解码/编码方法和计算机可读记录介质 |
CN104219531A (zh) * | 2014-09-29 | 2014-12-17 | 北方工业大学 | 基于线状帧内块拷贝的hevc屏幕内容编码 |
CN104219531B (zh) * | 2014-09-29 | 2018-02-06 | 北方工业大学 | 基于线状帧内块拷贝的hevc屏幕内容编码 |
Also Published As
Publication number | Publication date |
---|---|
CN100466745C (zh) | 2009-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100466745C (zh) | 帧内预测编解码方法及其系统 | |
WO2022022297A1 (zh) | 视频解码方法、视频编码方法、装置、设备及存储介质 | |
RU2475998C2 (ru) | Многоуровневая структура кодированного битового потока | |
AU2003240172B2 (en) | Spatial prediction based intra coding | |
RU2452128C2 (ru) | Адаптивное кодирование информации заголовка видеоблока | |
CN101198051B (zh) | 基于h.264的熵解码器的实现方法及装置 | |
RU2482616C2 (ru) | Видеокодирование коэффициентов фильтра на основе горизонтальной и вертикальной симметрии | |
US20110194613A1 (en) | Video coding with large macroblocks | |
CN1535018A (zh) | 一种视频图像跳过宏块的编码方法 | |
CA2883036A1 (en) | Method and apparatus for lossless encoding and decoding | |
Ahmad et al. | Energy efficient video compression for wireless sensor networks | |
CN1910926A (zh) | 用于处理视频通信差错的方法和装置 | |
CN103636207B (zh) | 用于明度及色度块的可变长度译码系数译码 | |
CN1361991A (zh) | 视频编码 | |
EP1877959A2 (en) | System and method for scalable encoding and decoding of multimedia data using multiple layers | |
CN1679330A (zh) | 视频错误隐藏的系统和方法 | |
CN1767644A (zh) | 用于视频编码的非整数像素共享 | |
US20090016626A1 (en) | Joint coding of multiple transform blocks with reduced number of coefficients | |
JP2011507450A (ja) | 可変長符号化方法及び装置 | |
RU2656827C2 (ru) | Усовершенствованная сигнализация идентификаторов слоев для рабочих точек видеокодера | |
JP2003324731A (ja) | 符号化装置、復号装置、画像処理装置、それらの方法およびプログラム | |
CN1859576A (zh) | 对空间分层编码视频图象的上采样方法及其系统 | |
CN100544445C (zh) | 一种基于Brew平台的无线视频传输系统 | |
CN1668110A (zh) | 提高压缩视频比特流中的平均图像刷新速率的方法和设备 | |
WO2013056577A1 (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090304 Termination date: 20151011 |
|
EXPY | Termination of patent right or utility model |