CN111669579B - 进行编码和解码的方法、编码端、解码端和系统 - Google Patents

进行编码和解码的方法、编码端、解码端和系统 Download PDF

Info

Publication number
CN111669579B
CN111669579B CN201910177527.4A CN201910177527A CN111669579B CN 111669579 B CN111669579 B CN 111669579B CN 201910177527 A CN201910177527 A CN 201910177527A CN 111669579 B CN111669579 B CN 111669579B
Authority
CN
China
Prior art keywords
current block
prediction mode
transformation
transform
intra prediction
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
Application number
CN201910177527.4A
Other languages
English (en)
Other versions
CN111669579A (zh
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.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
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 Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201910177527.4A priority Critical patent/CN111669579B/zh
Publication of CN111669579A publication Critical patent/CN111669579A/zh
Application granted granted Critical
Publication of CN111669579B publication Critical patent/CN111669579B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using 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/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

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

Abstract

本公开提供了一种进行编码和解码的方法、编码端、解码端和系统,属于音视频技术领域。所述方法包括:获取当前块的编码数据,根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息,如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值,根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换。采用本公开,可以提升编解码性能。

Description

进行编码和解码的方法、编码端、解码端和系统
技术领域
本公开涉及音视频技术领域,特别涉及一种进行编码和解码的方法、编码端、解码端和系统。
背景技术
随着互联网技术和计算机技术的发展,视频应用程序越来越多,用户对视频应用程序中高清视频的需求越来越大,但是由于高清视频的数据量比较大,想要高清视频在有限的网络带宽中传输,需要对高清视频进行编码处理。一般编码处理包括:帧内预测、帧间预测、变换、量化、熵编码、环内滤波等环节。在进行编码处理时,通过帧内预测或者帧间预测获取到残差块(可以称为是TU(Transmission Unit,变换单元)或者当前块),对当前块进行图像变换编码(图像变换编码是指将以空间域中像素形式描述的图像转换至变换域,以变换系数的形式加以表示),得到变换系数。然后对变换系数进行量化和熵编码后,得到编码码流。
相关技术中,在图像变换编码时,通常是选择某个预设变换核对(变换核对是由水平变换核和垂直变换核组成的变换核对),对当前块进行变换处理,得到变换系数。相应的,在解码时也是选择编码时使用的预设变换核对,对当前块进行逆变换处理,得到残差信号。
这样,由于同一块采用不同的变换核对进行变换,压缩效果大不相同,所以使用同一个预设变换核对,对所有块进行变换处理,有可能会导致编解码性能较差。
发明内容
为了解决现有技术的问题,本公开实施例提供了一种进行编码和解码的方法、编码端、解码端和系统。所述技术方案如下:
第一方面,提供了一种进行解码的方法,所述方法包括:
获取当前块的编码数据;
根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息;
根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换;
其中,所述根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对,还包括:
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
在本公开的一种可能的实施方式中,所述所述根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息之前,还包括:
如果所述当前块的编码数据中包括目标标识,则确定所述当前块的变换模式为隐式多核变换模式。
在本公开的一种可能的实施方式中,所述如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息满足帧内预测模式范围时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述方法还包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息不满足所述帧内预测模式范围时,根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0和1的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、30、39、41、43、65、6至30中的偶数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、29、7至29中的奇数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、30、3、5、B、39、41、43、65、(B+3)至30中的偶数、5至B中的奇数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为B+2、B+4、29、38、40、66、2、4、(B-1)、B+4至29中奇数、40至66之间的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、30、(B+1)、(B+3)、66、39、41、(B-2)、6至30之间的偶数、(B+3)至66之间的偶数、41至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、29、B、(B+2)、65、38、40、(B-1)、5至29之间的奇数、(B+2)至65之间的奇数、40至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0和1的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、35、37、39、41、43、65、6至34之间的偶数、43至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、33、36、38、40、66、7至33之间的奇数、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、3、5、B、35、37、39、65、(B+3)至34之前的偶数、5至B之间的奇数、39至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+2)、(B+4)、33、2、4、(B-1)、36、38、66、(B+4)至33之间的奇数、4至(B-1)之间的偶数、38至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、35、37、39、(B-2)、6至34之间的偶数、(B+3)至66之间的奇数、39至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、33、B、(B+2)、65、36、38、(B-1)、5至33之间的奇数、(B+2)至65之间的奇数、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、6至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为36、38、40、66、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、(B+3)至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为36、38、66、2、4、(B-1)、38至66之前的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、6至34之间的偶数、(B+3)至66之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为36、38、(B-1)、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1、33、35时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、34、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的奇数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、33、34、35、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34、35、65、2至34中的偶数和35至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、33、36、66、3至33中的奇数和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、3、65和3至65中的奇数时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34和2至34中的偶数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为36、66和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT2),所述第四变换核对为(DCT2,DST7);或者,
所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT8),所述第四变换核对为(DCT8,DST7)。
第二方面,提供了一种进行编码的方法,所述方法包括:
获取当前块的残差信号;
确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的帧内预测模式信息和所述当前块的尺寸信息;
根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
根据所述当前块的变换核对,对所述当前块的残差信号进行变换,得到所述当前块对应的变换系数;
其中,所述根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述方法还包括:
在所述当前块的编码数据中添加目标标识,其中,所述目标标识用于指示变换模式为隐式多核变换模式。
第三方面,提供了一种进行解码的解码端,所述解码端包括:
获取模块,用于:
获取当前块的编码数据;
根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息;
确定模块,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块,用于根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换;
其中,所述确定模块,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述确定模块,还用于:
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
在本公开的一种可能的实施方式中,所述确定模块,还用于:
如果所述当前块的编码数据中包括目标标识,则确定所述当前块的变换模式为隐式多核变换模式。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息满足帧内预测模式范围时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述确定模块,还用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息不满足所述帧内预测模式范围时,根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0和1的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式信息;
所述确定模块,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、30、39、41、43、65、6至30中的偶数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、29、7至29中的奇数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、30、3、5、B、39、41、43、65、(B+3)至30中的偶数、5至B中的奇数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为B+2、B+4、29、38、40、66、2、4、(B-1)、B+4至29中奇数、40至66之间的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、30、(B+1)、(B+3)、66、39、41、(B-2)、6至30之间的偶数、(B+3)至66之间的偶数、41至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、29、B、(B+2)、65、38、40、(B-1)、5至29之间的奇数、(B+2)至65之间的奇数、40至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0和1的帧内预测模式信息;
所述确定模块,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、35、37、39、41、43、65、6至34之间的偶数、43至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、33、36、38、40、66、7至33之间的奇数、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、3、5、B、35、37、39、65、(B+3)至34之前的偶数、5至B之间的奇数、39至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+2)、(B+4)、33、2、4、(B-1)、36、38、66、(B+4)至33之间的奇数、4至(B-1)之间的偶数、38至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、35、37、39、(B-2)、6至34之间的偶数、(B+3)至66之间的奇数、39至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、33、B、(B+2)、65、36、38、(B-1)、5至33之间的奇数、(B+2)至65之间的奇数、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式信息;
所述确定模块,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、6至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为36、38、40、66、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、(B+3)至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为36、38、66、2、4、(B-1)、38至66之前的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、6至34之间的偶数、(B+3)至66之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为36、38、(B-1)、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果所述当前块的帧内预测模式信息的模式号为1、33、35时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、34、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的奇数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、33、34、35、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34、35、65、2至34中的偶数和35至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、33、36、66、3至33中的奇数和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、3、65和3至65中的奇数时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34和2至34中的偶数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为36、66和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT2),所述第四变换核对为(DCT2,DST7);或者,
所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT8),所述第四变换核对为(DCT8,DST7)。
第四方面,提供了一种进行编码的编码端,所述编码端包括:
获取模块,用于:
获取当前块的残差信号;
确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的帧内预测模式信息和所述当前块的尺寸信息;
确定模块,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块,用于根据所述当前块的变换核对,对所述当前块的残差信号进行变换,得到所述当前块对应的变换系数;
其中,所述确定模块,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述获取模块,还用于:
在所述当前块的编码数据中添加目标标识,其中,所述目标标识用于指示变换模式为隐式多核变换模式。
第五方面,提供了一种进行解码的解码端,包括处理器和存储器,其中,所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现上述第一方面所述的方法步骤。
第六方面,提供了一种进行编码的编码端,所述编码端包括:包括处理器和存储器,其中,所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现上述第二方面所述的方法步骤。
第七方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面或第二方面所述的方法步骤。
第八方面,提供了一种进行编码的和解码的系统,所述系统包括编码端和解码端,其中:
所述编码端,如上述第四方面所述的编码端;所述解码端,如上述第三方面所述的解码端。
本公开实施例提供的技术方案带来的有益效果至少包括:
本公开实施例中,在编码端,使用当前块的帧内预测模式和当前块的高度和宽度,确定出当前块对应的变换核对,使用该变换核对,对当前块进行编码处理,在解码端使用相同的方式确定出变换核对,对当前块进行解码处理,得到当前块对应的重建信息。这样,由于在当前块的高度和宽度在第一预设数值和第二预设数值范围内时,基于帧内预测模式和当前块的高度和宽度,确定变换核对,而不是采用固定的变换核对,所以确定出的变换核对更适合当前块,编解码性能更好。
附图说明
图1是本公开实施例提供的一种块的划分类型示意图;
图2是本公开实施例提供的一种CTU划分成CU的示意图;
图3是本公开实施例提供的常用的三种块的示意图;
图4是本公开实施例提供的进行帧内预测时的方向示意图;
图5是本公开实施例提供的基于块形状进行调整的示意图;
图6是本公开实施例提供的一种进行编码的示意图;
图7是本公开实施例提供的一种分布信号的示意图;
图8是本公开实施例提供的一种残差信号分布的示意图;
图9是本公开实施例提供的一种进行解码的方法流程示意图;
图10是本公开实施例提供的一种进行编码的方法流程示意图;
图11是本公开实施例提供的一种进行解码的解码端的结构示意图;
图12是本公开实施例提供的一种进行编码的编码端的结构示意图;
图13是本公开实施例提供的一种编码端的结构示意图;
图14是本公开实施例提供的一种解码端的结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
本公开提供了一种进行编码和进行解码的方法,进行编码的方法的执行主体为编码端,进行解码的方法的执行主体可以是解码端,其中,编码端或解码端可以是服务器、电脑、手机等能对视频数据进行编码和/或解码的设备。
其中,编码端或解码端中可以设置有处理器、存储器和收发器等,处理器可以用于进行编码和/或解码的处理,存储器可以用于存储进行编码和/或解码过程中需要的数据以及产生的数据,收发器可以用于接收以及发送数据,如获取视频数据等。
在进行实施前,首先对本公开实施例可能涉及的概念进行解释:
变换核(transform kernel):
在视频编码中,变换是实现视频数据压缩必不可少的阶段,能够使信号的能量更加集中,而基于DCT(Discrete Cosine Transform,离散余弦变换)/DST(Discrete SineTransform,离散正弦变换)的变换技术一直是视频编码主流的变换技术。DCT和DST根据基函数的不同又具体分为多种变换核,表一给出了常用的五种变换核的基函数。
表一
Figure BDA0001990080700000111
正变换(forward transform)和逆变换(inverse transform):
在视频编码过程中,变换过程包含了正变换和逆变换过程,又叫前向变换和反向变换,其中正变换是将一个二维残差信号(残差系数)转换成能量更加集中的二维频谱信号(变换系数),变换系数再经过量化过程可以有效去除高频成分,保留中低频成分,起到了压缩的作用。用矩阵形式表示如公式(1):
F=B·f·AT (1)
其中,M表示残差块宽度,N表示残差块高度,f表示NxM维的原始残差信号,F表示NxM维的频域信号。A和B表示MxM和NxN维的变换矩阵,它们均满足正交性。
逆变换又称反变换,是正变换的逆过程,即通过正交变换矩阵A和B,将频域信号F转换成时域残差信号f。用矩阵形式表示为公式(2):
f=BT·F·A (2)
水平变换(Horizental transform)和垂直变换(Vertical transform):
在视频编码的变换阶段,输入的是一个二维残差信号,如公式(3)所示,X=A·fT,则F=B·XT
F=B·f·AT=B·(A·fT)T (3)
因此一个二维残差信号的正变换可以通过两次一维的正变换方式实现,第一次正变换后得到一个MxN的信号X,去除了二维残差信号的水平方向像素之间的相关性,因此第一次正变换称为水平变换,称A为水平变换矩阵,第二次正变换去除了二维残差信号的垂直方向像素之间的相关性,因此第二次正变换称为垂直变换,称B为垂直变换矩阵。
变换核对(Transform pair):
在下一代视频编码标准中,TU(Transmission Unit,变换单元)支持矩阵块,因此M不一定等于N,因此A和B的维度不一定相等,除此之外,下一代视频编码标准还支持A和B不是同一种变换核生产的变换矩阵,因此在变换中存在A和B对应的变换核组成的变换核对{H,V},其中H称为水平变换核,V称为垂直变换核。
块划分技术(Block Parition)
在HEVC(High Efficiency Video Coding,高效率的视频压缩)中,一个64x64大小的CTU(Coding Tree Unit,编码树单元)使用四叉树递归划分成CU(Coding Unit,编码单元)。在叶子节点CU级确定是否使用帧内编码或者帧间编码。CU可以进一步划分成两个或者四个PU(Prediction Unit,预测单元),同一个PU内使用相同的预测信息。在预测完成后得到残差信号后,一个CU可以进一步四叉划分成多个TU。
但是在新提出的VVC(Versatile Video Coding,通用视频编码)中的块划分技术有了较大变化。一种混合了二叉树/三叉树/四叉树((binary/ternary/quaternary)tree(BT/TT/QT))划分结构取代了原先的划分模式,取消了原先CU,PU,TU的概念的区分,支持了CU的更灵活的划分方式。CU可以是正方形也可以是矩形划分,CTU首先进行四叉树的划分,然后四叉树划分的叶子节点可以进一步进行二叉树和三叉树的划分。也就是说总共有五种划分类型,四叉树划分,水平二叉树划分,垂直二叉树划分,水平三叉树划分和垂直三叉树划分,如图1所示,表示了五种划分类型,在图1中,(a)表示不划分,(b)表示四叉树划分,(c)水平二叉树划分,(d)垂直二叉树划分,(e)水平三叉树划分,(f)垂直三叉树划分。如图2所示,提供一个CTU划分成CU的示例图。
因此,基于上述划分方式,块通常存在三种形状,如图3所示,在图3中,(a)表示宽度大于高度的块,(b)宽度等于高度的块,(c)宽度小于高度的块。
帧内预测:
帧内预测是考虑到在图像中,相邻块之间存在很强的空域相关性,因此可以利用周围已经重建的像素作为参考像素对当前未编码块进行预测,因此只需要对残差信号(原始信号-预测信号)进行后续编码处理,而不是对原始信号进行编码,有效去除了空域上的冗余,大大提高了视频信号的压缩效率。而且在帧内预测中,更加密集的角度可以带来更好的预测效果,如图4所示,示出了VVC给出的67种帧内预测模式进行帧内预测时的角度方向示意图,帧内预测模式数量从HEVC的33种增加到65种,当模式号为0时,表示Planar(平面)模式,当模式号为1时,表示DC模式(DC模式指当前块的预测像素均为参考像素的平均值),黑色实线表示原来HEVC的角度方向(2,4,6,8,…,64,66),虚线是新增的角度方向(3,5,7,9,..,63,65),更加密集的角度方向能够更加有效地捕捉到自然视频中任意方向的边界,可以利用更多的参考信息进行率失真代价选择,从而可以找到更加适合的帧内预测模式来更加准确地预测当前编码块,使得预测块更加接近原始编码块,编码当前块所需要传输的比特更少,从而编码性能更高。在进行帧内预测编码时,这67种帧内模式运用在所有尺寸的编码块上,包括亮度分量和色度分量。
在图4中,帧内预测模式的模式号为2~34,角度方向与水平向右方向的夹角范围为:-45度~45度,帧内预测模式的模式号为35~66,角度方向与水平向右方向的夹角范围为:-135度~-45度。
需要说明的是,在一个平面直角坐标系中,水平向右方向为x轴的正方向,竖直向上为y轴的正方向,这样,第一象限与第二象限中以原点为顶点的射线(射线远离原点的方向)与x轴的正方向构成的夹角为正值,第三象限与第四象限为中以原点为顶点的射线(射线远离原点的方向)与x轴的正方向构成的夹角为负值。例如,水平向右方向与第四象限中的对称轴(远离原点的方向)的夹角为-45度。
宽角度(wide-angle)帧内预测:
对于矩形块来说,引入了基于块形状的宽角度预测模式,来替代一些传统的帧内预测模式,替代的模式仍然使用原来的模式号,这样整体一共还是65种角度模式,但是基于不同形状,会有所调整。具体如图5所示:
在图5中(a)表示正方形块,对于正方形块而言,角度方向刚好从45度顺时针旋转到-135度,因此不需要做任何调整。
在图5中(b)表示宽度大于高度的块,需要做以下调整,即使用右上角超过-135度的若干角度来替代左下角的若干角度。
在图5中(c)表示宽度小于高度的块,需要做以下调整,即使用左下角低于45度的若干角度来替代右上角的若干角度。
具体的宽角度预测模式的映射关系如表二所示:
表二
宽(W)高(H)比值 需要替代的帧内预测模式(模式号)
W/H==16 Modes(模式)12,13,14,15
W/H==8 Modes 12,13
W/H==4 Modes 2,3,4,5,6,7,8,9,10,11
W/H==2 Modes 2,3,4,5,6,7,
W/H==1 None
W/H==1/2 Modes 61,62,63,64,65,66
W/H==1/4 Mode 57,58,59,60,61,62,63,64,65,66
W/H==1/8 Modes 55,56
W/H==1/16 Modes 53,54,55,56
本公开实施例提供了一种常见的编码框架,如图6所示,完整的视频编码方法一般包括预测、变换、量化、熵编码、环内滤波等环节。其中预测具体分为帧内预测和帧间预测,帧内预测是考虑到在图像中,相邻块之间存在很强的空域相关性,因此可以利用周围已经重建的像素作为参考像素对当前未编码块进行预测,因此只需要对残差信号(原始信号-预测信号)进行后续编码处理,而不是对原始信号进行编码,有效去除了空域上的冗余,大大提高了视频信号的压缩效率。帧间预测是指利用视频信号时间域上的相关性,使用邻近已编码图像像素预测当前图像的像素,已达到去除视频时域冗余的目的。在帧间预测模块,由于视频存在很强的时域相关性,即时域相邻的两帧图像有很多相似图像块,当前帧的图像块往往在相邻参考图像中进行运动搜索,找到与当前块最匹配的块作为参考块。由于参考块与当前块相似度高,两者的差值非常小,因此编码差值的码率开销通常远小于直接编码当前块像素值带来的码率开销。
在上述的变换过程中,对于同一TU(也可以称为是残差块、当前块等)采用不同的变换对对残差块进行压缩,压缩的效果大不相同。这是由变换核本身基函数所决定的,如图7所示,对应DCT2、DST7和DCT8三种变换核基函数,输入信号位为64点。从图中的零阶基函数可以看出,DCT2对均匀分布的信号具有较强的能量集中效果,并且形成的直流分量是输入信号均值的倍数,DST7对幅值递增的输入信号具有较强的能量集中效果,DCT8对幅值递减的输入信号具有较强的能量集中效果。
为了更直观感受不同变换核与残差特性的关系,如图8所示,5种不同的水平垂直变换核对代表的是不同类型的残差分布情况,对于{DCT2,DCT2}变换核类型,代表的是TU的残差分布均匀,对于{DST7,DST7}变换核类型,代表的是TU的残差分布从左到右,从上到下依次变大,主要分布在TU的右下角,类似地,{DCT8,DST7}代表残差主要分布在TU的左下角,{DST7,DCT8}代表残差主要分布在TU的右上角,{DCT8,DCT8}代表残差主要分布在TU的左上角。
本公开实施例提供了一种进行解码的方法,该方法的执行流程可以如图9所示。
步骤901,解码端获取当前块的编码数据。
在实施中,有编码数据要进行解码时,可以获取编码数据,然后对编码数据进行熵解码处理,对熵解码结果进行反量化处理,得到编码数据对应的当前块。该当前块实际上是经过反量化处理后的数据。
步骤902,解码端根据当前块的编码数据,确定当前块的变换模式为隐式多核变换模式时,获取当前块的尺寸信息和帧内预测模式信息。
在实施中,解码端可以确定当前块使用的变换模式是否为隐式多核变换模式,如果当前块使用的变换模式为隐式多核变换模式,则解码端可以确定当前块的水平方向包括的像素点的数目,即为当前块的宽度,并且可以确定当前块的竖直方向包括的像素点的数目,即为当前块的高度,这样,就可以获取到当前块的宽度和高度,即为当前块的尺寸信息。并且可以从编码数据中帧内预测模式信息的标识位,获取该标识位的取值,得到帧内预测模式信息的模式号,这样,可以获取到当前块的帧内预测模式信息。
在本公开的一种可能的实施方式中,在编码数据中包括目标标识时,才会确定当前块的尺寸信息、以及当前块的帧内预测模式信息,相应的步骤1002的处理可以如下:
如果当前块的编码数据中包括目标标识,则确定当前块的变换模式为隐式多核变换模式。
其中,目标标识用于指示启用隐式多核变换,如1等。
在实施中,从编码端可知,在使用隐式多核变换时,会将隐式多核变换是否启用的标识位设置为目标标识,如果解码端在编码数据中,确定隐式多核变换是否启用的标识位为目标标识,可以确定当前块的变换模式为隐式多核变换模式。
步骤903,解码端根据尺寸信息和帧内预测模式信息确定当前块的变换核对,根据尺寸信息和帧内预测模式信息确定当前块的变换核对,包括:如果根据尺寸信息确定当前块不满足尺寸限制条件时,将帧内预测模式信息对应的变换核对确定为当前块的变换核对。
其中,尺寸限制条件是当前块的宽度大于或等于预设数值,且当前块的高度大于或等于预设数值。预设数值可以预设,并且存储至解码端,预设数值可以为32。一个变换核对包括一个垂直变换核和一个水平变换核。
在实施中,解码端可以确定当前块是否满足尺寸限制条件,如果当前块的高度和宽度均不满足尺寸限制条件(即高度和宽度均小于32),则可以获取预设的帧内预测模式信息与变换核对的对应关系,在其中,确定出当前块的帧内预测模式信息对应的变换核,将该变换核对,确定为当前块的变换核对。
在本公开的一种可能的实施方式中,还提供了解码端的高度和/或宽度满足尺寸限制条件的处理,相应的处理可以如下:
如果根据尺寸信息,确定当前块的高度满足尺寸限制条件且当前块的宽度不满足尺寸限制条件时,将DCT2确定为当前块的变换核对中的垂直变换核,并将帧内预测模式信息对应的变换核对中的水平变换核确定为当前块的变换核对中的水平变换核,如果根据尺寸信息,确定当前块的宽度满足尺寸限制条件且当前块的高度不满足尺寸限制条件时,将DCT2确定为当前块的变换核对中的水平变换核,并将帧内预测模式信息对应的变换核对中的垂直变换核确定为当前块的变换核对中的垂直变换核,如果根据尺寸信息,确定当前块的宽度和高度均满足尺寸限制条件时,将DCT2确定为当前块的变换核对中的水平变换核和垂直变换核。
在实施中,解码端使用尺寸信息,如果确定当前块的高度大于或等于预设数值,但是宽度小于预设数值,则将当前块的垂直变换核确定为DCT2,并使用当前块的帧内预测模式信息,在帧内预测模式信息和变换核对的对应关系中,确定当前块的帧内预测模式信息对应的变换核对中的水平变换核,确定为当前块的水平变换核。如果确定当前块的宽度大于或等于预设数值,但是高度小于预设数值,则将当前块的水平变换核确定为DCT2,并使用当前块的帧内预测模式信息,在帧内预测模式信息和变换核对的对应关系中,确定当前块的帧内预测模式信息对应的变换核对中的垂直变换核,确定为当前块的垂直变换核。如果确定当前块的宽度和高度均大于或等于预设数值,则将当前块的水平变换核和垂直变换核确定为DCT2。
步骤904,解码端根据当前块的变换核对,对当前块反量化后的数据进行反变换。
在实施中,在确定出当前块对应的变换核对后,可以使用该变换核对,对当前块反量化后的数据进行反变换处理,得到当前块对应的残差信号,然后将残差信号与预测信号进行相加,得到当前块对应的重建信息。
这样,就完成了当前块的解码处理。每个当前块都按照图9所示的流程进行处理,即可解码一整段的视频数据。
在本公开的一种可能的实施方式中,在步骤903中,将帧内预测模式信息对应的变换核对确定为当前块的变换核对有多种方式,以下给出几种可行的实施方式:
方式一:如果当前块的帧内预测模式信息的模式号为1、33、35时,当前块的变换核对为第一变换核对,如果当前块的帧内预测模式信息的模式号为0、31、32、34、36、37时,当前块的变换核对为第二变换核对,如果当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,当前块的变换核对为第三变换核对,如果当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的奇数时,当前块的变换核对为第四变换核对。
在实施中,方式一可以通过查表的方式或者条件判断实现,映射关系如表三所示,描述了帧内预测模式信息与变换核对的对应关系。
表三
Figure BDA0001990080700000161
方式二:如果当前块的帧内预测模式信息的模式号为1时,当前块的变换核对为第一变换核对,如果当前块的帧内预测模式信息的模式号为0、31、32、33、34、35、36、37时,当前块的变换核对为第二变换核对,如果当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,当前块的变换核对为第三变换核对,如果当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的偶数时,当前块的变换核对为第四变换核对。
在实施中,方式二可以通过查表的方式或者条件判断实现,映射关系如表四所示,描述了帧内预测模式信息与变换核对的对应关系。
表四
Figure BDA0001990080700000162
方式三,如果当前块的帧内预测模式信息的模式号为1时,当前块的变换核对为第一变换核对,如果当前块的帧内预测模式信息的模式号为0时,当前块的变换核对为第二变换核对,如果当前块的帧内预测模式信息的模式号为2、34、35、65、2至34中的偶数和35至65中的奇数时,当前块的变换核对为第三变换核对,如果当前块的帧内预测模式信息的模式号为3、33、36、66、3至33中的奇数和36至66中的偶数时,当前块的变换核对为第四变换核对。
在实施中,方式三可以通过查表的方式或者条件判断实现,映射关系如表五所示,描述了帧内预测模式信息与变换核对的对应关系。
表五
Figure BDA0001990080700000171
方式四,如果当前块的帧内预测模式信息的模式号为1时,当前块的变换核对为第一变换核对,如果当前块的帧内预测模式信息的模式号为0、3、65和3至65中的奇数时,当前块的变换核对为第二变换核对,如果当前块的帧内预测模式信息的模式号为2、34和2至34中的偶数时,当前块的变换核对为第三变换核对,如果当前块的帧内预测模式信息的模式号为36、66和36至66中的偶数时,当前块的变换核对为第四变换核对。
在实施中,方式四可以通过查表或条件判断实现,映射关系如表六所示,描述了帧内预测模式信息与变换核对的对应关系。
表六
Figure BDA0001990080700000172
在本公开的一种可能的实施方式中,上述第一变换核对至第四变换核对可以有两多种组合,以下给出两种可行的组合:
第一变换核对为(DCT2,DCT2),第二变换核对为(DST7,DST7),第三变换核对为(DST7,DCT2),第四变换核对为(DCT2,DST7);或者,第一变换核对为(DCT2,DCT2),第二变换核对为(DST7,DST7),第三变换核对为(DST7,DCT8),第四变换核对为(DCT8,DST7)。
在本公开的一种可能的实施方式中,在步骤903中确定变换核对时,还考虑了帧内预测模式范围,相应的处理可以如下:
如果根据尺寸信息确定当前块不满足尺寸限制条件且帧内预测模式信息满足帧内预测模式范围时,将帧内预测模式信息对应的变换核对确定为当前块的变换核对。
其中,帧内预测模式范围可以预设,并且存储至解码端中,帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式(见表七和表八);或者,帧内预测模式范围包括模式号为0和1的帧内预测模式(见表九);或者,帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式(见表十)。
在实施中,解码端从编码数据中获取到帧内预测模式信息的模式号后,可以确定是否属于帧内预测模式范围,如果属于帧内预测模式范围,则可以直接在帧内预测模式信息与变换核对的对应关系中,将帧内预测模式信息对应的变换核对确定为当前块的变换核对。
在表七中,如果当前块的帧内预测模式信息的模式号为0、33、35,则当前块的变换核对为(DCT2,DCT2)。如果当前块的帧内预测模式信息的模式号为1、31、32、34、36、37,则当前块的变换核对为(DST7,DST7)。
在表八中,如果当前块的帧内预测模式信息的模式号为0,则当前块的变换核对为(DCT2,DCT2)。如果当前块的帧内预测模式信息的模式号为1、31、32、33、34、35、36、37,则当前块的变换核对为(DST7,DST7)。
在表九中,如果当前块的帧内预测模式信息的模式号为0,则当前块的变换核对为(DCT2,DCT2)。如果当前块的帧内预测模式信息的模式号为1,则当前块的变换核对为(DST7,DST7)。
在表十中,如果当前块的帧内预测模式信息的模式号为0,则当前块的变换核对为(DCT2,DCT2)。如果当前块的帧内预测模式信息的模式号为1、3、65和3至65中的奇数,则当前块的变换核对为(DST7,DST7)。
在本公开的一种可能的实施方式中,如果当前块的帧内预测模式信息的模式号不属于帧内预测模式范围,可以进行如下几种处理:
方式一,如表七所示,帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式信息。
当前块的宽度使用W表示,当前块的高度使用H表示。
在当前块的宽度和高度的比值为1时(即W=H),模式号为2、4、6、…、30、39、41、43、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至30之间的偶数,第二个省略号表示43至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值为1时(即W=H),模式号为3、5、7、…、29、38、40、42、…、66的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示7至29之间的奇数,第二个省略号表示42至66之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+1、B+3、…、30、3、5、…、B、39、41、43、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示B+3至30之间的偶数,第二个省略号表示5至B之间的奇数,第三个省略号表示43至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+2、B+4、…、29、38、40、…、66、2、4、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示B+4至29之间奇数,第二个省略号表示40至66之间的偶数,第三个省略号表示4至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为2、4、6、…、30、(B+1)、(B+3)、…、66、39、41、…、(B-2)的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至30之间偶数,第二个省略号表示(B+3)至66之间的偶数,第三个省略号表示41至B-2之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为3、5、…、29、B、B+2、…、65、38、40、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示5至29之间奇数,第二个省略号表示(B+2)至65之间的奇数,第三个省略号表示40至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
表七
Figure BDA0001990080700000191
方式二,帧内预测模式信息范围包括模式号为0、1、31至37的帧内预测模式信息信息;如表八所示,当前块的宽度使用W表示,当前块的高度使用H表示。
在当前块的宽度和高度的比值为1时(即W=H),模式号为2、4、6、…、30、39、41、43、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至30之间的偶数,第二个省略号表示43至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值为1时(即W=H),模式号为3、5、7、…、29、38、40、42、…、66的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示7至29之间的奇数,第二个省略号表示42至66之间的偶数),,即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+1、B+3、…、30、3、5、…、B、39、41、43、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示B+3至30之间的偶数,第二个省略号表示5至B之间的奇数,第三个省略号表示43至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+2、B+4、…、29、38、40、…、66、2、4、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示B+4至29之间的奇数,第二个省略号表示40至66之间的偶数,第三个省略号表示4至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为2、4、6、…、30、B+1、B+3、…、66、39、41、…、(B-2)的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至30之间的偶数,第二个省略号表示(B+3)至66之间的偶数,第三个省略号表示41至(B-2)之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为3、5、…、29、B、(B+2)、…、65、38、40、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示5至29之间的奇数,第二个省略号表示(B+2)至65之间的奇数,第三个省略号表示40至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
表八
Figure BDA0001990080700000201
Figure BDA0001990080700000211
方式三,帧内预测模式信息范围包括模式号为0和1的帧内预测模式信息信息,如表九所示,当前块的宽度使用W表示,当前块的高度使用H表示。
在当前块的宽度和高度的比值为1时(即W=H),模式号为2、4、6、…、34、35、37、39、41、43、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至34之间的偶数,第二个省略号表示43至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值为1时(即W=H),模式号为3、5、7、…、33、36、38、40、…、66的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示7至33之间的奇数,第二个省略号表示40至66之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为(B+1)、(B+3)、…、34、3、5、…、B、35、37、39、…、65的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示(B+3)至34之间的偶数,第二个省略号表示5至B之间的奇数,第三个省略号表示39至65之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+2、B+4、…、33、2、4、…、(B-1)、36、38、…、66的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示(B+4)至33之间的奇数,第二个省略号表示4至(B-1)之间的偶数,第三个省略号表示38至66之间的奇数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为2、4、6、…、34、(B+1)、(B+3)、…、66、35、37、39、…、(B-2)的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至34之间的偶数,第二个省略号表示(B+3)至66之间的偶数,第三个省略号表示39至(B-2)之间的奇数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为3、5、…、33、B、(B+2)、…、65、36、38、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示5至33之间的奇数,第二个省略号表示(B+2)至65之间的奇数,第三个省略号表示38至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
表九
Figure BDA0001990080700000212
Figure BDA0001990080700000221
方式四,帧内预测模式信息范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式信息信息;如表十所示,当前块的宽度使用W表示,当前块的高度使用H表示。
在当前块的宽度和高度的比值为1时(即W=H),模式号为2、4、6、…、34的帧内预测模式信息对应的变换核对为(DST7,DCT2)(省略号表示6至34之间的偶数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值为1时(即W=H),模式号为36、38、40、…、66的帧内预测模式信息对应的变换核对为(DCT2,DST7)(省略号表示40至66之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为B+1、B+3、…、34的帧内预测模式信息对应的变换核对为(DST7,DCT2)(省略号表示(B+3)至34之间的偶数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值大于1时(即W>H),模式号为36、38、…、66、2、4、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(第一个省略号表示38至66之间的偶数,第二个省略号表示4至(B-1)之间的偶数,即当前块的帧变换核对为(DCT2,DST7)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为2、4、6、…、34、B+1、B+3、…、66的帧内预测模式信息对应的变换核对为(DST7,DCT2)(第一个省略号表示6至34之间的偶数,第二个省略号表示(B+3)至66之间的偶数),即当前块的帧变换核对为(DST7,DCT2)。
在当前块的宽度和高度的比值小于1时(即W<H),模式号为36、38、…、(B-1)的帧内预测模式信息对应的变换核对为(DCT2,DST7)(省略号表示38至(B-1)之间的偶数),即当前块的帧变换核对为(DCT2,DST7)。
表十
Figure BDA0001990080700000222
Figure BDA0001990080700000231
需要说明的是,表七至表十是考虑了帧内预测模式信息为宽角度模式的影响,宽角度模式的B是由当前块的宽度和高度的比值确定。在表七至表十中,当W/H=2、4、6、8时,对应的B分别为7、11、13、15,当W/H=1/2、1/4、1/6、1/8时,对应的B分别为61、57、55、53。
还需要说明的是,上述表七至表十中,模式号相邻的帧内预测模式信息一般对应有不同的变换核对。
还需要说明的是,上述表七至表十中,可以将(DCT2,DST7)替换为(DCT8,DST7);可以将(DST7,DCT2)替换为(DST7,DCT8)。
对应于图9所示的解码过程,如图10所示,编码过程可以如下:
步骤1001,编码端获取当前块的残差信号。
在实施中,编码端在对视频数据进行编码时,首先进行帧内预测,得到残差块(得到残差块的方式与现有的视频编码标准中一致,不再赘述),然后将残差块作为当前要进行处理的当前块的残差信号。
步骤1002,编码端确定当前块的变换模式为隐式多核变换模式时,获取当前块的帧内预测模式信息和当前块的尺寸信息。
在实施中,编码端在获取到当前块后,要进行变换处理,可以首先判断隐式多核变换启用是否启用,编码端配置有显式多核变换和隐式多核变换的标识,显式多核变换和隐式多核变换仅能启用一种,也即显式多核变换和隐式多核变换不能同时存在,在编码端的隐式多核变换启用时,编码端可以确定当前块的高度和宽度,当前块的宽度指宽度方向包含的像素点的数目,当前块的高度指高度方向包含的像素点的数目。其中,对于一个MxN的当前块,M表示当前块的宽度,N表示当前块的高度。这样,就可以得到当前块的尺寸信息。
并且编码端可以确定当前块的帧内预测模式信息信息,确定当前块的帧内预测模式信息的过程可以如下:
编码端在获取到当前块后,可以使用RDO(Rate Distortion Optimization,率失真优化)准则确定当前块的帧内预测模式信息,过程可以如下:
一般评价编码效率的有两大指标:码率和PSNR(Peak Signal to Noise Ratio,峰值信噪比)。一般比特流越小,则压缩率越大;PSNR越大,重建图像质量越好。在进行模式选择的时候,判别公式实质上也就是对这二者的综合评价。
模式对应的代价:J(mode)=D+λ*R。其中,D表示Distortion(失真),通常使用SSE(Sum of Squares Error,和方差)指标来衡量,SSE是指重建块与源图像的差值均方和,λ是拉格朗日乘子,R就是该模式下图像块编码所需的实际比特数,包括编码模式信息、运动信息、残差等所需的比特总和。
编码端可以使用每种帧内预测模式信息进行帧内预测,得到不同的残差(可以认为是当前块),然后每种帧内预测模式信息对应的变换核对进行变换,再进行量化,再进行熵编码,再进行解码处理,然后选择率失真代价最小的帧内预测模式信息,确定为当前块对应的帧内预测模式信息。这样,就可以确定当前块对应的帧内预测模式信息。
另外,在得到当前块的帧内预测模式信息之后,可以将帧内预测模式信息的模式号添加至后续的编码数据中,用于对当前块的处理。
步骤1003,编码端根据尺寸信息和帧内预测模式信息确定当前块的变换核对;其中,根据尺寸信息和帧内预测模式信息确定当前块的变换核对,包括:编码端如果根据尺寸信息确定当前块不满足尺寸限制条件时,将帧内预测模式信息对应的变换核对确定为当前块的变换核对,其中,尺寸限制条件是当前块的宽度大于或等于预设数值,且当前块的高度大于或等于预设数值。
步骤1003中确定变换核对的过程与图9中步骤903中确定变换核对的过程完全相同,此处不再赘述。
步骤1004,编码端根据当前块的变换核对,对当前块的残差信号进行变换,得到当前块对应的变换系数。
在实施中,编码端在获取到当前块对应的变换核对后,可以基于变换核对,对当前块进行变换,得到变换系数,然后对变换系数进行量化处理,得到量化系数,量化系数进行熵编码处理,得到当前块对应的编码数据。
这样,就完成了当前块的编码处理。每个当前块都按照图9所示的流程进行处理,即可编码一整段的视频数据。
在本公开的一种可能的实施方式中,为了使解码端可以进行正确的解码,可以在编码数据中携带目标标识,相应的处理可以如下:
在当前块的编码数据中添加目标标识,其中,目标标识用于指示启用隐式多核变换。
在实施中,编码端使用图10的方式编码时,可以在编码数据中添加目标标识,该目标标识用于指示启用隐式多核变换。
本公开实施例中,在编码端,使用当前块的帧内预测模式信息和当前块的尺寸信息,确定出当前块对应的变换核对,使用该变换核对,对当前块进行编码处理,在解码端使用相同的方式确定出变换核对,对当前块进行反变换处理,得到当前块对应的重建信息。这样,由于基于帧内预测模式信息和当前块的尺寸信息,确定变换核对,而不是采用固定的变换核对,所以确定出的变换核对更适合当前块,编解码性能更好。
基于相同的技术构思,本公开实施例还提供了一种进行解码的解码端,如图11所示,该解码端包括:
获取模块1110,用于:
获取当前块的编码数据;
根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息;
确定模块1120,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块1130,用于根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换;
其中,所述确定模块1120,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述确定模块1120,还用于:
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
在本公开的一种可能的实施方式中,所述确定模块1120,还用于:
如果所述当前块的编码数据中包括目标标识,则确定所述当前块的变换模式为隐式多核变换模式。
在本公开的一种可能的实施方式中,所述确定模块1120,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息满足帧内预测模式范围时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述确定模块1120,还用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息不满足所述帧内预测模式范围时,根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0和1的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式信息;
所述确定模块1120,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、30、39、41、43、65、6至30中的偶数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、29、7至29中的奇数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、30、3、5、B、39、41、43、65、(B+3)至30中的偶数、5至B中的奇数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为B+2、B+4、29、38、40、66、2、4、(B-1)、B+4至29中奇数、40至66之间的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、30、(B+1)、(B+3)、66、39、41、(B-2)、6至30之间的偶数、(B+3)至66之间的偶数、41至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、29、B、(B+2)、65、38、40、(B-1)、5至29之间的奇数、(B+2)至65之间的奇数、40至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0和1的帧内预测模式信息;
所述确定模块1120,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、35、37、39、41、43、65、6至34之间的偶数、43至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、33、36、38、40、66、7至33之间的奇数、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、3、5、B、35、37、39、65、(B+3)至34之前的偶数、5至B之间的奇数、39至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+2)、(B+4)、33、2、4、(B-1)、36、38、66、(B+4)至33之间的奇数、4至(B-1)之间的偶数、38至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、35、37、39、(B-2)、6至34之间的偶数、(B+3)至66之间的奇数、39至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、33、B、(B+2)、65、36、38、(B-1)、5至33之间的奇数、(B+2)至65之间的奇数、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式信息;
所述确定模块1120,用于:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、6至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为36、38、40、66、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、(B+3)至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为36、38、66、2、4、(B-1)、38至66之前的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、6至34之间的偶数、(B+3)至66之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为36、38、(B-1)、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
在本公开的一种可能的实施方式中,所述确定模块1120,用于:
如果所述当前块的帧内预测模式信息的模式号为1、33、35时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、34、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的奇数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块1120,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、33、34、35、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34、35、65、2至34中的偶数和35至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、33、36、66、3至33中的奇数和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述确定模块1120,用于:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、3、65和3至65中的奇数时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34和2至34中的偶数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为36、66和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
在本公开的一种可能的实施方式中,所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT2),所述第四变换核对为(DCT2,DST7);或者,
所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT8),所述第四变换核对为(DCT8,DST7)。
基于相同的技术构思,本公开实施例还提供了一种进行编码的编码端,如图12所示,该编码端包括:
获取模块1210,用于:
获取当前块的残差信号;
确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的帧内预测模式信息和所述当前块的尺寸信息;
确定模块1220,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块1230,用于根据所述当前块的变换核对,对所述当前块的残差信号进行变换,得到所述当前块对应的变换系数;
其中,所述确定模块1220,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值。
在本公开的一种可能的实施方式中,所述获取模块1210,还用于:
在所述当前块的编码数据中添加目标标识,其中,所述目标标识用于指示变换模式为隐式多核变换模式。
本公开实施例中,在编码端,使用当前块的帧内预测模式信息和当前块的尺寸信息,确定出当前块对应的变换核对,使用该变换核对,对当前块进行编码处理,在解码端使用相同的方式确定出变换核对,对当前块进行反变换处理,得到当前块对应的重建信息。这样,由于基于帧内预测模式信息和当前块的尺寸信息,确定变换核对,而不是采用固定的变换核对,所以确定出的变换核对更适合当前块,编解码性能更好。
需要说明的是:上述实施例提供的解码端在进行解码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将解码端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的解码端与进行解码的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
需要说明的是:上述实施例提供的编码端在进行编码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将编码端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的编码端与进行编码的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图13是本发明实施例提供的一种编码端的结构示意图,该编码端1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)1301和一个或一个以上的存储器1302,其中,所述存储器1302中存储有至少一条指令,所述至少一条指令由所述处理器1301加载并执行以实现上述进行编码的方法的步骤。
图14是本发明实施例提供的一种解码端的结构示意图,该解码端1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)1401和一个或一个以上的存储器1402,其中,所述存储器1402中存储有至少一条指令,所述至少一条指令由所述处理器1401加载并执行以实现上述进行解码的方法的步骤。
本公开实施例还提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的进行编码和进行解码的方法步骤。
本公开实施例还提供了一种编码端,包括处理器和存储器,其中,所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现上述所述的进行编码的方法步骤。
本公开实施例还提供了一种解码端,包括处理器和存储器,其中,所述存储器,用于存放计算机程序;所述处理器,用于执行所述存储器上所存放的程序,实现上述所述的进行解码的方法步骤。
本公开实施例还提供了一种编码和解码的系统,所述系统包括编码端和解码端,其中:
所述编码端,如上述进行编码处理的编码端;
所述解码端,如上述进行解码处理的解码端。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (17)

1.一种进行解码的方法,其特征在于,所述方法包括:
获取当前块的编码数据;
根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息;
根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换;
其中,所述根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值;
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
2.根据权利要求1所述的方法,其特征在于,所述所述根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息之前,还包括:
如果所述当前块的编码数据中包括目标标识,则确定所述当前块的变换模式为隐式多核变换模式。
3.根据权利要求1所述的方法,其特征在于,所述如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息满足帧内预测模式范围时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件且所述帧内预测模式信息不满足所述帧内预测模式范围时,根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对。
5.根据权利要求3或4所述的方法,其特征在于,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0和1的帧内预测模式;
或者,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式。
6.根据权利要求4所述的方法,其特征在于,所述帧内预测模式范围包括模式号为0、1、31至37的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、30、39、41、43、65、6至30中的偶数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、29、7至29中的奇数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、30、3、5、B、39、41、43、65、(B+3)至30中的偶数、5至B中的奇数、43至65中的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+2)、(B+4)、29、38、40、66、2、4、(B-1)、(B+4)至29中奇数、40至66之间的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、30、(B+1)、(B+3)、66、39、41、(B-2)、6至30之间的偶数、(B+3)至66之间的偶数、41至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、29、B、(B+2)、65、38、40、(B-1)、5至29之间的奇数、(B+2)至65之间的奇数、40至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度与高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
7.根据权利要求4所述的方法,其特征在于,所述帧内预测模式范围包括模式号为0和1的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、35、37、39、41、43、65、6至34之间的偶数、43至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为3、5、7、33、36、38、40、66、7至33之间的奇数、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、3、5、B、35、37、39、65、(B+3)至34之前的偶数、5至B之间的奇数、39至65之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+2)、(B+4)、33、2、4、(B-1)、36、38、66、(B+4)至33之间的奇数、4至(B-1)之间的偶数、38至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、35、37、39、(B-2)、6至34之间的偶数、(B+3)至66之间的奇数、39至(B-2)之间的奇数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为3、5、33、B、(B+2)、65、36、38、(B-1)、5至33之间的奇数、(B+2)至65之间的奇数、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
8.根据权利要求4所述的方法,其特征在于,所述帧内预测模式范围包括模式号为0、1、3、65以及3至65中间的奇数的帧内预测模式信息;
所述根据所述当前块的宽度和高度的比值和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为2、4、6、34、6至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值等于1,且所述帧内预测模式信息的模式号为36、38、40、66、40至66之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为(B+1)、(B+3)、34、(B+3)至34之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值大于1,且所述帧内预测模式信息的模式号为36、38、66、2、4、(B-1)、38至66之前的偶数、4至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为2、4、6、34、(B+1)、(B+3)、66、6至34之间的偶数、(B+3)至66之间的偶数时,所述当前块的变换核对为(DST7,DCT2),如果所述当前块的宽度和高度的比值小于1,且所述帧内预测模式信息的模式号为36、38、(B-1)、38至(B-1)之间的偶数时,所述当前块的变换核对为(DCT2,DST7);
其中,当所述当前块的宽度和高度的比值为2、4、8、16时,B分别为7、11、13、15,当所述当前块的宽度和高度的比值为1/2、1/4、1/8、1/16时,B分别为61、57、55、53。
9.根据权利要求1所述的方法,其特征在于,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1、33、35时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、34、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的奇数时,所述当前块的变换核对为第四变换核对。
10.根据权利要求1所述的方法,其特征在于,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、31、32、33、34、35、36、37时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、30、39、65、2至30中的偶数和39至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、29、38、66、3至29中的奇数和38至66中的偶数时,所述当前块的变换核对为第四变换核对。
11.根据权利要求1所述的方法,其特征在于,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34、35、65、2至34中的偶数和35至65中的奇数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为3、33、36、66、3至33中的奇数和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
12.根据权利要求1所述的方法,其特征在于,所述将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,包括:
如果所述当前块的帧内预测模式信息的模式号为1时,所述当前块的变换核对为第一变换核对;
如果所述当前块的帧内预测模式信息的模式号为0、3、65和3至65中的奇数时,所述当前块的变换核对为第二变换核对;
如果所述当前块的帧内预测模式信息的模式号为2、34和2至34中的偶数时,所述当前块的变换核对为第三变换核对;
如果所述当前块的帧内预测模式信息的模式号为36、66和36至66中的偶数时,所述当前块的变换核对为第四变换核对。
13.根据权利要求9至12任一所述的方法,其特征在于,所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT2),所述第四变换核对为(DCT2,DST7);或者,
所述第一变换核对为(DCT2,DCT2),所述第二变换核对为(DST7,DST7),所述第三变换核对为(DST7,DCT8),所述第四变换核对为(DCT8,DST7)。
14.一种进行编码的方法,其特征在于,所述方法包括:
获取当前块的残差信号;
确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的帧内预测模式信息和所述当前块的尺寸信息;
根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
根据所述当前块的变换核对,对所述当前块的残差信号进行变换,得到所述当前块对应的变换系数;
其中,所述根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对,包括:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值;
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:
在所述当前块的编码数据中添加目标标识,其中,所述目标标识用于指示变换模式为隐式多核变换模式。
16.一种进行解码的解码端,其特征在于,所述解码端包括:
获取模块,用于:
获取当前块的编码数据;
根据所述当前块的编码数据,确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的尺寸信息和帧内预测模式信息;
确定模块,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块,用于根据所述当前块的变换核对,对所述当前块反量化后的数据进行反变换;
其中,所述确定模块,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值;
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
17.一种进行编码的编码端,其特征在于,所述编码端包括:
获取模块,用于:
获取当前块的残差信号;
确定所述当前块的变换模式为隐式多核变换模式时,获取所述当前块的帧内预测模式信息和所述当前块的尺寸信息;
确定模块,用于根据所述尺寸信息和所述帧内预测模式信息确定所述当前块的变换核对;
变换模块,用于根据所述当前块的变换核对,对所述当前块的残差信号进行变换,得到所述当前块对应的变换系数;
其中,所述确定模块,用于:
如果根据所述尺寸信息确定所述当前块不满足所述尺寸限制条件时,将所述帧内预测模式信息对应的变换核对确定为所述当前块的变换核对,其中,所述尺寸限制条件是所述当前块的宽度大于或等于预设数值,且所述当前块的高度大于或等于所述预设数值;
如果根据所述尺寸信息,确定所述当前块的高度满足所述尺寸限制条件且所述当前块的宽度不满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的垂直变换核,并将所述帧内预测模式信息对应的变换核对中的水平变换核确定为所述当前块的变换核对中的水平变换核;
如果根据所述尺寸信息,确定所述当前块的宽度满足所述尺寸限制条件且所述当前块的高度不满足尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核,并将所述帧内预测模式信息对应的变换核对中的垂直变换核确定为所述当前块的变换核对中的垂直变换核;
如果根据所述尺寸信息,确定所述当前块的宽度和高度均满足所述尺寸限制条件时,将DCT2确定为所述当前块的变换核对中的水平变换核和垂直变换核。
CN201910177527.4A 2019-03-09 2019-03-09 进行编码和解码的方法、编码端、解码端和系统 Active CN111669579B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910177527.4A CN111669579B (zh) 2019-03-09 2019-03-09 进行编码和解码的方法、编码端、解码端和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910177527.4A CN111669579B (zh) 2019-03-09 2019-03-09 进行编码和解码的方法、编码端、解码端和系统

Publications (2)

Publication Number Publication Date
CN111669579A CN111669579A (zh) 2020-09-15
CN111669579B true CN111669579B (zh) 2022-09-16

Family

ID=72382042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910177527.4A Active CN111669579B (zh) 2019-03-09 2019-03-09 进行编码和解码的方法、编码端、解码端和系统

Country Status (1)

Country Link
CN (1) CN111669579B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113129395B (zh) * 2021-05-08 2021-09-10 深圳市数存科技有限公司 一种数据压缩加密系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105791867A (zh) * 2016-03-23 2016-07-20 北京大学 基于边界自适应变换的优化视频数据编码方法
CN109076226A (zh) * 2016-05-13 2018-12-21 索尼公司 图像处理装置和方法
CN109089117A (zh) * 2017-05-11 2018-12-25 联发科技股份有限公司 编码或解码视频数据的方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050265445A1 (en) * 2004-06-01 2005-12-01 Jun Xin Transcoding videos based on different transformation kernels
KR20100095992A (ko) * 2009-02-23 2010-09-01 한국과학기술원 비디오 부호화에서의 분할 블록 부호화 방법, 비디오 복호화에서의 분할 블록 복호화 방법 및 이를 구현하는 기록매체
US8885701B2 (en) * 2010-09-08 2014-11-11 Samsung Electronics Co., Ltd. Low complexity transform coding using adaptive DCT/DST for intra-prediction
US10616581B2 (en) * 2012-01-19 2020-04-07 Huawei Technologies Co., Ltd. Modified coding for a transform skipped block for CABAC in HEVC
EP3389274A4 (en) * 2016-02-04 2019-01-09 Samsung Electronics Co., Ltd. VIDEO CODING METHOD AND DEVICE THROUGH CHROMA MULTITRANSFORMATION AND VIDEO CODING METHOD AND APPARATUS THROUGH CHROMA MULTITRANSFORMATION
KR20230130772A (ko) * 2016-02-12 2023-09-12 삼성전자주식회사 영상 부호화 방법 및 장치, 영상 복호화 방법 및 장치
US10887626B2 (en) * 2016-05-13 2021-01-05 Sharp Kabushiki Kaisha Image decoding device and image encoding device
US10855997B2 (en) * 2017-04-14 2020-12-01 Mediatek Inc. Secondary transform kernel size selection

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105791867A (zh) * 2016-03-23 2016-07-20 北京大学 基于边界自适应变换的优化视频数据编码方法
CN109076226A (zh) * 2016-05-13 2018-12-21 索尼公司 图像处理装置和方法
CN109089117A (zh) * 2017-05-11 2018-12-25 联发科技股份有限公司 编码或解码视频数据的方法及装置

Also Published As

Publication number Publication date
CN111669579A (zh) 2020-09-15

Similar Documents

Publication Publication Date Title
CN110392256B (zh) 进行编码和解码的方法、编码端、解码端和系统
WO2020182104A1 (zh) 进行编码和解码的方法、解码装置和编码装置
CN111385584B (zh) 进行编码、解码的方法、装置和系统
CN111669579B (zh) 进行编码和解码的方法、编码端、解码端和系统
CN111988618A (zh) 进行解码、编码的方法、解码端和编码端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant