WO2015109778A1 - 视频编码中的块分割方式和最佳预测模式确定方法及相关装置 - Google Patents

视频编码中的块分割方式和最佳预测模式确定方法及相关装置 Download PDF

Info

Publication number
WO2015109778A1
WO2015109778A1 PCT/CN2014/082032 CN2014082032W WO2015109778A1 WO 2015109778 A1 WO2015109778 A1 WO 2015109778A1 CN 2014082032 W CN2014082032 W CN 2014082032W WO 2015109778 A1 WO2015109778 A1 WO 2015109778A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
current
current block
prediction mode
sub
Prior art date
Application number
PCT/CN2014/082032
Other languages
English (en)
French (fr)
Inventor
梁凡
陈焕浜
郑建铧
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2015109778A1 publication Critical patent/WO2015109778A1/zh
Priority to US15/016,544 priority Critical patent/US20160156907A1/en

Links

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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/66Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving data partitioning, i.e. separation of data into packets or partitions according to importance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Definitions

  • the calculating a rate-distortion cost of the current block for sub-block segmentation includes: obtaining a rate-distortion cost of the current block for sub-block segmentation based on a rate-distortion cost of the sub-block into which the current block is divided.
  • the determining, according to the allowed block partition depth set, the best prediction mode of the current block includes: if the current block is currently segmented The depth belongs to the allowed block partition depth set, and the best prediction mode of the current block is calculated, and the best prediction mode of the current block is the rate of all the optional prediction modes of the current block at the current segmentation depth.
  • the prediction mode with the least distortion cost, or the best prediction mode of the current block is the prediction mode with the lowest rate distortion cost among the plurality of selectable prediction modes of the current block at the current segmentation depth.
  • the block-level allowed block partition depth set includes: K block partition depths used by the prediction block of the current block, where K is a positive integer.
  • a set determining unit configured to determine a allowed block partition depth set of the current block
  • a fifth possible implementation manner of the fifth aspect if the current partition depth of the current block is smaller than The block minimum segmentation depth is allowed in the block partition depth set, and the rate distortion penalty of the current block is the rate distortion cost of the current block in the current prediction mode.
  • the allowed block partition depth set is: a frame The level allows the block partition depth set, or the block level allows the block partition depth set, or the frame level allows the block partition depth set to be combined with the block level allow block partition depth set.
  • a sixth aspect a video encoder, comprising:
  • the block prediction mode is equal to the width and height of the prediction block.
  • the prediction mode includes, but is not limited to, a 2N*2N prediction mode or an N*N prediction mode, where the above N is a positive integer, for example, N may be equal to 2 to the power of X, and X is a natural number.
  • Rate-distortion cost after row sub-block partitioning (for example, a value obtained by multiplying the average of the rate-distortion costs of all sub-blocks by y3) as the rate-distortion cost of the sub-block partitioning of the current block, and y3 may be an integer ( Y3 is for example equal to 0.5, 1, 2, 3, 4 or other values)).
  • the rate distortion cost of the current block for sub-block segmentation may be calculated based on the rate distortion cost of each sub-block into which the current block is divided.
  • the best prediction mode under the degree), or the optimal prediction mode of the current block is the prediction mode with the lowest rate distortion cost among the plurality of selectable prediction modes of the current block at the current segmentation depth (ie, determining that the current block is currently in the current block)
  • the best prediction mode at the depth of the segmentation may specifically calculate the rate distortion cost corresponding to the plurality of selectable prediction modes of the current block at the current segmentation depth, and the prediction mode with the lowest rate distortion cost as the current block at the current segmentation depth. Best prediction mode).
  • the cost is obtained by the rate distortion cost of the sub-block division of the current block described above (for example, a value obtained by multiplying the maximum rate distortion cost or the minimum rate distortion cost among the rate distortion costs of all sub-blocks by yl) as the current
  • the rate distortion cost of the block after sub-block partitioning, yl can be an integer (yl is equal to 0.5, 1, 2, 3, 4 or other values, for example); or According to any rate distortion cost of the rate distortion cost of all the sub-blocks into which the current block is divided, the rate distortion cost of the current block for sub-block segmentation is obtained (for example, the rate distortion cost of all sub-blocks may be included)
  • the value obtained by multiplying any rate distortion cost by y2 is used as the rate distortion cost of the current block after sub-block division, and y2 may be an integer (y2 is equal to, for example, 0.5, 1, 2, 3, 4 or other values); Or, according to the average value of the rate distortion cost of all the sub-blocks into which the current block is divided
  • the allowable block partition depth set of the foregoing current block may be: a frame level allow block split depth set, or a block level allow block split depth set, or a frame level allow block split depth set and a block level allow block split depth set set.
  • the block level allowed block partition depth set includes the foregoing current block
  • the frame-level allowed block-separated depth set may include: a block-dividing depth of the highest-used block in the encoded video frame of the same type as the video frame to which the current block belongs in the current statistical period or up to the current time, wherein ⁇ is a positive integer.
  • step 702. Determine whether the current segmentation depth of the current block belongs to the foregoing allowed block segmentation depth set. If yes, go to step 704.
  • the block level allowed block partition depth set may include K block partition depths or all block partition depths used by the prediction block of the current block, where K is a positive integer.
  • K is a positive integer.
  • the value of K above may be set according to specific needs. For example, the above K may be in the range of 1 to 5 or the above K may be equal to 1, 2, 3, 8, 5, 6, or 7 or other values.
  • the optimal prediction mode of the current block at the current segmentation depth may not be calculated, which is beneficial to reduce the determination of the current current to some extent. Whether the block performs the computational complexity of sub-block segmentation at the current segmentation depth.
  • the optimal prediction mode of the current block may be any of the following prediction modes: skip mode (skip mode), direct mode (Direct mode), block prediction mode, and non-block prediction mode.
  • the foregoing statistical period may be, for example, a group GOP length or an interval of two adjacent intra frames or an interval of non-adjacent two intra frames or an interval of any two intra frames.
  • the adaptive implementation implements block partition control of the current block, which is beneficial to avoid unnecessary Rate-distortion calculations, which help to reduce coding computational complexity.
  • the non-block prediction mode is a prediction mode in which the width and height of the prediction block are unequal, including but not limited to 2N*1.5N prediction mode, 2N*0.5N prediction mode, and 0.5N*2N.
  • the cost or minimum rate distortion cost is obtained by the rate distortion cost of the current block for sub-block partitioning (where, for example, the maximum rate distortion cost or the minimum rate distortion cost among the rate distortion costs of all sub-blocks can be multiplied by yl).
  • the value, as the rate distortion cost of the sub-block partitioning of the current block, yl may be an integer (yl is equal to 0.5, 1, 2, 3, 4 or other values, for example); or all children divided according to the current block described above
  • the rate distortion cost of any of the block's rate-distortion costs is obtained by the rate-distortion cost of the sub-block segmentation of the current block described above (for example, any rate-distortion cost of all sub-blocks can be multiplied by y2.
  • the value of y2 may be an integer (y2 is equal to 0.5, 1, 2, 3, 4 or other values) as the rate distortion cost of the current block after sub-block division. Or according to the average value of the rate distortion cost of all the sub-blocks into which the current block is divided, the rate distortion cost of the current block after the sub-block division is obtained (for example, the average value of the rate distortion cost of all the sub-blocks may be multiplied by y3) The obtained value is the rate distortion cost after the sub-block division of the current block, and y3 may be an integer (y3 is equal to 0.5, 1, 2, 3, 4 or other values, for example).
  • the CU is usually further divided by the quadtree partitioning method. For example, when the CU of the upper layer is divided into sub-coding units (Sub-CU), the block is used.
  • the split identifier ( split_flag ) is used to identify whether the current Sub-CU continues to split down into smaller Sub-CUs. For example, if the value of split_flag is " ⁇ ", it indicates that the current Sub-CU continues to be divided into smaller Sub-CUs; when the value of split_flag is "0", it indicates that the current Sub-CU terminates the division.
  • the split_flag can also be ⁇ Use other values to indicate the block division mode of the current block.
  • the segmentation determining unit 1120 is specifically configured to: obtain, based on a rate distortion cost of the sub-block into which the current block is segmented The above-mentioned current block performs rate distortion cost after sub-block division.
  • the block level allowed block partition depth set may include K block partition depths or all block partition depths used by the prediction block of the current block, where K is a positive integer.
  • K is a positive integer.
  • the value of K above may be set according to specific needs. For example, the above K may range from 1 to 5 or K may be equal to 1, 2, 3, 4, 5, 6 or 7 or other values.
  • the foregoing statistical period may be, for example, a group GOP length or an interval of two adjacent intra frames or an interval of non-adjacent two intra frames or an interval of any two intra frames.
  • the rate distortion cost of the current block after sub-block division is obtained (for example, all
  • the value obtained by multiplying the average value of the rate distortion cost of the sub-block by y3 is used as the rate distortion cost of the sub-block division of the current block, and y3 may be an integer (y3 is equal to, for example, 0.5, 1, 2, 3, 4 or other value)).
  • an embodiment of the present invention provides a video encoder 1400, which may include: a set determining unit 1401 and a prediction mode determining unit 1402.
  • the block prediction mode is a prediction mode in which the width and height of the prediction block are equal, including but not limited to a 2N*2N prediction mode or an N*N prediction mode, where the above N is a positive integer, for example N can be equal to 2 to the power of X, and X is a natural number.
  • the M-block division depth with the highest proportion is used in the encoded video frame of the same type as the video frame to which the current block belongs, and the above M is a positive integer.
  • the value of the above M can be set according to specific needs.
  • the value of M can be 2 to 5, or M can be equal to 2, 3, 4, 5, 6, or 7 or other values.
  • the foregoing statistical period is a group GOP length or an interval of two adjacent intra frames or an interval of two adjacent intra frames or an interval of any two intra frames.
  • the rate distortion cost of the current block for sub-block segmentation is calculated based on a rate distortion cost of each sub-block into which the current block is divided, including: dividing the current block into all a weighted combination of rate distortion costs of the sub-blocks (where the weights of the rate-distortion costs of all the sub-blocks may be equal or unequal) as the rate-distortion cost of the sub-block partitioning of the current block; or dividing the current block into The sum of the rate-distortion costs of all the sub-blocks is the rate-distortion penalty after the sub-block partitioning of the current block; or the maximum rate distortion cost or the minimum rate distortion among the rate-distortion costs of all the sub-blocks into which the current block is divided.
  • Rate-distortion cost after row sub-block partitioning (for example, a value obtained by multiplying the average of the rate-distortion costs of all sub-blocks by y3) as the rate-distortion cost of the sub-block partitioning of the current block, and y3 may be an integer ( Y3 is for example equal to 0.5, 1, 2, 3, 4 or other values)).
  • the video encoder 1400 first determines the allowed block partition depth set of the current block in the video encoding process, and then determines the best prediction mode of the current block according to the foregoing allowed block partition depth set. Since the encoding end can determine the best prediction mode of the current block according to the allowed block partition depth set of the current block, instead of determining the best prediction mode of the current block by calculating performance parameters such as rate distortion of the multiple blocks each time. Therefore, it is advantageous to reduce the computational complexity of determining the optimal prediction mode of the current block in the video coding process, and further to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the foregoing allowed block partition depth set may be: a frame level allow block partition depth set, or a block level allow block partition depth set, or a frame level allow block partition depth set and a block level allow block partition depth set The union of.
  • the above allowed block partition depth set may also include other block split depths.
  • At least one of the four neighboring blocks of the neighboring block and the reference block of the current block may include: at least the current block 1 neighboring block, a reference block of the current block, and at least 1 neighboring block of the reference block (P is a positive integer greater than 2 in this scenario).
  • the video encoder 1500 first determines the allowed block partition depth set of the current block in the video encoding process, and then determines the best prediction mode of the current block according to the above allowed block partition depth set. Since the encoding end can determine the best prediction mode of the current block according to the allowed block partition depth set of the current block, instead of determining the best prediction mode of the current block by calculating performance parameters such as rate distortion of the multiple blocks each time. Therefore, it is advantageous to reduce the computational complexity of determining the optimal prediction mode of the current block in the video coding process, and further to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the block level allowed block partition depth set may include K block partition depths or all block partition depths used by the prediction block of the current block, where K is a positive integer.
  • K is a positive integer.
  • the value of K above may be set according to specific needs. For example, the above K may range from 1 to 5 or K may be equal to 1, 2, 3, 4, 5, 6 or 7 or other values.
  • the P related blocks may include at least one of the four neighboring blocks of the reference block of the current block (P is a positive integer in this scenario); Or the P related blocks may include the reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (P is a positive integer greater than 1 in this scenario); or, the foregoing P
  • the correlation block may include at least one of the reference block of the current block and the four neighboring blocks of the reference block (P is a positive integer greater than 1 in this scenario); or, the P related blocks may include the foregoing At least one of the four neighboring blocks of the current block and at least one of the four neighboring blocks of the reference block of the current block (P is a positive integer greater than 1 in this scenario); or
  • the P related blocks may include: at least one neighbor of the current block , At least one (in this scenario P a positive integer greater than 2) adjacent to a reference block above the current block and said reference block.
  • the optimal prediction mode of the current block is the prediction mode with the lowest rate distortion cost among the plurality of selectable prediction modes of the current block at the current segmentation depth (ie, determining the best prediction of the current block at the current segmentation depth)
  • the mode may specifically calculate a rate distortion cost corresponding to the plurality of selectable prediction modes of the current block at the current segmentation depth, and use the prediction mode with the lowest rate distortion cost as the best prediction mode of the current block at the current segmentation depth. It can be understood that, if the current segmentation depth of the current block does not belong to the above-mentioned allowable block segmentation depth set, the optimal prediction mode of the current block at the current segmentation depth may not be calculated, which is beneficial to reduce the determination of the current current to some extent. Whether the block performs the computational complexity of sub-block segmentation at the current segmentation depth.
  • the allowable block partition depth set of the foregoing current block may be: a frame level allow block split depth set, or a block level allow block split depth set, or a frame level allow block split depth set and a block level allow block split depth set set.
  • the block-level allowable block partition depth set includes K block partition depths used by the prediction block of the current block, and the K is a positive integer.
  • the frame-level allowed block-separation depth set may include: using the highest M-block partition depth in the encoded video frame having the same video frame type as the current block belongs in the current statistical period or up to the current time, wherein M is a positive integer. This example of allowing the block partition depth set selection method is advantageous for making the determined block partitioning mode of the current block more reasonable, and obtaining a better coding effect under the premise of balancing the computational complexity.
  • the disclosed apparatus can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the above units is only a logical function division.
  • multiple units or components may be combined or integrated. Go to another system, or some features can be ignored, or not executed.
  • the mutual coupling or direct connection or communication connection shown or discussed may be an indirect connection or communication connection through some interface, device or unit, and may be electrical or other form.
  • the components displayed by the unit may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solution of the embodiment.

Landscapes

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

Abstract

一种视频编码中的块分割方式和最佳预测模式确定方法及相关装置。其中,一种视频编码中的块分割方式可以包括:确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分割深度下是否进行子块分割,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。

Description

视频编码中的块分割方式和最佳预测模式确定方法及相关装置 本申请要求于 2014 年 01 月 21 日提交中国专利局、 申请号为 201410028766.0、 发明名称为 "视频编码中的块分割方式和最佳预测模式确定 方法^ U l关装置"的中国专利申请的优先权,其全部内容通过引用结合在本申 请中。 技术领域
本发明涉及图像处理技术领域,具体涉及视频编码中的块分割方式和最佳 预测模式确定方法及相关装置。 背景技术
随着光电釆集技术的发展及不断增长的高清数字视频需求,视频数据量越 来越大,有限异构的传输带宽、 多样化的视频应用不断地对视频编码效率提出 了更高的需求, 高性能视频编码(英文: High Efficient Video Coding, 缩写: HEVC )标准的制定工作因需启动。
视频编码压缩的基本原理是利用空域、 时域和码字之间的相关性,尽可能 去除冗余。 目前流行做法是釆用基于块的混合视频编码框架, 通过预测(包括 帧内预测和帧间预测)、 变换、 量化、 熵编码等步骤实现视频编码压缩。 这种 编码框架, 显示了很强的生命力, HEVC也仍沿用这种基于块的混合视频编码 框架。
在上述编码框架中, 视频序列(英文: sequence )包括一系列图像(英文: picture ), 图像被进一步划分为切片 (英文: slice ), slice再被划分为块(英文: block )。 视频编码以块为单位, 可从 picture的左上角位置开始从左到右从上到 下一行一行进行编码处理。 在一些新的视频编码标准中, Block的概念被进一 步扩展。 在 H.264标准中有宏块(英文: Macro Block, 缩写: MB ), MB可进 一步划分成多个可用于预测编码的预测块(英文: partition )。在 HEVC标准中, 釆用编码单元(英文: Coding Unit, 缩写: CU ), 预测单元(英文: Prediction Unit, 缩写: PU )和变换单元(英文: Transform Unit, 缩写: TU )等基本概 念, 从功能上划分了多种 Unit, 并釆用全新的基于树结构进行描述。 比如 CU 可以按照四叉树进行划分为更小的 CU, 而更小的 CU还可以继续划分, 从而形 成一种四叉树结构。 对于 PU和 TU也有类似的树结构。 无论 CU, PU还是 τυ, 本质上都属于块 block的概念, CU类似于宏块 MB或编码块, 是对编码图像进 行划分和编码的基本单元; PU可对应预测块, 是预测编码的基本单元。 对 CU 按照划分模式进一步划分成多个 PU; TU可对应变换块, 是对预测残差进行变 换的基本单元。 HEVC标准中则可把它们统称为编码树块(英文: Coding Tree Block, 缩写: CTB )等。
HEVC标准中, 图像块通常釆用四叉树分割方式来进行进一步分割, 例如 当上一层的 CU划分为子编码单元(英文: Sub-CU ) 时, 釆用块分割标识符 (英文: split_flag )来标识当前 Sub-CU是否继续向下分割为更小的 Sub-CU。 现有技术中确定当前块是否继续进行分割是都需计算多个块的率失真代价等 性能参数,而每次都计算多个块的率失真代价等性能参数使得的计算过程比较 复杂。 发明内容
本发明实施例提供一种视频编码中的块分割方式和最佳预测模式确定方 法及相关装置,以期降低在视频编过程中确定当前块的块分割方式过程中的计 算复杂度。
本发明实施例第一方面提供一种视频编码中的块分割方式确定方法,可以 包括: 确定当前块的允许块分割深度集合; 根据所述允许块分割深度集合确定 所述当前块在当前分割深度下是否进行子块分割。
结合第一方面,在第一方面的第一种可能的实施方式中, 若所述当前块的 当前分割深度不属于所述允许块分割深度集合,则不计算所述当前块在当前分 割深度下的最佳预测模式。
结合第一方面,在第一方面的第二种可能的实施方式中, 所述根据所述允 许块分割深度集合确定所述当前块在当前分割深度下是否进行子块分割包括: 若所述当前块的当前分割深度大于所述允许块分割深度集合中的块最大分割 深度, 则确定所述当前块不进行子块分割。
结合第一方面,在第一方面的第三种可能的实施方式中, 所述根据所述允 许块分割深度集合确定所述当前块在当前分割深度下是否进行子块分割包括: 若所述当前块的当前分割深度属于所述允许块分割深度集合,或所述当前块的 当前分割深度小于所述允许块分割深度集合中的块最小分割深度,则计算所述 当前块进行子块分割后的率失真代价,若所述当前块的率失真代价小于或等于 所述当前块进行子块分割后的率失真代价, 则确定所述当前块不进行子块分 割; 若所述当前块的率失真代价大于所述当前块进行子块分割后的率失真代 价, 则确定所述当前块进行子块分割。
结合第一方面的第三种可能的实施方式,在第一方面的第四种可能的实施 方式中, 若所述当前块的当前分割深度属于所述允许块分割深度集合, 则所述 当前块的率失真代价为所述当前块在最佳预测模式下的率失真代价。
结合第一方面的第四种可能的实施方式,在第一方面的第五种可能的实施 方式中,所述当前块的最佳预测模式为所述当前块在当前分割深度下的所有可 选预测模式中率失真代价最小的预测模式,或所述当前块的最佳预测模式为所 述当前块在当前分割深度下的多种可选预测模式中率失真代价最小的预测模 式。
结合第一方面的第三种可能的实施方式或第一方面的第四种可能的实施 方式第一方面的第五种可能的实施方式,在第一方面的第六种可能的实施方式 中, 所述计算所述当前块进行子块分割后的率失真代价, 包括: 基于所述当前 块被分割成的子块的率失真代价获得所述当前块进行子块分割后的率失真代 价。
结合第一方面的第六种可能的实施方式,在第一方面的第七种可能的实施 方式中,所述基于所述当前块被分割成的子块的率失真代价获得所述当前块进 行子块分割后的率失真代价, 包括: 将所述当前块被分割成的所有子块的率失 真代价的加权组合作为所述当前块进行子块分割后的率失真代价;或将所述当 前块被分割成的所有子块的率失真代价总和作为所述当前块进行子块分割后 的率失真代价;或者根据所述当前块被分割成的所有子块的率失真代价之中的 最大率失真代价或者最小率失真代价得到所述当前块进行子块分割后的率失 真代价;或者根据所述当前块被分割成的所有子块的率失真代价之中的任意一 个率失真代价得到所述当前块进行子块分割后的率失真代价;或者根据所述当 前块被分割成的所有子块的率失真代价的平均值得到所述当前块进行子块分 割后的率失真代价。 结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种 可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可 能的实施方式或第一方面的第五种可能的实施方式或第一方面的第六种可能 的实施方式或第一方面的第七种可能的实施方式,在第一方面的第八种可能的 实施方式中, 所述允许块分割深度集合为: 帧级允许块分割深度集合、 或块级 允许块分割深度集合、或帧级允许块分割深度集合与块级允许块分割深度集合 的并集。
结合第一方面的第八种可能的实施方式,在第一方面的第九种可能的实施 方式中, 所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时 刻,与所述当前块所属视频帧类型相同的已编码视频帧中使用比例最高的 M个 块分割深度, 其中, 所述 M为正整数。
结合第一方面的第九种可能的实施方式,在第一方面的第十种可能的实施 方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
结合第一方面的第八种可能的实施方式或第一方面的第九种可能的实施 方式或第一方面的第十种可能的实施方式,在第一方面的第十一种可能的实施 方式中, 所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K 个块分割深度, 所述 K为正整数。
结合第一方面的第三种可能的实施方式或第一方面的第四种可能的实施 方式或第一方面的第五种可能的实施方式或第一方面的第六种可能的实施方 式或第一方面的第七种可能的实施方式或第一方面的第八种可能的实施方式 或第一方面的第九种可能的实施方式或第一方面的第十种可能的实施方式或 第一方面的第十一种可能的实施方式,在第一方面的第十二种可能的实施方式 中,若所述当前块的当前分割深度小于所述允许块分割深度集合中的块最小分 割深度,则所述当前块的率失真代价为所述当前块在当前预测模式下的率失真 代价。
本发明实施例第二方面提供一种视频编码中的当前块的最佳预测模式确 定方法, 可包括: 确定当前块的允许块分割深度集合; 根据所述允许块分割深 度集合确定所述当前块的最佳预测模式。
结合第二方面,在第一种可能的实施方式中, 若所述当前块的当前分割深 度不属于所述允许块分割深度集合,则不计算当前块在当前分割深度下的最佳 预测模式。
结合第二方面,在第二方面的第二种可能的实施方式中, 所述根据所述允 许块分割深度集合确定所述当前块的最佳预测模式, 包括: 若所述当前块的当 前分割深度不属于所述允许块分割深度集合,则将所述当前块的当前预测模式 作为所述当前块的最佳预测模式。
结合第二方面,在第二方面的第三种可能的实施方式中, 所述根据所述允 许块分割深度集合确定所述当前块的最佳预测模式, 包括: 若所述当前块的当 前分割深度属于所述允许块分割深度集合, 计算出所述当前块的最佳预测模 式,所述当前块的最佳预测模式为所述当前块在当前分割深度下的所有可选预 测模式之中率失真代价最小的预测模式,或者所述当前块的最佳预测模式为所 述当前块在当前分割深度下的多种可选预测模式之中率失真代价最小的预测 模式。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种 可能的实施方式或第二方面的第三种可能的实施方式,在第二方面的第四种可 能的实施方式中, 所述当前块的最佳预测模式为如下任一种预测模式:
跳过模式、 直接模式、 方块预测模式、 非方块预测模式。
结合第二方面的第四种可能的实施方式,在第二方面的第五种可能的实施 方式中, 所述方块预测模式为 2N*2N预测模式或 N*N预测模式, 其中, 所述 N 为正整数。
结合第二方面的第四种可能的实施方式,在第二方面的第六种可能的实施 方式中,所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种 可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可 能的实施方式或第二方面的第五种可能的实施方式或第二方面的第六种可能 的实施方式,在第二方面的第七种可能的实施方式中, 所述允许块分割深度集 合为: 帧级允许块分割深度集合、 或块级允许块分割深度集合、 或帧级允许块 分割深度集合与块级允许块分割深度集合的并集。
结合第二方面的第七种可能的实施方式,在第二方面的第八种可能的实施 方式中, 所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时 刻,与所述当前块所属视频帧类型相同的已编码视频帧中使用比例最高的 M个 块分割深度, 其中, 所述 M为正整数。
结合第二方面的第八种可能的实施方式,在第二方面的第九种可能的实施 方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
结合第二方面的第七种可能的实施方式或第二方面的第八种可能的实施 方式或第二方面的第九种可能的实施方式,在第二方面的第十种可能的实施方 式中,, 所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K 个块分割深度, 所述 K为正整数。
本发明实施例第三方面一种视频编码器, 可包括:
集合确定单元, 用于确定当前块的允许块分割深度集合;
分割确定单元,用于根据所述允许块分割深度集合确定所述当前块在当前 分割深度下是否进行子块分割。
结合第三方面,在第三方面的第一种可能的实施方式中, 若所述当前块的 当前分割深度不属于所述允许块分割深度集合,则所述分割确定单元不计算所 述当前块在当前分割深度下的最佳预测模式。
结合第三方面,在第三方面的第二种可能的实施方式中, 所述分割确定单 元具体用于,若所述当前块的当前分割深度大于所述允许块分割深度集合中的 块最大分割深度, 则确定所述当前块不进行子块分割。
结合第三方面,在第三方面的第三种可能的实施方式中, 所述分割确定单 元具体用于: 若所述当前块的当前分割深度属于所述允许块分割深度集合, 或 者所述当前块的当前分割深度小于所述允许块分割深度集合中的块最小分割 深度, 则计算所述当前块进行子块分割后的率失真代价, 若所述当前块的率失 真代价小于或等于所述当前块进行子块分割后的率失真代价,则确定所述当前 块不进行子块分割;若所述当前块的率失真代价大于所述当前块进行子块分割 后的率失真代价, 则确定所述当前块进行子块分割。
结合第三方面的第三种可能的实施方式,在第三方面的第四种可能的实施 方式中, 若所述当前块的当前分割深度属于所述允许块分割深度集合, 则所述 当前块的率失真代价为所述当前块在最佳预测模式下的率失真代价。
结合第三方面的第四种可能的实施方式,在第三方面的第五种可能的实施 方式中, 所述当前块的最佳预测模式为: 所述当前块在当前分割深度下的所有 可选预测模式中率失真代价最小的预测模式,或者所述当前块在当前分割深度 下的多种可选预测模式中率失真代价最小的预测模式。
结合第三方面的第三种可能的实施方式或第三方面的第四种可能的实施 方式或第三方面的第五种可能的实施方式,在第三方面的第六种可能的实施方 式中,在所述计算所述当前块进行子块分割后的率失真代价的方面, 所述分割 确定单元具体用于:基于所述当前块被分割成的子块的率失真代价获得所述当 前块进行子块分割后的率失真代价。
结合第三方面的第六种可能的实施方式,在第三方面的第七种可能的实施 方式中,在所述基于所述当前块被分割成的子块的率失真代价获得所述当前块 进行子块分割后的率失真代价的方面, 所述分割确定单元具体用于: 将所述当 前块被分割成的所有子块的率失真代价的加权组合作为所述当前块进行子块 分割后的率失真代价;或将所述当前块被分割成的所有子块的率失真代价总和 作为所述当前块进行子块分割后的率失真代价;或者根据所述当前块被分割成 的所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到所 述当前块进行子块分割后的率失真代价;或者根据所述当前块被分割成的所有 子块的率失真代价之中的任意一个率失真代价得到所述当前块进行子块分割 后的率失真代价;或者根据所述当前块被分割成的所有子块的率失真代价的平 均值得到所述当前块进行子块分割后的率失真代价。
结合第三方面或第三方面的第一种可能的实施方式或第三方面的第二种 可能的实施方式或第三方面的第三种可能的实施方式或第三方面的第四种可 能的实施方式或第三方面的第五种可能的实施方式或第三方面的第六种可能 的实施方式或第三方面的第七种可能的实施方式,在第三方面的第八种可能的 实施方式中, 所述允许块分割深度集合为: 帧级允许块分割深度集合、 或块级 允许块分割深度集合、或帧级允许块分割深度集合与块级允许块分割深度集合 的并集。 结合第三方面的第八种可能的实施方式,在第三方面的第九种可能的实施 方式中, 所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时 刻,与所述当前块所属视频帧类型相同的已编码视频帧中使用比例最高的 M个 块分割深度, 其中, 所述 M为正整数。
结合第三方面的第九种可能的实施方式,在第三方面的第十种可能的实施 方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
结合第三方面的第八种可能的实施方式或第三方面的第九种可能的实施 方式或第三方面的第十种可能的实施方式,在第三方面的第十一种可能的实施 方式中, 所述块级允许块分割深度集合包括所述当前块的预测块所使用的 K个 块分割深度, 所述 K为正整数。
结合第三方面的第三种可能的实施方式或第三方面的第四种可能的实施 方式或第三方面的第五种可能的实施方式或第三方面的第六种可能的实施方 式或第三方面的第七种可能的实施方式或第三方面的第八种可能的实施方式 或第三方面的第九种可能的实施方式或第三方面的第十种可能的实施方式或 第三方面的第十一种可能的实施方式,在第三方面的第十二种可能的实施方式 中,若所述当前块的当前分割深度小于所述允许块分割深度集合中的块最小分 割深度,则所述当前块的率失真代价为所述当前块在当前预测模式下的率失真 代价。
本发明实施例第四方面提供一种视频编码器, 可包括:
集合确定单元, 用于确定当前块的允许块分割深度集合;
预测模式确定单元,用于根据所述允许块分割深度集合确定所述当前块的 最佳预测模式。
结合第四方面,在第四方面的第一种可能的实施方式中, 若所述当前块的 当前分割深度不属于所述允许块分割深度集合,则所述预测模式确定单元不计 算当前块在当前分割深度下的最佳预测模式。
结合第四方面, 在第四方面的第二种可能的实施方式中,
所述预测模式确定单元具体用于:若所述当前块的当前分割深度不属于所 述允许块分割深度集合,则将所述当前块的当前预测模式作为所述当前块的最 佳预测模式。 结合第四方面, 在第四方面的第三种可能的实施方式中,
所述预测模式确定单元具体用于:若所述当前块的当前分割深度属于所述 允许块分割深度集合,计算出所述当前块的最佳预测模式, 所述当前块的最佳 预测模式为所述当前块在当前分割深度下的所有可选预测模式之中率失真代 价最小的预测模式,或者所述当前块的最佳预测模式为所述当前块在当前分割 深度下的多种可选预测模式之中率失真代价最小的预测模式。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种 可能的实施方式或第四方面的第三种可能的实施方式,在第四方面的第四种可 能的实施方式中, 所述当前块的最佳预测模式为如下任一种预测模式: 跳过模 式、 直接模式、 方块预测模式、 非方块预测模式。
结合第四方面的第四种可能的实施方式,在第四方面的第五种可能的实施 方式中, 所述方块预测模式为 2N*2N预测模式或 N*N预测模式, 其中, 所述 N 为正整数。
结合第四方面的第四种可能的实施方式,在第四方面的第六种可能的实施 方式中,所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种 可能的实施方式或第四方面的第三种可能的实施方式或第四方面的第四种可 能的实施方式或第四方面的第五种可能的实施方式,在第四方面的第六种可能 的实施方式中, 所述允许块分割深度集合为: 帧级允许块分割深度集合、 或块 级允许块分割深度集合、或帧级允许块分割深度集合与块级允许块分割深度集 合的并集。
结合第四方面的第六种可能的实施方式,在第四方面的第七种可能的实施 方式中, 所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时 刻,与所述当前块所属视频帧类型相同的已编码视频帧中使用比例最高的 M个 块分割深度, 其中, 所述 M为正整数。
结合第四方面的第七种可能的实施方式,在第四方面的第八种可能的实施 方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。 结合第四方面的第六种可能的实施方式或第四方面的第七种可能的实施 方式或第四方面的第八种可能的实施方式,在第四方面的第九种可能的实施方 式中, 所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K个 块分割深度, 所述 K为正整数。
第五方面, 一种视频编码器, 包括:
存储器、 以及与所述存储器连接的处理器
其中, 所述处理器用于, 确定当前块的允许块分割深度集合; 根据所述允 许块分割深度集合确定所述当前块在当前分割深度下是否进行子块分割。
结合第五方面,在第五方面的第一种可能的实施方式中, 若所述当前块的 当前分割深度不属于所述允许块分割深度集合,所述处理器不计算所述当前块 在当前分割深度下的最佳预测模式。
结合第五方面,在第五方面的第二种可能的实施方式中,所述处理器用于, 若所述当前块的当前分割深度大于所述允许块分割深度集合中的块最大分割 深度, 确定所述当前块不进行子块分割。
结合第五方面,在第五方面的第三种可能的实施方式中,所述处理器用于, 若所述当前块的当前分割深度属于所述允许块分割深度集合,或所述当前块的 当前分割深度小于所述允许块分割深度集合中的块最小分割深度,则计算所述 当前块进行子块分割后的率失真代价,若所述当前块的率失真代价小于或等于 所述当前块进行子块分割后的率失真代价, 则确定所述当前块不进行子块分 割; 若所述当前块的率失真代价大于所述当前块进行子块分割后的率失真代 价, 则确定所述当前块进行子块分割。
结合第五方面的第三种可能的实施方式,在第五方面的第四种可能的实施 方式中,若所述当前块的当前分割深度属于所述允许块分割深度集合, 则所述 当前块的率失真代价为所述当前块在最佳预测模式下的率失真代价。
结合第五方面的第三种可能的实施方式或第五方面的第四种可能的实施 方式,在第五方面的第五种可能的实施方式中, 若所述当前块的当前分割深度 小于所述允许块分割深度集合中的块最小分割深度,则所述当前块的率失真代 价为所述当前块在当前预测模式下的率失真代价。
结合第五方面的第四种可能的实施方式或第五方面的第五种可能的实施 方式,在第五方面的第六种可能的实施方式中, 所述当前块的最佳预测模式为 所述当前块在当前分割深度下的所有可选预测模式中率失真代价最小的预测 模式,或所述当前块的最佳预测模式为所述当前块在当前分割深度下的多种可 选预测模式中率失真代价最小的预测模式。
结合第五方面的第三种至第六种可能的实施方式的任意一种,在第五方面 的第七种可能的实施方式中, 所述处理器用于,基于所述当前块被分割成的子 块的率失真代价获得所述当前块进行子块分割后的率失真代价。
结合第五方面的第七种可能的实施方式,在第五方面的第八种可能的实施 方式中, 所述处理器用于,将所述当前块被分割成的所有子块的率失真代价的 加权组合作为所述当前块进行子块分割后的率失真代价;或将所述当前块被分 割成的所有子块的率失真代价总和作为所述当前块进行子块分割后的率失真 代价;或者根据所述当前块被分割成的所有子块的率失真代价之中的最大率失 真代价或者最小率失真代价得到所述当前块进行子块分割后的率失真代价;或 者根据所述当前块被分割成的所有子块的率失真代价之中的任意一个率失真 代价得到所述当前块进行子块分割后的率失真代价;或者根据所述当前块被分 割成的所有子块的率失真代价的平均值得到所述当前块进行子块分割后的率 失真代价。
结合第五方面或第五方面的第一种至第八种可能的实施方式的任意一种, 在第五方面的第九种可能的实施方式中,, 所述允许块分割深度集合为: 帧级 允许块分割深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集 合与块级允许块分割深度集合的并集。
结合第五方面的第九种可能的实施方式,在第五方面的第十种可能的实施 方式中, 所述帧级允许块分割深度集合包括:
在当前统计周期内或截止当前时刻,与所述当前块所属视频帧类型相同的 已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M为正整数。
结合第五方面的第十种可能的实施方式,在第五方面的第十一种可能的实 施方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
结合第五方面的第九种至第十一种可能的实施方式中的任意一种,在第五 方面的第十二种可能的实施方式中, 所述块级允许块分割深度集合包括: 所述 当前块的预测块所使用的 K个块分割深度, 所述 K为正整数。
第六方面、 一种视频编码器, 包括:
存储器、 以及与所述存储器连接的处理器
其中, 所述处理器用于, 确定当前块的允许块分割深度集合; 根据所述允 许块分割深度集合确定所述当前块的最佳预测模式。
结合第六方面,在第一种可能的实施方式中, 若所述当前块的当前分割深 度不属于所述允许块分割深度集合,则所述处理器不计算当前块在当前分割深 度下的最佳预测模式。
结合第六方面,在第六方面的第二种可能的实施方式中,所述处理器用于, 若所述当前块的当前分割深度不属于所述允许块分割深度集合,则将所述当前 块的当前预测模式作为所述当前块的最佳预测模式。
结合第六方面, 在第六方面的第三种可能的实施方式中,
所述处理器用于,若所述当前块的当前分割深度属于所述允许块分割深度 集合,计算出所述当前块的最佳预测模式, 所述当前块的最佳预测模式为所述 当前块在当前分割深度下的所有可选预测模式之中率失真代价最小的预测模 式,或者所述当前块的最佳预测模式为所述当前块在当前分割深度下的多种可 选预测模式之中率失真代价最小的预测模式。
结合第六方面或第六方面的第一种可能的实施方式或第六方面的第二种 可能的实施方式或第六方面的第三种可能的实施方式,在第六方面的第四种可 能的实施方式中, 所述当前块的最佳预测模式为如下任一种预测模式:
跳过模式、 直接模式、 方块预测模式、 非方块预测模式。
结合第六方面的第四种可能的实施方式,在第六方面的第五种可能的实施 方式中, 所述方块预测模式为 2N*2N预测模式或 N*N预测模式, 其中, 所述 N 为正整数。
结合第六方面的第四种可能的实施方式,在第六方面的第六种可能的实施 方式中,所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
结合第六方面或第六方面的第一种至第六种可能的实施方式中的任意一 种, 在第六方面的第七种可能的实施方式中, 所述允许块分割深度集合为: 帧 级允许块分割深度集合、或块级允许块分割深度集合、或帧级允许块分割深度 集合与块级允许块分割深度集合的并集。
结合第六方面的第七种可能的实施方式,在第六方面的第八种可能的实施 方式中, 所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时 刻,与所述当前块所属视频帧类型相同的已编码视频帧中使用比例最高的 M个 块分割深度, 其中, 所述 M为正整数。
结合第六方面的第八种可能的实施方式,在第六方面的第九种可能的实施 方式中, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
结合第六方面的第五种至第八种可能的实施方式中的任意一种,在第六方 面的第九种可能的实施方式中,
所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K个块 分割深度, 所述 K为正整数。
第七方面, 一种计算机存储介质, 其中, 所述计算机存储介质可存储有程 序,该程序执行时包括本发明实施例提供的任意一种视频编码中的块分割方式 确定方法的部分或全部步骤。
第八方面, 一种计算机存储介质, 其中, 所述计算机存储介质可存储有程 序,该程序执行时包括本发明实施例提供的任意一种视频编码中的当前块的最 佳预测模式确定方法的部分或全部步骤。
可以看出, 本发明实施例的一些方案中, 编码端可在视频编码中过程中先 确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当 前块在当前分割深度下是否进行子块分割。由于编码端可以根据当前块的允许 块分割深度集合来确定上述当前块的块分割方式,而并非是每次都通过计算多 个块的率失真等性能参数来确定当前块的块分割方式, 因此,有利于降低在视 频编码过程中确定当前块的块分割方式的计算复杂度。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地, 下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1-a是本发明实施例提供的一种视频编码中的块分割方式确定方法的流 程示意图;
图 1-b是本发明实施例提供的一种当前块和 N个相关块的位置关系示意图; 图 2是本发明实施例提供的一种视频编码中的当前块的最佳预测模式确定 方法的流程示意图;
图 3是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 4是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 5是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 6是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 7是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 8是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流 程示意图;
图 9-a是本发明实施例提供的另一种视频编码中的块分割方式确定方法的 流程示意图;
图 9-b和 9-c是本发明实施例举例提供的当前块的两种预测块的划分结构示 意图;
图 10是本发明实施例提供的另一种视频编码中的当前块的最佳预测模式 确定方法的流程示意图;
图 11是本发明实施例提供的一种视频编码器的示意图;
图 12是本发明实施例提供的另一种视频编码器的示意图;
图 13是本发明实施例提供的另一种视频编码器的示意图;
图 14是本发明实施例提供的另一种视频编码器的示意图;
图 15是本发明实施例提供的另一种视频编码器的示意图; 图 16是本发明实施例提供的另一种视频编码器的示意图。
具体实施方式
本发明实施例提供一种视频编码中的块分割方式和最佳预测模式确定方 法及相关装置,以期降低在视频编过程中确定当前块的块分割方式过程中的计 算复杂度。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施 例中的附图, 对本发明实施例中的技术方案进行清楚地描述, 显然, 所描述的 实施例仅仅是本发明一部分的实施例, 而不是全部的实施例。基于本发明中的 实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例, 都应当属于本发明保护的范围。
以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语 "第一"、 "第二"、 "第 三"、 "第四 " 等(如果存在)是用于区别类似的对象, 而不必用于描述特定的 顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换, 以便这里 描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序 实施。 此外, 术语 "包括" 和 "具有" 以及他们的任何变形, 意图在于覆盖不 排他的包含, 例如, 包含了一系列步骤或单元的过程、 方法、 ***、 产品或设 备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对 于这些过程、 方法、 产品或设备固有的其它步骤或单元。
本发明一种视频编码中的块分割方式确定方法的一实施例,其中一种视频 编码中的块分割方式确定方法可包括: 确定当前块的允许块分割深度集合; 根 据上述允许块分割深度集合确定上述当前块在当前分割深度下是否进行子块 分割。
请参见图 l-a, 图 1-a为本发明实施例提供的一种视频编码中的块分割方式 确定方法的流程示意图, 如图 1-a所示, 本发明实施例提供的一种视频编码中 的块分割方式确定方法可包括以下内容:
101、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明的一些实施例中,上述统计周期例如可为一个图组 GOP长度或者 相邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
例如图 1-b所示, 当前块 a的 P个相关块可为如下图像块中的至少 1块: 图像 块 al、 图像块 a2、 图像块 a3、 图像块 a4、 图像块 b、 图像块 bl、 图像块 b2、 图 像块 b3和图像块 b4。 其中, 图像块 al、 图像块 a2、 图像块 a3和图像块 a4为当前 块 a的相邻块。 图像块 b为当前块 a的参考块、 图像块 bl、 图像块 b2、 图像块 b3 和图像块 b4为图像块 b的参考块。
102、 根据上述允许块分割深度集合确定上述当前块在当前分割深度下是 否进行子块分割。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即确定上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明的一些实施例中,上述根据上述允许块分割深度集合确定上述当 前块在当前分割深度下是否进行子块分割, 可包括: 若上述当前块的当前分割 深度大于上述允许块分割深度集合中的块最大分割深度,则确定上述当前块不 进行子块分割。
在本发明的一些实施例中,上述根据上述允许块分割深度集合确定上述当 前块在当前分割深度下是否进行子块分割, 可包括: 若上述当前块的当前分割 深度属于上述允许块分割深度集合,或上述当前块的当前分割深度小于上述允 许块分割深度集合中的块最小分割深度,则可计算上述当前块进行子块分割后 的率失真代价,若上述当前块的率失真代价小于或等于上述当前块进行子块分 割后的率失真代价, 则确定上述当前块不进行子块分割; 若上述当前块的率失 真代价大于上述当前块进行子块分割后的率失真代价,则确定上述当前块进行 子块分割。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深度 集合中的块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预 测模式下的率失真代价。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式(英文: skip模式)、 直接模式 (英文: Direct模式)、 方块预 测模式、 非方块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价, 可包括: 基于上述当前块被分割成的各子块的率失真代价计算上述当前 块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中, 上述方法还可包括: 确定上述当前块的块分割 方式(进行子块分割或不进行子块分割 )对应的块分割标识符。
以当前块为 CU为例, 在 HEVC标准中, CU通常釆用四叉树分割方式来进 行进一步分割, 例如, 当上一层的 CU划分为子编码单元(Sub-CU ) 时, 釆用 块分割标识符 ( split_flag ) 来标识当前 Sub-CU是否继续向下分割为更小的 Sub-CU。 例如, 如 split_flag取值为 "Γ 时, 表示当前 Sub-CU继续向下分割分 为更小的 Sub-CU; split_flag取值为 "0" 时, 表示当前 Sub-CU终止划分。 当然 split_flag亦可釆用其它取值来指示当前块的块分割方式。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 本发明一种视频编码中的当前块的最佳预测模式确定方法的一实施例,其 中一种视频编码中的当前块的最佳预测模式确定方法可包括:确定当前块的允 许块分割深度集合;根据上述允许块分割深度集合确定上述当前块的最佳预测 模式。
请参见图 2,图 2为本发明实施例提供的一种视频编码中的当前块的最佳预 测模式确定方法的流程示意图, 如图 2所示, 本发明实施例提供的一种视频编 码中的当前块的最佳预测模式确定方法可包括以下内容:
201、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 1 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
例如图 1-b所示, 当前块 a的 P个相关块可为如下图像块中的至少 1块: 图像 块 al、 图像块 a2、 图像块 a3、 图像块 a4、 图像块 b、 图像块 bl、 图像块 b2、 图 像块 b3和图像块 b4。 其中, 图像块 al、 图像块 a2、 图像块 a3和图像块 a4为当前 块 a的相邻块。 图像块 b为当前块 a的参考块、 图像块 bl、 图像块 b2、 图像块 b3 和图像块 b4为图像块 b的参考块。 202、 根据上述允许块分割深度集合确定上述当前块的最佳预测模式。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即确定上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明一些实施例中,上述根据上述允许块分割深度集合确定上述当前 块的最佳预测模式, 可以包括: 若上述当前块的当前分割深度不属于上述允许 块分割深度集合,则将上述当前块的当前预测模式作为上述当前块的最佳预测 模式。
在本发明的一些实施例中,上述根据上述允许块分割深度集合确定上述当 前块的最佳预测模式, 可包括: 若上述当前块的当前分割深度属于上述允许块 分割深度集合, 计算出上述当前块的最佳预测模式, 其中, 上述当前块的最佳 预测模式为上述当前块在当前分割深度下的所有可选预测模式之中率失真代 价最小的预测模式,或者上述当前块的最佳预测模式为上述当前块在当前分割 深度下的多种可选预测模式之中率失真代价最小的预测模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价可为上述当前块在最佳预测模式下 的率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深 度集合中的块最小分割深度,则上述当前块的率失真代价可为上述当前块在当 前预测模式下的率失真代价。
在本发明的一些实施例中,计算上述当前块进行子块分割后的率失真代价 可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块进行 子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中, 上述方法还可包括: 确定上述当前块的块分割 方式(进行子块分割或不进行子块分割 )对应的块分割标识符。
以当前块为 CU为例, 在 HEVC标准中, CU通常釆用四叉树分割方式来进 行进一步分割, 例如, 当上一层的 CU划分为子编码单元(Sub-CU ) 时, 釆用 块分割标识符 ( split_flag ) 来标识当前 Sub-CU是否继续向下分割为更小的 Sub-CU。 例如, 如 split_flag取值为 "Γ 时, 表示当前 Sub-CU继续向下分割分 为更小的 Sub-CU; split_flag取值为 "0" 时, 表示当前 Sub-CU终止划分。 当然 split_flag亦可釆用其它取值来指示当前块的块分割方式。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;而后根据上述允许块分割深度集合确定当前块的最佳预 测模式。由于编码端可以根据当前块的允许块分割深度集合来确定上述当前块 的最佳预测模式,而并非是每次都通过计算多个块的率失真等性能参数来确定 当前块的最佳预测模式, 因此,有利于降低在视频编码过程中确定当前块的最 佳预测模式的计算复杂度,进而也有利于降低在视频编码过程中确定当前块的 块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 为便于更好的理解和实施本发明实施例的上述方案,下面通过举例一些具 体的应用场景进行说明。
请参见图 3,图 3为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 3所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
301、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 1 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
302、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 304。 若否, 则跳转至步骤 303。
303、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 309。
若否, 则跳转至步骤 305。
304、 计算当前块在当前分割深度下的最佳预测模式。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
305、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
306、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
307、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 308。
若否, 则跳转至步骤 309。
308、 确定上述当前块进行子块分割。
309、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 请参见图 4,图 4为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 4所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
401、 确定当前块的允许块分割深度集合。 在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
402、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 403。
若否, 则跳转至步骤 404。
403、 计算当前块在当前分割深度下的最佳预测模式, 跳转至步骤 404。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
404、 确定上述当前块的率失真代价, 跳转至步骤 405。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
405、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。 若是, 则跳转至步骤 409。
若否, 则跳转至步骤 406。
406、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
407、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 408。 若否, 则跳转至步骤 409。
408、 确定上述当前块进行子块分割。
409、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 请参见图 5,图 5为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 5所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
501、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
502、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 509。
若否, 则跳转至步骤 503。
503、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 504。
若否, 则跳转至步骤 505。
504、 计算当前块在当前分割深度下的最佳预测模式, 跳转至步骤 505。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
505、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
506、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。 在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
507、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 508。
若否, 则跳转至步骤 509。
508、 确定上述当前块进行子块分割。
509、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 请参见图 6,图 6为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 6所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
601、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 6, 或 M可等于 2、 3、 4、 6、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 6或上述 K 可等于 1、 2、 3、 4、 6、 6或 7或其它值。
602、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 609。
若否, 则跳转至步骤 603。
603、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 604。
若否, 则跳转至步骤 605。
604、 计算当前块在当前分割深度下的最佳预测模式, 跳转至步骤 605。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
605、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.6、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.6、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.6、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
606、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
607、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 608。
若否, 则跳转至步骤 609。
608、 确定上述当前块进行子块分割。
609、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 Κ为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 Μ个块分割深度, 其中, 上述 Μ为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
请参见图 7,图 7为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 7所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
701、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 Μ个块分割深度, 上述 Μ 为正整数。 上述 Μ的取值可根据具体需要进行设定, 例如 Μ的取值范围可为 2 至 5, 或 Μ可等于 2、 7、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 Κ的取值范围可为 1至 5或上述 Κ 可等于 1、 2、 7、 4、 5、 6或 7或其它值。
702、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 704。
若否, 则跳转至步骤 703。
703、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 709。
若否, 则跳转至步骤 705。
704、 计算当前块在当前分割深度下的最佳预测模式。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
705、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 7、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 7、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y7 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y7可为整数(y7 例如等于 0.5、 1、 2、 7、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
706、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。 在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
707、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 708。
若否, 则跳转至步骤 709。
708、 确定上述当前块进行子块分割。
709、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 请参见图 8,图 8为本发明实施例提供的另一种视频编码中的块分割方式确 定方法的流程示意图, 如图 8所示, 本发明实施例提供的另一种视频编码中的 块分割方式确定方法可包括以下内容:
801、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 8、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 8、 5、 6或 7或其它值。
802、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 803。
若否, 则跳转至步骤 804。
803、 计算当前块在当前分割深度下的最佳预测模式, 跳转至步骤 804。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
804、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 809。
若否, 则跳转至步骤 805。
805、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
806、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 8或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 8或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 8或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
807、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 808。
若否, 则跳转至步骤 809。
808、 确定上述当前块进行子块分割。
809、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 请参见图 9-a, 图 9-a为本发明实施例提供的另一种视频编码中的块分割方 式确定方法的流程示意图, 如图 9-a所示, 本发明实施例提供的另一种视频编 码中的块分割方式确定方法可包括以下内容:
901、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 9、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 9、 5、 6或 7或其它值。
902、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 903。
若否, 则跳转至步骤 904。
903、 计算当前块在当前分割深度下的最佳预测模式, 跳转至步骤 904。 在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
904、 判断上述当前块的当前分割深度是否大于上述允许块分割深度集合 中的块最大分割深度。
若是, 则跳转至步骤 909。
若否, 则跳转至步骤 905。
905、 计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,上述计算上述当前块进行子块分割后的率失真 代价可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块 进行子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 9或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 9或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 9或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
906、 确定上述当前块的率失真代价。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式 )。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
907、 判断上述当前块的率失真代价是否大于上述当前块进行子块分割后 的率失真代价。
若是, 跳转至步骤 908。
若否, 则跳转至步骤 909。
908、 确定上述当前块进行子块分割。 909、 确定上述当前块不进行子块分割。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;根据上述允许块分割深度集合确定上述当前块在当前分 割深度下是否进行子块分割。由于编码端可以根据当前块的允许块分割深度集 合来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真 等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频编码过程中 确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
下面结合一些具体数据进行分析。
经过统计分析得出, 一般图像中最常用的块划分深度, 一般会集中在少数 几种的 CU尺寸, 例如一般某 2种 CU尺寸可能占据了绝大多数使用比例, 而其 它几种 CU尺寸占据了较少的比例。
因此可以估算一个块划分深度的平均期望值 EDepth
E D ep th = Σ = 0 1 Χ R a t i O c u j 其中, 上述公式中的 i表示块的划分深度, Ratio表示具有划分深度为 i的块 的比例。 EDepth表示图像中块划分深度的平均期望值。 基于上述公式, 可以估算出不同编码配置下的最佳期望值, 如对 I帧的最 可能的块分割深度期望值是 2.34, 所以最可能划分深度是大于 2的整数, 若图 像块初始尺寸为 64*64, 则 8*8的 CU尺寸是最佳的划分后尺寸。 其它配置场景 以此类推。
因此, 可以根据帧类型和编码配置, 建立当前块的 1个帧级允许块分割深 度集合: CUControlSet H i, j表示当前块所属帧的同类型帧中, 最近 编码使用比例最高的两个块分割深度。其中,在编码中可以根据已经编码的帧 更新帧级允许块分割深度集合,因为使用比例最高的块分割深度可能随着编码 进行而发生变化。
另外, 当前块(如当前编码单元)在预测帧中有对应的预测块, 其划分类 型对当前块是已知的, 因此, 可用来作为当前块的块划分预测参考。 为此可使 用当前块的预测块的块划分结构, 来建立当前块的 1个的块级允许块分割深度 集合: CUPredictSet = {depths in co- located CU}。
例如图 9-b所示, 如果当前块的预测块尺寸是 64x64, 其划分结构如图 9-b 所示, 则当前块的块级允许块分割深度集合为 { 1, 2, 3 ), 表示有 3种块分割 深度; 如果预测块尺寸是 32x32, 其划分结构如 9-c所示, 则当前块的块级允许 块分割深度集合为 { 2 }, 表示有 1种块分割深度。 块级允许块分割深度集合是 按照 CU改变的。
通过结合块级允许块分割深度集合和帧级允许块分割深度集合,根据当前 块的当前划分深度与允许块划分深度集合之间的关系,来确定当前块的是否进 行子块划分。通过从统计角度结合图像内容和已经获得编码信息, 通过建立帧 级允许块划分深度集合和 CU级的允许块划分深度集合, 来自适应的实现对当 前块的块划分控制, 这样有利于避免不必要的率失真计算,从而有利于降低编 码计算复杂度。
下面给出一项测试结果。 HM12.0通测序列, 低延迟 (LD, low delay) B帧 配置、 全 I帧 (AI, all intra ) 配置和随机访问(RA, random, access )配置下的 测试结果分别如下。
表 1
Figure imgf000054_0001
PeopleOnStreet 1.8 31.8
Kimono 1.5 59.3
ParkScene 1.2 39.5
1080P Cactus 1.3 37.2
BasketballDrive 2.9 51.1
BQTerrace 0.4 23.3
BasketballDrill 1.4 32.9
BQMall 0.6 24.6
WVGA
Party Scene 0.0 20.2
RaceHorsesC 1.9 37.8
BasketballPass 1.3 33.3
BlowingBubbles 0.0 19.1
WQVGA
BQSquare 0.2 22.7
RaceHorses 0.4 22.4
FourPeople 1.5 45.6
720P Johnny 2.1 51.7
KristenAndSara 1.6 50.1 平均 1.2 35.7
表 2
Figure imgf000055_0001
BasketballDrill 6.2 36.4
BQMall 6.1 33.7
WVGA
PartyScene 2.3 29.0
RaceHorsesC 3.5 32.2
BasketballPass 4.9 34.5
BlowingBubbles 1.3 30.1
WQVGA
BQSquare 1.9 30.2
RaceHorses 3.9 28.0
FourPeople 3.6 43.5
720P Johnny 1.9 44.5
KristenAndSara 1.6 44.2 平均 3.2 35.6 表 3
Figure imgf000056_0001
BasketballPass 2.3 30.9
BlowingBubbles 0.7 31.7
WQVGA
BQSquare 0.8 28.7
RaceHorses 1.7 23.9
平均 1.9 30.7
其中, 表 1为 AI配置下的测试结果, 表 2为 LDB帧配置下的测试结果, 表 1 为 RA配置下的测试结果。 其中, AI, LDB和 RA配置下, 分别可以降低计算复 杂度 35.7%, 35.6%和 30.7%, AI下只有较少的 lost ( 1.2% )。 请参见图 10,图 10为本发明实施例提供的另一种视频编码中的当前块的最 佳预测模式确定方法的流程示意图,如图 10所示, 本发明实施例提供的另一种 视频编码中的当前块的最佳预测模式确定方法可包括以下内容:
1001、 确定当前块的允许块分割深度集合。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
1002、 判断当前块的当前分割深度是否属于上述允许块分割深度集合。 若是, 则跳转至步骤 1003。
若否, 则跳转至步骤 1004。
1003、 计算当前块在当前分割深度下的最佳预测模式。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即计算上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
1004、 将当前块的当前预测模式作为当前块的最佳预测模式。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价;若上述当前块的当前分割深度小于上述允许块分割深度集合中的 块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预测模式下 的率失真代价(此时可认为是将上述当前块的当前预测模式作为上述当前块在 当前分割深度下的最佳预测模式;)。
在本发明的一些实施例中,上述根据上述允许块分割深度集合确定上述当 前块的最佳预测模式, 可包括: 若上述当前块的当前分割深度属于上述允许块 分割深度集合, 计算出上述当前块的最佳预测模式, 其中, 上述当前块的最佳 预测模式为上述当前块在当前分割深度下的所有可选预测模式之中率失真代 价最小的预测模式,或者上述当前块的最佳预测模式为上述当前块在当前分割 深度下的多种可选预测模式之中率失真代价最小的预测模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价可为上述当前块在最佳预测模式下 的率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深 度集合中的块最小分割深度,则上述当前块的率失真代价可为上述当前块在当 前预测模式下的率失真代价。
在本发明的一些实施例中,计算上述当前块进行子块分割后的率失真代价 可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块进行 子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
以当前块为 CU为例, 在 HEVC标准中, CU通常釆用四叉树分割方式来进 行进一步分割, 例如, 当上一层的 CU划分为子编码单元(Sub-CU ) 时, 釆用 块分割标识符 ( split_flag ) 来标识当前 Sub-CU是否继续向下分割为更小的 Sub-CU。 例如, 如 split_flag取值为 "Γ 时, 表示当前 Sub-CU继续向下分割分 为更小的 Sub-CU; split_flag取值为 "0" 时, 表示当前 Sub-CU终止划分。 当然 split_flag亦可釆用其它取值来指示当前块的块分割方式。
可以看出, 本实施例方案中, 编码端在视频编码中过程中先确定当前块的 允许块分割深度集合;而后根据上述允许块分割深度集合确定当前块的最佳预 测模式。由于编码端可以根据当前块的允许块分割深度集合来确定上述当前块 的最佳预测模式,而并非是每次都通过计算多个块的率失真等性能参数来确定 当前块的最佳预测模式, 因此,有利于降低在视频编码过程中确定当前块的最 佳预测模式的计算复杂度,进而也有利于降低在视频编码过程中确定当前块的 块分割方式的计算复杂度。 进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 下面还提供用于实施上述方案的相关装置。
参见图 11, 本发明实施例提供一种视频编码器 1100, 可包括: 集合确定单 元 1110和分割确定单元 1120。
集合确定单元 1110, 用于确定当前块的允许块分割深度集合。
分割确定单元 1120,用于根据上述允许块分割深度集合确定上述当前块在 当前分割深度下是否进行子块分割。
在本发明的一些实施例中,若上述当前块的当前分割深度不属于上述允许 块分割深度集合,则分割确定单元 1120不计算上述当前块在当前分割深度下的 最佳预测模式。
在本发明的一些实施例中, 分割确定单元 1120具体用于, 若上述当前块的 当前分割深度大于上述允许块分割深度集合中的块最大分割深度,则确定上述 当前块不进行子块分割。
在本发明的一些实施例中, 分割确定单元 1120具体用于: 若上述当前块的 当前分割深度属于上述允许块分割深度集合,或者上述当前块的当前分割深度 小于上述允许块分割深度集合中的块最小分割深度,则计算上述当前块进行子 块分割后的率失真代价,若上述当前块的率失真代价小于或等于上述当前块进 行子块分割后的率失真代价, 则确定上述当前块不进行子块分割; 若上述当前 块的率失真代价大于上述当前块进行子块分割后的率失真代价,则确定上述当 前块进行子块分割。 在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深度 集合中的块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预 测模式下的率失真代价。
在本发明的一些实施例中, 上述当前块的最佳预测模式为: 上述当前块在 当前分割深度下的所有可选预测模式中率失真代价最小的预测模式,或者上述 当前块在当前分割深度下的多种可选预测模式中率失真代价最小的预测模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,在上述计算上述当前块进行子块分割后的率失 真代价的方面, 分割确定单元 1120具体用于: 基于上述当前块被分割成的子块 的率失真代价获得上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,在上述基于上述当前块被分割成的子块的率失 真代价获得上述当前块进行子块分割后的率失真代价的方面, 分割确定单元 1120可以具体用于,将上述当前块被分割成的所有子块的率失真代价的加权组 合(其中, 所有子块的率失真代价的权值可相等或不等)作为上述当前块进行 子块分割后的率失真代价;或将上述当前块被分割成的所有子块的率失真代价 总和作为上述当前块进行子块分割后的率失真代价;或者根据上述当前块被分 割成的所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得 到上述当前块进行子块分割后的率失真代价(其中, 例如可将所有子块的率失 真代价之中的最大率失真代价或者最小率失真代价乘以 yl而得到的值,作为上 述当前块进行子块分割后的率失真代价, yl可为整数(其中, yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者, 根据上述当前块被分割成的所有子块的率失真 代价之中的任意一个率失真代价得到上述当前块进行子块分割后的率失真代 价(例如可将所有子块的率失真代价之中的任意一个率失真代价乘以 y2而得到 的值, 作为上述当前块进行子块分割后的率失真代价, y2可为整数(其中, y2 例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述当前块被分割成的所有 子块的率失真代价的平均值得到上述当前块进行子块分割后的率失真代价(例 如可将所有子块的率失真代价的平均值乘以 y3而得到的值,作为上述当前块进 行子块分割后的率失真代价, y3可为整数(y3例如等于 0.5、 1、 2、 3、 4或其 它值))。
在本发明的一些实施例中, 上述允许块分割深度集合为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。
在本发明的一些实施例中, 上述帧级允许块分割深度集合包括: 在当前统 计周期内或截止当前时刻,与上述当前块所属视频帧类型相同的已编码视频帧 中使用比例最高的 M个块分割深度, 其中, 上述 M为正整数。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明的一些实施例中,上述统计周期为一个图组 GOP长度或者相邻两 个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间隔。 在本发明的一些实施例中,, 上述块级允许块分割深度集合包括上述当前 块的预测块所使用的 K个块分割深度, 上述 K为正整数。
可以理解的是,本实施例的视频编码器 1100的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例的方案中,视频编码器 1100在视频编码中过程中先确 定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当前 块在当前分割深度下是否进行子块分割。由于编码端可以根据当前块的允许块 分割深度集合来确定上述当前块的块分割方式,而并非是每次都通过计算多个 块的率失真等性能参数来确定当前块的块分割方式, 因此,有利于降低在视频 编码过程中确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
参见图 12, 图 12为本发明实施例提供的视频编码设备 1200的示意图,视频 编码设备 1200可包括至少一个总线 1201、 与总线 1201相连的至少一个处理器 1202以及与总线 1201相连的至少一个存储器 1203。
其中, 处理器 1202通过总线 1201,调用存储器 1203中存储的代码以用于用 于确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述 当前块在当前分割深度下是否进行子块分割。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合,处理器 1202可不计算上述当前块在当前分割深度下的最佳预测 模式。其中, 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的 所有可选预测模式中率失真代价最小的预测模式(即确定上述当前块在当前分 割深度下的最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有 可选预测模式对应的率失真代价,将率失真代价最小的预测模式作为当前块在 当前分割深度下的最佳预测模式 ), 或者上述当前块的最佳预测模式为上述当 前块在当前分割深度下的多种可选预测模式中率失真代价最小的预测模式(即 确定上述当前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前 块在当前分割深度下的多种可选预测模式对应的率失真代价,将率失真代价最 小的预测模式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由 于若上述当前块的当前分割深度不属于上述允许块分割深度集合,则可不计算 上述当前块在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少 确定上述当前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块在当前分割深度下是否进行子块分割的方面,处理器 1202可具体用于若 上述当前块的当前分割深度大于上述允许块分割深度集合中的块最大分割深 度, 则确定上述当前块不进行子块分割。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块在当前分割深度下是否进行子块分割的方面,处理器 1202可具体用于若 上述当前块的当前分割深度属于上述允许块分割深度集合,或上述当前块的当 前分割深度小于上述允许块分割深度集合中的块最小分割深度,则可计算上述 当前块进行子块分割后的率失真代价,若上述当前块的率失真代价小于或等于 上述当前块进行子块分割后的率失真代价, 则确定上述当前块不进行子块分 割; 若上述当前块的率失真代价大于上述当前块进行子块分割后的率失真代 价, 则确定上述当前块进行子块分割。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深度 集合中的块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预 测模式下的率失真代价。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,在上述计算上述当前块进行子块分割后的率失 真代价的方面,处理器 1202可具体用于基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,在上述基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价的方面, 处理器 1202 可具体用于将上述当前块被分割成的所有子块的率失真代价的加权组合(其 中, 所有子块的率失真代价的权值可相等或不等)作为上述当前块进行子块分 割后的率失真代价;或将上述当前块被分割成的所有子块的率失真代价总和作 为上述当前块进行子块分割后的率失真代价;或者根据上述当前块被分割成的 所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到上述 当前块进行子块分割后的率失真代价(其中, 例如可将所有子块的率失真代价 之中的最大率失真代价或者最小率失真代价乘以 yl而得到的值,作为上述当前 块进行子块分割后的率失真代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4 或其它值));或者根据上述当前块被分割成的所有子块的率失真代价之中的任 意一个率失真代价得到上述当前块进行子块分割后的率失真代价(例如可将所 有子块的率失真代价之中的任意一个率失真代价乘以 y2而得到的值,作为上述 当前块进行子块分割后的率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述当前块被分割成的所有子块的率失真代价的平均 值得到上述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真 代价的平均值乘以 y3而得到的值,作为上述当前块进行子块分割后的率失真代 价, y3可为整数(y3例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
可以理解的是,本实施例的视频编码器 1200的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例的方案中,视频编码设备 1200在视频编码中过程中先 确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当 前块在当前分割深度下是否进行子块分割。由于编码端可以根据当前块的允许 块分割深度集合来确定上述当前块的块分割方式,而并非是每次都通过计算多 个块的率失真等性能参数来确定当前块的块分割方式, 因此,有利于降低在视 频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
参见图 13,图 13是本发明另一实施例提供的视频编码器 1300的结构示意框 图。
其中, 视频编码器 1300可以包括至少 1个处理器 1301, 至少 1个网络接口 1304, 存储器 1305, 至少 1个通信总线 1302。 通信总线 1302用于实现这些组件 之间的连接通信。 其中, 该视频编码器 1300可选的包含用户接口 1303, 包括显 示器(例如, 触摸屏、 液晶显示器、 全息成像(英文: Holographic )或者投影 (英文: Projector )等)、 点击设备(例如鼠标, 轨迹球(英文: trackball )触 感板或触摸屏等)、 摄像头和 /或拾音装置等。
其中, 存储器 1302可以包括只读存储器和随机存取存储器, 并向处理器 1301提供指令和数据。存储器 1302中的一部分还可以包括非易失性随机存取存 储器。
在一些实施方式中,存储器 1305存储了如下的元素, 可执行模块或者数据 结构, 或者他们的子集, 或者他们的扩展集:
操作*** 13051, 包含各种***程序, 用于实现各种基础业务以及处理基 于硬件的任务。
应用程序模块 13052, 包含各种应用程序, 用于实现各种应用业务。
应用程序模块 13052中包括但不限于集合确定单元 1110和分割确定单元 1130等。
在本发明实施例中,通过调用存储器 1305存储的程序或指令, 处理器 1301 用于确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上 述当前块在当前分割深度下是否进行子块分割。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合,处理器 1301可不计算上述当前块在当前分割深度下的最佳预测 模式。其中, 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的 所有可选预测模式中率失真代价最小的预测模式(即确定上述当前块在当前分 割深度下的最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有 可选预测模式对应的率失真代价,将率失真代价最小的预测模式作为当前块在 当前分割深度下的最佳预测模式;), 或者上述当前块的最佳预测模式为上述当 前块在当前分割深度下的多种可选预测模式中率失真代价最小的预测模式(即 确定上述当前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前 块在当前分割深度下的多种可选预测模式对应的率失真代价,将率失真代价最 小的预测模式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由 于若上述当前块的当前分割深度不属于上述允许块分割深度集合,则可不计算 上述当前块在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少 确定上述当前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块在当前分割深度下是否进行子块分割的方面,处理器 1301可具体用于若 上述当前块的当前分割深度大于上述允许块分割深度集合中的块最大分割深 度, 则确定上述当前块不进行子块分割。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块在当前分割深度下是否进行子块分割的方面,处理器 1301可具体用于若 上述当前块的当前分割深度属于上述允许块分割深度集合,或上述当前块的当 前分割深度小于上述允许块分割深度集合中的块最小分割深度,则可计算上述 当前块进行子块分割后的率失真代价,若上述当前块的率失真代价小于或等于 上述当前块进行子块分割后的率失真代价, 则确定上述当前块不进行子块分 割; 若上述当前块的率失真代价大于上述当前块进行子块分割后的率失真代 价, 则确定上述当前块进行子块分割。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价为上述当前块在最佳预测模式下的 率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深度 集合中的块最小分割深度,则上述当前块的率失真代价为上述当前块在当前预 测模式下的率失真代价。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,在上述计算上述当前块进行子块分割后的率失 真代价的方面,处理器 1301可具体用于基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,在上述基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价的方面, 处理器 1301 可具体用于将上述当前块被分割成的所有子块的率失真代价的加权组合(其 中, 所有子块的率失真代价的权值可相等或不等)作为上述当前块进行子块分 割后的率失真代价;或将上述当前块被分割成的所有子块的率失真代价总和作 为上述当前块进行子块分割后的率失真代价;或者根据上述当前块被分割成的 所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到上述 当前块进行子块分割后的率失真代价(其中, 例如可将所有子块的率失真代价 之中的最大率失真代价或者最小率失真代价乘以 yl而得到的值,作为上述当前 块进行子块分割后的率失真代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4 或其它值));或者根据上述当前块被分割成的所有子块的率失真代价之中的任 意一个率失真代价得到上述当前块进行子块分割后的率失真代价(例如可将所 有子块的率失真代价之中的任意一个率失真代价乘以 y2而得到的值,作为上述 当前块进行子块分割后的率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述当前块被分割成的所有子块的率失真代价的平均 值得到上述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真 代价的平均值乘以 y3而得到的值,作为上述当前块进行子块分割后的率失真代 价, y3可为整数(y3例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。 可以理解的是,本实施例的视频编码器 1300的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例的方案中,视频编码设备 1300在视频编码中过程中先 确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当 前块在当前分割深度下是否进行子块分割。由于编码端可以根据当前块的允许 块分割深度集合来确定上述当前块的块分割方式,而并非是每次都通过计算多 个块的率失真等性能参数来确定当前块的块分割方式, 因此,有利于降低在视 频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
参见图 14, 本发明实施例提供一种视频编码器 1400, 可包括: 集合确定单 元 1401和预测模式确定单元 1402。
其中, 集合确定单元 1401, 用于确定当前块的允许块分割深度集合。 预测模式确定单元 1402,用于根据上述允许块分割深度集合确定上述当前 块的最佳预测模式。
在本发明的一些实施例中,若上述当前块的当前分割深度不属于上述允许 块分割深度集合,则预测模式确定单元 1402不计算当前块在当前分割深度下的 最佳预测模式。
在本发明的一些实施例中,预测模式确定单元 1402具体用于: 若上述当前 块的当前分割深度不属于上述允许块分割深度集合,则将上述当前块的当前预 测模式作为上述当前块的最佳预测模式。 在本发明的一些实施例中,预测模式确定单元 1402具体用于: 若上述当前 块的当前分割深度属于上述允许块分割深度集合,计算出上述当前块的最佳预 测模式,上述当前块的最佳预测模式为上述当前块在当前分割深度下的所有可 选预测模式之中率失真代价最小的预测模式,或者上述当前块的最佳预测模式 为上述当前块在当前分割深度下的多种可选预测模式之中率失真代价最小的 预测模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中, 上述允许块分割深度集合为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。 在本发明的一些实施例中,上述统计周期为一个图组 GOP长度或者相邻两 个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价可为上述当前块在最佳预测模式下 的率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深 度集合中的块最小分割深度,则上述当前块的率失真代价可为上述当前块在当 前预测模式下的率失真代价。
在本发明的一些实施例中,计算上述当前块进行子块分割后的率失真代价 可包括:基于上述当前块被分割成的各子块的率失真代价计算上述当前块进行 子块分割后的率失真代价。
在本发明的一些实施例中,上述基于上述当前块被分割成的各子块的率失 真代价计算上述当前块进行子块分割后的率失真代价, 包括: 将上述当前块被 分割成的所有子块的率失真代价的加权组合(其中, 所有子块的率失真代价的 权值可相等或不等)作为上述当前块进行子块分割后的率失真代价; 或将上述 当前块被分割成的所有子块的率失真代价总和作为上述当前块进行子块分割 后的率失真代价;或者根据上述当前块被分割成的所有子块的率失真代价之中 的最大率失真代价或者最小率失真代价得到上述当前块进行子块分割后的率 失真代价(其中, 例如可将所有子块的率失真代价之中的最大率失真代价或者 最小率失真代价乘以 yl而得到的值,作为上述当前块进行子块分割后的率失真 代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述 当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价得到上 述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真代价之中 的任意一个率失真代价乘以 y2而得到的值,作为上述当前块进行子块分割后的 率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根 据上述当前块被分割成的所有子块的率失真代价的平均值得到上述当前块进 行子块分割后的率失真代价(例如可将所有子块的率失真代价的平均值乘以 y3 而得到的值, 作为上述当前块进行子块分割后的率失真代价, y3可为整数(y3 例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
可以理解的是,本实施例的视频编码器 1400的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例方案中,视频编码器 1400在视频编码中过程中先确定 当前块的允许块分割深度集合;而后根据上述允许块分割深度集合确定当前块 的最佳预测模式。由于编码端可以根据当前块的允许块分割深度集合来确定上 述当前块的最佳预测模式,而并非是每次都通过计算多个块的率失真等性能参 数来确定当前块的最佳预测模式, 因此,有利于降低在视频编码过程中确定当 前块的最佳预测模式的计算复杂度,进而也有利于降低在视频编码过程中确定 当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 参见图 15, 图 15为本发明实施例提供的视频编码设备 1500的示意图,视频 编码设备 1500可包括至少一个总线 1501、 与总线 1501相连的至少一个处理器 1502以及与总线 1501相连的至少一个存储器 1503。
其中, 处理器 1502通过总线 1501,调用存储器 1503中存储的代码以用于确 定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上述当前 块的最佳预测模式。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即确定上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明一些实施例中,在上述根据上述允许块分割深度集合确定上述当 前块的最佳预测模式的方面,处理器 1502可具体用若上述当前块的当前分割深 度不属于上述允许块分割深度集合,则将上述当前块的当前预测模式作为上述 当前块的最佳预测模式。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块的最佳预测模式的方面,处理器 1502可具体用于若上述当前块的当前分 割深度属于上述允许块分割深度集合, 计算出上述当前块的最佳预测模式, 其 中,上述当前块的最佳预测模式为上述当前块在当前分割深度下的所有可选预 测模式之中率失真代价最小的预测模式,或者上述当前块的最佳预测模式为上 述当前块在当前分割深度下的多种可选预测模式之中率失真代价最小的预测 模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价可为上述当前块在最佳预测模式下 的率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深 度集合中的块最小分割深度,则上述当前块的率失真代价可为上述当前块在当 前预测模式下的率失真代价。
在本发明的一些实施例中,在计算上述当前块进行子块分割后的率失真代 价的方面,处理器 1502可具体用于基于上述当前块被分割成的各子块的率失真 代价计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,在上述基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价的方面, 处理器 1502 可具体用于将上述当前块被分割成的所有子块的率失真代价的加权组合(其 中, 所有子块的率失真代价的权值可相等或不等)作为上述当前块进行子块分 割后的率失真代价;或将上述当前块被分割成的所有子块的率失真代价总和作 为上述当前块进行子块分割后的率失真代价;或者根据上述当前块被分割成的 所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到上述 当前块进行子块分割后的率失真代价(其中, 例如可将所有子块的率失真代价 之中的最大率失真代价或者最小率失真代价乘以 yl而得到的值,作为上述当前 块进行子块分割后的率失真代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4 或其它值));或者根据上述当前块被分割成的所有子块的率失真代价之中的任 意一个率失真代价得到上述当前块进行子块分割后的率失真代价(例如可将所 有子块的率失真代价之中的任意一个率失真代价乘以 y2而得到的值,作为上述 当前块进行子块分割后的率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述当前块被分割成的所有子块的率失真代价的平均 值得到上述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真 代价的平均值乘以 y3而得到的值,作为上述当前块进行子块分割后的率失真代 价, y3可为整数(y3例如等于 0.5、 1、 2、 3、 4或其它值))。
可以理解的是,本实施例的视频编码器 1500的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例方案中,视频编码器 1500在视频编码中过程中先确定 当前块的允许块分割深度集合;而后根据上述允许块分割深度集合确定当前块 的最佳预测模式。由于编码端可以根据当前块的允许块分割深度集合来确定上 述当前块的最佳预测模式,而并非是每次都通过计算多个块的率失真等性能参 数来确定当前块的最佳预测模式, 因此,有利于降低在视频编码过程中确定当 前块的最佳预测模式的计算复杂度,进而也有利于降低在视频编码过程中确定 当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。 参见图 16, 图 16是本发明另一实施例提供的视频编码器 1600的结构框图。 其中,视频编码器 1600可以包括:至少 1个处理器 1601,至少 1个网络接口 1604, 存储器 1605, 至少 1个通信总线 1602。 通信总线 1602用于实现这些组件之间的 连接通信。其中,该视频编码器 1600可选的包含用户接口 1603,包括显示器(例 如, 触摸屏、 液晶显示器、 全息成像(英文: Holographic )或者投影 (英文: Projector )等)、 点击设备(例如鼠标、 轨迹球(英文: trackball )触感板或触 摸屏等)、 摄像头和 /或拾音装置等。
其中, 存储器 1602可以包括只读存储器和随机存取存储器, 并向处理器 1601提供指令和数据。存储器 1602中的一部分还可以包括非易失性随机存取存 储器。
在一些实施方式中,存储器 1605存储了如下的元素, 可执行模块或者数据 结构, 或者他们的子集, 或者他们的扩展集:
操作*** 16051, 包含各种***程序, 用于实现各种基础业务以及处理基 于硬件的任务。
应用程序模块 16052, 包含各种应用程序, 用于实现各种应用业务。
应用程序模块 16052中包括但不限于集合确定单元 1410和预测模式确定单 元 1420等。
在本发明实施例中,通过调用存储器 1605存储的程序或指令, 处理器 1601 用于确定当前块的允许块分割深度集合;根据上述允许块分割深度集合确定上 述当前块的最佳预测模式。
在本发明一些实施例中, 上述允许块分割深度集合可为: 帧级允许块分割 深度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允 许块分割深度集合的并集。 当然, 上述允许块分割深度集合亦可包括其它块分 割深度。
在本发明一些实施例中,上述帧级允许块分割深度集合可包括在当前统计 周期内 (其中, 统计周期对应的时间窗宽度可根据需要进行设定)或截止当前 时刻(截止当前时刻可理解为是从设定时刻(其中, 该设定时刻可根据具体需 要进行设定,该设定时刻例如可以是编码当前块所属视频帧所属视频的第一个 视频帧的时刻,该设定时刻也可以是最近一次编码当前块所属视频帧所属视频 中的某类或某几类特定类型视频帧的时刻,或者该设定时刻也可以是定时器最 近一次到达的时刻或者也可以是其它时刻)截止当前时刻), 与上述当前块所 属视频帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 上述 M 为正整数。 上述 M的取值可根据具体需要进行设定, 例如 M的取值范围可为 2 至 5, 或 M可等于 2、 3、 4、 5、 6或 7或其它值。
在本发明一些实施例中,上述统计周期例如可为一个图组 GOP长度或者相 邻两个 intra帧的间隔或者非相邻两个 intra帧的间隔或者任意两个 intra帧的间 隔。
在本发明一些实施例中,上述块级允许块分割深度集合可包括上述当前块 的预测块所使用的 K个块分割深度或全部块分割深度, 上述 K为正整数。 上述 K的取值可根据具体需要进行设定, 例如上述 K的取值范围可为 1至 5或上述 K 可等于 1、 2、 3、 4、 5、 6或 7或其它值。
其中, 当前块的 P个相关块可包括如下图像块中的至少 1个: 上述当前块的 至少 1个相邻块、上述当前块的参考块和上述参考块的至少 1个相邻块。例如上 述 P个相关块可包括上述当前块的 4个相邻块中的至少 1个相邻块(在此场景下 P 为正整数); 或者上述 P个相关块可包括上述当前块的参考块(此场景下 P为等 于 1的正整数);或者述 P个相关块可包括上述当前块的参考块的 4个相邻块中至 少 1个相邻块(此场景下 P为正整数); 或者上述 P个相关块可包括上述当前块的 参考块和上述当前块的 4个相邻块中的至少 1个相邻块(此场景下 P为大于 1的正 整数); 或者, 上述 P个相关块可包括上述当前块的参考块和该参考块的 4个相 邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或, 上述 P个相关块可 包括上述当前块的 4个相邻块中的至少 1个相邻块和上述当前块的参考块的 4个 相邻块中至少 1个相邻块(此场景下 P为大于 1的正整数); 或上述 P个相关块可 包括: 当前块的至少 1个相邻块、 上述当前块的参考块和上述参考块的至少 1 个相邻块(此场景下 P为大于 2的正整数)。
在本发明一些实施例中,若上述当前块的当前分割深度不属于上述允许块 分割深度集合, 可不计算上述当前块在当前分割深度下的最佳预测模式。其中 上述当前块的最佳预测模式可为上述当前块在当前分割深度下的所有可选预 测模式中率失真代价最小的预测模式(即确定上述当前块在当前分割深度下的 最佳预测模式,具体可计算出上述当前块在当前分割深度下的所有可选预测模 式对应的率失真代价,将率失真代价最小的预测模式作为当前块在当前分割深 度下的最佳预测模式), 或者上述当前块的最佳预测模式为上述当前块在当前 分割深度下的多种可选预测模式中率失真代价最小的预测模式(即确定上述当 前块在当前分割深度下的最佳预测模式,具体可以计算出上述当前块在当前分 割深度下的多种可选预测模式对应的率失真代价,将率失真代价最小的预测模 式作为当前块在当前分割深度下的最佳预测模式)。 可以理解, 由于若上述当 前块的当前分割深度不属于上述允许块分割深度集合,则可不计算上述当前块 在当前分割深度下的最佳预测模式,这就有利于在一定程度上减少确定上述当 前块在当前分割深度下是否进行子块分割的计算复杂度。
在本发明一些实施例中,在上述根据上述允许块分割深度集合确定上述当 前块的最佳预测模式的方面,处理器 1601可具体用若上述当前块的当前分割深 度不属于上述允许块分割深度集合,则将上述当前块的当前预测模式作为上述 当前块的最佳预测模式。
在本发明的一些实施例中,在上述根据上述允许块分割深度集合确定上述 当前块的最佳预测模式的方面,处理器 1601可具体用于若上述当前块的当前分 割深度属于上述允许块分割深度集合, 计算出上述当前块的最佳预测模式, 其 中,上述当前块的最佳预测模式为上述当前块在当前分割深度下的所有可选预 测模式之中率失真代价最小的预测模式,或者上述当前块的最佳预测模式为上 述当前块在当前分割深度下的多种可选预测模式之中率失真代价最小的预测 模式。
在本发明一些实施例中,上述当前块的最佳预测模式可为如下任一种预测 模式: 跳过模式( skip模式)、 直接模式( Direct模式)、 方块预测模式、 非方 块预测模式。
在本发明一些实施例中,上述方块预测模式为预测块的宽和高尺寸相等的 预测模式, 包括但不限于 2N*2N预测模式或 N*N预测模式, 其中, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,上述非方块预测模式为预测块的宽和高尺寸不 等的预测模式, 包括但不限于 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 上述 N为正 整数, 例如 N可等于 2的 X次冪, X为自然数。
在本发明的一些实施例中,若上述当前块的当前分割深度属于上述允许块 分割深度集合,则上述当前块的率失真代价可为上述当前块在最佳预测模式下 的率失真代价; 和 /或, 若上述当前块的当前分割深度小于上述允许块分割深 度集合中的块最小分割深度,则上述当前块的率失真代价可为上述当前块在当 前预测模式下的率失真代价。
在本发明的一些实施例中,在计算上述当前块进行子块分割后的率失真代 价的方面,处理器 1601可具体用于基于上述当前块被分割成的各子块的率失真 代价计算上述当前块进行子块分割后的率失真代价。
在本发明的一些实施例中,在上述基于上述当前块被分割成的各子块的率 失真代价计算上述当前块进行子块分割后的率失真代价的方面, 处理器 1601 可具体用于将上述当前块被分割成的所有子块的率失真代价的加权组合(其 中, 所有子块的率失真代价的权值可相等或不等)作为上述当前块进行子块分 割后的率失真代价;或将上述当前块被分割成的所有子块的率失真代价总和作 为上述当前块进行子块分割后的率失真代价;或者根据上述当前块被分割成的 所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到上述 当前块进行子块分割后的率失真代价(其中, 例如可将所有子块的率失真代价 之中的最大率失真代价或者最小率失真代价乘以 yl而得到的值,作为上述当前 块进行子块分割后的率失真代价, yl可为整数(yl例如等于 0.5、 1、 2、 3、 4 或其它值));或者根据上述当前块被分割成的所有子块的率失真代价之中的任 意一个率失真代价得到上述当前块进行子块分割后的率失真代价(例如可将所 有子块的率失真代价之中的任意一个率失真代价乘以 y2而得到的值,作为上述 当前块进行子块分割后的率失真代价, y2可为整数(y2例如等于 0.5、 1、 2、 3、 4或其它值)); 或者根据上述当前块被分割成的所有子块的率失真代价的平均 值得到上述当前块进行子块分割后的率失真代价(例如可将所有子块的率失真 代价的平均值乘以 y3而得到的值,作为上述当前块进行子块分割后的率失真代 价, y3可为整数(y3例如等于 0.5、 1、 2、 3、 4或其它值))。
当然也可通过其它方式,基于上述当前块被分割成的各子块的率失真代价 计算上述当前块进行子块分割后的率失真代价。
可以理解的是,本实施例的视频编码器 1600的各功能模块的功能可根据上 述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的 相关描述, 此处不再赘述。
可以看出, 本实施例方案中,视频编码器 1600在视频编码中过程中先确定 当前块的允许块分割深度集合;而后根据上述允许块分割深度集合确定当前块 的最佳预测模式。由于编码端可以根据当前块的允许块分割深度集合来确定上 述当前块的最佳预测模式,而并非是每次都通过计算多个块的率失真等性能参 数来确定当前块的最佳预测模式, 因此,有利于降低在视频编码过程中确定当 前块的最佳预测模式的计算复杂度,进而也有利于降低在视频编码过程中确定 当前块的块分割方式的计算复杂度。
进一步的, 上述当前块的允许块分割深度集合可以为: 帧级允许块分割深 度集合、或块级允许块分割深度集合、或帧级允许块分割深度集合与块级允许 块分割深度集合的并集。其中, 上述块级允许块分割深度集合包括上述当前块 的预测块所使用的 K个块分割深度, 上述 K为正整数。 帧级允许块分割深度集 合可包括: 在当前统计周期内或截至到当前时刻时, 与上述当前块所属视频帧 类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 上述 M为 正整数。这种举例的允许块分割深度集合选定方式有利于使得确定出的当前块 的块分割方式更加趋于合理,进而在平衡计算复杂度的前提下获得更好的编码 效果。
本发明实施例还提供一种计算机存储介质, 其中, 该计算机存储介质可存 储有程序,该程序执行时包括上述方法实施例中记载的视频编码中的块分割方 式确定方法的部分或全部步骤。
本发明实施例还提供一种计算机存储介质, 其中, 该计算机存储介质可存 储有程序,该程序执行时包括上述方法实施例中记载的视频编码中的当前块的 最佳预 'j模式确定方法的部分或全部步骤。
需要说明的是, 对于前述的各方法实施例, 为了简单描述, 故将其都表述 为一系列的动作组合,但是本领域技术人员应该知悉, 本发明并不受所描述的 动作顺序的限制,因为依据本发明,某些步骤可以釆用其他顺序或者同时进行。 其次, 本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施 例, 所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重, 某个实施例中没有详 述的部分, 可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的装置, 可通过其 它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例如上述单 元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例 如多个单元或组件可以结合或者可以集成到另一个***, 或一些特征可以忽 略, 或不执行。 另一点, 所显示或讨论的相互之间的耦合或直接辆合或通信连 接可以是通过一些接口, 装置或单元的间接辆合或通信连接, 可以是电性或其 它的形式。 单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者 也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部 单元来实现本实施例方案的目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元 中。上述集成的单元既可以釆用硬件的形式实现,也可以釆用软件功能单元的 形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售 或使用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发 明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全 部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储 介质中, 包括若干指令用以使得一台计算机设备(可为个人计算机、 服务器或 者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。 而前述的 存储介质包括: U盘、 只读存储器(英文: Read-Only Memory, 缩写: ROM )、 随机存取存储器 (英文: Random Access Memory, 缩写: RAM )、 移动硬盘、 磁碟或者光盘等各种可以存储程序代码的介质。
以上上述, 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理 解: 其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分 技术特征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的本质脱 离本发明各实施例技术方案的范围。

Claims

权 利 要 求
1、 一种视频编码中的块分割方式确定方法, 其特征在于, 包括: 确定当前块的允许块分割深度集合;
根据所述允许块分割深度集合确定所述当前块在当前分割深度下是否进 行子块分割。
2、根据权利要求 1所述的方法, 其特征在于, 若所述当前块的当前分割深 度不属于所述允许块分割深度集合,则不计算所述当前块在当前分割深度下的 最佳预测模式。
3、根据权利要求 1所述的方法, 其特征在于, 所述根据所述允许块分割深 度集合确定所述当前块在当前分割深度下是否进行子块分割包括:若所述当前 块的当前分割深度大于所述允许块分割深度集合中的块最大分割深度,则确定 所述当前块不进行子块分割。
4、根据权利要求 1所述的方法, 其特征在于, 所述根据所述允许块分割深 度集合确定所述当前块在当前分割深度下是否进行子块分割包括:若所述当前 块的当前分割深度属于所述允许块分割深度集合,或所述当前块的当前分割深 度小于所述允许块分割深度集合中的块最小分割深度,则计算所述当前块进行 子块分割后的率失真代价,若所述当前块的率失真代价小于或等于所述当前块 进行子块分割后的率失真代价, 则确定所述当前块不进行子块分割; 若所述当 前块的率失真代价大于所述当前块进行子块分割后的率失真代价,则确定所述 当前块进行子块分割。
5、根据权利要求 4所述的方法, 其特征在于, 若所述当前块的当前分割深 度属于所述允许块分割深度集合,则所述当前块的率失真代价为所述当前块在 最佳预测模式下的率失真代价。
6、 根据权利要求 4或 5所述的方法, 其特征在于, 若所述当前块的当前分 割深度 d、于所述允许块分割深度集合中的块最小分割深度,则所述当前块的率 失真代价为所述当前块在当前预测模式下的率失真代价。
7、 根据权利要求 5或 6所述的方法, 其特征在于, 所述当前块的最佳预测 模式为所述当前块在当前分割深度下的所有可选预测模式中率失真代价最小 的预测模式,或所述当前块的最佳预测模式为所述当前块在当前分割深度下的 多种可选预测模式中率失真代价最小的预测模式。
8、 根据权利要求 4至 7任意一项所述的方法, 其特征在于,
所述计算所述当前块进行子块分割后的率失真代价, 包括: 基于所述当前 块被分割成的子块的率失真代价获得所述当前块进行子块分割后的率失真代 价。
9、 根据权利要求 8所述的方法, 其特征在于,
所述基于所述当前块被分割成的子块的率失真代价获得所述当前块进行 子块分割后的率失真代价, 包括: 将所述当前块被分割成的所有子块的率失真 代价的加权组合作为所述当前块进行子块分割后的率失真代价;或将所述当前 块被分割成的所有子块的率失真代价总和作为所述当前块进行子块分割后的 率失真代价;或者根据所述当前块被分割成的所有子块的率失真代价之中的最 大率失真代价或者最小率失真代价得到所述当前块进行子块分割后的率失真 代价;或者根据所述当前块被分割成的所有子块的率失真代价之中的任意一个 率失真代价得到所述当前块进行子块分割后的率失真代价;或者根据所述当前 块被分割成的所有子块的率失真代价的平均值得到所述当前块进行子块分割 后的率失真代价。
10、 根据权利要求 1至 9任意一项所述的方法, 其特征在于, 所述允许块分 割深度集合为: 帧级允许块分割深度集合、 或块级允许块分割深度集合、 或帧 级允许块分割深度集合与块级允许块分割深度集合的并集。
11、 根据权利要求 10所述的方法, 其特征在于,
所述帧级允许块分割深度集合包括:
在当前统计周期内或截止当前时刻,与所述当前块所属视频帧类型相同的 已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M为正整数。
12、 根据权利要求 11所述的方法, 其特征在于, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
13、 根据权利要求 10至 12任一项所述的方法, 其特征在于, 所述块级允许 块分割深度集合包括: 所述当前块的预测块所使用的 K个块分割深度, 所述 K 为正整数。
14、 一种视频编码中的当前块的最佳预测模式确定方法, 其特征在于, 包 括:
确定当前块的允许块分割深度集合;
根据所述允许块分割深度集合确定所述当前块的最佳预测模式。
15、 根据权利要求 14所述的方法, 其特征在于, 若所述当前块的当前分割 深度不属于所述允许块分割深度集合,则不计算当前块在当前分割深度下的最 佳预测模式。
16、 根据权利要求 14所述的方法, 其特征在于, 所述根据所述允许块分割 深度集合确定所述当前块的最佳预测模式, 包括: 若所述当前块的当前分割深 度不属于所述允许块分割深度集合,则将所述当前块的当前预测模式作为所述 当前块的最佳预测模式。
17、 根据权利要求 14所述的方法, 其特征在于, 所述根据所述允许块分割 深度集合确定所述当前块的最佳预测模式, 包括: 若所述当前块的当前分割深 度属于所述允许块分割深度集合,计算出所述当前块的最佳预测模式, 所述当 前块的最佳预测模式为所述当前块在当前分割深度下的所有可选预测模式之 中率失真代价最小的预测模式,或者所述当前块的最佳预测模式为所述当前块 在当前分割深度下的多种可选预测模式之中率失真代价最小的预测模式。
18、 根据权利要求 14至 17任一项所述的方法, 其特征在于, 所述当前块的 最佳预测模式为如下任一种预测模式:
跳过模式、 直接模式、 方块预测模式、 非方块预测模式。
19、根据权利要求 18所述的方法,其特征在于,所述方块预测模式为 2N*2N 预测模式或 N*N预测模式, 其中, 所述 N为正整数。
20、 根据权利要求 18所述的方法, 其特征在于,
所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
21、 根据权利要求 14至 20任一项所述的方法, 其特征在于, 所述允许块分 割深度集合为: 帧级允许块分割深度集合、 或块级允许块分割深度集合、 或帧 级允许块分割深度集合与块级允许块分割深度集合的并集。
22、 根据权利要求 21所述的方法, 其特征在于, 所述帧级允许块分割深度 集合包括: 在当前统计周期内或截止当前时刻, 与所述当前块所属视频帧类型 相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M为正整 数。
23、 根据权利要求 22所述的方法, 其特征在于, 所述统计周期为一个图组 GOP长度或者相邻两个 intra帧的间隔。
24、 根据权利要求 21至 23任一项所述的方法, 其特征在于, 所述块级允许 块分割深度集合包括: 所述当前块的预测块所使用的 K个块分割深度, 所述 K 为正整数。
25、 一种视频编码器, 其特征在于, 包括:
集合确定单元, 用于确定当前块的允许块分割深度集合;
分割确定单元,用于根据所述允许块分割深度集合确定所述当前块在当前 分割深度下是否进行子块分割。
26、 根据权利要求 25所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度不属于所述允许块分割深度集合,则所述分割确定单元不计算所述 当前块在当前分割深度下的最佳预测模式。
27、 根据权利要求 25所述的视频编码器, 其特征在于,
所述分割确定单元具体用于,若所述当前块的当前分割深度大于所述允许 块分割深度集合中的块最大分割深度, 则确定所述当前块不进行子块分割。
28、 根据权利要求 25所述的视频编码器, 其特征在于, 所述分割确定单元 具体用于: 若所述当前块的当前分割深度属于所述允许块分割深度集合, 或者 所述当前块的当前分割深度小于所述允许块分割深度集合中的块最小分割深 度, 则计算所述当前块进行子块分割后的率失真代价, 若所述当前块的率失真 代价小于或等于所述当前块进行子块分割后的率失真代价,则确定所述当前块 不进行子块分割;若所述当前块的率失真代价大于所述当前块进行子块分割后 的率失真代价, 则确定所述当前块进行子块分割。
29、 根据权利要求 28所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度属于所述允许块分割深度集合,则所述当前块的率失真代价为所述 当前块在最佳预测模式下的率失真代价。
30、 根据权利要求 28或 29所述的视频编码器, 其特征在于, 若所述当前块 的当前分割深度小于所述允许块分割深度集合中的块最小分割深度,则所述当 前块的率失真代价为所述当前块在当前预测模式下的率失真代价。
31、 根据权利要求 28所述的视频编码器, 其特征在于, 所述当前块的最佳 预测模式为:所述当前块在当前分割深度下的所有可选预测模式中率失真代价 最小的预测模式,或者所述当前块在当前分割深度下的多种可选预测模式中率 失真代价最小的预测模式。
32、 根据权利要求 28至 31任意一项所述的视频编码器, 其特征在于, 在所述计算所述当前块进行子块分割后的率失真代价的方面,所述分割确 定单元具体用于:基于所述当前块被分割成的子块的率失真代价获得所述当前 块进行子块分割后的率失真代价。
33、 根据权利要求 32所述的视频编码器, 其特征在于,
在所述基于所述当前块被分割成的子块的率失真代价获得所述当前块进 行子块分割后的率失真代价的方面, 所述分割确定单元具体用于: 将所述当前 块被分割成的所有子块的率失真代价的加权组合作为所述当前块进行子块分 割后的率失真代价;或将所述当前块被分割成的所有子块的率失真代价总和作 为所述当前块进行子块分割后的率失真代价;或者根据所述当前块被分割成的 所有子块的率失真代价之中的最大率失真代价或者最小率失真代价得到所述 当前块进行子块分割后的率失真代价;或者根据所述当前块被分割成的所有子 块的率失真代价之中的任意一个率失真代价得到所述当前块进行子块分割后 的率失真代价;或者根据所述当前块被分割成的所有子块的率失真代价的平均 值得到所述当前块进行子块分割后的率失真代价。
34、 根据权利要求 25至 33任意一项所述的视频编码器, 其特征在于, 所述允许块分割深度集合为: 帧级允许块分割深度集合、或块级允许块分 割深度集合、 或帧级允许块分割深度集合与块级允许块分割深度集合的并集。
35、 根据权利要求 32所述的视频编码器, 其特征在于, 所述帧级允许块分 割深度集合包括: 在当前统计周期内或截止当前时刻, 与所述当前块所属视频 帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M 为正整数。
36、 根据权利要求 35所述的视频编码器, 其特征在于, 所述统计周期为一 个图组 GOP长度或者相邻两个 intra帧的间隔。
37、 根据权利要求 34至 36任一项所述的视频编码器, 其特征在于, 所述块 级允许块分割深度集合包括所述当前块的预测块所使用的 K个块分割深度, 所 述 K为正整数。
38、 一种视频编码器, 其特征在于, 包括:
集合确定单元, 用于确定当前块的允许块分割深度集合;
预测模式确定单元,用于根据所述允许块分割深度集合确定所述当前块的 最佳预测模式。
39、 根据权利要求 38所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度不属于所述允许块分割深度集合,则所述预测模式确定单元不计算 当前块在当前分割深度下的最佳预测模式。
40、 根据权利要求 38所述的视频编码器, 其特征在于,
所述预测模式确定单元具体用于:若所述当前块的当前分割深度不属于所 述允许块分割深度集合,则将所述当前块的当前预测模式作为所述当前块的最 佳预测模式。
41、 根据权利要求 38所述的视频编码器, 其特征在于,
所述预测模式确定单元具体用于:若所述当前块的当前分割深度属于所述 允许块分割深度集合,计算出所述当前块的最佳预测模式, 所述当前块的最佳 预测模式为所述当前块在当前分割深度下的所有可选预测模式之中率失真代 价最小的预测模式,或者所述当前块的最佳预测模式为所述当前块在当前分割 深度下的多种可选预测模式之中率失真代价最小的预测模式。
42、 根据权利要求 38至 41任一项所述的视频编码器, 其特征在于, 所述当 前块的最佳预测模式为如下任一种预测模式:
跳过模式、 直接模式、 方块预测模式、 非方块预测模式。
43、 根据权利要求 42所述的视频编码器, 其特征在于, 所述方块预测模式 为 2N*2N预测模式或 N*N预测模式, 其中, 所述 N为正整数。
44、 根据权利要求 42所述的视频编码器, 其特征在于,
所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
45、 根据权利要求 38至 44任一项所述的视频编码器, 其特征在于, 所述允 许块分割深度集合为:帧级允许块分割深度集合、或块级允许块分割深度集合、 或帧级允许块分割深度集合与块级允许块分割深度集合的并集。
46、 根据权利要求 45所述的视频编码器, 其特征在于, 所述帧级允许块分 割深度集合包括: 在当前统计周期内或截止当前时刻, 与所述当前块所属视频 帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M 为正整数。
47、 根据权利要求 46所述的视频编码器, 其特征在于, 所述统计周期为一 个图组 GOP长度或者相邻两个 intra帧的间隔。
48、 根据权利要求 45至 47任一项所述的视频编码器, 其特征在于, 所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K个块 分割深度, 所述 K为正整数。
49、 一种视频编码器, 其特征在于, 包括:
存储器、 以及与所述存储器连接的处理器
其中, 所述处理器用于, 确定当前块的允许块分割深度集合; 根据所述允 许块分割深度集合确定所述当前块在当前分割深度下是否进行子块分割。
50、 根据权利要求 49所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度不属于所述允许块分割深度集合,所述处理器不计算所述当前块在 当前分割深度下的最佳预测模式。
51、 根据权利要求 49所述的视频编码器, 其特征在于,
所述处理器用于,若所述当前块的当前分割深度大于所述允许块分割深度 集合中的块最大分割深度, 确定所述当前块不进行子块分割。
52、 根据权利要求 49所述的视频编码器, 其特征在于,
所述处理器用于,若所述当前块的当前分割深度属于所述允许块分割深度 集合,或所述当前块的当前分割深度小于所述允许块分割深度集合中的块最小 分割深度, 则计算所述当前块进行子块分割后的率失真代价, 若所述当前块的 率失真代价小于或等于所述当前块进行子块分割后的率失真代价,则确定所述 当前块不进行子块分割;若所述当前块的率失真代价大于所述当前块进行子块 分割后的率失真代价, 则确定所述当前块进行子块分割。
53、 根据权利要求 52所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度属于所述允许块分割深度集合,则所述当前块的率失真代价为所述 当前块在最佳预测模式下的率失真代价。
54、 根据权利要求 52或 53所述的视频编码器, 其特征在于, 若所述当前块 的当前分割深度小于所述允许块分割深度集合中的块最小分割深度,则所述当 前块的率失真代价为所述当前块在当前预测模式下的率失真代价。
55、 根据权利要求 53或 54所述的视频编码器, 其特征在于, 所述当前块的 最佳预测模式为所述当前块在当前分割深度下的所有可选预测模式中率失真 代价最小的预测模式,或所述当前块的最佳预测模式为所述当前块在当前分割 深度下的多种可选预测模式中率失真代价最小的预测模式。
56、 根据权利要求 52至 55任意一项所述的视频编码器, 其特征在于, 所述 处理器用于,基于所述当前块被分割成的子块的率失真代价获得所述当前块进 行子块分割后的率失真代价。
57、 根据权利要求 56所述的视频编码器, 其特征在于,
所述处理器用于,将所述当前块被分割成的所有子块的率失真代价的加权 组合作为所述当前块进行子块分割后的率失真代价;或将所述当前块被分割成 的所有子块的率失真代价总和作为所述当前块进行子块分割后的率失真代价; 或者根据所述当前块被分割成的所有子块的率失真代价之中的最大率失真代 价或者最小率失真代价得到所述当前块进行子块分割后的率失真代价;或者根 据所述当前块被分割成的所有子块的率失真代价之中的任意一个率失真代价 得到所述当前块进行子块分割后的率失真代价;或者根据所述当前块被分割成 的所有子块的率失真代价的平均值得到所述当前块进行子块分割后的率失真 代价。
58、 根据权利要求 49至 57任意一项所述的视频编码器, 其特征在于, 所述 允许块分割深度集合为: 帧级允许块分割深度集合、或块级允许块分割深度集 合、 或帧级允许块分割深度集合与块级允许块分割深度集合的并集。
59、 根据权利要求 58所述的视频编码器, 其特征在于,
所述帧级允许块分割深度集合包括: 在当前统计周期内或截止当前时刻,与所述当前块所属视频帧类型相同的 已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M为正整数。
60、 根据权利要求 59所述的视频编码器, 其特征在于, 所述统计周期为一 个图组 GOP长度或者相邻两个 intra帧的间隔。
61、 根据权利要求 58至 60任一项所述的视频编码器, 其特征在于, 所述块 级允许块分割深度集合包括: 所述当前块的预测块所使用的 K个块分割深度, 所述 K为正整数。
62、 一种视频编码器, 其特征在于, 包括:
存储器、 以及与所述存储器连接的处理器
其中, 所述处理器用于, 确定当前块的允许块分割深度集合; 根据所述允 许块分割深度集合确定所述当前块的最佳预测模式。
63、 根据权利要求 62所述的视频编码器, 其特征在于, 若所述当前块的当 前分割深度不属于所述允许块分割深度集合,则所述处理器不计算当前块在当 前分割深度下的最佳预测模式。
64、 根据权利要求 62所述的视频编码器, 其特征在于,
所述处理器用于,若所述当前块的当前分割深度不属于所述允许块分割深 度集合, 则将所述当前块的当前预测模式作为所述当前块的最佳预测模式。
65、 根据权利要求 62所述的视频编码器, 其特征在于,
所述处理器用于,若所述当前块的当前分割深度属于所述允许块分割深度 集合,计算出所述当前块的最佳预测模式, 所述当前块的最佳预测模式为所述 当前块在当前分割深度下的所有可选预测模式之中率失真代价最小的预测模 式,或者所述当前块的最佳预测模式为所述当前块在当前分割深度下的多种可 选预测模式之中率失真代价最小的预测模式。
66、 根据权利要求 62至 65任一项所述的视频编码器, 其特征在于, 所述当 前块的最佳预测模式为如下任一种预测模式:
跳过模式、 直接模式、 方块预测模式、 非方块预测模式。
67、 根据权利要求 66所述的视频编码器, 其特征在于, 所述方块预测模式 为 2N*2N预测模式或 N*N预测模式, 其中, 所述 N为正整数。
68、 根据权利要求 66所述的视频编码器, 其特征在于, 所述非方块预测模式为 2N*1.5N预测模式、 2N*0.5N预测模式、 0.5N*2N 预测模式、 N*2N预测模式、 2N*N预测模式或 1.5N*2N预测模式, 所述 N为正 整数。
69、 根据权利要求 62至 68任一项所述的视频编码器, 其特征在于, 所述允许块分割深度集合为: 帧级允许块分割深度集合、或块级允许块分 割深度集合、 或帧级允许块分割深度集合与块级允许块分割深度集合的并集。
70、 根据权利要求 69所述的视频编码器, 其特征在于, 所述帧级允许块分 割深度集合包括: 在当前统计周期内或截止当前时刻, 与所述当前块所属视频 帧类型相同的已编码视频帧中使用比例最高的 M个块分割深度, 其中, 所述 M 为正整数。
71、 根据权利要求 70所述的视频编码器, 其特征在于, 所述统计周期为一 个图组 GOP长度或者相邻两个 intra帧的间隔。
72、 根据权利要求 69至 71任一项所述的视频编码器, 其特征在于, 所述块级允许块分割深度集合包括: 所述当前块的预测块所使用的 K个块 分割深度, 所述 K为正整数。
73、 一种计算机存储介质, 其中, 所述计算机存储介质可存储有程序, 该 程序执行时包括上述权利要求 1至 24任一项所述的方法。
PCT/CN2014/082032 2014-01-21 2014-07-11 视频编码中的块分割方式和最佳预测模式确定方法及相关装置 WO2015109778A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/016,544 US20160156907A1 (en) 2014-01-21 2016-02-05 Method for Determining Block Partitioning Manner and Optimal Prediction Mode in Video Coding and Related Apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410028766.0A CN103780910A (zh) 2014-01-21 2014-01-21 视频编码中的块分割方式和最佳预测模式确定方法及相关装置
CN201410028766.0 2014-01-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/016,544 Continuation US20160156907A1 (en) 2014-01-21 2016-02-05 Method for Determining Block Partitioning Manner and Optimal Prediction Mode in Video Coding and Related Apparatus

Publications (1)

Publication Number Publication Date
WO2015109778A1 true WO2015109778A1 (zh) 2015-07-30

Family

ID=50572681

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/082032 WO2015109778A1 (zh) 2014-01-21 2014-07-11 视频编码中的块分割方式和最佳预测模式确定方法及相关装置

Country Status (3)

Country Link
US (1) US20160156907A1 (zh)
CN (1) CN103780910A (zh)
WO (1) WO2015109778A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780910A (zh) * 2014-01-21 2014-05-07 华为技术有限公司 视频编码中的块分割方式和最佳预测模式确定方法及相关装置
WO2015196424A1 (en) * 2014-06-26 2015-12-30 Mediatek Inc. Methods for the transmission of flags related to dbbp
WO2016061743A1 (en) * 2014-10-21 2016-04-28 Mediatek Singapore Pte. Ltd. Segmental prediction for video coding
CN104125469B (zh) * 2014-07-10 2017-06-06 中山大学 一种用于hevc的快速编码方法
CN104202605B (zh) * 2014-08-18 2017-11-14 山东大学 一种通过降低分辨率预测高清图像编码单元cu的划分方式的方法及其实现装置
US10863186B2 (en) * 2016-08-26 2020-12-08 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
CN108965894B (zh) * 2017-05-27 2021-12-21 华为技术有限公司 一种视频图像的编解码方法及装置
CN108124154B (zh) * 2017-12-28 2020-04-24 北京数码视讯科技股份有限公司 帧间预测模式的快速选择方法、装置及电子设备
WO2019141012A1 (en) * 2018-01-18 2019-07-25 Mediatek Inc. Video processing methods and apparatuses for processing video data coded in large size coding units
CN113767400A (zh) * 2019-03-21 2021-12-07 谷歌有限责任公司 使用率失真成本作为深度学习的损失函数
KR20210154157A (ko) 2019-04-23 2021-12-20 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 다중 변환 행렬의 선택 및 컨텍스트 모델링
CN111988612B (zh) * 2020-08-28 2023-05-02 北京奇艺世纪科技有限公司 一种视频编码处理方法、装置及电子设备
CN113613006B (zh) * 2021-07-30 2023-08-18 浙江裕瀚科技有限公司 一种视频编码的方法、***和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120057788A1 (en) * 2010-09-06 2012-03-08 Tokyo Metropolitan University Image processing apparatus and method
US20130022129A1 (en) * 2011-01-25 2013-01-24 Mediatek Singapore Pte. Ltd. Method and Apparatus for Compressing Coding Unit in High Efficiency Video Coding
CN102984521A (zh) * 2012-12-12 2013-03-20 四川大学 基于时域相关性的高性能视频编码帧间模式判决方法
CN103780910A (zh) * 2014-01-21 2014-05-07 华为技术有限公司 视频编码中的块分割方式和最佳预测模式确定方法及相关装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102595141A (zh) * 2012-03-13 2012-07-18 中国科学院上海应用物理研究所 一种基于四叉树与邻域搜索相结合的分形图像压缩方法
KR20140072231A (ko) * 2012-11-26 2014-06-13 한국전자통신연구원 율-왜곡 비용의 확률분포를 이용한 비디오 부호화기의 고속 예측모드 결정 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120057788A1 (en) * 2010-09-06 2012-03-08 Tokyo Metropolitan University Image processing apparatus and method
US20130022129A1 (en) * 2011-01-25 2013-01-24 Mediatek Singapore Pte. Ltd. Method and Apparatus for Compressing Coding Unit in High Efficiency Video Coding
CN102984521A (zh) * 2012-12-12 2013-03-20 四川大学 基于时域相关性的高性能视频编码帧间模式判决方法
CN103780910A (zh) * 2014-01-21 2014-05-07 华为技术有限公司 视频编码中的块分割方式和最佳预测模式确定方法及相关装置

Also Published As

Publication number Publication date
US20160156907A1 (en) 2016-06-02
CN103780910A (zh) 2014-05-07

Similar Documents

Publication Publication Date Title
WO2015109778A1 (zh) 视频编码中的块分割方式和最佳预测模式确定方法及相关装置
JP6276335B2 (ja) 映像復号化方法及び映像復号化装置
JP5937253B2 (ja) 映像の符号化方法及びその装置、並びに映像の復号化方法及びその装置
JP2022078048A (ja) 画像復号方法及び画像符号化方法
KR20190077298A (ko) 영상 복호화 방법 및 장치
EP2592831A2 (en) Method and apparatus for encoding video using adjustable loop filtering, and method and apparatus for decoding video using adjustable loop filtering
JP7482536B2 (ja) 適応的な数の領域を伴う幾何学的分割のための形状適応離散コサイン変換
KR102105323B1 (ko) 객체 기반 적응적 밝기 보상 방법 및 장치
CN113647104A (zh) 在以自适应区域数量进行的几何分区中的帧间预测
CN113170175A (zh) 用于不可用参考图像的自适应时间滤波器
KR101607613B1 (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR20220027986A (ko) 필터링을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
KR20150045980A (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101607614B1 (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101606853B1 (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101606683B1 (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101607611B1 (ko) 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101886259B1 (ko) 영상 부호화 방법 및 장치, 및 부호화된 비트스트림을 포함하는 기록 매체
CN114009038A (zh) 图像标头中全局运动矢量的信号发送
CN113615184A (zh) 扩展长期参考图片保留的显式信令
EP3918801A1 (en) Online and offline selection of extended long term reference picture retention

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14879837

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14879837

Country of ref document: EP

Kind code of ref document: A1