CN101039435A - 在图象编码过程中实现自适应扫描的方法 - Google Patents
在图象编码过程中实现自适应扫描的方法 Download PDFInfo
- Publication number
- CN101039435A CN101039435A CN 200610064856 CN200610064856A CN101039435A CN 101039435 A CN101039435 A CN 101039435A CN 200610064856 CN200610064856 CN 200610064856 CN 200610064856 A CN200610064856 A CN 200610064856A CN 101039435 A CN101039435 A CN 101039435A
- Authority
- CN
- China
- Prior art keywords
- scanning
- coding
- image
- information
- coded
- 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
- 238000000034 method Methods 0.000 title claims abstract description 144
- 230000003044 adaptive effect Effects 0.000 claims description 35
- 230000006978 adaptation Effects 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 238000013139 quantization Methods 0.000 abstract description 2
- 230000005540 biological transmission Effects 0.000 abstract 1
- 230000000977 initiatory effect Effects 0.000 abstract 1
- 230000003068 static effect Effects 0.000 abstract 1
- 230000002457 bidirectional effect Effects 0.000 description 88
- 238000010586 diagram Methods 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 3
- 239000002243 precursor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种在图象编码过程中实现自适应扫描的方法,所述的图象编码包括针对静止图象和视频图象的编码。本发明主要包括:在编码端进行编码时,在一段图象序列的适当位置(可以是序列的开始,也可以是序列中的某个位置等),根据初始前若干帧图象数据的统计得到一张或多张扫描表,在码流中送至解码端。同时在图象编码过程中,根据图象中的信息和编码信息选择这些扫描表。解码时首先根据码流中信息选择扫描表。本方法的特点为:对序列中的图象块可以选择多个扫描表之一,并不需对每一图象块传送关于扫描表的旁信息。本发明提供的方法可以使得编码效率大大增加。
Description
技术领域
本发明涉及图象编码技术领域,尤其涉及一种图象编码中的自适应扫描技术。
背景技术
图象编码包括针对静止图象和活动图象的编码过程,其中所述的活动图象的编码即视频编码。以现有的视频编码技术为例,在该技术中,视频序列的一幅图象通常被划分为若干个块进行编码,所说的块为图象中作为编码基本单位的象素集合,具体为象素个数大于等于1的正方形、长方形或任意形状边界的象素集合。
所说的一幅图象,可以是一幅帧图象,也可以是一幅场图象,或者是一幅其它结构象素排列组成的一幅图象。
在编码过程中,通常包括预测、变换、量化、扫描和熵编码等处理。其中,一个性能优越的扫描方式可以在统计上使得需要编码的系数更为集中,并且按照绝对值从大到小排列,这样可以更有利于熵编码,尤其是基于上下文的熵编码,从而使得压缩编码性能进一步提高。
在目前已有的国际视频编解码标准中,采用的扫描方式有帧模式和场模式两种,例如在MPEG2(活动图象专家组,一种视频图象压缩比率较大的编码标准)中,扫描表分为两种,如表1和表2所示:
表1为帧模式下的扫描表:
{0,0},{1,0},{0,1},{0,2},{1,1},{2,0},{3,0},{2,1},
{1,2},{0,3},{0,4},{1,3},{2,2},{3,1},{4,0},{5,0},
{4,1},{3,2},{2,3},{1,4},{0,5},{0,6},{1,5},{2,4},
{3,3},{4,2},{5,1},{6,0},{7,0},{6,1},{5,2},{4,3},
{3,4},{2,5},{1,6},{0,7},{1,7},{2,6},{3,5},{4,4},
{5,3},{6,2},{7,1},{7,2},{6,3},{5,4},{4,5},{3,6},
{2,7},{3,7},{4,6},{5,5},{6,4},{7,3},{7,4},{6,5},
{5,6},{4,7},{5,7},{6,6},{7,5},{7,6},{6,7},{7,7}
表2为场模式下的扫描表:
{0,0},{0,1},{0,2},{1,0},{0,3},{0,4},{1,1},{1,2},
{0,5},{0,6},{1,3},{2,0},{2,1},{0,7},{1,4},{2,2},
{3,0},{1,5},{1,6},{2,3},{3,1},{3,2},{4,0},{1,7},
{2,4},{4,1},{2,5},{3,3},{4,2},{2,6},{3,4},{4,3},
{5,0},{5,1},{2,7},{3,5},{4,4},{5,2},{6,0},{5,3},
{3,6},{4,5},{6,1},{6,2},{5,4},{3,7},{4,6},{6,3},
{5,5},{4,7},{6,4},{5,6},{6,5},{5,7},{6,6},{7,0},
{6,7},{7,1},{7,2},{7,3},{7,4},{7,5},{7,6},{7,7}
在表1和表2中的阿拉伯数字表示块中象素的扫描顺序,分别用于帧模式和场模式。之所以这样使用两种扫描表是因为对视频序列进行按帧模式进行编码和按场模式进行编码所产生的系数的统计分布有一定的差别,采用不同的扫描方式更有利于编码性能的提高。
然而,对于已有的国际视频编解码标准,无论是经典的MPEG2还是目前最新的H.264/AVC,其中的扫描在除了帧模式和场模式自适应之外,并没有再利用其他特性来自适应的选择扫描方式,因此,大大限制了图象编码压缩性能的进一步提高。
发明内容
本发明的目的是提供一种图象编码中实现自适应扫描的方法,通过该方法可以利用编码的更多特性进行自适应选择相应的扫描方式,从而可以有效提高编码压缩性能,进而提高编码性能。
本发明的目的是通过以下技术方案实现的:
本发明提供了一种在图象编码过程中实现自适应扫描的方法,包括:
A、在编、解码端,设置图象的各统计特性对应的一张或多张扫描表;
B、根据对应的图象的统计特性为待编码图象块从所述的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码图象块进行扫描;
C、在解码端,根据接收到的图象编码信息确定图象的统计特性,并根据该统计特性为接收到的编码信息从所述的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
所述的方法还包括:
D、在图象序列的开始或者是序列中的任意位置确定一幅或多幅图象,并基于一幅或多幅图象的统计特性生成一张或多张对应不同统计特性的扫描表,并执行步骤A,在图象序列中的其他图象位置处,不再执行步骤A。
所述的方法还包括:
当需要对编码过程中应用的扫描表进行更新时,则执行步骤D。
所述的步骤D还包括:
将生成的一张或多张扫描表的信息写入码流中,送至解码端,用于在解码端进行解码时,根据所述的扫描表信息进行解码操作。
所述的扫描表中承载的信息包括:
各个扫描表中针对的编码块中系数的扫描顺序。
所述的图象的统计特性与扫描表的关系包括:
不同统计特性的图象对应不同的扫描表,一种类型的统计特性的图象对应一张扫描表。
所述的图象的统计特性包括:
图象的前向预测特性、双向预测特性和通过初始化扫描表对图象进行分类后获得的统计特性信息。
在所述的步骤A中,所述的一幅或多幅图象包括:当前待编码图象,或者,当前待编码图象和已经编码的图象。
所述的步骤B包括:
B1、根据待编码图象及已经编码的图象的统计特性为待编码图象从生成的一张或多张扫描表中选择确定一张扫描表;
B2、利用确定的一张扫描表对待编码图象进行扫描。
所述的步骤B1还包括:
B11、在编码端,根据图象本身的特性和已经编码图象的编码信息,以及当前编码块的编码信息和已经编码的编码块的编码信息确定待编码图象及已经编码的图象的统计特性。
所述的步骤B11中包括:
还根据编码块和已经编码的编码块的旁信息确定待编码图象及已经编码的图象的统计特性。
所述的步骤B中,为待编码图象选择扫描表的方式包括:
通过图象的统计特性首先选择待编码的图象需要使用的扫描表组,之后,再进一步使用图象的统计特性从所述的扫描表组中选择一张扫描表。
所述的步骤B还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤B后获得的码流信息。
所述的步骤C中,选择扫描表的过程包括:
首先,根据图象的统计特性选用不同的扫描表组,之后,根据已解码的编码块的统计特性得到当前块的统计特性信息,根据该统计特性信息从所述扫描表组中选择一张扫描表。
本发明还提供了一种图象编码过程中实现自适应扫描的方法,包括:
E、确定一组固定的初始扫描表组;
F、根据当前待编码的图象的编码信息确定其统计特性,根据所述统计特性,从初始扫描表组中为每一类选择一张用于对该类图象进行扫描的扫描表,并对各类的编码块的编码信息进行统计更新各自对应的扫描表,将更新后的扫描表加入码流,发送给解码端;
G、在解码端,利用当前的扫描表组对接收到的码流进行解码,并利用更新后的扫描表更新本地保存的扫描表组信息。
所述的步骤F中包括分类图象编码块的处理,该处理包括:
利用编码块的相邻编码块的分类确定当前编码块的分类;
或者,
利用扫描表组中包含的各扫描表分别对编码块进行编码,并根据编码结果选择编码比特数最少的扫描表对应的分类作为当前编码块的分类。
所述的分类图象编码块的处理包括:
根据预测指针的指向确定相应的相邻编码块,将相邻编码块的分类作为当前编码块的分类。
所述的方法还包括对预测指针的指向的更新处理,具体为:
分别利用当前编码块的相邻编码块的分类结果对当前编码块进行编码,并根据编码结果选择编码比特数最少的相邻编码块作为当前的预测指针的指向。
在所述的步骤F中,对各类的编码块的编码信息进行统计更新各自对应的扫描表的处理具体包括:
将整个帧的同一分类中的所有编码块中的同一位置的参数的绝对值叠加,并将叠加结果排序,得到更新后的扫描表。
所述的方法应用场景中的编码模式包括:
帧模式、场模式、帧场自适应模式和基于宏块的帧场自适应模式。
所述的步骤F中还包括:
在更新各自对应的扫描表之前,判断当前的更新次数是否超过预定的更新次数,如果超过,则不再更新各自对应的扫描表,否则,继续更新各自对应的扫描表。
所述的步骤F还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤F后获得的码流信息。
本发明还提供了一种编码过程中实现自适应扫描的方法,包括:
H、在编码端,根据不同的编码块的统计特性生成一张或多张对应不同统计特性的扫描表;
K、根据对应的编码块的统计特性为待编码的编码块从先前生成的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码的编码块进行扫描;
L、在解码端,根据接收到的编码信息确定编码块的统计特性,并根据该统计特性为接收到的编码信息选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
所述的方法还包括:
将生成的一张或多张扫描表的信息写入码流中,送至解码端;在解码端进行解码时,根据所述的扫描表信息进行解码操作。
所述的方法中包括:
不同统计特性的编码块对应不同的扫描表,一种类型的统计特性的编码块对应一张扫描表。
所述的统计特性包括:
通过初始化扫描表对编码块进行分类后获得的统计特性信息。
在所述的步骤H中,根据当前待编码的编码块,或者,根据当前待编码的编码块和已经编码的编码块生成一张或多张扫描表。
本发明提供了一种在图象编码过程中实现自适应扫描的方法,包括:
M、在编码端,基于一幅或多幅图象的统计特性生成一张或多张对应不同统计特性的扫描表;
N、根据对应的图象的统计特性为待编码图象块从之前生成的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码图象块进行扫描;
P、在码流中传送扫描表的选择信息;
Q、在解码端,根据接收到的图象编码信息中的扫描表的选择信息选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
所述的扫描表的选择信息包括:选择的扫描表的标识信息、选择的扫描表对应的编码信息或者选择的扫描表对应的函数信息。
所述的步骤N还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤N后获得的码流信息。
由上述本发明提供的技术方案可以看出,本发明利用更为精细的特性在编码过程中实现了更为灵活精确的自适应扫描方法,本发明提供的技术方案与现有国际视频编解码标准中的扫描技术实现方案相比更为灵活和精确,从而有效提高了视频压缩的性能。
附图说明
图1为本发明在帧模式下的具体实现过程示意图;
图2为基于利用周围编码块信息的编码块分类划分过程示意图;
图3为利用周围编码块信息的编码块分类示意图;
图4为本发明在场模式下的具体实现过程示意图;
图5为本发明在帧场自适应模式下的具体实现过程示意图;
图6为本发明在基于宏块的帧场自适应模式下的具体实现过程示意图;
图7为利用编码块的位置对编码块进行分类示意图。
具体实施方式
本发明中,所述的图象包括静止图象和视频图象,所述的编码块包括静止图象中的象素子集构成的图象块,也包括视频图象由不同图象(帧图象或者场图象)之间的运算(比如但不限于差运算,加权运算等)得到的图象。
本发明所述的前向预测指的是用显示顺序上过去的参考图象对当前图象进行预测,双向预测指的是用显示顺序上过去和将来的参考图象对当前图象进行预测。本发明所说的前向预测帧或场以及双向预测帧或场,指的是运用相应的预测方法的帧或场。
本发明所述的帧模式,是指将图象序列中的一整幅图象作为整体进行前向预测或双向预测。本发明所说的场模式,是指将图象序列中的一整幅图象拆成交错的顶场和底场,两场分别作为整体进行前向预测或双向预测。
本发明所说的帧场自适应模式,指的是将图象序列中的一整幅图象分别使用场模式和帧模式编码,通过比较最终的编码效果选择相应的帧或场模式。本发明所说的基于编码块的帧场自适应模式,指的是图象序列中的一整幅图象的每一个编码块都可以选择帧场模式。
同时,需要的说明的是,不论上述何种模式,第一帧(或场)采用前向预测的帧(或场)在序列中出现的位置一定在第一帧(或场)采用双向预测的帧(或场)的位置之前。
本发明在具体实现过程中主要包括以下处理过程:
首先,在图象序列的恰当位置,根据一幅或几幅图象的特性以及初始化扫描表的信息,生成一张或几张扫描表,即根据一幅或几幅图象的特性,统计得到几组扫描表组,并将扫描表的信息写入码流,传到解码端用于解码,以便于解码端获得所述的扫描表信息;其中,所述的恰当的位置可以为序列的开始位置或者是序列中的某个位置等,即可以为任意位置,所述的图象的特征包括帧预测的方式及通过初始化扫描表对图象进行分类后获得的统计特征等,所述的初始化扫描表为任意设置的扫描表,或者,为之前已经获得的扫描表;
同时,编码端对图象本身的特性和已编码图象的编码信息,以及当前编码块的信息和已编码块的编码信息分析,即在编码端对图象包含的各个编码块根据特性进行分类,对于不同分析结果的编码块,即不同类的编码块分别从所述的一张或几张扫描表中为其确定相应的扫描表;其中,所述的分析处理过程中用到的信息可以是已编码块的编码信息,也可以是当前编码块和已编码块的已有的旁信息,但不需要另外增加旁信息,即可以是通过已编码块的编码信息,也可以是通过当前编码块的已有的旁信息运算得到分析结果。其中,所述的编码信息和旁信息均为现有技术中已经定义的信息,故本发明中不再对其进行详细说明,例如,有关编码块所有的信息等为编码信息,mv的值以及块的尺寸等信息为旁信息。
其次,在解码端,解码器首先根据图象的特性从编码端通过码流传来的一张或几张扫描表中选择相应的扫描表,进而根据在编码端针对图象中编码块的分析结果,利用已选定扫描表组中与该编码块分类对应的扫描表进行扫描,从而实现正确的解码操作。
本发明在具体应用过程中还可以采用以下方案实现:
在该方案中与上述方案的区别在于当为待编码图象块从之前生成的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码图象块进行扫描之后,将会在在码流中传送扫描表的选择信息,所述的扫描表的选择信息包括:选择的扫描表的标识信息、选择的扫描表对应的编码信息或者选择的扫描表对应的函数信息;这样,在解码端,根据接收到的图象编码信息中的扫描表的选择信息便可以选择确定一个与编码端采用的扫描表一致的扫描表,利用该扫描表便可以对所述编码信息进行解码扫描处理。
为便于与现有技术兼容,本发明在具体实现过程中还可以在编码后的码流中设置标识信息,该标识用于表明该码流是执行本发明提供的编码方案后获得的码流信息,以便于接收端可以正确地进行解码。
本发明提供的上述编解码处理过程的实现,可以有效提高现有视频编码的压缩性能。
在此需要说明的是,本发明除了可以应用于针对图象的编码处理外,还可以用于针对其他数据信息的编码,即对其他待编码的编码块进行编码处理。当利用本发明实现除图象编码外的其他编码处理方式中,相应的自适应扫描的方法与针对图象的自适应扫描处理方法类似,区别仅在于生成一张或多张扫描表时依据的统计特性有所不同,针对除图象外的其他待编码的编码块的统计特性信息可以包括:比如当进行网络规划时,可以将线路的使用频率、改变信息的流通途径作为相应的统计特性信息。
针对当前不同的帧场模式,本发明在具体实现过程中采用的处理略有差别。以下将分别针对当前应用最多的四种帧场模式,说明其利用本发明时相应的具体实现方式。
(一)帧模式
在帧模式下,实现相应的自适应扫描的处理过程包括:
1、进行扫描表组的初始化处理;
(1)编码端在图象序列的任意位置针对前向预测帧和双向预测帧统计得到两组扫描表,并将扫描表信息写入码流,传送给解码端;
(2)解码端根据码流中的信息得到前向预测帧和双向预测帧的扫描表组。
2、对图象进行分类扫描处理;
(1)在编码端,首先,根据预测的方式选择对应的扫描表组,之后,再根据编码块的类型从确定的扫描表组中选定相应的一张扫描表,用于对该编码块进行扫描;
即编码端在对前向预测帧或双向预测帧进行编码时,根据相应的扫描表组和编码块信息对图象中的编码块进行分类,分类过程中所需信息只涉及到已编码的块,利用每种分类对应该扫描表组中的一张扫描表进行扫描;
(2)解码端在已有的通过码流传送来的扫描表组的基础上,根据该图象是前向预测帧还是双向预测帧,选择相应的扫描表组,进而重复编码端相应的分类过程,同样,该分类所需信息只涉及到已解码的块,确定当前编码块对应的扫描表在扫描表组中的索引,从而确定相应的扫描表,以进行解码。
为对本发明有进一步的理解,下面将结合附图对本发明在编解码过程中具体的自适应扫描实现方法进行说明。
本发明所述的具体实现方法如图1所示,包括初始化确定相应的前向预测帧对应的扫描表组和双向预测帧对应的扫描表组的处理,以及利用扫描表组进行相应的编码操作,下面将结合图1分别对帧模式下确定相应扫描表组的具体实现方式进行描述。
首先,描述初始化确定前向预测帧对应的扫描表组,以及利用扫描表组进行帧编码的处理过程;
对于第一帧前向预测帧的编码处理包括:
步骤11:编码端对于第一帧前向预测帧采用固定的扫描表组;
所述的固定的扫描表组为解码端已经获知的扫描表组,因此,保证第一帧前向预测帧被编码并发送给对端后,对端能够正确解码;
所述的扫描表组至少包含一张扫描表,例如,可以包括4张扫描表,当然也可以包括多一些或少一些数量的扫描表;
以采用包括4张扫描表的扫描组为例,具体包括的各扫描表分别如下:
第一扫描表(表1):
{0,0},{1,0},{0,1},{0,2},{1,1},{2,0},{3,0},{2,1},
{1,2},{0,3},{0,4},{1,3},{2,2},{3,1},{4,0},{5,0},
{4,1},{3,2},{2,3},{1,4},{0,5},{0,6},{1,5},{2,4},
{3,3},{4,2},{5,1},{6,0},{7,0},{6,1},{5,2},{4,3},
{3,4},{2,5},{1,6},{0,7},{1,7},{2,6},{3,5},{4,4},
{5,3},{6,2},{7,1},{7,2},{6,3},{5,4},{4,5},{3,6},
{2,7},{3,7},{4,6},{5,5},{6,4},{7,3},{7,4},{6,5},
{5,6},{4,7},{5,7},{6,6},{7,5},{7,6},{6,7},{7,7}
第二扫描表(表2):
{0,0},{0,1},{1,0},{2,0},{3,0},{1,1},{0,2},{0,3},
{0,4},{1,2},{2,1},{4,0},{5,0},{3,1},{1,3},{0,5},
{1,4},{2,2},{4,1},{6,0},{5,1},{3,2},{2,3},{1,5},
{0,6},{0,7},{2,4},{3,3},{4,2},{7,0},{6,1},{5,2},
{4,3},{3,4},{2,5},{1,6},{1,7},{2,6},{3,5},{4,4},
{5,3},{6,2},{7,1},{7,2},{6,3},{5,4},{4,5},{3,6},
{2,7},{3,7},{4,6},{5,5},{6,4},{7,3},{7,4},{6,5},
{5,6},{4,7},{5,7},{6,6},{7,5},{7,6},{6,7},{7,7}
第三扫描表(表3):
{0,0},{0,1},{0,2},{1,0},{0,3},{0,4},{1,1},{1,2},
{0,5},{0,6},{1,3},{2,0},{2,1},{0,7},{1,4},{2,2},
{3,0},{1,5},{1,6},{2,3},{3,1},{3,2},{4,0},{1,7},
{2,4},{4,1},{2,5},{3,3},{4,2},{2,6},{3,4},{4,3},
{5,0},{5,1},{2,7},{3,5},{4,4},{5,2},{6,0},{5,3},
{3,6},{4,5},{6,1},{6,2},{5,4},{3,7},{4,6},{6,3},
{5,5},{4,7},{6,4},{5,6},{6,5},{5,7},{6,6},{7,0},
{6,7},{7,1},{7,2},{7,3},{7,4},{7,5},{7,6},{7,7}
第四扫描表(表4):
{0,0},{1,0},{2,0},{0,1},{3,0},{4,0},{1,1},{2,1},
{5,0},{6,0},{3,1},{0,2},{1,2},{7,0},{4,1},{2,2},
{0,3},{5,1},{6,1},{3,2},{1,3},{2,3},{0,4},{7,1},
{4,2},{1,4},{5,2},{3,3},{2,4},{6,2},{4,3},{3,4},
{0,5},{1,5},{7,2},{5,3},{4,4},{2,5},{0,6},{3,5},
{6,3},{5,4},{1,6},{2,6},{4,5},{7,3},{6,4},{3,6},
{5,5},{7,4},{4,6},{6,5},{5,6},{7,5},{6,6},{0,7},
{7,6},{1,7},{2,7},{3,7},{4,7},{5,7},{6,7},{7,7}
在上述各个扫描表中,相应的阿拉伯数字表示该像素的x和y的坐标对,存贮排列的顺序即代表扫描编码块的顺序,也就是说,所述的各扫描表分别对应不同的扫描顺序。
步骤12:对于第一帧前向预测帧,根据上面所述的四张固定扫描表,即表1至表4,根据图象的统计特性对图象做分类操作,将编码块分成四种类别,每一种类别对应四张扫描表中的一张,进而对每一种类别所有的编码块的信息统计,得到新的扫描表,并用此扫描表更新此种类别相应的扫描表,作为当前对应前向预测模式的扫描表组;
在该步骤12中,所述的对当前帧的编码块进行分类的具体实现可以如图2所示,即通过以下处理步骤进行所述的分类操作:
(1)预测编码过程
步骤21:通过周围编码块的信息,得到当前编码块的预测分类结果;
假设当前编码块的左边,上边以及左上和右上均有编码块存在,如图3所示,同时假设当前的预测指针指向左上,则当前编码块的预测分类结果与左上的编码块相同;
如果预测指针指向的编码块不存在(超出图象的范围),则按照优先级选择其他存在的相邻编码块,根据预测指针的指向,优先级可以不同,比如,如果指向为左上,则优先级为(左,上,右上)等。如果周围的编码块均不存在(如图象左上角的编码块),则默认预测分类结果为0。
步骤22:根据所述的预测分类结果选择采用相应的扫描表对编码块进行扫描、编码、写入码流,并记录此编码块产生的比特数。
(2)更新信息过程
当预测编码结束后,在进行下一个编码块编码之前,需要对此编码块更新两个信息,分别为:
(21)首先对分类结果进行更新
步骤23:采用确定的扫描表组中的其他扫描表编码该编码块,比较编码后获得的比特数,与步骤22中记录的比特数一起比较选出最小的一个,将其索引号作为分类结果废编码块附加信息;
即为了修正预测得到的分类结果所带来的误差,除上面预测编码过程中已使用的扫描表外,使用其他三张扫描表进行扫描编码(编码结果不写入码流),同时记录产生的比特数,与之前预测编码过程中的比特数比较,得出比特数最少的一个,并将相应的索引号作为此编码块分类的最终结果记录到编码块的附加信息中(不用写入码流),用于以后编码块的预测;
(22)其次,对预测指针的指向进行更新
步骤24:比较周围编码块的分类结果,得到一个与当前块最匹配的一个编码块,用该编码块与当前编码块的相对位置更新预测指针的指向;
即利用编码的结果计算出分别使用周围编码块(左,上,左上,右上)的分类结果对应的扫描表所需的比特数,选出最少的一个(比如说左),则将预测指针指向该编码块(左),更新后的所述的预测指针的指向将用于下一个编码块的预测编码过程;
如果在比较周围编码块的分类结果和当前块的匹配的过程中出现了等匹配的情况(比如说左编码块和上编码块分类相同,并且此分类最适合当前编码块),同样是根据预测指针定出优先级,从而进行选择。
在步骤12中,所述的统计得到扫描表的方法可以有多种,这里用到的是将整个帧的同一分类中的所有编码块中的同一位置上的参数的绝对值叠加,并将叠加的结果排序,得到扫描表,并将得到的扫描表写入码流。例如,如果编码块是8×8的块,在对一幅图象编码之初,设置一个8×8=64个的变量y,每一个变量对应8×8块的一个点(比如y11对应横纵坐标为(1,1)的点),并将此64个变量初始为0;进而,对于一个8×8编码块,将每一个点上的值的绝对值叠加到它对应的变量上(比如,如果横纵坐标为(1,1)的点上的值是5,则y11=y11+|5|),当整个图象编码完毕后,对此64个变量y从大到小进行排序,并将变量对应的位置赋予扫描的顺序,比如如果坐标为(1,1)对应的变量y11在64个变量中最大,则(1,1)在扫描表中第一个被扫描,依次类推。
其次,再描述对于第二帧前向预测帧的编码
步骤13:编码端对于第二帧前向预测帧采用第一帧前向预测帧编码时统计得到的扫描表组,即利用步骤12得到的扫描表组,进行编码处理;
具体与所述的步骤12相同,区别只是用到的扫描表组不同,该步骤应用的步骤13得到的,同样会统计得到扫描表组,将扫描表组的信息写入码流,作为当前对应前向预测模式的扫描表组,并将此扫描表组作为经过初始化处理后的扫描表,用于以后前向预测帧的编解码;
步骤14:对初始化以后的前向预测帧的编码利用步骤13得到的扫描表组进行编码,具体为对待编码的所述帧进行分类,确定对应的扫描表,并利用确定的扫描表对待编码的所述帧进行编码处理;其中,所述的以后的前向预测帧指的是第二帧前向预测帧之后的前向预测帧。
其次,描述初始化确定双向预测帧对应的扫描表组,以及利用扫描表组进行帧编码的处理过程;
对于第一帧双向预测帧的编码的处理包括:
步骤15:对第一帧双向预测图象进行分类扫描、编码、统计,得到各个分类对应的扫描表,更新双向预测模式对应的扫描表组;
具体可以为:利用所述的表1至表4给出的一组(四张)扫描表对第一帧双向预测帧进行分类、扫描、编码、统计处理,得到新的扫描表组,并作为当前对应双向预测模式的扫描表组;
在该步骤中,具体的处理方式与步骤12所述的处理方式相同,故,此处不再详述。
对于第二帧双向预测帧的编码
步骤16:采用当前对应双向预测的扫描表组对第二帧双向预测帧进行分类扫描、编码、统计,得到保个分类对应的扫描表,更新步骤15得到的双向预测模式对应的扫描表组;
具体为使用步骤15中得到的双向预测模式对应的扫描表组实现该步骤,在该步骤中,其他操作与步骤13中的描述相同,得到的扫描表作为当前对应双向预测模式对应的扫描表组,并作为进行初始化处理后的扫描表,用于以后双向预测帧的扫描。
步骤17:利用步骤16得到的双向预测帧模式对应的扫描表组对初始化以后的双向预测帧编码,即对第二帧双向预测帧之后的双向预测帧编码。
在执行步骤14和步骤17之后,在解码端便需要根据其获得的最新的前向预测帧模式或双向预测帧模式对应的扫描表组进行相应预测模式下的解码操作;
具体为:首先,在第一帧前向预测帧和双向预测帧解码之前,开辟空间记录扫描表组信息,并将此信息初始化为固定的四张扫描表(表1至表4);之后,不论前向预测帧还是双向预测帧解码,均使用当前前向预测帧或双向预测帧对应的扫描表组,即在解码过程中确定每一个编码块对应的扫描表在该扫描表组中的索引号,并利用索引号对应的扫描表对收到的编码块进行扫描并解码。同时,在前向预测帧或双向预测帧解码结束后,如果码流中有更新扫描表的信息,则根据该帧为前向预测帧或是双向预测帧更新相应的扫描表。
(二)场模式
在场模式下,实现相应的自适应扫描处理过程包括:
1、扫描表组初始化
(1)编码端在图象序列某一位置针对前向预测场和双向预测场统计得到两组扫描表,并将扫描表信息写入码流;
(2)解码端根据码流中的信息得到出前向预测场和双向预测场的扫描表。
2、对图象进行分类扫描
(1)编码端在对前向预测场或双向预测场进行编码时,首先,根据相应的扫描表组和编码块信息对图象中的编码块进行分类,所述分类所需信息只涉及到已编码的块,每种分类对应该扫描表组中的一张扫描表,之后,利用该分类对应的扫描表对相应的编码块进行扫描;
(2)解码端在已有的扫描表组的基础上,根据该图象是前向预测场还是双向预测场,选择相应的扫描表组,进而重复编码端相应的分类过程,同样,所述的分类所需信息只涉及到已解码的块,确定当前块的扫描表在扫描表组中的索引,从而确定相应的用于进行解码的扫描表,以便于进行解码操作。
为对本发明有进一步的理解,下面将结合附图对本发明在编解码过程中具体的自适应扫描实现方法进行说明。
本发明所述的具体实现方法如图4所示,包括进行场模式下的前向预测帧的扫描表的初始化及编码处理和双向预测帧的扫描表的初始化及编码处理,下面将分别对两种处理进行描述。
首先,描述初始化确定前向预测帧对应的扫描表组,以及利用扫描表组进行帧编码的处理过程;
对于第一场前向预测场的编码,由于第一场前向预测场一定是底场,因此,首先,需要对第一场前向预测场底场进行编码;
步骤41:编码端对于第一场前向预测场采用固定的扫描表组;
所述的扫描表组至少包含一张扫描表,例如,可以包括4张扫描表,当然也可以包括多一些或少一些数量的扫描表;具体可以采用的四张表见帧模式中的表1至表4所示。
步骤42:对于第一场前向预测场的处理为:根据上面所述的四张固定扫描表(表1至表4),对图象做分类操作,将编码块分成四种类别,每一种类别对应四张扫描表中的一张,进而对每一种类别所有的编码块的信息统计,得到新的扫描表,并用此扫描表更新此种类别相应的扫描表,作为当前对应前向预测模式的扫描表组;
其中,相应的分类和统计的具体操作见与帧模式中相应的处理相同,故此处不再详述。
步骤43:对第一场采用前向预测的顶场采用当前对就前向预测的扫描表进行分类扫描、编码;
编码端对于第一场采用前向预测的顶场采用第一场前向预测场(底场)编码时统计得到的扫描表组;
但需要说明的是,在该步骤中无需进行统计操作,也不需要更新扫描表组;
步骤44:采用当前对应前身预测的扫描表组对对第二场采用前向预测的底场进行分类扫描、编码、统计,得到各个分类对应的扫描表,更新前身预测模式对应的扫描表组;
编码端对于第一场采用前向预测的顶场采用第一场前向预测场(底场)编码时统计得到的扫描表组;并进行相应的统计得到扫描表组,将扫描表组的信息写入码流,作为当前对应前向预测模式的扫描表组,并将此扫描表组作为经过初始化处理后扫描表,用于以后前向预测场(顶场或底场)的编码;
步骤45:对初始化以后的前向预测场,即第二场采用前向预测的底场之后的前向预测场进行编码处理;
具体为:采用当前对应的前向预测的扫描表组对以后的前向预测场进行分类扫描、编码,便不再进行统计操作,也不再更新扫描表组。
下面再对第一场采用双向预测的顶场的编码进行说明。
步骤46:采用第一场前向预测场编码产生的扫描表组初始化双向预测对应的扫描表组;
即对于第一场采用双向预测的顶声采用当前对应前向预测的扫描表组进行分类扫描、编码处理,便不进行统计操作,也不更新扫描表组;
在该步骤中默认第一场采用前向预测的场在序列中出现的位置一定在第一场采用双向预测的场的位置之前。
步骤47:对第一场采用双向预测的底场进行分类扫描、编码、统计,得到各个分类对应的扫描表,即计算出相应的扫描表组,并将其信息写入码流,同时将该扫描表组作为当前的用于双向预测场的扫描表组,从而实现双向预测模式对应的扫描表组的更新操作;
步骤48:对第二场采用双向预测的顶场采用当前对应双向预测的扫描表组进行分类扫描、编码,便不做统计,也不更新扫描表;
即编码端对第二场采用双向预测的顶场采用第一场采用双向预测场的底场编码时统计得到的扫描表组进行扫描编码处理;
步骤49:采用当前对应双向预测的扫描表组对第二场采用双向预测的底场进行分类扫描、编码、统计,得到各个分类对应的扫描表,更新双向预测模式对应的扫描表组;
具体为将统计得到扫描表组信息写入码流,作为当前对应双向预测模式的扫描表组,并将此扫描表组作为经过初始化处理后的扫描表,用于以后双向预测场(顶场或底场)的编码;
步骤410:对初始化以后的双向预测场,即对第二场采用双向预测的底场之后的编码具体为:采用的当前对应双向预测的扫描表组对以后的双向预测场进行分类扫描、编码,便不需要再更新双向预测模式对应的扫描表组;
步骤411:对前向预测场或双向预测场进行解码处理;
首先,在第一帧前向预测场和双向预测场解码之前,开辟空间记录扫描表组信息,并将此信息初始化为固定的四张扫描表(即表1至表4);
之后,不论前向预测场还是双向预测场解码,均使用当前前向预测场或双向预测场对应的扫描表组,同时按照帧模式中描述的方法,确定每一个编码块对应的扫描表在该扫描表组中的索引号,对其进行扫描并解码;
在前向预测场或双向预测场解码结束后,如果码流中有更新扫描表的信息,则根据该帧为前向预测场或是双向预测场更新相应的扫描表。
(三)帧场自适应
对该模式下的图象编码,前向预测的帧和场对应一组扫描表,双向预测的帧或场对应另一组扫描表,设置四个变量分别记录单向或双向预测的帧或场编码后更新扫描表的次数。如果当前图象编码时选择了帧模式,并且对应于当前图象的预测模式的更新次数的变量小于2,更新该类预测模式的帧和场对应的扫描表组,则将更新的扫描表组的信息写入码流,作为当前对应该预测模式的扫描表组,如果大于等于2,不更新该类预测的帧和场对应的扫描表组,也不将扫描表组写入码流;同理,如果当前图象编码时选择了场模式,则参考相应的记录此种更新的次数的变量,操作同上。
在解码端,同样开辟空间储存两种预测模式对应的扫描表组,不论是场或帧模式,均使用当前的扫描表组对码流进行反扫描和解码,并使用码流中更新扫描表的信息即时的更新扫描表组。
本发明在所述的帧场自适应模式下的具体实现过程如图5所示,包括:
步骤51:采用固定四张扫描表(即所述的表1至表4)初始化扫描表组;
步骤52:利用所述四张扫描表对第一帧前向预测图象进行分类扫描、编码、统计,得到各分类对应的扫描表,更新前向预测模式对应的扫描表组;
步骤53:采用当前对应的前向预测的扫描表组对当前的前向预测图象分别在帧场模式下进行分类扫描、编码、统计,得到各分类对应的扫描表,更新前向预测模式对应扫描表组;
步骤54:确定瘦削图象的帧场模式后,检测选定上对应的更新次数变量;
步骤55:判断所述的次数变量是否大于或等于2,如果是,则执行步骤56,否则,执行步骤57;
步骤56:采用第二帧前向预测图象编码中得到的扫描表组对以后的前向预测图象进行分类扫描、编码,但不再更新前向预测模式对应的扫描表组,并执行步骤515;
步骤57:采用相应帧场模式对应的统计结果更新前向预测模式对应的扫描表,并执行步骤53;
接着步骤52,还执行步骤58,即采用第一帧前向预测图象编码产生的扫描表组初始化双向预测对应的扫描表组;
步骤59:利用前面所述的步骤52得到的扫描表对第一帧双向预测图象进行分类扫描、编码、统计,得到各个分类对应的扫描表,更新双向预测模式对应的扫描表组;
步骤510:采用当前对应双向预测模式扫描表组对双向预测图象分别在帧场模式下进行分类扫描、编码、统计,得到各个分类对应的扫描表,更新双向预测模式对应的扫描表组;
步骤513:采用第二帧双向预测图象编码中得到的扫描表组对以后的双向预测图象进行分类扫描、编码,但不再更新双向预测模式对应的扫描表组,并执行步骤515;
步骤514:采用相应帧场模式对应的统计结果更新双向预测模式对应的扫描表,并执行步骤510;
步骤515:在解码端,开辟空间记录两种预测模式的扫描表组信息,并根据码流中的信息即时更新扫描表组,在对图象进行解码时,根据预测模式和图象分类结果选用相应的扫描表组进行扫描。
(四)基于宏块的帧场自适应
在基于宏块的帧场自适应模式下,实现相应的自适应扫描处理过程包括:
1、扫描表组初始化处理;
(1)编码端在图象序列的任一位置针对分别前向预测帧中的编码块帧场两种模式和双向预测帧中的编码块帧场两种模式统计共得到四组扫描表,并将扫描表信息写入码流;
(2)解码端根据码流中的信息得到出分别对应前向预测帧中的编码块帧场两种模式和双向预测帧中的编码块帧场两种模式的扫描表组。
2、对图象进行分类扫描处理;
(1)编码端在对前向预测帧或双向预测帧进行编码时,根据相应的扫描表组和编码块信息对图象中的编码块进行分类,所述分类操作所需信息只涉及到已编码的块和当前编码块的信息,每种分类对应该扫描表组中的一张扫描表进行扫描,利用相应的扫描表便可以对相应分类的编码块进行扫描处理;
(2)解码端在已有的扫描表组的基础上,根据该图象是前向预测帧还是双向预测帧,以及当前编码块是帧模式或是场模式,选择相应的扫描表组,进而重复编码端相应的分类过程,确定当前块的扫描表在扫描表组中的索引,从而利用确定的扫描表进行解码处理。
为对本发明有进一步的理解,下面将结合附图对本发明在编解码过程中具体的自适应扫描实现方法进行说明。
在基于宏块的帧场自适应模式下,本发明所述的具体实现方法如图6所示,具体包括以下步骤:
步骤61:对于第一帧前向预测帧的编码,编码端对于第一帧前向预测帧采用原有的扫描技术进行编码;
对于第一帧前向预测帧根据当前编码块的位置以及帧场模式,对图象做分类操作(即采用基于区域划分的分类方式),将编码块分成两组(每组四类),共八种类别,进而对每一种类别所有的编码块的信息统计,得到新的扫描表,并用此扫描表更新此种类别相应的扫描表,作为当前分别对应前向预测帧中编码块帧场两种模式的扫描表组。
具体为,首先对当前帧的编码块进行分类,例如相应的分类过程如下:
根据编码块在当前帧的横纵座标,将当前帧分为四个区域,如图7所示,对于当前编码块的帧场模式,首先决定此编码块属于帧模式组或是场模式组,进而根据当前编码块的横纵座标,根据其所在的不同区域(即上述四个区域的某一个),将其分成不同的类别(四个区域对应四种类别);这样帧模式和场模式组分别对应四种类别,共八个类别。
对每一种类别所有的编码块的信息统计的操作与前面描述的帧模式中的操作相同;因此,帧模式和场模式组分别对应四张扫描表,构成了当前对应单向预测帧中的编码块帧场两种模式的扫描表组。
步骤62:对第二帧前向预测帧的编码处理;
编码端对于第二帧前向预测帧采用当前对应单向预测帧中的编码块帧场两种模式的扫描表组,即第一帧前向预测帧编码时统计得到的扫描表组;
在该步骤中,需要说明的有两方面:
(1)对于基于宏块的帧场自适应编码,编码块可能是帧或场模式,故每帧图象只对应两组扫描表,分别对应帧模式块和场模式块,因此,首先需要根据当前编码块的帧场模式,选择相应的扫描表组;
(2)当通过分类操作,具体决定当前编码块在相应的扫描表组选用的扫描表时,由于编码块可能是帧或场模式,如果当前编码块与其附近的编码块(左,上,左上,右上)的帧场模式不同,则将此位置标记为不存在。
采用当前分别对应前向预测的帧场两种模式的扫描表组对第二帧前向预测图象帧场两种编码块分别进行分类扫描、编码、统计,得到分别对应编码块帧场两种模式的扫描表组,并将其作为当前对应前向预测帧中的编码块帧场两种模式的扫描表组。
步骤63:对于初始化以后的前向预测帧,即第二帧前向预测帧之后的前向预测帧进行编码;
即采用当前分别对应的前向预测帧中的编码块帧场两种模式的扫描表组对以后的前向预测图象帧场两种编码块分别进行分类扫描、编码,但不再需要更新前向预测上的两种帧场模式分别对应的扫描表组;
接着步骤61,还执行步骤64,即对第一帧双向预测帧进行编码操作;
具体为采用当前对应前向预测帧中的编码块帧场两种模式的扫描表组对双向预测模式下的两种帧声模式分别对应的扫描表组进行初始化处理;
步骤65:经过处理后得到分别对应编码块帧场两种模式的扫描表组,并将其作为当前对应双向预测帧中的编码块帧场两种模式的扫描表组。
步骤66:对第二帧双向预测帧进行编码处理;
即采用当前对应双向预测帧中的编码块帧场两种模式的扫描表组,对第二帧双向预测图象帧场两种编码块分别进行分类扫描、编码、统计,得到分别对应编码块帧场两种模式的扫描表组,并将其作为当前对应双向预测帧中的编码块帧场两种模式的扫描表组,更新双向预测模式下两种帧场模式分别对应的扫描表组;
步骤67:对初始化以后的双向预测帧,即第二帧双向预测帧之后的双向预测帧进行编码;
即采用当前分别对应双向预测的帧场两种模式的扫描表组对以后的双向预测图象帧场两种编码块分别进行分类扫描、编码、统计,但不再进行统计得到扫描表组,也不再更新扫描表组;
接着步骤63及步骤67,还需要执行步骤68,即对前向预测帧或双向预测帧进行解码操作;
首先在第一帧前向预测帧解码时,使用原有的逆扫描方法;从码流中读取分别对应前向预测帧中编码块帧场两种模式的扫描表组的信息后,将分别对应前向预测帧和双向预测帧中编码块帧场两种模式的扫描表组初始化为读到的扫描表组;
之后,不论前向预测帧还是双向预测帧解码,均使用当前前向预测帧或双向预测帧对应的扫描表组,同时确定每一个编码块对应的扫描表在相应的扫描表组中的索引号,对其进行扫描并解码;
在前向预测帧或双向预测帧解码结束后,如果码流中有更新扫描表的信息,则根据该帧为前向预测帧或是双向预测帧更新相应帧场模式的扫描表组。
需要说明的是,在上述针对本发明提供的方法的各种实施例的描述中,仅以更新两次扫描表为例进行描述,但本发明在实现过程中还可以更新一次或二次以下,具体的更新过程类似。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (30)
1、一种在图象编码过程中实现自适应扫描的方法,其特征在于,包括:
A、在编、解码端,设置图象的统计特性对应的一张或多张扫描表;
B、根据对应的图象的统计特性为待编码图象块从所述的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码图象块进行扫描;
C、在解码端,根据接收到的图象编码信息确定图象的统计特性,并根据该统计特性为接收到的编码信息从所述的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
2、根据权利要求1所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的方法还包括:
D、在图象序列的开始或者是序列中的任意位置确定一幅或多幅图象,并基于一幅或多幅图象的统计特性生成一张或多张对应不同统计特性的扫描表,并执行步骤A,在图象序列中的其他图象位置处,不再执行步骤A。
3、根据权利要求2所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的方法还包括:
当需要对编码过程中应用的扫描表进行更新时,则执行步骤D。
4、根据权利要求2所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤D还包括:
将生成的一张或多张扫描表的信息写入码流中,送至解码端,用于在解码端进行解码时,根据所述的扫描表信息进行解码操作。
5、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的扫描表中承载的信息包括:
各个扫描表中针对的编码块中系数的扫描顺序。
6、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的图象的统计特性与扫描表的关系包括:
不同统计特性的图象对应不同的扫描表,一种类型的统计特性的图象对应一张扫描表。
7、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的图象的统计特性包括:
图象的前向预测特性、双向预测特性和通过初始化扫描表对图象进行分类后获得的统计特性信息。
8、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,在所述的步骤A中,所述的一幅或多幅图象包括:当前待编码图象,或者,当前待编码图象和已经编码的图象。
9、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤B包括:
B1、根据待编码图象及已经编码的图象的统计特性为待编码图象从生成的一张或多张扫描表中选择确定一张扫描表;
B2、利用确定的一张扫描表对待编码图象进行扫描。
10、根据权利要求9所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤B1还包括:
B11、在编码端,根据图象本身的特性和已经编码图象的编码信息,以及当前编码块的编码信息和已经编码的编码块的编码信息确定待编码图象及已经编码的图象的统计特性。
11、根据权利要求10所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤B11中包括:
还根据编码块和已经编码的编码块的旁信息确定待编码图象及已经编码的图象的统计特性。
12、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤B中,为待编码图象选择扫描表的方式包括:
通过图象的统计特性首先选择待编码的图象需要使用的扫描表组,之后,再进一步使用图象的统计特性从所述的扫描表组中选择一张扫描表。
13、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤B还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤B后获得的码流信息。
14、根据权利要求1、2、3或4所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤C中,选择扫描表的过程包括:
首先,根据图象的统计特性选用不同的扫描表组,之后,根据已解码的编码块的统计特性得到当前块的统计特性信息,根据该统计特性信息从所述扫描表组中选择一张扫描表。
15、一种图象编码过程中实现自适应扫描的方法,其特征在于,包括:
E、确定一组固定的初始扫描表组;
F、根据当前待编码的图象的编码信息确定其统计特性,根据所述统计特性,从初始扫描表组中为每一类选择一张用于对该类图象进行扫描的扫描表,并对各类的编码块的编码信息进行统计更新各自对应的扫描表,将更新后的扫描表加入码流,发送给解码端;
G、在解码端,利用当前的扫描表组对接收到的码流进行解码,并利用更新后的扫描表更新本地保存的扫描表组信息。
16、根据权利要求15所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤F中包括分类图象编码块的处理,该处理包括:
利用编码块的相邻编码块的分类确定当前编码块的分类;
或者,
利用扫描表组中包含的各扫描表分别对编码块进行编码,并根据编码结果选择编码比特数最少的扫描表对应的分类作为当前编码块的分类。
17、根据权利要16所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的分类图象编码块的处理包括:
根据预测指针的指向确定相应的相邻编码块,将相邻编码块的分类作为当前编码块的分类。
18、根据权利要求17所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的方法还包括对预测指针的指向的更新处理,具体为:
分别利用当前编码块的相邻编码块的分类结果对当前编码块进行编码,并根据编码结果选择编码比特数最少的相邻编码块作为当前的预测指针的指向。
19、根据权利要求15所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤F中,对各类的编码块的编码信息进行统计更新各自对应的扫描表的处理具体包括:
将整个帧的同一分类中的所有编码块中的同一位置的参数的绝对值叠加,并将叠加结果排序,得到更新后的扫描表。
20、根据权利要求15至19中任一项所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的方法应用场景中的编码模式包括:
帧模式、场模式、帧场自适应模式和基于宏块的帧场自适应模式。
21、根据权利要求15至19中任一项所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤F中还包括:
在更新各自对应的扫描表之前,判断当前的更新次数是否超过预定的更新次数,如果超过,则不再更新各自对应的扫描表,否则,继续更新各自对应的扫描表。
22、根据权利要求15至19中任一项所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的步骤F还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤F后获得的码流信息。
23、一种编码过程中实现自适应扫描的方法,其特征在于,包括:
H、在编码端,根据不同的编码块的统计特性生成一张或多张对应不同统计特性的扫描表;
K、根据对应的编码块的统计特性为待编码的编码块从先前生成的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码的编码块进行扫描;
L、在解码端,根据接收到的编码信息确定编码块的统计特性,并根据该统计特性为接收到的编码信息选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
24、根据权利要求23所述的编码过程中实现自适应扫描的方法,其特征在于,所述的方法还包括:
将生成的一张或多张扫描表的信息写入码流中,送至解码端;在解码端进行解码时,根据所述的扫描表信息进行解码操作。
25、根据权利要求23所述的编码过程中实现自适应扫描的方法,其特征在于,所述的方法中包括:
不同统计特性的编码块对应不同的扫描表,一种类型的统计特性的编码块对应一张扫描表。
26、根据权利要求23、24或25所述的图象编码过程中实现自适应扫描的方法,其特征在于,所述的统计特性包括:
通过初始化扫描表对编码块进行分类后获得的统计特性信息。
27、根据权利要求23、24或25所述的图象编码过程中实现自适应扫描的方法,其特征在于,在所述的步骤H中,根据当前待编码的编码块,或者,根据当前待编码的编码块和已经编码的编码块生成一张或多张扫描表。
28、一种在图象编码过程中实现自适应扫描的方法,其特征在于,包括:
M、在编码端,基于一幅或多幅图象的统计特性生成一张或多张对应不同统计特性的扫描表;
N、根据对应的图象的统计特性为待编码图象块从之前生成的一张或多张扫描表中选择确定一个扫描表,并利用该扫描表对待编码图象块进行扫描;
P、在码流中传送扫描表的选择信息;
Q、在解码端,根据接收到的图象编码信息中的扫描表的选择信息选择确定一个扫描表,并利用该扫描表对所述编码信息进行解码扫描。
29、根据权利要求28所述的方法,其特征在于,所述的扫描表的选择信息包括:选择的扫描表的标识信息、选择的扫描表对应的编码信息或者选择的扫描表对应的函数信息。
30、根据权利要求28或29所述的方法,其特征在于,所述的步骤N还包括:
在编码后的码流中设置标识信息,该标识用于表明该码流是执行所述步骤N后获得的码流信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610064856 CN100546390C (zh) | 2006-03-16 | 2006-03-16 | 在图象编码过程中实现自适应扫描的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610064856 CN100546390C (zh) | 2006-03-16 | 2006-03-16 | 在图象编码过程中实现自适应扫描的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101039435A true CN101039435A (zh) | 2007-09-19 |
CN100546390C CN100546390C (zh) | 2009-09-30 |
Family
ID=38890027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610064856 Expired - Fee Related CN100546390C (zh) | 2006-03-16 | 2006-03-16 | 在图象编码过程中实现自适应扫描的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100546390C (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102065299A (zh) * | 2011-01-17 | 2011-05-18 | 深圳市融创天下科技发展有限公司 | 一种视频编码的自适应扫描重排序方法和系统 |
CN102857748A (zh) * | 2011-06-30 | 2013-01-02 | 华为技术有限公司 | 变换系数扫描方法及装置 |
CN103270754A (zh) * | 2010-12-22 | 2013-08-28 | 高通股份有限公司 | 对视频数据块的系数的模式相依扫描 |
CN105981383A (zh) * | 2014-02-12 | 2016-09-28 | 明达半导体股份有限公司 | 视频处理方法及装置 |
US11330272B2 (en) | 2010-12-22 | 2022-05-10 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
-
2006
- 2006-03-16 CN CN 200610064856 patent/CN100546390C/zh not_active Expired - Fee Related
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103270754A (zh) * | 2010-12-22 | 2013-08-28 | 高通股份有限公司 | 对视频数据块的系数的模式相依扫描 |
US11330272B2 (en) | 2010-12-22 | 2022-05-10 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
CN102065299A (zh) * | 2011-01-17 | 2011-05-18 | 深圳市融创天下科技发展有限公司 | 一种视频编码的自适应扫描重排序方法和系统 |
WO2012097551A1 (zh) * | 2011-01-17 | 2012-07-26 | 深圳市融创天下科技股份有限公司 | 一种视频编码的自适应扫描重排序方法和系统 |
CN102065299B (zh) * | 2011-01-17 | 2014-09-03 | 深圳市云宙多媒体技术有限公司 | 一种视频编码的自适应扫描重排序方法和系统 |
CN102857748A (zh) * | 2011-06-30 | 2013-01-02 | 华为技术有限公司 | 变换系数扫描方法及装置 |
WO2013000436A1 (zh) * | 2011-06-30 | 2013-01-03 | 华为技术有限公司 | 变换系数扫描方法及装置 |
CN102857748B (zh) * | 2011-06-30 | 2015-01-21 | 华为技术有限公司 | 变换系数扫描方法及装置 |
CN105981383A (zh) * | 2014-02-12 | 2016-09-28 | 明达半导体股份有限公司 | 视频处理方法及装置 |
CN105981383B (zh) * | 2014-02-12 | 2019-05-03 | 明达半导体股份有限公司 | 视频处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100546390C (zh) | 2009-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1297148C (zh) | 动画图像编码传送系统、动画图像编码传送方法、该系统和方法使用的适合的编码装置、译码装置、编码方法、译码方法以及程序 | |
CN1251513C (zh) | 运动矢量编码和解码方法及装置,图像信号编码和解码方法及装置 | |
CN1168010C (zh) | 信息处理设备和方法 | |
CN1165180C (zh) | 图像信号发送方法 | |
CN1176548C (zh) | 信息接收记录重放装置、信息接收记录重放方法 | |
CN1237067A (zh) | 图象编码和解码装置、方法及数据存储媒体 | |
CN1801945A (zh) | 编码视频序列变换装置和编码视频序列变换方法 | |
CN1778110A (zh) | 图像解码设备和图像解码方法 | |
CN1596547A (zh) | 移动图像编码设备、移动图像解码设备、移动图像编码方法、移动图像解码方法、程序和存储程序的计算机可读记录媒介 | |
CN1630374A (zh) | 用于前向预测的隔行扫描视频帧的场的预测运动矢量 | |
CN1211372A (zh) | 图像编码设备和图像解码设备 | |
CN1640148A (zh) | 动态图像编码方法及动态图像解码方法 | |
CN1513268A (zh) | 编码方法、译码方法、编码装置、译码装置、图象处理系统、编码程序和译码程序 | |
CN1926576A (zh) | 用于数字编码3d立体视频图像的方法和系统 | |
CN101039421A (zh) | 在编解码中的实现量化的方法和装置 | |
CN1874409A (zh) | 图像信号处理设备、照相机系统及图像信号处理方法 | |
CN1216199A (zh) | 数字图象填补方法、图象处理装置及数据记录媒体 | |
CN1744720A (zh) | 可变长度解码装置 | |
CN1578468A (zh) | 视频解码设备 | |
CN1351444A (zh) | 记录和再现设备 | |
CN1397137A (zh) | 数据处理装置 | |
CN1199306A (zh) | 图象编码·解码、装置以及程序记录媒体 | |
CN101039435A (zh) | 在图象编码过程中实现自适应扫描的方法 | |
CN1898965A (zh) | 运动图象编码方法和装置 | |
CN1574944A (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: 20090930 Termination date: 20200316 |
|
CF01 | Termination of patent right due to non-payment of annual fee |