CN105578180B - 一种编码方法及装置 - Google Patents
一种编码方法及装置 Download PDFInfo
- Publication number
- CN105578180B CN105578180B CN201410550496.XA CN201410550496A CN105578180B CN 105578180 B CN105578180 B CN 105578180B CN 201410550496 A CN201410550496 A CN 201410550496A CN 105578180 B CN105578180 B CN 105578180B
- Authority
- CN
- China
- Prior art keywords
- coding unit
- maximum coding
- syntactic element
- maximum
- mode
- 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.)
- Active
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明实施例提供了一种编码方法及装置,该方法包括:在M个最大编码单元中确定出N个指定语法元素相同的最大编码单元之后,在对N个最大编码单元进行编码时,将在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在N个最大编码单元中的第K+1个最大编码单元至第N个最大编码单元进行编码时未添加指定语法元素。很明显,在本发明实施例通过一个累计语法元素代替第K+1个最大编码单元至第N个最大编码单元中添加的指定语法元素,从而减少了编码过程中所添加的指定语法元素的数量,这样不仅可以提升编码效率,并且避免了比特率的浪费。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种编码方法及装置。
背景技术
当前,存在多种视频编码标准,一种是HEVC,还有一种是屏幕内容编码(英文:Screen Content Coding,简称:SCC),其中SCC是针对屏幕内容进行编码的视频编码标准。
在SCC编码模式中,在对一帧图像中最大编码单元编码时码流中会至少添加三种指定语法元素,若是连续多个最大编码单元的指定语法元素完全相同,在对具有相同指定语法元素的最大编码单元进行编码时仍然会将三种语法元素添加到码流中,这样就造成比特率的浪费,并且也降低了视频编码的效率。
发明内容
本发明实施例提供了一种编码方法及装置,用以解决现有技术中的编码模式造成比特率浪费,并且也降低了视频编码的效率的问题。
其具体的技术方案如下:
一种编码方法,所述方法包括:
在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素,其中,一个最大编码单元的指定语法元素至少表征了对所述最大编码单元进行编码的编码模式,M为大于等于2的正整数;
在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,其中,N为大于等于2小于等于M的正整数;
在对所述N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素,其中,所述累计语法元素表征了具有相同指定语法元素的最大编码单元个数,K为大于等于1小于等于N个正整数;
其中,按照所述第一编码方式对所述当前帧图像进行编码的比特率小于按照第二编码方式对所述当前帧图像进行编码的比特率,所述第二编码方式为未在所述连续的N个最大编码中添加所述累计语法元素,并且在N个最大编码单元中的每个最大编码单元中添加原有语法元素的编码方式。
可选的,确定M个最大编码单元中每个最大编码单元的指定语法元素,包括:
对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式;
至少将所述每个最大编码单元的编码模式转换为对应最大编码单元的所述指定语法元素。
可选的,对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式,包括:
将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数;
在获得的比特数中确定出最小比特数,将该最小比特数对应的临时编码方式确定为所述最大编码单元的编码模式;
依次确定M-1个最大编码单元的编码模式;
所述至少将所述每个最大编码单元的编码模式作为对应最大编码单元的所述指定语法元素,包括:
将所述最小比特数对应的层数转换为所述最大编码单元的划分层次语法元素,将所述编码模式转换为所述最大编码单元的编码模式语法元素,将所述划分层次语法元素、所述编码模式语法元素以及编码参考对象语法元素作为所述指定语法元素;
依次确定M-1个最大编码单元的所述指定语法元素。
可选的,在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,具体为:
在所述M个最大编码单元中确定出连续的具有相同编码模式语法元素、相同划分层次语法元素、相同编码参考对象语法元素的所述N个最大编码单元。
可选的,在对所述N个最大编码单元进行编码时,在连续的N个最大编码单元中的一个最大编码单元中添加累计语法元素,包括:
在对所述N个最大编码单元进行编码时,将所述N个最大编码单元中的第一个最大编码单元的指定语法元素添加到第一个最大编码单元对应的码流中;
在所述N个最大编码单元的第K个最大编码单元的码流中添加键值(X,Y),其中,X表征第K个最大编码单元所在所有最大编码单元中的位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
一种解码方法,包括:
在接收到编码端发送的一帧图像的码流时,检测在所述码流中是否存在累计语法元素,其中,所述累计语法元素表征了在一帧图像中具有相同指定语法元素的最大编码单元的个数;
若存在,则根据所述累计语法元素,确定出所述累计语法元素指示的N个具有相同指定语法元素的最大编码单元,其中,N为大于等于2的正整数;
按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个最大编码单元中的第K个至第N个最大编码单元进行解码,其中,第K个最大编码单元为添加了所述累计语法元素的最大编码单元。
一种编码装置,包括:
第一确定模块,用于在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素,其中,一个最大编码单元的指定语法元素至少表征了对所述最大编码单元进行编码的编码模式,M为大于等于2的正整数;
第二确定模块,用于在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,其中,N为大于等于2小于等于M的正整数;
编码模块,用于在对所述N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素,其中,所述累计语法元素表征了具有相同指定语法元素的最大编码单元的个数,K为大于等于1小于等于N个正整数;
其中,按照所述第一编码模式对所述当前帧图像进行编码的比特数小于按照第二编码模式对所述当前帧图像进行编码的比特数,所述第二编码模式为未在所述连续的N个最大编码中添加所述累计语法元素,并且在N个最大编码单元中的每个最大编码单元中添加原有语法元素的编码模式。
可选的,第一确定模块,具体用于对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式,至少将所述每个最大编码单元的编码模式转换为对应最大编码单元的所述指定语法元素。
可选的,所述第一确定模块,具体用于将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数,在获得的比特数中确定出最小比特数,将该最小比特数对应的临时编码方式确定为所述最大编码单元的编码模式,依次确定M-1个最大编码单元的编码模式;将所述最小比特数对应的层数转换为所述最大编码单元的划分层次语法元素,将所述编码模式转换为所述最大编码单元的编码模式语法元素,将所述划分层次语法元素、所述编码模式语法元素以及编码参考对象语法元素作为所述指定语法元素,依次确定M-1个最大编码单元的所述指定语法元素。
可选的,所述编码模块,具体用于在对所述N个最大编码单元进行编码时,将所述N个最大编码单元中的第一个最大编码单元的语法元素添加到第一个最大编码单元对应的码流中,在所述N个最大编码单元的第K个最大编码单元的码流中添加键值(X,Y),其中,X表征第K个最大编码单元所在所有最大编码单元中的位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
一种解码装置,包括:
检测模块,用于在接收到编码端发送的一帧图像的码流时,检测在所述码流中是否存在累计语法元素,其中,所述累计语法元素表征了在一帧图像中具有相同指定语法元素的最大编码单元的个数;
确定模块,用于若存在所述累计语法元素时,则根据所述累计语法元素,确定出所述累计语法元素指示的N个具有相同指定语法元素的最大编码单元,其中,N为大于等于0的正整数;
解码模块,用于按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个最大编码单元中的第K个至第N个最大编码单元进行解码,其中,第K个最大编码单元为添加了所述累计语法元素的最大编码单元。
在本发明实施例中在M个最大编码单元中确定出N个指定语法元素相同的最大编码单元之后,并且在对N个最大编码单元进行编码时,将在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在N个最大编码单元中的第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加语法元素。很明显,在本发明实施例通过一个累计语法原来代替第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元中添加的指定语法元素,从而减少了编码过程中所添加的指定语言元素的数量,这样不仅可以提升编码效率,并且避免了比特率的浪费。
附图说明
图1为本发明实施例中一种编码方法的流程图;
图2为本发明实施例中对图像进行第一层划分的示意图;
图3为本发明实施例中对LCU进行预编码的流程示意图;
图4为本发明实施例中对图像进行第二层划分的示意图;
图5为本发明实施例中添加累计语法元素的流程图;
图6为本发明实施例中编码过程的执行流程图;
图7为本发明实施例中一种解码方法的流程图;
图8为本发明实施例中一种编码装置的结构示意图;
图9为本发明实施例中一种解码装置的结构示意图。
具体实施方式
在本发明实施例中提供了一种编码方法,该方法包括:在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素的值,在M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,在对N个最大编码单元进行编码时,按照第一编码模式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并在对第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加指定语法元素。很明显,在本发明实施例通过一个累计语法原来代替第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元中添加的指定语法元素,从而减少了编码过程中所添加的语言元素的数量,这样不仅可以提升编码效率,并且避免了比特率的浪费。
下面通过附图以及具体实施例对本发明技术方案做详细的说明。
实施例一:
如图1所示为本发明实施例中一种编码方法的流程图,该方法包括:
S101,在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素;
首先,如图2所示,在进行图像的编码时,该电子设备将当前帧图像划分为M个最大编码单元(英文:Large Code Unit,简称:LCU),其中,M为大于等于2的正整数。
在对当前帧图像中的每个LCU进行实际编码之前,在本发明实施例中还需要对M个最大编码单元进行预编码,至少确定每个最大编码单元的编码模式,至少将每个最大编码单元的编码模式作为对应最大编码单元的指定语法元素。
具体来讲,如图3所示为本发明实施例中预编码模式的流程图:
S301,将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数;
S302,在获得比特率中确定出最小比特数,将该最小比特数对应的临时编码方式确定为最大编码单元的编码模式;
S303,依次确定M-1个最大编码单元的编码模式;
S304,将最小比特数对应的层数转换为最大编码单元的划分层次语法元素,将编码模式作为最大编码单元的编码模式语法元素,将划分层次语法元素、编码模式语法元素以及编码参考对象语法元素作为指定语法元素;
S305,依次确定M-1个最大编码单元的指定语法元素。
进一步来讲:
针对当前帧图像中的第一个LCU(如图2所示)来说明预编码过程,当前帧图像中的其他LCU的预编码过程与第一个LCU的预编码过程相同:
第一步:通过三种不同的编码模式对第一个LCU的第一层进行预编码,这三种编码模式分别为:帧内编码、帧间编码、Skip编码,每一种编码模式都会得到对应第一个LCU编码后的bit数,比如:帧内编码对应的比特数为A,帧间编码的比特数为B,Skip编码对应的比特数为C,得到三种不同编码模式下的第一LCU的清晰度,然后得到每个编码模式下的清晰度与bit数之间的比值,最后在三种不同的比值中确定出比特数最小的比值,该最小比值对应的编码模式为LCU的第一层编码模式。
另外,第一个LCU的第一层编码表征是未对第一个LCU进行层次划分的编码,也就是说对完整的第一个LCU进行编码;
第二步:对第一个LCU进行层次划分(如图4所示),得到第二层的LCU,然后通过第一步中的处理方式对第二层的LCU中的每个部分进行预编码,从而得到每一个部分的编码模式以及每个部分对应的比特数,然后将每个比特数相加得到第二层的比特数;按照第二步的方法继续对该LCU进行层次划分,得到第三层的比特数;按照第二步的方法继续对该LCU进行层次划分,得到第四层的比特数;
第三步:比较每一层确定出的最小比特数,将四层中比特数最小的层对应的编码模式确定为第一个LCU的编码模式,比如说第一层的比特数最小,则将第一层的编码模式确定为LCU的编码模式。
第四步:在确定出该LCU的层次划分以及对应的编码模式之后,就能够将层次划分的值以及编码方式转换为第一个LCU的指定语法元素,该指定语法元素包括了:编码模式语法元素cu_skip_flag,其中,skip就表征了编码模式;层次划分语法元素split_cu_flag(X0,Y0),其中,并且将层次划分语法元素的值也确定为false;当然还包括了编码参考对象merge_idx。
通过上述的四步就可以得到第一个LCU的指定语法元素,其他LCU的指定语法元素也可以通过上述的四个步骤来得到,这样就可以得到并记录下每个LCU的指定语法元素。
通过上述的步骤可以得到当前帧图像中的每个LCU的指定语法元素,从而可以使得在编码的过程中能够实现快速的编码,并且可以为后续添加累计语法元素提供条件。
在对每个LCU进行预编码之后,则执行S102。
S102,在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元;
由于在S102中确定出了每个LCU的指定语法元素,因此在S102中就是在M个LCU中确定出连续的具有相同指定语法元素的N个LCU,比如说:M个LCU中的第一个LCU、第二个LCU、第三个LCU、第四个LCU的指定语法元素完全相同,则该N就等于4。
另外,这里需要说明的是,一个LCU的指定语法元素至少是上述的三种语法元素,即:cu_skip_flag、split_cu_flag、merge_idx,当然在实际的应用中可以增加其他语法元素,或者是将所有的语法元素定义为指定语法元素,在本发明实施例中并不限定语法元素的具体个数,但是在确定N值时,连续的LCU的指定语法元素应该相同。
S103,在对N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素。
在确定出N个连续的LCU的语法元素相同之后,在对N个LCU进行编码时,按照第一编码方式,在连续的N个LCU中的第K个最大编码单元中添加累计语法元素。
这里需要说明的是,累计语法元素的值表征了第K个LCU之后的并且与第K个LCU具有相同指定语法元素的LCU的个数,比如说第一个LCU、第二个LCU、第三个LCU、第四个LCU相同时,若是在第二个LCU中添加累计语法元素,则累计语法元素的值就为3。
具体来讲,如图5所示为本发明实施例中添加累计语法元素的具体流程图:
S501,在对N个最大编码单元进行编码时,将N个最大编码单元中的第一个最大编码单元的指定语法元素添加到第一个最大编码单元对应的码流中;
首先来讲,在对N个LCU进行编码时,由于N个连续的LCU的指定语法元素相同,若是相同的LCU中每个LCU都添加相同的指定语法元素,则对LCU进行编码后的码流的比特率较大,这样就造成了比特率浪费的问题。
所以在本发明实施例中,在对N个LCU进行编码时,首先在N个LCU中的第一个LCU中添加指定语法元素,这样使得解码端可以根据第一个LCU确定出该LCU的编码模式来进行解码。
S502,在N个最大编码单元的第K个最大编码单元中添加键值(X,Y)。
这里需要说明的是,X表征第K个最大编码单元所在位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
具体来讲,若是K等于1,则是在第一个LCU中添加累计语法元素,则该则该累计语法元素的值应该为N,该累计语法元素说明的就是从第一个LCU至第N个LCU的指定语法元素相同。并且在第一个LCU中添加了累计语法元素之后说明在N个LCU中从第二个LCU开始就与第一个LCU的语法元素完全相同,因此在N个LCU中的第一个LCU添加了指定语法元素之后,在第二个LCU中就不再需要添加语法元素。此时的累计语法元素就表征为skipLCUNum[X0][YN],其中,Y就等于N。
若K等于2,则是在第二个LCU中添加累计语法元素,则该则该累计语法元素的值应该为N-1,该累计语法元素说明的就是从第二个LCU至第N个LCU的指定语法元素都与第一个LCU的指定语法元素相同。此时,在对第一个LCU以及第二个LCU进行编码时,需要在第一个LCU以及第二个LCU中添加指定语法元素,而从第三个LCU开始至第N个LCU就不需要添加指定语法元素。此时的累计语法元素就表征为skipLCUNum[X1][YN-1],其中,Y就等于N-1。
若K等于3,则是在第三个LCU中添加累计语法元素,则该则该累计语法元素的值应该为N-1,该累计语法元素说明的就是从第二个LCU至第N个LCU的指定语法元素都与第一个LCU的指定语法元素相同。此时,在对第一个LCU以及第二个LCU进行编码时,需要在第一个LCU以及第二个LCU中添加指定语法元素,而从第三个LCU开始至第N个LCU就不需要添加指定语法元素。此时的累计语法元素就表征为skipLCUNum[X1][YN-1],其中,Y就等于N-1。
当然,在N大于等于3的时候,可以在任一的一个LCU中添加累计语法元素。
另外,在本发明实施例中处于上述添加累计语法元素的方式之外,还可以是如下方式:
若存在6个LCU的语法元素相同时,在可以将6个语法元素分成组来添加累计语法元素,第一组为第一个LCU和第二个LCU,第二组为第三个LCU和第四个LCU,第三组为第五个LCU和第六个LCU,此时在第二LCU中添加的累计语法元素为skipLCUNum[X1][Y0],在第四个LCU中添加的累计语法元素为skipLCUNum[X3][Y0],在第六个LCU中添加的累计语法元素为skipLCUNum[X5][Y0]。
在本发明实施例中,在N个LCU中的第K个LCU添加了累计语法元素之后,从而第K个LCU或者第K+1个LCU至第N个LCU将不会添加指定语法元素,也就是说不会添加编码模式语法元素、划分层次语法元素等,这样就可以有效的提升编码过程的效率,减少比特率的浪费,进而在保证图像清晰度的同时降低了码流。
举例来讲,如图2所示,若M等于12,则当前帧图像被划分为12块,每一块为一个LCU,若在12块LCU中第一个LCU至第四个LCU的指定语法元素相同,第五个LCU与第四个LCU的指定语法元素不同,第五个LCU和第六个LCU的指定语法元素相同,第七个LCU至第十二个LCU的指定语法元素相同,此时第一个LCU将按照现有的第二编码模式进行编码,也就是在第一个LCU对应的码流中添加各种对应的指定语法元素,比如编码模式语法元素等。
然后在第三个LCU中直接添加累计语法元素,即添加skipLCUNum[X2][Y1],第三个LCU至第四个LCU的码流中就不在添加指定语法元素;第五个LCU正常的在码流中添加指定语法元素,第六个LCU对应的码流中将添加skipLCUNum[X5][Y0];第七个LCU和第八个LCU也正常的在码流中添加指定语法元素,然后在第九个LCU中添加累计语法元素,即:skipLCUNum[X8][Y3],这样就完成了所有LCU的编码。
很明显,从上述施例中添加累计语法元素的方式可以看出,在本发明实施例中可以通过自定义来确定累计语法元素的添加位置。
在本发明实施例中在M个LCU中确定出N个指定语法元素相同的LCU之后,并且在对N个LCU进行编码时,将在连续的N个LCU中的第K个LCU中添加累计语法元素,并且在N个LCU中的第K个或者第K+1个LCU至第N个最大编码单元进行编码时未添指定加语法元素。很明显,在本发明实施例通过一个累计语法元素代替第K个LCU至第N个LCU中添加的指定语法元素,从而减少了编码过程中所添加的指定语法元素的数量,这样不仅可以提升编码效率,并且避免了比特率的浪费。
下面通过具体的流程执行图来对本发明技术方案做进一步的说明。
如图6所示为本发明实施例中编码过程的执行流程图。
S601,将当前帧图像划分为M个LCU;
S602,按照划分的顺序对依次对每个LCU进行预编码;
S603,判定当前预编码的LCU是否为最后一个LCU,若否,则执行S602;若是,则执行S604;
S604,对LCU进行编码,并在连续的具有相同指定语法元素的LCU中添加累计语法元素;
其添加累计语法元素的方式在上述实施例中已经详细的描述,再此就不在赘述。
S605,结束当前帧图像的编码。
另外,还需要说明的是,上述实施例中描述的是针对一帧图像的编码模式,其他帧图像的编码模式与上述实施例中的编码模式完全相同,此处也不再一一赘述。
实施例二:
对应本发明实施例提供的一种编码方法,本发明实施例中还提供了一种解码的方法,如图7所示为本发明实施例中一种解码方法的流程图,该方法包括:
S701,在接收到编码端发送的一帧图像的码流时,检测在码流中是否存在累计语法元素;
其中,累计语法元素表征了在一帧图像中具有相同指定语法元素的LCU的个数,在上述的实施例中已经详细的描述了累计语法元素所表征的含义,所以解码端得到该累计语法元素之后,就能够确定出哪些LCU是具有相同指定语法元素的LCU,从而就可以按照之前的LCU的指定语法元素来进行解码。
S702,若存在,则根据累计语法元素,确定出累计语法元素指示的N个具有相同指定语法元素的LCU;
若是该累计语法元素为skipLCUNum[X2][Y2],则说明第三个LCU以及第三个LCU之后的2个LCU的指定语法元素与之前的LCU的指定语法元素相同,即:第四个LCU以及第五个LCU的指定语法元素与与第二个LCU的语法元素相同,当然,若是对累计语法元素有不同的定义,则解释出的内容就不相同。
S703,按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个LCU中的第K个至第N个LCU进行解码。
在解码的过程中,若是在第K个LCU的码流中解码到累计语法元素时,则该在解码时,按照第K-1个LCU的解码方式对第K个至第N个LCU进行解码。
比如:该累计语法元素为skipLCUNum[X2][Y2],则说明第三个LCU以及第三个LCU之后的第四个LCU以及第五个LCU的指定语法元素与第二个LCU的指定语法元素相同,此时,第四个LCU至第五个LCU的解码方式按照第二个LCU的解码方式进行解码。
具体来讲解码端将按照如下的代码来进行解码:
通过在码流中添加累计语法元素,可以使得解码端可以进行快速的解码,具体来讲,就是有累计语法元素之后,解码端就不在需要去确定每个LCU的指定语法元素,然后再进行解码。而是根据累计语法元素直接对具有相同指定语法元素的LCU进行解码。
实施例三:
对本发明实施例中提供的一种编码方法,本发明实施例还提供了一种编码装置,如图8所示为本发明实施例中一种编码装置的结构示意图,包括:
第一确定模块801,用于在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素,其中,一个最大编码单元的指定语法元素至少表征了对所述最大编码单元进行编码的编码模式,M为大于等于2的正整数;
第二确定模块802,用于在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,其中,N为大于等于2小于等于M的正整数;
编码模块803,用于在对所述N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元或者第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素,其中,所述累计语法元素表征了具有相同指定语法元素的最大编码单元的个数,K为大于等于1小于等于N个正整数;
其中,按照所述第一编码方式对所述当前帧图像进行编码的比特数小于按照第二编码方式对所述当前帧图像进行编码的比特数,所述第二编码方式为未在所述连续的N个最大编码中添加所述累计语法元素,并且在N个最大编码单元中的每个最大编码单元中添加原有语法元素的编码模式。
进一步,第一确定模块801,具体用于对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式,至少将所述每个最大编码单元的编码模式转换为对应最大编码单元的所述语法元素。
进一步,第一确定模块801,具体用于将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数,在获得的比特率中确定出最小比特数,将该最小比特数对应的临时编码方式确定为所述最大编码单元的编码模式,依次确定M-1个最大编码单元的编码模式;将所述最小比特数对应的层数作为所述最大编码单元的划分层次语法元素,将所述最小比特数对应的层数转换为所述最大编码单元的划分层次语法元素,将所述编码模式转换为所述最大编码单元的编码模式语法元素,将所述划分层次语法元素、所述编码模式语法元素以及编码参考对象语法元素作为所述语法元素,依次确定M-1个最大编码单元的所述指定语法元素。
进一步,编码模块803,具体用于在对所述N个最大编码单元进行编码时,将所述N个最大编码单元中的第一个最大编码单元的语法元素添加到第一个最大编码单元对应的码流中,在所述N个最大编码单元的第K个最大编码单元的码流中添加键值(X,Y),其中,X表征第K个最大编码单元所在所有最大编码单元中的位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
实施例四:
对本发明实施例中提供的一种解码方法,本发明实施例还提供了一种解码装置,如图9所示为本发明实施例中一种解码装置的结构示意图,包括:
检测模块901,用于在接收到编码端发送的一帧图像的码流时,检测在所述码流中是否存在累计语法元素,其中,所述累计语法元素表征了在一帧图像中具有相同指定语法元素的最大编码单元的个数;
确定模块902,用于若存在所述累计语法元素时,则根据所述累计语法元素,确定出所述累计语法元素指示的N个具有相同指定语法元素的最大编码单元,其中,N为大于等于0的正整数;
解码模块903,用于按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个最大编码单元中的第K个最大编码单元至第N个最大编码单元进行解码,其中,第K个最大编码单元为添加了所述累计语法元素的最大编码单元。
尽管已描述了本申请的优选实施例,但本领域内的普通技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种编码方法,其特征在于,所述方法包括:
在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素,其中,一个最大编码单元的指定语法元素至少表征了对所述最大编码单元进行编码的编码模式,M为大于等于2的正整数;
在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,其中,N为大于等于2小于等于M的正整数;
在对所述N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元至第N个最大编码单元进行编码时,或者对第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素,其中,所述累计语法元素表征了具有相同指定语法元素的最大编码单元个数,K为大于等于1小于等于N个正整数;
其中,按照所述第一编码方式对所述当前帧图像进行编码的比特率小于按照第二编码方式对所述当前帧图像进行编码的比特率,所述第二编码方式为未在所述连续的N个最大编码中添加所述累计语法元素,并且在N个最大编码单元中的每个最大编码单元中添加原有语法元素的编码方式。
2.如权利要求1所述的方法,其特征在于,确定M个最大编码单元中每个最大编码单元的指定语法元素,包括:
对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式;
至少将所述每个最大编码单元的编码模式转换为对应最大编码单元的所述指定语法元素。
3.如权利要求2所述的方法,其特征在于,对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式,包括:
将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数;
在获得的比特数中确定出最小比特数,将该最小比特数对应的临时编码方式确定为所述最大编码单元的编码模式;
依次确定M-1个最大编码单元的编码模式;
所述至少将所述每个最大编码单元的编码模式作为对应最大编码单元的所述指定语法元素,包括:
将所述最小比特数对应的层数转换为所述最大编码单元的划分层次语法元素,将所述编码模式转换为所述最大编码单元的编码模式语法元素,将所述划分层次语法元素、所述编码模式语法元素以及编码参考对象语法元素作为所述指定语法元素;
依次确定M-1个最大编码单元的所述指定语法元素。
4.如权利要求1所述的方法,其特征在于,在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,具体为:
在所述M个最大编码单元中确定出连续的具有相同编码模式语法元素、相同划分层次语法元素、相同编码参考对象语法元素的所述N个最大编码单元。
5.如权利要求1所述的方法,其特征在于,在对所述N个最大编码单元进行编码时,在连续的N个最大编码单元中的一个最大编码单元中添加累计语法元素,包括:
在对所述N个最大编码单元进行编码时,将所述N个最大编码单元中的第一个最大编码单元的指定语法元素添加到第一个最大编码单元对应的码流中;
在所述N个最大编码单元的第K个最大编码单元的码流中添加键值(X,Y),其中,X表征第K个最大编码单元所在所有最大编码单元中的位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
6.一种解码方法,其特征在于,包括:
在接收到编码端发送的一帧图像的码流时,检测在所述码流中是否存在累计语法元素,其中,所述累计语法元素表征了在一帧图像中具有相同指定语法元素的最大编码单元的个数;
若存在,则根据所述累计语法元素,确定出所述累计语法元素指示的N个具有相同指定语法元素的最大编码单元,其中,N为大于等于2的正整数;
按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个最大编码单元中的第K个至第N个最大编码单元进行解码,或者第K+1个至第N个最大编码单元进行解码,其中,第K个最大编码单元为添加了所述累计语法元素的最大编码单元。
7.一种编码装置,其特征在于,包括:
第一确定模块,用于在将当前帧图像划分为M个最大编码单元时,确定M个最大编码单元中每个最大编码单元的指定语法元素,其中,一个最大编码单元的指定语法元素至少表征了对所述最大编码单元进行编码的编码模式,M为大于等于2的正整数;
第二确定模块,用于在所述M个最大编码单元中确定出连续的具有相同指定语法元素的N个最大编码单元,其中,N为大于等于2小于等于M的正整数;
编码模块,用于在对所述N个最大编码单元进行编码时,按照第一编码方式,在连续的N个最大编码单元中的第K个最大编码单元中添加累计语法元素,并且在对第K个最大编码单元至第N个最大编码单元进行编码时,或者对第K+1个最大编码单元至第N个最大编码单元进行编码时未添加所述指定语法元素,其中,所述累计语法元素表征了具有相同指定语法元素的最大编码单元的个数,K为大于等于1小于等于N个正整数;
其中,按照所述第一编码模式对所述当前帧图像进行编码的比特数小于按照第二编码模式对所述当前帧图像进行编码的比特数,所述第二编码模式为未在所述连续的N个最大编码中添加所述累计语法元素,并且在N个最大编码单元中的每个最大编码单元中添加原有语法元素的编码模式。
8.如权利要求7所述的装置,其特征在于,第一确定模块,具体用于对所述M个最大编码单元进行编码,至少确定每个最大编码单元的编码模式,至少将所述每个最大编码单元的编码模式转换为对应最大编码单元的所述指定语法元素。
9.如权利要求8所述的装置,其特征在于,所述第一确定模块,具体用于将一个最大编码单元划分为四层,确定每一层的临时编码方式,以及获得每一层使用临时编码方式进行编码时对应的比特数,在获得的比特数中确定出最小比特数,将该最小比特数对应的临时编码方式确定为所述最大编码单元的编码模式,依次确定M-1个最大编码单元的编码模式;将所述最小比特数对应的层数转换为所述最大编码单元的划分层次语法元素,将所述编码模式转换为所述最大编码单元的编码模式语法元素,将所述划分层次语法元素、所述编码模式语法元素以及编码参考对象语法元素作为所述指定语法元素,依次确定M-1个最大编码单元的所述指定语法元素。
10.如权利要求7所述的装置,其特征在于,所述编码模块,具体用于在对所述N个最大编码单元进行编码时,将所述N个最大编码单元中的第一个最大编码单元的语法元素添加到第一个最大编码单元对应的码流中,在所述N个最大编码单元的第K个最大编码单元的码流中添加键值(X,Y),其中,X表征第K个最大编码单元所在所有最大编码单元中的位置,Y表征从处于X位置的最大编码单元开始连续的具有相同指定语法元素的最大编码单元的个数。
11.一种解码装置,其特征在于,包括:
检测模块,用于在接收到编码端发送的一帧图像的码流时,检测在所述码流中是否存在累计语法元素,其中,所述累计语法元素表征了在一帧图像中具有相同指定语法元素的最大编码单元的个数;
确定模块,用于若存在所述累计语法元素时,则根据所述累计语法元素,确定出所述累计语法元素指示的N个具有相同指定语法元素的最大编码单元,其中,N为大于等于0的正整数;
解码模块,用于按照N个最大编码单元中的第K-1个最大编码单元或者第K个最大编码单元的指定语法元素,对N个最大编码单元中的第K个至第N个最大编码单元进行解码,或者第K+1个至第N个最大编码单元进行解码,其中,第K个最大编码单元为添加了所述累计语法元素的最大编码单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410550496.XA CN105578180B (zh) | 2014-10-16 | 2014-10-16 | 一种编码方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410550496.XA CN105578180B (zh) | 2014-10-16 | 2014-10-16 | 一种编码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105578180A CN105578180A (zh) | 2016-05-11 |
CN105578180B true CN105578180B (zh) | 2019-01-15 |
Family
ID=55887777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410550496.XA Active CN105578180B (zh) | 2014-10-16 | 2014-10-16 | 一种编码方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105578180B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07131793A (ja) * | 1993-11-01 | 1995-05-19 | Toshiba Corp | 映像信号高能率符号化装置 |
EP2164264A1 (en) * | 1996-06-28 | 2010-03-17 | Mitsubishi Denki Kabushiki Kaisha | Image coding apparatus and image decoding apparatus |
US7751476B2 (en) * | 2003-12-24 | 2010-07-06 | Kabushiki Kaisha Toshiba | Moving picture coding method and moving picture coding apparatus |
CN102447906A (zh) * | 2010-12-13 | 2012-05-09 | 微软公司 | 低延时视频解码 |
CN103430541A (zh) * | 2011-01-06 | 2013-12-04 | 三星电子株式会社 | 使用分层结构的数据单元的视频的编码方法和装置及其解码方法和装置 |
CN103563382A (zh) * | 2011-03-11 | 2014-02-05 | 三星电子株式会社 | 用于对图像进行编码的方法和设备以及用于进行解码的方法和设备 |
CN103748886A (zh) * | 2011-06-16 | 2014-04-23 | 弗兰霍菲尔运输应用研究公司 | 支持模式切换的熵编码 |
CN103797803A (zh) * | 2011-06-28 | 2014-05-14 | 三星电子株式会社 | 用于熵编码/解码的方法和设备 |
-
2014
- 2014-10-16 CN CN201410550496.XA patent/CN105578180B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07131793A (ja) * | 1993-11-01 | 1995-05-19 | Toshiba Corp | 映像信号高能率符号化装置 |
EP2164264A1 (en) * | 1996-06-28 | 2010-03-17 | Mitsubishi Denki Kabushiki Kaisha | Image coding apparatus and image decoding apparatus |
US7751476B2 (en) * | 2003-12-24 | 2010-07-06 | Kabushiki Kaisha Toshiba | Moving picture coding method and moving picture coding apparatus |
CN102447906A (zh) * | 2010-12-13 | 2012-05-09 | 微软公司 | 低延时视频解码 |
CN103430541A (zh) * | 2011-01-06 | 2013-12-04 | 三星电子株式会社 | 使用分层结构的数据单元的视频的编码方法和装置及其解码方法和装置 |
CN103563382A (zh) * | 2011-03-11 | 2014-02-05 | 三星电子株式会社 | 用于对图像进行编码的方法和设备以及用于进行解码的方法和设备 |
CN103748886A (zh) * | 2011-06-16 | 2014-04-23 | 弗兰霍菲尔运输应用研究公司 | 支持模式切换的熵编码 |
CN103797803A (zh) * | 2011-06-28 | 2014-05-14 | 三星电子株式会社 | 用于熵编码/解码的方法和设备 |
Non-Patent Citations (1)
Title |
---|
基于背景模型的监控视频编码研究;张贤国;《中国优秀博硕士学位论文全文库》;20130601;全文 |
Also Published As
Publication number | Publication date |
---|---|
CN105578180A (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2630750C1 (ru) | Устройство и способ для кодирования и декодирования исходных данных | |
HRP20170345T1 (hr) | Postupak za dekodiranje slika | |
RU2013151883A (ru) | Способ и устройство для сжатия блока кодирования в высокоэффективном кодировании видео | |
CN104768063A (zh) | 一种视频编码方法及装置 | |
JP2017522795A5 (zh) | ||
RU2013152610A (ru) | Способ фильтрации, способ декодирования и способ кодирования | |
RU2013151253A (ru) | Устройство кодирования изображений, устройство декодирования изображений, способ кодирования изображений и способ декодирования изображений | |
RU2013158190A (ru) | Способ кодирования видеоизображений, способ декодирования видеоизображений, устройство кодирования видеоизображений, устройство декодирования видеоизображений и устройство кодирования-декодирования видеоизображений | |
RU2015115902A (ru) | Сигнализация идентификаторов уровней для рабочих точек при кодировании видео | |
CN109862357A (zh) | 低延迟的云游戏图像编码方法、装置、设备和存储介质 | |
CN103369315B (zh) | 色度分量的帧内预测模式的编码、解码方法、设备及系统 | |
CN104104964A (zh) | 一种深度图像帧间编码、解码方法、编码器及解码器 | |
CN109891886A (zh) | 利用任意类型的块划分的视频编码方法和装置 | |
CN104137545A (zh) | 高效视频编码中编码块旗标的编码方法与装置 | |
CN108881918A (zh) | 一种多路视频的处理方法和一种多媒体终端 | |
CN112953680A (zh) | 编码方法、解码方法、编码装置及解码装置 | |
CN105578180B (zh) | 一种编码方法及装置 | |
CN104980764A (zh) | 基于复杂度均衡的并行编解码方法、装置及系统 | |
CN104796702B (zh) | 一种h264视频帧率的转换方法及装置 | |
CN103973310A (zh) | 一种基于异或逻辑运算折半划分的测试数据压缩方法 | |
CN105812824B (zh) | 一种视频图像编码方法及装置 | |
CN108667824A (zh) | Pcs协议复用芯片和方法 | |
CN106851279A (zh) | 图像量化参数解码方法 | |
CN109412748B (zh) | 一种极化码编译码方法及装置 | |
CN113193873A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |