WO2015055134A1 - 视频编解码中的块分割方式确定方法及相关装置 - Google Patents

视频编解码中的块分割方式确定方法及相关装置 Download PDF

Info

Publication number
WO2015055134A1
WO2015055134A1 PCT/CN2014/088799 CN2014088799W WO2015055134A1 WO 2015055134 A1 WO2015055134 A1 WO 2015055134A1 CN 2014088799 W CN2014088799 W CN 2014088799W WO 2015055134 A1 WO2015055134 A1 WO 2015055134A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
current block
information
depth
current
Prior art date
Application number
PCT/CN2014/088799
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 华为技术有限公司
Priority to EP14853668.3A priority Critical patent/EP3051817A4/en
Publication of WO2015055134A1 publication Critical patent/WO2015055134A1/zh
Priority to US15/130,035 priority patent/US10506241B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Definitions

  • the present invention relates to the field of image processing technologies, and in particular, to a block segmentation method for determining video coding, a block segmentation method for determining video decoding, and related devices.
  • HEVC High Efficient Video Coding
  • the basic principle of video coding compression is to use the correlation between airspace, time domain and codewords to remove redundancy as much as possible.
  • the current popular practice is to use a block-based hybrid video coding framework to implement video coding compression through prediction (including intra prediction and inter prediction), transform, quantization, and entropy coding.
  • This coding framework shows a strong vitality, and HEVC still uses this block-based hybrid video coding framework.
  • a video sequence includes a series of pictures, the picture is further divided into slices, and the slices are further divided into blocks.
  • the video coding is performed in units of blocks, and can be encoded from left to right and from top to bottom line from the upper left corner position of the picture.
  • the concept of Block is further extended.
  • macroblocks MB, Macro Block
  • the MB can be further divided into multiple prediction blocks (partitions, which can be used for predictive coding).
  • coding units CU, Coding Unit
  • PU Prediction Unit
  • TU Transform Unit
  • the CU is further divided into a plurality of PUs according to the division mode; the TU may correspond to the transform block, and is a basic unit for transforming the prediction residual.
  • the TU may correspond to the transform block, and is a basic unit for transforming the prediction residual.
  • CTB Coding Tree Block
  • an image block is usually further divided by a quadtree partitioning method. For example, when a CU of an upper layer is divided into sub-coding units (Sub-CUs), a block split identifier (split_flag) is used to identify the current Sub- Whether the CU continues to split down into smaller Sub-CUs.
  • split_flag block split identifier
  • determining whether the current block continues to be segmented requires calculating performance parameters such as rate distortion of a plurality of blocks, and calculating a performance parameter such as rate distortion of a plurality of blocks each time makes the calculation process more complicated.
  • the embodiments of the present invention provide a block segmentation mode determining method in video coding, a block segmentation mode determining method and a related device in video decoding, in order to reduce the computational complexity of determining a block segmentation mode of a current block in a video encoding/decoding process.
  • a first aspect of the embodiments of the present invention provides a method for determining a block splitting manner in video coding, which may include:
  • the processing information is block partitioning depth information and/or block encoding mode information, where N is a positive integer; wherein the N related blocks include at least one of the following image blocks: at least one of the current blocks 1 neighboring block, a reference block of the current block, and at least 1 neighboring block of the reference block.
  • the block coding mode indicated by the block coding mode information is a Merge mode or a Skip mode.
  • the determining, by the processing information of the N related blocks, the block division manner of the current block includes: If the processing information is the block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, determining that the block partitioning manner of the current block is not splitting, the first partitioning depth Greater than or equal to a maximum of the block partition depths of the N related blocks;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is block partition depth information and block encoding mode information
  • the current block If the block partitioning depth is greater than or equal to the first partitioning depth, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, determining that the block division mode of the current block is not split, the first The block partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the processing according to the N related blocks determines a block division manner of the current block, including:
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, determining a block partitioning manner of the current block according to the first preset condition, the first partitioning The depth is greater than or equal to a maximum of the block partition depths of the N related blocks;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the according to the first preset condition The block division mode of the current block;
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and the block encoding mode of at least one of the N related blocks
  • the block coding mode indicated by the information is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, where the first block segmentation depth is greater than or equal to the block segmentation depth of the N related blocks. Maximum value.
  • the method further includes:
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, the block split identifier is not carried in the code stream corresponding to the current block, The first partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the block corresponding to the current block does not carry the block.
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block indicated by the block encoding mode information of the N related blocks
  • the coding mode is the Merge mode, the block partition identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum of the block partition depths of the N related blocks. value.
  • the method further includes:
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, the block partitioning identifier is written in the code stream corresponding to the current block, where the a piece of segmentation depth greater than or equal to a maximum of block division depths of the N correlation blocks;
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the code stream corresponding to the current block Writing the block split identifier in the middle;
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and the block encoding mode of at least one of the N related blocks If the block coding mode indicated by the information is not the Merge mode, the block partition identifier is written in a code stream corresponding to the current block, where the first block partition depth is greater than or equal to the block partition of the N related blocks. The maximum value in depth.
  • the N related blocks include the reference block of the current block and/or at least 1 of the reference block a neighboring block, the current block is attributed to the first texture view, the reference block and the reference block At least one neighboring block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view
  • first texture is regarded as a dependent view
  • second texture is regarded as a reference view or a dependent view that has been encoded when encoding the first texture view, wherein the first texture view and the second view
  • the textures correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least 1 of the reference block a neighboring block, the current block is attributed to a depth map, and the reference block and at least one neighboring block of the reference block are attributed to a texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different moments.
  • a second aspect of the embodiments of the present invention provides a method for determining a block splitting manner in video decoding, which may include:
  • the processing information is block partitioning depth information and/or block encoding mode information, where N is a positive integer; wherein the N related blocks include at least one of the following image blocks: at least one of the current blocks 1 neighboring block, a reference block of the current block, and at least 1 neighboring block of the reference block.
  • the block coding mode indicated by the block coding mode information is a Merge mode or a Skip mode.
  • the determining, according to the processing information of the N related blocks, a block partitioning manner of the current block, including The block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block. And determining, according to the processing information of the N related blocks, a block division manner of the current block.
  • the method further includes: carrying, in the code stream corresponding to the current block, a corresponding block partition of the current block At the time of the identifier, the block division manner of the current block is determined according to the block division identifier.
  • a fourth possible implementation Determining, according to the processing information of the N related blocks, the block partitioning manner of the current block, if the processing information is block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first Blocking the depth, determining that the block partitioning manner of the current block is not divided, and the first block partitioning depth is greater than or equal to a maximum of the block partitioning depths of the N related blocks;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is block partitioning depth information and block encoding mode information
  • a block partitioning depth of the current block is greater than or equal to a first block partitioning depth
  • block encoding mode information of the N related blocks indicates
  • the block coding mode is the Merge mode
  • the block division manner of the current block is determined to be no division
  • the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • a fifth possible implementation Determining, according to the processing information of the N related blocks, the block partitioning manner of the current block, if the processing information is block partitioning depth information, and the block partitioning depth of the current block is smaller than the first partitioning Determining, determining, according to the first preset condition, a block partitioning manner of the current block, where the first block partitioning depth is greater than or equal to a maximum value of block partitioning depths of the N related blocks;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the according to the first preset condition The block division mode of the current block;
  • the processing information is block partition depth information and block encoding mode information
  • the current block If the block partitioning depth is smaller than the first partitioning depth, and the block encoding mode information indicated by the block encoding mode information of the at least one of the N related blocks is not the Merge mode, determining the current according to the first preset condition a block division manner of the block, the first block division depth being greater than or equal to a maximum value of block division depths of the N correlation blocks.
  • the N related blocks include the reference block of the current block and/or at least 1 of the reference block a neighboring block, the current block is attributed to the first texture view, and the reference block and at least one neighboring block of the reference block are attributed to the second texture view.
  • the second texture is regarded as a reference view of the first texture view
  • first texture is regarded as a dependent view
  • second texture is regarded as a reference view or a dependent view that has been decoded when decoding the first texture view, wherein the first texture view and the second view
  • the textures correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least 1 of the reference block a neighboring block, the current block is attributed to a depth map, and the reference block and at least one neighboring block of the reference block are attributed to a texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded, and the depth map and the texture view correspond to the same or different moments.
  • a third aspect of the embodiments of the present invention provides a video encoder, including:
  • An obtaining unit configured to acquire processing information of N related blocks of the current block
  • a determining unit configured to determine, according to processing information of the N related blocks, a block score of the current block a cutting mode; wherein the processing information is block partitioning depth information and/or block encoding mode information, and the N is a positive integer; the N related blocks include at least one of the following image blocks: the current block At least 1 neighboring block, a reference block of the current block, and at least 1 neighboring block of the reference block.
  • the block coding mode indicated by the block coding mode information acquired by the acquiring unit is a Merge mode or a Skip mode.
  • the determining unit is specifically configured to: if the processing information is block partitioning depth information, and the current The block partitioning depth of the block is greater than or equal to the first block partitioning depth, and the block partitioning manner of the current block is determined to be non-segmented, and the first block partitioning depth is greater than or equal to the block partitioning depth of the N related blocks.
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding mode information indicated by the block encoding mode information of the N related blocks In the Merge mode, it is determined that the block partitioning manner of the current block is not divided, and the first block partitioning depth is greater than or equal to a maximum value of the block partitioning depths of the N related blocks.
  • the determining unit is specifically configured to:
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and the block partitioning manner of the current block is determined according to the first preset condition, where the first partitioning depth is greater than or Equal to a maximum of the block partition depths of the N related blocks;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the according to the first preset condition The block division mode of the current block;
  • the processing information is block partitioning depth information and block encoding mode information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and block editing of at least one of the N related blocks
  • the block coding mode indicated by the code mode information is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, where the first block segmentation depth is greater than or equal to the block segmentation depth of the N related blocks. The maximum value in .
  • the video encoder further includes:
  • a processing unit configured to determine a block split identifier corresponding to a block split mode of the current block
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, the block split identifier is not carried in the code stream corresponding to the current block, The first partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks;
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the block segment identifier is not carried in the code stream corresponding to the current block;
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block indicated by the block encoding mode information of the N related blocks
  • the coding mode is the Merge mode, the block partition identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum of the block partition depths of the N related blocks. value.
  • the processing unit is further configured to: if the processing information is the block partitioning depth information, and the block partitioning depth of the current block is smaller than the first partitioning depth, write the foregoing in the code stream corresponding to the current block a block partition identifier, the first block partition depth being greater than or equal to a maximum value of block partition depths of the N related blocks;
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the code stream corresponding to the current block Writing the block split identifier in the middle;
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and the block encoding mode of at least one of the N related blocks If the block coding mode indicated by the information is not the Merge mode, the block partition identifier is written in a code stream corresponding to the current block, where the first block partition depth is greater than or equal to the block partition of the N related blocks. The maximum value in depth.
  • a fourth aspect of the present invention provides a video decoder, which may include:
  • An obtaining unit configured to acquire processing information of N related blocks of the current block
  • a determining unit configured to determine, according to processing information of the N related blocks, a block partitioning manner of the current block, where the processing information is block partitioning depth information and/or block encoding mode information, where N is a positive integer
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the block coding mode indicated by the block coding mode information acquired by the acquiring unit is a Merge mode or a Skip mode.
  • the determining unit is specifically configured to not carry the current current in the code stream corresponding to the current block
  • the block partitioning manner of the current block is determined according to the processing information of the N related blocks.
  • the video decoder further includes: a second determining unit, configured to determine, according to the block split identifier, when a corresponding block split identifier of the current block is carried in a code stream corresponding to the current block The block division mode of the current block.
  • the determining unit is specifically configured to: if the processing information is block partitioning depth information, and the current block, in the aspect of determining the block partitioning manner of the current block according to the processing information of the N related blocks.
  • the block partitioning depth is greater than or equal to the first block partitioning depth, and the block partitioning manner of the current block is determined to be non-segmented, and the first block partitioning depth is greater than or equal to a maximum of the block partitioning depths of the N related blocks.
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding mode information indicated by the block encoding mode information of the N related blocks In the Merge mode, it is determined that the block partitioning manner of the current block is not divided, and the first block partitioning depth is greater than or equal to a maximum value of the block partitioning depths of the N related blocks.
  • the determining unit is specifically configured to: if the processing information is block partitioning depth information, and the current block, in the aspect of determining the block partitioning manner of the current block according to the processing information of the N related blocks. Determining a block partitioning depth of the current block according to a first preset condition, where the first block partition depth is greater than or equal to a block partition depth of the N related blocks. Maximum value
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the according to the first preset condition The block division mode of the current block;
  • the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, and the block encoding mode of at least one of the N related blocks
  • the block coding mode indicated by the information is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, where the first block segmentation depth is greater than or equal to the block segmentation depth of the N related blocks. Maximum value.
  • the encoding end acquires processing information of the N related blocks of the current block, and determines a block dividing manner of the current block according to the processing information of the N related blocks, where the N pieces are
  • the correlation block includes: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and / or block encoding mode information.
  • the processing information of the off block ie, block partition depth information and/or block coding mode information, etc.
  • the block division mode of the current block is therefore advantageous for reducing the computational complexity of determining the block division mode of the current block in the video coding process.
  • the decoding end acquires processing information of the N related blocks of the current block, and determines a block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include And at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or a block. Encoding mode information.
  • the decoding end can determine the block division manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block coding mode information, etc.), instead of calculating multiple times each time
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • FIG. 1 is a schematic flowchart of a method for determining a block splitting manner in video coding according to an embodiment of the present disclosure
  • FIG. 1 is a schematic diagram of a positional relationship between a current block and N related blocks according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of a method for determining a block splitting manner in video decoding according to an embodiment of the present disclosure
  • FIG. 3 is a schematic flowchart of another method for determining a block splitting manner in video coding according to an embodiment of the present disclosure
  • FIG. 4 is a schematic flowchart of another method for determining a block splitting manner in video coding according to an embodiment of the present invention
  • FIG. 5 is another method for determining a block splitting manner in video decoding according to an embodiment of the present invention. Schematic diagram of the process
  • FIG. 6 is a schematic flowchart of another method for determining a block splitting manner in video decoding according to an embodiment of the present disclosure
  • 7-a and 7-b are schematic diagrams of two video encoders provided by an embodiment of the present invention.
  • FIG. 8-a and FIG. 8-b are schematic diagrams of two video decoders according to an embodiment of the present invention.
  • FIG. 9 is a schematic diagram of a video encoding apparatus according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic diagram of a video decoding apparatus according to an embodiment of the present invention.
  • FIG. 11 is a schematic flowchart of a video encoding method according to an embodiment of the present invention.
  • FIG. 12 is a schematic flowchart of a video decoding method according to an embodiment of the present disclosure.
  • FIG. 13 is a schematic diagram of another video encoder according to an embodiment of the present disclosure.
  • FIG. 14 is a schematic diagram of another video decoder according to an embodiment of the present invention.
  • FIG. 15 is a schematic diagram of another video encoding apparatus according to an embodiment of the present disclosure.
  • FIG. 16 is a schematic diagram of another video decoding apparatus according to an embodiment of the present invention.
  • the embodiments of the present invention provide a block segmentation mode determining method in video coding, a block segmentation mode determining method and a related device in video decoding, in order to reduce the computational complexity of determining a block segmentation mode of a current block in a video encoding/decoding process.
  • An embodiment of the method for determining a block division manner in a video coding may include: acquiring processing information of N related blocks of a current block; and according to the N related blocks The processing information determines a block division manner of the current block, wherein the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer; the N related blocks include at least one of the following image blocks. : at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • FIG. 1 is a schematic flowchart of a method for determining a block splitting manner in video coding according to an embodiment of the present invention. As shown in FIG. 1-a, a video according to an embodiment of the present invention is provided.
  • the block division mode determining method in encoding may include the following contents:
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the N related blocks of the current block a may be at least one of the following image blocks: image block a1, image block a2, image block a3, image block a4, image block b, image block b1 , image block b2, image block b3, and image block b4.
  • image block a1, the image block a2, the image block a3, and the image block a4 are The neighboring block of the current block a.
  • the image block b is a reference block of the current block a
  • the image block b1, the image block b2, the image block b3, and the image block b4 are reference blocks of the image block b.
  • the method for determining the block division of the current block may be specifically determining that the current block is not segmented or determining that the current block is segmented, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the block of the current block may be determined according to the processing information of the N related blocks according to multiple manners. The way to split.
  • determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first partition. Depth, determining that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the test finds that the above-mentioned example determines the block division mode of the current block, which is simple in calculation and high in reliability, and has strong implementation value.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined as performing segmentation, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and the foregoing N
  • the block coding mode indicated by the block coding mode information of at least one of the related blocks is not the Merge mode, and the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block is to perform segmentation, wherein the first block segmentation depth is greater than or equal to a maximum value among the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined according to the first preset condition, where the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks; or, if the processing information is block coding mode information, And the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, and the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the method may further include: determining a block score of the current block a block division identifier corresponding to the cut mode; wherein, if the processing information is the block partition depth information, and the block partition depth of the current block is greater than or equal to the first block partition depth, the code stream corresponding to the current block does not carry the foregoing a block partition identifier, wherein the first block partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the code segment corresponding to the current block does not carry the block division identifier; Or, if the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding indicated by the block encoding mode information of the N related blocks
  • the mode is the Merge mode, and the block split identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum value of the block partition depths of the N related blocks.
  • the method may further include: determining a block split identifier corresponding to the block split mode of the current block; wherein, if the processing information is block split depth information, and the block partition depth of the current block is And less than the first block partition depth, the block split identifier is written in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks. Or if the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, then the code stream corresponding to the current block is written.
  • the block split identifier may be written in the code stream corresponding to the current block, where the first block segmentation depth is greater than or equal to the N correlations.
  • the block split identifier corresponding to the block split mode of the current block indicates whether the current block is split.
  • the block split mode of the current block may be determined according to the first preset condition.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, thereby facilitating the block segmentation mode of the current block.
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the CU usually uses a quad-tree partitioning method for further segmentation. For example, when the CU of the upper layer is divided into sub-coding units (Sub-CUs), the block partitioning identifier is used.
  • a split (flag) is used to identify whether the current Sub-CU continues to split down into smaller Sub-CUs. For example, if the split_flag takes a value of "1", it indicates that the current Sub-CU continues to be split down into smaller Sub-CUs; when the split_flag takes a value of "0", it indicates that the current Sub-CU terminates the partition.
  • split_flag can also use other values to indicate the block partitioning mode of the current block.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein The texture view and the second texture view correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different time.
  • the encoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the encoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and/or the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, and the decoding end may determine the block partitioning mode of the current block based on the setting logic, thereby facilitating To reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases are written in the code stream corresponding to the current block, the current block corresponds to The block partition identifier, the block partition identifier may occupy a large proportion in the code stream.
  • An embodiment of the method for determining a block division manner in video decoding may include: acquiring processing information of N related blocks of a current block; and according to the N related blocks The processing information determines a block partitioning manner of the current block, wherein the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighbor of the reference block. a block, wherein the processing information is block partition depth information and/or block encoding mode information, and the above N is a positive integer.
  • FIG. 2 is a schematic flowchart of a method for determining a block splitting manner in video decoding according to an embodiment of the present invention. As shown in FIG. 2, a block splitting manner in video decoding according to an embodiment of the present invention is provided.
  • the determination method can include the following:
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the method for determining the block division of the current block may be specifically determining that the current block is not segmented or determining that the current block is segmented, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the block of the current block may be determined according to the processing information of the N related blocks according to multiple manners. The way to split.
  • the determining, according to the processing information of the N related blocks, the block splitting manner of the current block may include: the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division mode of the current block is determined based on the processing information of the N related blocks.
  • the block division mode of the current block may be determined according to the block division identifier.
  • the block division mode of the current block may be determined according to the processing information of the N related blocks.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, thereby facilitating the block split mode of the current block.
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first block partition depth, Then, it is determined that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined as performing segmentation, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and the foregoing N
  • the block coding mode indicated by the block coding mode information of at least one of the related blocks is not the Merge mode, and the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block may be determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined according to the first preset condition, where the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks; or, if the processing information is block coding mode information, And the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, and the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed for the image of the current block, Determining the current block to perform segmentation; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the decoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the decoding end can determine the block division manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block coding mode information, etc.), instead of calculating multiple times each time
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the decoding end can determine the block division mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, thereby facilitating Reduce the code stream load to a certain extent, because when the current block (for example) If the CU partitioning is more complicated, if all the cases write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, the block split identifier may occupy a large proportion in the code stream.
  • FIG. 3 is a schematic flowchart of another method for determining a block splitting manner in video coding according to an embodiment of the present invention. As shown in FIG. 3, another block in video coding according to an embodiment of the present invention is provided.
  • the method of determining the split mode may include the following:
  • the encoder acquires processing information of N related blocks of the current block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the encoder determines whether a block partition depth of the current block is greater than or equal to a first block partition depth.
  • step 303 If yes, go to step 303;
  • step 305 is performed.
  • the first partition depth may be greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the encoder determines whether the block coding mode indicated by the block coding mode information of the N related blocks is a Merge mode.
  • step 304 If yes, proceed to step 304;
  • step 305 If no, go to step 305;
  • the encoder determines that the block division mode of the current block is not divided, and the encoder may not write the block partition identifier corresponding to the block division mode of the current block in the code stream corresponding to the current block.
  • the encoder determines, according to the first preset condition, a block split mode of the current block, and writes a block split identifier corresponding to the block split mode of the current block determined according to the first preset condition in the code stream corresponding to the current block. symbol.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video coding.
  • the N related blocks include the reference block of the current block And/or at least one neighboring block of the reference block
  • the current block is attributed to the depth map
  • the reference block and at least one neighboring block of the reference block are attributed to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video coding with a depth map.
  • the encoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the encoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and/or the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, and the decoding end may determine the block partitioning mode of the current block based on the setting logic, thereby facilitating
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • FIG. 4 is a schematic flowchart of another method for determining a block splitting manner in video coding according to an embodiment of the present invention. As shown in FIG. 4, another block in video coding according to an embodiment of the present invention is provided.
  • the method of determining the split mode may include the following:
  • the encoder acquires processing information of N related blocks of the current block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N related blocks may include 4 phases of the reference block of the current block described above At least one neighboring block in the neighboring block (N is a positive integer in this scenario); or the N related blocks may include at least one of the reference block of the current block and at least one of the four neighboring blocks of the current block a block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include a reference block of the current block and at least one adjacent block of the four adjacent blocks of the reference block (in this scenario) N is a positive integer greater than 1); or, the N related blocks may include at least one of 4 adjacent blocks of the current block and at least 1 adjacent block of the reference block of the current block 1 neighboring block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least the reference block 1 adjacent block (N is a positive integer greater than 2 in this scenario).
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the encoder determines whether the block coding mode indicated by the block coding mode information of the N related blocks is a Merge mode.
  • step 405 is performed.
  • the first partition depth may be greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the encoder determines whether a block partition depth of the current block is greater than or equal to a first block partition depth.
  • step 404 If yes, proceed to step 404;
  • the encoder determines that the block division mode of the current block is not split, and the encoder may not write the block split identifier corresponding to the block split mode of the current block in the code stream corresponding to the current block.
  • the encoder determines, according to the first preset condition, a block split mode of the current block, and writes a block split identifier corresponding to the block split mode of the current block determined according to the first preset condition in the code stream corresponding to the current block. symbol.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, Determining that the current block is not divided; or, if the segmentation depth of the current block is less than the second segmentation depth threshold, determining that the current block is segmented; Determining that the current block is not divided if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold; or determining the current block if the block size of the current block is greater than the size of the smallest block allowed in the image of the current block.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block. For example, a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8. The smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video coding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video coding with a depth map.
  • the encoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the encoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and/or the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the encoding end may not be written in the code stream corresponding to the current block.
  • the block partition identifier corresponding to the current block, and the decoding end can determine the block partitioning mode of the current block by itself according to the setting logic, thereby facilitating to reduce the code stream load to a certain extent, because when the current block (for example, CU) is more complicated to segment If the block split identifier corresponding to the current block is written in the code stream corresponding to the current block in all cases, the block split identifier may occupy a large proportion in the code stream.
  • FIG. 5 is a schematic flowchart of another method for determining a block splitting manner in video decoding according to an embodiment of the present invention. As shown in FIG. 5, another block in video decoding according to an embodiment of the present invention is provided.
  • the method of determining the split mode may include the following:
  • the decoder determines, by parsing the code stream corresponding to the current block, whether the code stream corresponding to the current block carries a block split identifier corresponding to the current block.
  • the decoder determines, according to the block split identifier corresponding to the current block carried in the code stream corresponding to the current block, a block split mode corresponding to the current block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the block coding mode indicated by the block coding mode information It may be Merge mode or Skip mode or other block coding mode.
  • the decoder determines whether a block partition depth of the current block is greater than or equal to a first block partition depth.
  • step 507 is performed.
  • the first partition depth may be greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the decoder determines whether the block coding mode indicated by the block coding mode information of the N related blocks is a Merge mode.
  • the decoder determines that the block division mode of the current block is not split.
  • the decoder determines a block division manner of the current block based on the first preset condition.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is considered to be the reference view of the first texture view; or, the first texture is regarded as a dependent view, and the second texture is regarded as being decoded.
  • the first texture is a decoded reference view or dependent view, wherein the first texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the decoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current The at least one neighboring block of the block, the reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and block encoding mode information.
  • the decoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the decoding end can determine the block division mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, thereby facilitating The code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the current block for example, CU
  • FIG. 6 is a schematic flowchart of another method for determining a block splitting manner in video decoding according to an embodiment of the present invention. As shown in FIG. 6, another block in video decoding according to an embodiment of the present invention is provided.
  • the method of determining the split mode may include the following:
  • the decoder determines, by parsing the code stream corresponding to the current block, whether the code stream corresponding to the current block carries a block split identifier corresponding to the current block.
  • the decoder determines, according to the block split identifier corresponding to the current block carried in the code stream corresponding to the current block, a block split mode corresponding to the current block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the decoder determines whether the block coding mode indicated by the block coding mode information of the N related blocks is a Merge mode.
  • step 607 is performed.
  • the first partition depth may be greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the decoder determines whether a block partition depth of the current block is greater than or equal to a first block partition depth.
  • step 606 If yes, go to step 606;
  • step 607 If no, go to step 607;
  • the decoder determines that the block division manner of the current block is not split.
  • the decoder determines a block division manner of the current block based on the first preset condition.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the decoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information. And block encoding mode information.
  • the decoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the decoding end can determine the block division mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, thereby facilitating The code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the current block for example, CU
  • an embodiment of the present invention provides a video encoder 700, which may include:
  • the obtaining unit 710 and the determining unit 720 are identical to each other.
  • the obtaining unit 710 is configured to acquire processing information of N related blocks of the current block.
  • a determining unit 720 configured to determine, according to processing information of the N related blocks, a block partitioning manner of the current block, where the N related blocks include at least one neighboring block of the current block, the current a reference block of the block and/or at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block coding mode information, the N being a positive integer.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the determining unit 720 may be specifically configured to: if the processing information is block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, determining the current block The block division manner is not divided, and the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is block split depth information and block encoding mode information
  • the current block is If the block partitioning depth is greater than or equal to the first partitioning depth, and the block encoding mode indicated by the block encoding mode information of the N related blocks is the Merge mode, determining that the block partitioning manner of the current block is not split, the first partitioning depth Greater than or equal to the maximum of the block partition depths of the above N related blocks.
  • the determining unit 720 may be specifically configured to determine, according to the first preset condition, that if the processing information is block partitioning depth information, and the block partitioning depth of the current block is smaller than the first partitioning depth In the block division manner of the current block, the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the current block according to the first preset condition.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the determining unit 720 may determine that the specific implementation manner of the block splitting manner of the current block according to the first preset condition may be various.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block. For example, a 64x64 image block is divided into 4 layers according to the maximum division depth. The 0th layer block size is 64x64, and the first layer block size is 32x32, the second layer. The block size is 16x16, the third block size is 8x8, and the smallest block size is 8x8. In the actual application, the first preset condition can be selected as needed, and will not be repeated here.
  • video encoder 700 may further include:
  • the processing unit 730 is configured to determine a block split identifier corresponding to the block split mode of the current block.
  • the processing information is the block partitioning depth information, and the block segmentation depth of the current block is greater than or equal to the first block segmentation depth, the block segment identifier is not carried in the code stream corresponding to the current block, and the first block segmentation depth is greater than Or equal to the maximum of the block partition depths of the above N related blocks;
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the block segment identifier is not carried in the code stream corresponding to the current block;
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding mode indicated by the block encoding mode information of the N related blocks is In the Merge mode, the block split identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum value of the block partition depths of the N related blocks.
  • the processing unit 730 is further configured to: if the processing information is block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, the code stream corresponding to the current block Writing the above-mentioned block division identifier, where the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks;
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the code is written in the code stream corresponding to the current block.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division identifier is written in the code stream corresponding to the current block, where the first block depth is greater than or equal to the N related blocks. The maximum value in the block partition depth.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein The texture view and the second texture view correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different time.
  • the video encoder 700 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks; wherein the N related blocks include And at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or a block. Encoding mode information.
  • the video encoder can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block encoding mode information, etc.), instead of calculating each time by calculation
  • the performance parameters such as rate distortion of the block determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the video encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, so It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier The symbol may occupy a large proportion in the code stream.
  • the current block for example, CU
  • an embodiment of the present invention provides a video decoder 800, which may include:
  • the obtaining unit 810 and the determining unit 820 are obtaining units 810 and the determining unit 820.
  • the obtaining unit 810 is configured to acquire processing information of N related blocks of the current block.
  • a determining unit 820 configured to determine, according to processing information of the N related blocks, a block partitioning manner of the current block, where the N related blocks include at least one neighboring block of the current block, a reference block of the current block, and And at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the determining unit 820 may be specifically configured to determine, according to the processing information of the N related blocks, when the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division mode of the current block may be specifically configured to determine, according to the processing information of the N related blocks, when the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • video decoder 800 may further include:
  • the second determining unit 830 is configured to determine, according to the block partition identifier, a block partitioning manner of the current block, when the code stream corresponding to the current block carries the corresponding block partition identifier of the current block.
  • the determining unit 820 may be specifically configured to: if the processing information is the block partitioning depth information, and the foregoing determining, by using the processing information of the N related blocks, the block dividing manner of the current block, If the block segmentation depth of the current block is greater than or equal to the first block segmentation depth, determining that the block segmentation manner of the current block is not segmented, and the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks. ;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding mode indicated by the block encoding mode information of the N related blocks is the Merge
  • the mode determines that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining unit 820 is specifically configured to: if the processing information is the block partitioning depth information, and the foregoing, in the foregoing, determining the block splitting manner of the current block according to the processing information of the N related blocks.
  • the block segmentation depth of the current block is smaller than the first block segmentation depth, and the block segmentation mode of the current block is determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks. ;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the current block according to the first preset condition.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the specific implementation manner of the determining, by the determining unit 820, the block segmentation mode of the current block according to the first preset condition may be various.
  • the determining unit 820 determines the block segmentation of the current block according to the first preset condition.
  • the method may include: determining that the current block is segmented if the corresponding rate distortion performance of the current block is better than that of the current block without segmentation; if the current block is not segmented, the corresponding rate distortion performance is worse than the current block is not segmented.
  • Corresponding rate-distortion performance determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth Threshold, determining that the current block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal to the current Blocking the size of the smallest block allowed for the image, determining that the current block is not split.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the video decoder 800 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks; wherein the N related blocks include And at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or a block. Encoding mode information.
  • the video decoder can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block encoding mode information, etc.), instead of calculating each time by calculation
  • the performance parameters such as rate distortion of the block determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the video decoder can determine the block partitioning mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, so It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier The symbol may occupy a large proportion in the code stream.
  • the current block for example, CU
  • FIG. 9 is a schematic diagram of a video encoding apparatus 900 according to an embodiment of the present invention.
  • the video encoding apparatus 900 may include at least one bus 901, at least one processor 902 connected to the bus 901, and at least one memory connected to the bus 601. 903.
  • the processor 902 by using the bus 901, calls the code stored in the memory 903 to obtain processing information of the N related blocks of the current block, and determines a block partitioning manner of the current block according to the processing information of the N related blocks.
  • the processing information is block split depth information and/or block encoding mode information, where N is a positive integer; the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, The reference block of the current block and the at least one adjacent block of the reference block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the determining, by the processor 902, the block division manner of the current block may be determining whether the current block is not segmented or determining the current block to perform segmentation, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the processor 902 can perform processing according to the foregoing N related blocks according to multiple manners. The information determines the block division manner of the current block described above.
  • the determining, by the processor 902, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first partition. Depth, determining that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the test finds that the above-mentioned example determines the block division mode of the current block, which is simple in calculation and high in reliability, and has strong implementation value.
  • the determining, by the processor 902, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining that the block division manner of the current block is performing segmentation, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and If the block coding mode indicated by the block coding mode information of at least one of the N correlation blocks is not the Merge mode, the block division mode of the current block may be determined to be segmentation.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first partitioning depth
  • the block encoding mode information indication of at least one of the N related blocks is The block coding mode is not the Merge mode
  • the block division mode of the current block is determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining, by the processor 902, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining, according to the first preset condition, a block division manner of the current block, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is a block coding mode Information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, A preset condition determines a block division manner of the current block.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the specific implementation manner of the processor 902 determining the block partitioning manner of the current block according to the first preset condition may be various.
  • the processor 902 determines the block partition of the current block according to the first preset condition.
  • the method may include: determining that the current block is segmented if the corresponding rate distortion performance of the current block is better than that of the current block without segmentation; if the current block is not segmented, the corresponding rate distortion performance is worse than the current block is not segmented.
  • Corresponding rate-distortion performance determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth Threshold, determining that the current block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal to the current Blocking the size of the smallest block allowed for the image, determining that the current block is not split.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the processor 902 may further determine a block split identifier corresponding to the block split mode of the current block, where the processing information is block split depth information, and the block partition depth of the current block is greater than Or the first block partition depth, the block stream identifier is not carried in the code stream corresponding to the current block, wherein the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the code segment corresponding to the current block does not carry the block division identifier; Or, if the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, the block split identifier is not carried in the code stream corresponding to the current block.
  • the first partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks.
  • the processor 902 is further configured to: if the processing information is block split depth information, and the block partition depth of the current block is smaller than the first block partition depth, the code stream corresponding to the current block The above-mentioned block division identifier is written, wherein the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks. Or if the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, then the code stream corresponding to the current block is written.
  • the block split identifier may be written in the code stream corresponding to the current block, where the first block segmentation depth is greater than or equal to the N correlations.
  • the block split identifier corresponding to the block split mode of the current block indicates whether the current block is split.
  • the block split mode of the current block may be determined according to the first preset condition.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein The texture view and the second texture view correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different time.
  • the video encoding device 900 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks.
  • the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, where N is a positive integer, and the processing information is block partitioning. Depth information and/or block coding mode information.
  • the video encoding apparatus 900 can determine the block division manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block encoding mode information, etc.), instead of calculating each time
  • the performance parameters such as rate distortion of a plurality of blocks determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video encoding process.
  • the video encoding device 900 may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoding end may determine the block split mode of the current block based on the setting logic. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • FIG. 10 is a schematic diagram of a video encoding apparatus 1000 according to an embodiment of the present invention.
  • the video encoding apparatus 1000 may include at least one bus 1001, at least one processor 1002 connected to the bus 1001, and at least one memory connected to the bus 601. 1003.
  • the processor 1002 by using the bus 1001, calls the code stored in the memory 1003 for acquiring processing information of the N related blocks of the current block; and determining, according to the processing information of the N related blocks, the block partitioning manner of the current block;
  • the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, wherein the processing information is block partition depth information and / or block coding mode information, the above N is a positive integer.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include at least one of the reference block of the current block and the 4 neighboring blocks of the current block (this scenario)
  • the lower N is a positive integer greater than 1
  • the N related blocks may include the reference block of the current block and at least one adjacent block of the 4 adjacent blocks of the reference block (N is greater than 1 in this scenario) Or a positive integer of the above; or, the N related blocks may include at least one of the four adjacent blocks of the current block and at least one of the four adjacent blocks of the reference block of the current block.
  • the N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one neighbor of the reference block Block (N is a positive integer greater than 2 in this scenario).
  • the determining, by the processor 1002, the block division manner of the current block may be determining whether the current block is not segmented or determining that the current block is divided, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the processor 1002 may determine the current current according to the processing information of the N related blocks according to multiple manners. The block division method of the block.
  • the determining, by the processor 1002, the block division manner of the current block according to the processing information of the N related blocks may include: the block corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division manner of the current block is determined based on the processing information of the N related blocks.
  • the block division mode of the current block may be determined according to the block division identifier.
  • the block division mode of the current block may be determined according to the processing information of the N related blocks.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the video decoding device 1000 may determine the block split mode of the current block based on the setting logic. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • the determining, by the processor 1002, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the current If the block partition depth of the block is greater than or equal to the first block partition depth, it may be determined that the block partitioning manner of the current block is not divided, and the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it may be determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining, by the processor 1002, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining that the block division manner of the current block is performing segmentation, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and If the block coding mode indicated by the block coding mode information of at least one of the N correlation blocks is not the Merge mode, the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block may be determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks.
  • the determining, by the processor 1002, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining, according to the first preset condition, a block division manner of the current block, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is a block coding mode If the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the block division mode of the current block may be determined according to the first preset condition.
  • the block partitioning manner of the current block may be determined according to the first preset condition, where the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the specific implementation manner of the processor 1002 for determining the block division mode of the current block according to the first preset condition may be various.
  • the processor 1002 determines the block division of the current block according to the first preset condition.
  • the method may include: determining that the current block is segmented if the corresponding rate distortion performance of the current block is better than that of the current block without segmentation; if the current block is not segmented, the corresponding rate distortion performance is worse than the current block is not segmented.
  • Corresponding rate-distortion performance determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth Threshold, determining that the current block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal to the current Blocking the size of the smallest block allowed for the image, determining that the current block is not split.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • 64x64 image blocks are divided into 4 layers according to the maximum partition depth.
  • the 0th block size is 64x64
  • the first layer block size is 32x32
  • the second layer block size is 16x16
  • the third layer block size is 8x8, the minimum.
  • the block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the video decoding device 1000 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: The at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or block coding. Mode information.
  • the video decoding device 1000 can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partitioning depth information and/or block encoding mode information, etc.), instead of calculating each time
  • the performance parameters such as rate distortion of the plurality of blocks determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the video decoding device 1000 may determine the block partitioning mode of the current block by itself according to the setting logic. Therefore, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • the embodiment of the invention further provides a block segmentation identifier coding method in video coding, including:
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block; a block partition identifier corresponding to the block partitioning mode of the current block; wherein, if the processing information is block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, the code stream corresponding to the current block
  • the block split identifier is not carried in, wherein the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the code segment corresponding to the current block does not carry the block division identifier; Or, if the above processing information is block partition depth information and block coding The code pattern information, and the block partition depth of the current block is greater than or equal to the first block partition depth, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, and the code stream corresponding to the current block The block split identifier is not carried in, wherein the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the processing information is the block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block partition identifier is written in the code stream corresponding to the current block, where the first partition depth is Greater than or equal to the maximum of the block partition depths of the above N related blocks.
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, then the code stream corresponding to the current block is written.
  • the block split identifier may be written in the code stream corresponding to the current block, where the first block segmentation depth is greater than or equal to the N correlations.
  • the block split identifier corresponding to the block split mode of the current block indicates whether the current block is split.
  • the block split mode of the current block may be determined according to the first preset condition.
  • the block partitioning manner of the current block may be determined according to the first preset condition, where the first partitioning depth is greater than Or the maximum value of the block partition depths of the N related blocks; or, if the processing information is block coding mode information, and the block indicated by the block coding mode information of at least one of the N related blocks If the coding mode is not the Merge mode, the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may be various.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block is segmented, the corresponding rate distortion is obtained.
  • the current block does not divide the corresponding rate-distortion performance, it is determined that the current block is not divided; or if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the current block is segmented depth If the second partition depth threshold is greater than or equal to the second partition depth threshold, determine that the current block is not divided; or, if the block size of the current block is larger than the size of the minimum block allowed for the image of the current block, determine that the current block is split; if the current block The block size is less than or equal to the size of the smallest block allowed for the image of the current block, and it is determined that the current block is not divided.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the encoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the encoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and/or the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, and the decoding end may determine the block partitioning mode of the current block based on the setting logic, thereby facilitating
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the embodiment of the invention further provides a block segmentation identifier decoding method in video coding, including:
  • the block division mode of the current block is determined according to the processing information of the N related blocks; the code stream corresponding to the current block is not When the block division identifier corresponding to the current block is carried, the processing information of the N related blocks of the current block is obtained; and the block division of the current block is determined according to the processing information of the N related blocks.
  • the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, where the processing information is block partitioning. Depth information and/or block coding mode information, where N is a positive integer.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first block partition depth, Then, it is determined that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined as performing segmentation, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and the foregoing N
  • the block coding mode indicated by the block coding mode information of at least one of the related blocks is not the Merge mode, and the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block may be determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; Alternatively, if the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the foregoing preset condition may be determined according to the first preset condition. The block division mode of the current block.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the texture is regarded as the texture view that has been decoded when decoding the depth map
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the decoding end of the current block when the decoding end of the current block carries the corresponding block partition identifier of the current block, the decoding end determines the block partitioning manner of the current block according to the processing information of the N related blocks; When the code stream corresponding to the current block does not carry the block partition identifier corresponding to the current block, the processing information of the N related blocks of the current block is obtained; and the block partitioning manner of the current block is determined according to the processing information of the N related blocks.
  • the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, wherein the processing information is a block partition depth Information and/or block coding mode information, where N is a positive integer.
  • the decoding end can determine the block division manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block coding mode information, etc.), instead of calculating multiple times each time
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the decoding end can determine the block division mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, thereby facilitating The code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the current block for example, CU
  • the embodiment of the present invention further provides a video encoding processing method, which may include: acquiring processing information of N related blocks of a current block; determining a block dividing manner of the current block according to processing information of the N related blocks; The block segmentation manner of the current block encodes the current block; wherein the processing information is block partition depth information and/or block coding mode information, and the N is a positive integer; the N correlation blocks include at least one of the following image blocks. : at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • FIG. 11 is a schematic flowchart of a video encoding method according to an embodiment of the present invention.
  • a video encoding method according to an embodiment of the present invention may include the following content:
  • the processing information is block partition depth information and/or block encoding mode information, where N is a positive integer; and the N related blocks include the following image. At least one of the blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the method for determining the block division of the current block may be specifically determining that the current block is not segmented or determining that the current block is segmented, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the block of the current block may be determined according to the processing information of the N related blocks according to multiple manners. The way to split.
  • determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first partition. Depth, it is determined that the block division mode of the current block is not divided Cut, the first partition depth is greater than or equal to the maximum of the block partition depths of the N related blocks.
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the test finds that the above-mentioned example determines the block division mode of the current block, which is simple in calculation and high in reliability, and has strong implementation value.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined as performing segmentation, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and the foregoing N
  • the block coding mode indicated by the block coding mode information of at least one of the related blocks is not the Merge mode, and the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block may be determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined according to the first preset condition, where the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks; or, if the processing information is block coding mode information, And the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, and the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where The first partition depth is greater than or equal to a maximum of the block partition depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the method may further include: determining a block split identifier corresponding to the block split mode of the current block; wherein, if the processing information is block split depth information, and the block partition depth of the current block is The block segment identifier is not carried in the code stream corresponding to the current block, and the block segment depth is greater than or equal to the maximum value of the block segment depths of the N related blocks.
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the code segment corresponding to the current block does not carry the block division identifier; Or, if the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding indicated by the block encoding mode information of the N related blocks
  • the mode is the Merge mode, and the block split identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum value of the block partition depths of the N related blocks.
  • the method may further include: determining a block split identifier corresponding to the block split mode of the current block; wherein, if the processing information is block split depth information, and the block partition depth of the current block is Less than the first block partition depth, then the code stream corresponding to the current block The above-mentioned block division identifier is written, wherein the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks. Or if the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, then the code stream corresponding to the current block is written.
  • the block split identifier may be written in the code stream corresponding to the current block, where the first block segmentation depth is greater than or equal to the N correlations.
  • the block split identifier corresponding to the block split mode of the current block indicates whether the current block is split.
  • the block split mode of the current block may be determined according to the first preset condition.
  • the encoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the encoding end may determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, the block partitioning depth information and/or the block encoding mode information, etc.), instead of calculating multiple times each time.
  • the performance parameter such as rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video coding process.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, thereby facilitating the block segmentation mode of the current block.
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the embodiment of the present invention further provides a video decoding processing method, which may include: acquiring processing information of N related blocks of a current block; determining, according to processing information of the N related blocks, a block dividing manner of the current block, based on the determined current The block partitioning manner of the block decodes the code stream corresponding to the current block; wherein the N related blocks include: at least one neighboring block of the current block, and a reference of the current block And at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • FIG. 12 is a schematic flowchart of a video decoding method according to an embodiment of the present invention.
  • a video decoding method according to an embodiment of the present invention may include the following content:
  • the N related blocks include: at least one neighboring block of the current block, a reference block of the current block, and/or at least one neighboring block of the reference block, where the processing information is block partitioning depth information. And/or block coding mode information, where N is a positive integer.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the method for determining the block division of the current block may be specifically determining that the current block is not segmented or determining that the current block is segmented, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the block of the current block may be determined according to the processing information of the N related blocks according to multiple manners. The way to split.
  • the determining, according to the processing information of the N related blocks, the block splitting manner of the current block may include: the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division mode of the current block is determined based on the processing information of the N related blocks.
  • the block division mode of the current block may be determined according to the block division identifier.
  • the block division mode of the current block may be determined according to the processing information of the N related blocks.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, thereby facilitating the block split mode of the current block.
  • the code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first block partition depth, Then, it is determined that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is If the degree is smaller than the first partition depth, the block partitioning manner of the current block may be determined as being performed, and the first partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks; or, if the processing information is If the block coding mode information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N correlation blocks is not the Merge mode, the block division mode of the current block may be determined to be segmentation.
  • the block division mode of the current block may be determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum of the block segmentation depths of the N related blocks.
  • the determining the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is smaller than the first block partition depth, The block division manner of the current block may be determined according to the first preset condition, where the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks; or, if the processing information is block coding mode information, And the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, and the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • determining the block division manner of the current block according to the first preset condition may include: After the block segmentation, the corresponding rate distortion performance is better than the current block non-segment corresponding rate distortion performance, and then the current block is determined to be segmented; if the current block segmentation corresponding to the rate distortion performance is worse than the current block does not segment the corresponding rate distortion performance, And determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining the current current The block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal
  • the size of the block can be the block size corresponding to the maximum separable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the decoding end acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: the current current At least one neighboring block of the block, a reference block of the current block, and/or at least one neighboring block of the reference block, the N is a positive integer, and the processing information is block partition depth information and/or block coding mode information. .
  • the decoding end can determine the block division manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block coding mode information, etc.), instead of calculating multiple times each time
  • the performance parameter such as the rate distortion of the block determines the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the decoding end can determine the block division mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, thereby facilitating The code stream load is reduced to some extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier It may occupy a large proportion in the code stream.
  • the current block for example, CU
  • an embodiment of the present invention provides a video encoder 1300, which may include:
  • the obtaining unit 1310, the determining unit 1320, and the encoding unit 1330 are obtaining units 1310, the determining unit 1320, and the encoding unit 1330.
  • the obtaining unit 1310 is configured to acquire processing information of N related blocks of the current block.
  • a determining unit 1320 configured to determine, according to processing information of the N related blocks, a block partitioning manner of the current block, where the N related blocks include at least one neighboring block of the current block, the current a reference block of the block and/or at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block coding mode information, the N being a positive integer.
  • the encoding unit 1330 is configured to encode the current block based on the block division manner of determining the current block.
  • the block coding mode indicated by the block coding mode information It may be Merge mode or Skip mode or other block coding mode.
  • the determining unit 1320 may be specifically configured to: if the processing information is block partitioning depth information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, determining the current block The block division manner is not divided, and the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks;
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding mode indicated by the block encoding mode information of the N related blocks is the Merge
  • the mode determines that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining unit 1320 may be specifically configured to: if the processing information is block partitioning depth information, and the block partitioning depth of the current block is smaller than the first block partitioning depth, determining, according to the first preset condition, In the block division manner of the current block, the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the current block according to the first preset condition.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the determining unit 1320 may determine that the specific implementation manner of the block partitioning manner of the current block according to the first preset condition may be various.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block. For example, 64x64 image blocks are divided into 4 layers according to the maximum partition depth. The 0th block size is 64x64, the first layer block size is 32x32, the second layer block size is 16x16, and the third layer block size is 8x8, the minimum. The block size is 8x8. In the actual application, the first preset condition can be selected as needed, and will not be repeated here.
  • video encoder 1300 may further include:
  • the coding unit 1330 is further configured to: determine a block split identifier corresponding to the block split mode of the current block; if the processing information is block split depth information, and the block split depth of the current block is greater than or equal to the first partition depth And the code segment corresponding to the current block does not carry the block segmentation identifier, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks;
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the block segment identifier is not carried in the code stream corresponding to the current block;
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding mode indicated by the block encoding mode information of the N related blocks is In the Merge mode, the block split identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum value of the block partition depths of the N related blocks.
  • the processing unit 1330 is further configured to: if the processing information is block partitioning depth information, and the block partitioning depth of the current block is smaller than the first partitioning depth, the code stream corresponding to the current block Write the above block split identifier, the first partition depth is greater than or equal to The maximum of the block partition depths of the above N related blocks;
  • the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the code is written in the code stream corresponding to the current block.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division identifier is written in the code stream corresponding to the current block, and the first block division depth is greater than or equal to the maximum value of the block division depths of the N related blocks.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein The texture view and the second texture view correspond to the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different time.
  • the video encoder 1300 obtains the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks; wherein the N related blocks include And at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or a block. Encoding mode information.
  • the processing information of the off block ie, block partition depth information and/or block coding mode information, etc.
  • the block division mode of the current block is therefore advantageous for reducing the computational complexity of determining the block division mode of the current block in the video coding process.
  • the video encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoder may determine the block split mode of the current block based on the setting logic, so It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier The symbol may occupy a large proportion in the code stream.
  • the current block for example, CU
  • an embodiment of the present invention provides a video decoder 1400, which may include:
  • the obtaining unit 1410, the determining unit 1420, and the decoding unit 1430 are obtaining units 1410, the determining unit 1420, and the decoding unit 1430.
  • the obtaining unit 1410 is configured to acquire processing information of N related blocks of the current block.
  • a determining unit 1420 configured to determine, according to processing information of the N related blocks, a block partitioning manner of the current block, where the N related blocks include at least one neighboring block of the current block, a reference block of the current block, and And at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the decoding unit 1430 is configured to decode the code stream corresponding to the current block based on the determined block division manner of the current block.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the determining unit 1420 is specifically configured to determine, according to the processing information of the N related blocks, when the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division mode of the current block is specifically configured to determine, according to the processing information of the N related blocks, when the block split identifier corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the determining unit 1420 is further configured to: when the code stream corresponding to the current block carries the corresponding block split identifier of the current block, determine the current according to the block split identifier.
  • the block division method of the block is further configured to: when the code stream corresponding to the current block carries the corresponding block split identifier of the current block, determine the current according to the block split identifier. The block division method of the block.
  • the determining unit 1420 may be specifically configured to: if the processing signal is The block partitioning depth information, and the block segmentation depth of the current block is greater than or equal to the first block segmentation depth, determining that the block segmentation manner of the current block is not segmented, and the first block segmentation depth is greater than or equal to the N related blocks.
  • the maximum value of the block partition depth is the maximum value of the block partition depth
  • the processing information is the block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding mode indicated by the block encoding mode information of the N related blocks is the Merge
  • the mode determines that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining unit 1420 is specifically configured to: if the processing information is the block partitioning depth information, and the foregoing, in the foregoing, determining the block partitioning manner of the current block according to the processing information of the N related blocks.
  • the block segmentation depth of the current block is smaller than the first block segmentation depth, and the block segmentation mode of the current block is determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks. ;
  • processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, determining the current block according to the first preset condition.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first block partitioning depth
  • the block encoding mode information of at least one of the N related blocks is indicated.
  • the block coding mode is not the Merge mode, and the block division mode of the current block is determined according to the first preset condition, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the specific implementation manner of the determining, by the determining unit 1420, the block segmentation mode of the current block according to the first preset condition may be various.
  • the determining unit 1420 determines the block segmentation of the current block according to the first preset condition.
  • the method may include: if the corresponding rate distortion performance after the current block is better than the current block non-segment corresponding rate distortion performance, determining that the current block is segmented; Determining that the current block is not segmented after the previous block is divided, and determining that the current block is not segmented; or if the segmentation depth of the current block is less than the second segmentation depth threshold, determining that the current block is performed If the segmentation depth of the current block is greater than or equal to the second segmentation depth threshold, determining that the current block is not segmented; or, if the block size of the current block is greater than the size of the minimum block allowed for the image of the current block, determining the above The current block is divided; if the block size of the current block is less than or equal to the size of the smallest block allowed in the image of the current block, it is determined that the current block is not divided.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 14x14.
  • the smallest block size is 14x14.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the video decoder 1400 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks; wherein the N related blocks include And at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is a block Cut depth information and/or block coding mode information.
  • the video decoder can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partition depth information and/or block encoding mode information, etc.), instead of calculating each time by calculation
  • the performance parameters such as rate distortion of the block determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the video decoder can determine the block partitioning mode of the current block by itself according to the setting logic, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block, so It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is more complicated, if all the cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation identifier The symbol may occupy a large proportion in the code stream.
  • the current block for example, CU
  • FIG. 15 is a schematic diagram of a video encoding apparatus 1500 according to an embodiment of the present invention.
  • the video encoding apparatus 1500 may include at least one bus 1501, at least one processor 1502 connected to the bus 1501, and at least one memory connected to the bus 601. 1503.
  • the processor 1502 by using the bus 1501, calls the code stored in the memory 1503 for acquiring processing information of the N related blocks of the current block; determining the block division mode of the current block according to the processing information of the N related blocks; Determining, in the block division manner of the current block, the current block, wherein the processing information is block partition depth information and/or block encoding mode information, where N is a positive integer; and the N related blocks include the following image blocks. At least one of: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the correlation block may include a reference block of the current block and at least one adjacent block of the four adjacent blocks of the reference block (N is a positive integer greater than 1 in this scenario);
  • the N related blocks may include 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 (in this scenario) N is a positive integer greater than 1); or, the N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block (in this scenario) N is a positive integer greater than 2).
  • the determining, by the processor 1502, the block division manner of the current block may be determining whether the current block is not segmented or determining that the current block is segmented, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the processor 1502 may determine the current current according to the processing information of the N related blocks according to multiple manners. The block division method of the block.
  • the determining, by the processor 1502, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first partition. Depth, determining that the block division manner of the current block is not divided, and the first block division depth is greater than or equal to a maximum value of the block division depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, it is determined that the block division mode of the current block is not divided.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it is determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the test finds that the above-mentioned example determines the block division mode of the current block, which is simple in calculation and high in reliability, and has strong implementation value.
  • the determining, by the processor 1502, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining that the block division manner of the current block is performing segmentation, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and If the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the current current may be determined.
  • the block division method of the block is to perform division.
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is smaller than the first partitioning depth
  • the block encoding mode information indication of at least one of the N related blocks is The block coding mode is not the Merge mode
  • the block division mode of the current block is determined to be segmentation, wherein the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining, by the processor 1502, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining, according to the first preset condition, a block division manner of the current block, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is a block coding mode If the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the specific implementation manner of the processor 1502 determining the block partitioning manner of the current block according to the first preset condition may be various.
  • the processor 1502 determines the block partition of the current block according to the first preset condition.
  • the method may include: determining that the current block is segmented if the corresponding rate distortion performance of the current block is better than that of the current block without segmentation; if the current block is not segmented, the corresponding rate distortion performance is worse than the current block is not segmented.
  • Corresponding rate-distortion performance determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth Threshold, determining that the current block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal to the current Blocking the size of the smallest block allowed for the image, determining that the current block is not split.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • a 64x64 image block is divided into four layers according to a maximum partition depth of 64x64, a first layer block size of 32x32, a second layer block size of 16x16, and a third layer block size of 8x8.
  • the smallest block size is 8x8.
  • the first preset bar can be selected as needed. We will not repeat them here.
  • the processor 1502 may further determine a block split identifier corresponding to the block split mode of the current block, where the processing information is block split depth information, and the block partition depth of the current block is greater than Or the first block partition depth, the block stream identifier is not carried in the code stream corresponding to the current block, wherein the first block partition depth is greater than or equal to a maximum value of the block partition depths of the N related blocks.
  • the processing information is the block coding mode information, and the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode, the code segment corresponding to the current block does not carry the block division identifier; Or, if the processing information is the block partitioning depth information and the block encoding mode information, and the block partitioning depth of the current block is greater than or equal to the first block partitioning depth, and the block encoding indicated by the block encoding mode information of the N related blocks
  • the mode is the Merge mode, and the block split identifier is not carried in the code stream corresponding to the current block, where the first block partition depth is greater than or equal to the maximum value of the block partition depths of the N related blocks.
  • the processor 1502 is further configured to: if the processing information is block split depth information, and the block partition depth of the current block is smaller than the first block partition depth, the code stream corresponding to the current block The above-mentioned block division identifier is written, wherein the first block division depth is greater than or equal to a maximum value among the block division depths of the N related blocks. Or if the processing information is block coding mode information, and the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, then the code stream corresponding to the current block is written.
  • the block split identifier may be written in the code stream corresponding to the current block, where the first block segmentation depth is greater than or equal to the N correlations.
  • the block split identifier corresponding to the block split mode of the current block indicates whether the current block is split.
  • the block split mode of the current block may be determined according to the first preset condition.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been encoded when encoding the first texture view, wherein Texture view and second texture view Should be the same or different moments.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been encoded when the depth map is encoded, and the depth map and the texture view correspond to the same or different time.
  • the video encoding device 1500 acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks.
  • the N related blocks include: The at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or block coding. Mode information.
  • the video encoding apparatus 1500 can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partitioning depth information and/or block encoding mode information, etc.), instead of calculating each time
  • the performance parameters such as rate distortion of a plurality of blocks determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video encoding process.
  • the video encoding device 1500 may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the decoding end may determine the block split mode of the current block based on the setting logic. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • FIG. 16 is a schematic diagram of a video encoding apparatus 1600 according to an embodiment of the present invention.
  • the video encoding apparatus 1600 may include at least one bus 1601, at least one processor 1602 connected to the bus 1601, and at least one memory connected to the bus 601. 1603.
  • the processor 1602 by using the bus 1601, calls the code stored in the memory 1603 for acquiring processing information of the N related blocks of the current block; determining according to the processing information of the N related blocks. a block division manner of the current block; decoding a code stream corresponding to the current block based on the determined block division manner of the current block; wherein the N related blocks include: at least one neighboring block of the current block, and the current a reference block of the block and/or at least one neighboring block of the reference block, wherein the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the processing information is block partition depth information and/or block encoding mode information, and the N is a positive integer.
  • the N related blocks include at least one of the following image blocks: at least one neighboring block of the current block, a reference block of the current block, and at least one neighboring block of the reference block.
  • the N related blocks may include at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer in this scenario); or the N related blocks may include a reference of the current block.
  • N is a positive integer equal to 1 in this scenario
  • the N related blocks may include at least one of the four neighboring blocks of the reference block of the current block (N is a positive integer in this scenario)
  • the N related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the current block (N is a positive integer greater than 1 in this scenario); or, the above N
  • the related blocks may include a reference block of the current block and at least one neighboring block of the four neighboring blocks of the reference block (N is a positive integer greater than 1 in this scenario); or, the N related blocks may include At least one of the four adjacent blocks of the current block and the at least one of the four adjacent blocks of the reference block of the current block (N is a positive integer greater than 1 in this scenario);
  • the foregoing N related blocks may include: at least one neighboring block of the current block, a reference block of the current block, and at least one of the reference blocks. Neighboring blocks (N is a positive integer greater than
  • the determining, by the processor 1602, the block division manner of the current block may be determining whether the current block is not segmented or determining the current block to perform segmentation, that is, determining whether the current block is segmented according to processing information of the N related blocks.
  • the block coding mode indicated by the block coding mode information may be a Merge mode or a Skip mode or another block coding mode.
  • the processing information of the N related blocks is the block partitioning depth information and/or the block encoding mode information of the N related blocks. Therefore, the processor 1602 may determine the current current according to the processing information of the N related blocks according to multiple manners. The block division method of the block.
  • the processor 1602 determines the block partitioning manner of the current block according to the processing information of the N related blocks, and may include: the block corresponding to the current block is not carried in the code stream corresponding to the current block.
  • the block division manner of the current block is determined based on the processing information of the N related blocks.
  • the processor 1602 is in the code stream corresponding to the current block.
  • the corresponding block division identifier of the current block is carried, for example, the block division mode of the current block may be determined according to the block division identifier, and then the current block corresponding to the current block may be decoded based on the determined block division manner of the current block.
  • the stream of code Alternatively, when the code stream corresponding to the current block carries the corresponding block division identifier of the current block, for example, the block division mode of the current block may be determined according to the processing information of the N related blocks.
  • the encoder may not write the block split identifier corresponding to the current block in the code stream corresponding to the current block, and the video decoding device 1600 may determine the block split mode of the current block based on the setting logic. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • the determining, by the processor 1602, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block partition depth information, and the block partition depth of the current block is greater than or equal to the first For a piece of segmentation depth, it may be determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the processing information is block coding mode information
  • the block coding mode indicated by the block coding mode information of the N related blocks is the Merge mode
  • the processing information is the block partitioning depth information and the block encoding mode information
  • the block partitioning depth of the current block is greater than or equal to the first block partitioning depth
  • the block encoding indicated by the block encoding mode information of the N related blocks If the mode is the Merge mode, it may be determined that the block division mode of the current block is not divided, and the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining, by the processor 1602, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining that the block division manner of the current block is performing segmentation, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is block coding mode information, and If the block coding mode indicated by the block coding mode information of at least one of the N correlation blocks is not the Merge mode, the block division mode of the current block may be determined to be segmentation.
  • the block division manner of the current block may be determined as performing segmentation, wherein the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the determining, by the processor 1602, the block division manner of the current block according to the processing information of the N related blocks may include: if the processing information is block division depth information, and the block division depth of the current block is smaller than the first partition depth And determining, according to the first preset condition, a block division manner of the current block, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks; or, if the processing information is a block coding mode If the block coding mode indicated by the block coding mode information of at least one of the N related blocks is not the Merge mode, the block division mode of the current block may be determined according to the first preset condition.
  • the block division mode of the current block may be determined according to the first preset condition, where the first block segmentation depth is greater than or equal to a maximum value of the block segmentation depths of the N related blocks.
  • the specific implementation manner of the processor 1602 determining the block segmentation mode of the current block according to the first preset condition may be various.
  • the processor 1602 determines the block segmentation of the current block according to the first preset condition.
  • the method may include: determining that the current block is segmented if the corresponding rate distortion performance of the current block is better than that of the current block without segmentation; if the current block is not segmented, the corresponding rate distortion performance is worse than the current block is not segmented.
  • Corresponding rate-distortion performance determining that the current block is not divided; or, if the segmentation depth of the current block is smaller than the second segmentation depth threshold, determining that the current block is segmented; if the segmentation depth of the current block is greater than or equal to the second segmentation depth Threshold, determining that the current block is not divided; or, if the block size of the current block is larger than the size of the smallest block allowed in the image of the current block, determining that the current block is segmented; if the block size of the current block is less than or equal to the current Blocking the size of the smallest block allowed for the image, determining that the current block is not split.
  • the size of the smallest block of the current image may be the block size corresponding to the maximum segmentable depth of the preset image block.
  • 64x64 image blocks are divided into 4 layers according to the maximum partition depth.
  • the 0th block size is 64x64
  • the first layer block size is 32x32
  • the second layer block size is 16x16
  • the third layer block size is 8x8, the minimum.
  • the block size is 8x8.
  • the first preset condition can be selected according to needs, and details are not described herein again.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to the first texture view
  • the reference block and At least one neighboring block of the above reference block belongs to the second texture view.
  • the second texture is regarded as a reference view of the first texture view; or the first texture is regarded as a dependent view, and the second texture is regarded as a reference view or dependent view that has been decoded when decoding the first texture view, wherein
  • the texture view and the second texture view correspond to the same or different moments. It can be understood that the above scenario can correspond to multi-view video decoding.
  • the N related blocks include the reference block of the current block and/or at least one neighboring block of the reference block
  • the current block belongs to a depth map
  • the reference block and the reference At least one neighboring block of the block belongs to the texture view.
  • the depth map and the texture view correspond to the same view or different views
  • the texture is regarded as a texture view that has been decoded when the depth map is decoded
  • the depth map and the texture view correspond to the same or different time. It can be understood that the above scenario can correspond to multi-view video decoding with a depth map.
  • the video decoding device 1600 of the present embodiment acquires the processing information of the N related blocks of the current block, and determines the block partitioning manner of the current block according to the processing information of the N related blocks, where the N related blocks include: The at least one neighboring block of the current block, the reference block of the current block, and/or at least one neighboring block of the reference block, wherein the N is a positive integer, and the processing information is block partition depth information and/or block coding. Mode information.
  • the video decoding device 1600 can determine the block partitioning manner of the current block according to the processing information of the N related blocks of the current block (ie, block partitioning depth information and/or block encoding mode information, etc.), instead of calculating each time
  • the performance parameters such as rate distortion of the plurality of blocks determine the block division mode of the current block, and therefore, it is advantageous to reduce the computational complexity of determining the block division mode of the current block in the video decoding process.
  • the video decoding device 1600 may determine the block partitioning mode of the current block by using the setting logic. Therefore, in some scenarios, the encoding end may not write the block partition identifier corresponding to the current block in the code stream corresponding to the current block. It is advantageous to reduce the code stream load to a certain extent, because when the current block (for example, CU) segmentation is complicated, if all cases write the block segmentation identifier corresponding to the current block in the code stream corresponding to the current block, the block segmentation Identifiers may occupy a large proportion in the code stream.
  • the current block for example, CU
  • the encoding end and the decoding end can determine the dividing manner of the current block based on the same logic, so that the consistency of the codec processing can be ensured.
  • the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium can store a program, and the program includes some or all of the steps of the block segmentation method determining method in the video encoding described in the foregoing method embodiment.
  • the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium can store a program, and the program includes some or all of the steps of the block segmentation method determining method in the video decoding described in the foregoing method embodiment.
  • the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium may store a program, where the program includes a block segmentation mode determining method or a block in video decoding in the video encoding described in the foregoing method embodiment. Part or all of the steps of the segmentation identifier encoding method.
  • the embodiment of the present invention further provides a computer storage medium, wherein the computer storage medium may store a program, where the program includes a block segmentation mode determining method or a block in video decoding in the video encoding described in the foregoing method embodiment. Part or all of the steps of the segmentation identifier encoding method.
  • the disclosed apparatus may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or may be Integrate into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical or otherwise.
  • the units described as separate components may or may not be physically separate.
  • the components displayed for the unit may or may not be physical units, ie may be located in one place, or may be distributed over multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk, and the like. .

Landscapes

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

Abstract

一种视频编码中的块分割方式确定方法和视频解码中的块分割方式确定方法及相关装置。一种视频编码中的块分割方式确定方法可包括:获取当前块的N个相关块的处理信息;根据N个相关块的处理信息确定当前块的块分割方式;其中,处理信息为块分割深度信息和/或块编码模式信息,N为正整数;其中,N个相关块包括如下图像块中的至少1个:当前块的至少1个相邻块、当前块的参考块和参考块的至少1个相邻块。上述技术方案有利于降低在视频编/解码过程中确定当前块的块分割方式的计算复杂度。

Description

视频编解码中的块分割方式确定方法及相关装置 技术领域
本发明涉及图像处理技术领域,具体涉及视频编码中的块分割方式确定方法和视频解码中的块分割方式确定方法及相关装置。
背景技术
随着光电采集技术的发展及不断增长的高清数字视频需求,视频数据量越来越大,有限异构的传输带宽、多样化的视频应用不断地对视频编码效率提出了更高的需求,高性能视频编码(HEVC,High Efficient Video Coding)标准的制定工作因需启动。
视频编码压缩的基本原理是利用空域、时域和码字之间的相关性,尽可能去除冗余。目前流行做法是采用基于块的混合视频编码框架,通过预测(包括帧内预测和帧间预测)、变换、量化、熵编码等步骤实现视频编码压缩。这种编码框架,显示了很强的生命力,HEVC也仍沿用这种基于块的混合视频编码框架。
在上述编码框架中,视频序列(sequence)包括一系列图像(picture),图像被进一步划分为切片(slice),slice再被划分为块(block)。视频编码以块为单位,可从picture的左上角位置开始从左到右从上到下一行一行进行编码处理。在一些新的视频编码标准中,Block的概念被进一步扩展。在H.264标准中有宏块(MB,Macro Block),MB可进一步划分成多个预测块(partition,可用于预测编码),在HEVC标准中,采用编码单元(CU,Coding Unit),预测单元(PU,Prediction Unit)和变换单元(TU,Transform Unit)等基本概念,从功能上划分了多种Unit,并采用全新的基于树结构进行描述。比如CU可以按照四叉树进行划分为更小的CU,而更小的CU还可以继续划分,从而形成一种四叉树结构。对于PU和TU也有类似的树结构。无论CU,PU还是TU,本质上都属于块block的概念,CU类似于宏块MB或编码块,是对编码图像进行划分和编码的基本单元;PU可对应预测块,是预测编码的基本单元。对CU按照划分模式进一步划分成多个PU;TU可对应变换块,是对预测残差进行变换的基本单元。HEVC标准中则可把它们统称为编码树块(CTB, Coding Tree Block)等。
HEVC标准中,图像块通常采用四叉树分割方式来进行进一步分割,例如当上一层的CU划分为子编码单元(Sub-CU)时,采用块分割标识符(split_flag)来标识当前Sub-CU是否继续向下分割为更小的Sub-CU。现有技术中确定当前块是否继续进行分割是都需计算多个块的率失真等性能参数,而每次都计算多个块的率失真等性能参数使得的计算过程比较复杂。
发明内容
本发明实施例提供视频编码中的块分割方式确定方法和视频解码中的块分割方式确定方法及相关装置,以期降低在视频编/解码过程中确定当前块的块分割方式的计算复杂度。
本发明实施例第一方面提供一种视频编码中的块分割方式确定方法,可包括:
获取当前块的N个相关块的处理信息;
根据所述N个相关块的处理信息确定所述当前块的块分割方式;
其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;其中,所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
结合第一方面,在第一种可能的实施方式中,所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
结合第一方面或第一方面的第一种可能的实施方式,在第二种可能的实施方式中,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式包括:若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的 块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式,在第三种可能的实施方式中,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:
若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式,在第四种可能的实施方式中,所述方法还包括:
确定所述当前块的块分割方式对应的块分割标识符;
若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则所述当前块对应的码流中不携带所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块 分割标识符;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符,其中,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式,在第五种可能的实施方式中,
所述方法还包括:
确定所述当前块的块分割方式对应的块分割标识符;
若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式,在第六种可能的实施方式中,若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于第一纹理视,所述参考块和所述参考块的 至少1个相邻块归属于第二纹理视。
结合第一方面的第六种可能的实施方式中,在第七种可能的实施方式中,
所述第二纹理视为所述第一纹理视的参考视;
或者,所述第一纹理视为依赖视,所述第二纹理视为在编码所述第一纹理视时已编码的基准视或依赖视,其中,所述第一纹理视和所述第二纹理视对应相同或不同的时刻。
结合第一方面或第一方面的第一种可能的实施方式或第一方面的第二种可能的实施方式或第一方面的第三种可能的实施方式或第一方面的第四种可能的实施方式或第一方面的第五种可能的实施方式,在第八种可能的实施方式中,若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于深度图,所述参考块和所述参考块的至少1个相邻块归属于纹理视。
结合第一方面的第八种可能的实施方式中,在第九种可能的实施方式中,
所述深度图和纹理视对应相同视或不同视;
其中,所述纹理视为在编码所述深度图时已编码的纹理视,所述深度图和所述纹理视对应相同或不同时刻。
本发明实施例第二方面提供一种视频解码中的块分割方式确定方法,可包括:
获取当前块的N个相关块的处理信息;
根据所述N个相关块的处理信息确定所述当前块的块分割方式;
其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;其中,所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
结合第二方面,在第一种可能的实施方式中,所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
结合第二方面或第二方面的第一种可能的实施方式,在第二种可能的实施方式中,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:在所述当前块对应的码流中未携带所述当前块对应的块分割标识 符时,根据所述N个相关块的处理信息确定所述当前块的块分割方式。
结合第二方面的第二种可能的实施方式,在第三种可能的实施方式中,所述方法还包括:在所述当前块对应的码流中携带有所述当前块的对应的块分割标识符时,根据所述块分割标识符确定所述当前块的块分割方式。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式,在第四种可能的实施方式中,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
或者,若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,并且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式,在第五种可能的实施方式中,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的 块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式,在第六种可能的实施方式中,若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于第一纹理视,所述参考块和所述参考块的至少1个相邻块归属于第二纹理视。
结合第二方面的第六种可能的实施方式中,在第七种可能的实施方式中,
所述第二纹理视为所述第一纹理视的参考视;
或者,所述第一纹理视为依赖视,所述第二纹理视为在解码所述第一纹理视时已解码的基准视或依赖视,其中,所述第一纹理视和所述第二纹理视对应相同或不同的时刻。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式或第二方面的第四种可能的实施方式或第二方面的第五种可能的实施方式,在第八种可能的实施方式中,若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于深度图,所述参考块和所述参考块的至少1个相邻块归属于纹理视。
结合第二方面的第八种可能的实施方式中,在第九种可能的实施方式中,
所述深度图和纹理视对应相同视或不同视;
其中,所述纹理视为在解码所述深度图时已解码的纹理视,所述深度图和所述纹理视对应相同或不同时刻。
本发明实施例第三方面提供一种视频编码器,包括:
获取单元,用于获取当前块的N个相关块的处理信息;
确定单元,用于根据所述N个相关块的处理信息确定所述当前块的块分 割方式;其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
结合第三方面,在第一种可能的实施方式中,所述获取单元获取的所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
结合第三方面或第三方面的第一种可能的实施方式,在第二种可能的实施方式中,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第三方面或第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式,在第三种可能的实施方式中,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编 码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第三方面或第三方面的第一种可能的实施方式或第三方面的第二种可能的实施方式或第三方面的第三种可能的实施方式,在第四种可能的实施方式中,所述视频编码器还包括:
处理单元,用于确定所述当前块的块分割方式对应的块分割标识符;
若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则所述当前块对应的码流中不携带所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符,其中,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第三方面的第四种可能的实施方式,在第五种可能的实施方式中,
所述处理单元还用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
本发明第四方面提供一种视频解码器,可包括:
获取单元,用于获取当前块的N个相关块的处理信息;
确定单元,用于根据所述N个相关块的处理信息确定所述当前块的块分割方式;其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
结合第四方面,在第一种可能的实施方式中,
所述获取单元获取的所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
结合第四方面或第四方面的第一种可能的实施方式,在第二种可能的实施方式中,所述确定单元具体用于,在所述当前块对应的码流中未携带所述当前块对应的块分割标识符时,根据所述N个相关块的处理信息确定所述当前块的块分割方式。
结合第四方面的第二种可能的实施方式,在第三种可能的实施方式中,
所述视频解码器还包括:第二确定单元,用于在所述当前块对应的码流中携带有所述当前块的对应的块分割标识符时,根据所述块分割标识符确定所述当前块的块分割方式。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式,在第四种可能的实施方式中,在所述根据所述N个相关块的处理信息确定所述当前块的块分割方式的方面,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
结合第四方面或第四方面的第一种可能的实施方式或第四方面的第二种可能的实施方式或第四方面的第三种可能的实施方式,在第五种可能的实施方式中,在所述根据所述N个相关块的处理信息确定所述当前块的块分割方式的方面,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
或者,
若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
或者,
若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
可以看出,在本发明的一些实施例中,编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相 关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
在本发明的另一些实施例中,解码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-a是本发明实施例提供的一种视频编码中的块分割方式确定方法的流程示意图;
图1-b是本发明实施例提供的一种当前块和N个相关块的位置关系示意图;
图2是本发明实施例提供的一种视频解码中的块分割方式确定方法的流程示意图;
图3是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流程示意图;
图4是本发明实施例提供的另一种视频编码中的块分割方式确定方法的流程示意图;
图5是本发明实施例提供的另一种视频解码中的块分割方式确定方法的 流程示意图;
图6是本发明实施例提供的另一种视频解码中的块分割方式确定方法的流程示意图;
图7-a和图7-b是本发明实施例提供的两种视频编码器的示意图;
图8-a和图8-b是本发明实施例提供的两种视频解码器的示意图;
图9是本发明实施例提供的一种视频编码设备的示意图;
图10是本发明实施例提供的一种视频解码设备的示意图;
图11是本发明实施例提供的一种视频编码方法的流程示意图;
图12是本发明实施例提供的一种视频解码方法的流程示意图;
图13是本发明实施例提供的另一种视频编码器的示意图;
图14是本发明实施例提供的另一种视频解码器的示意图;
图15是本发明实施例提供的另一种视频编码设备的示意图;
图16是本发明实施例提供的另一种视频解码设备的示意图。
具体实施方式
本发明实施例提供视频编码中的块分割方式确定方法和视频解码中的块分割方式确定方法及相关装置,以期降低在视频编/解码过程中确定当前块的块分割方式的计算复杂度。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、 ***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明一种视频编码中的块分割方式确定方法的一实施例,一种视频编码中的块分割方式确定方法可包括:获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。
请参见图1-a,图1-a为本发明实施例提供的一种视频编码中的块分割方式确定方法的流程示意图,如图1-a所示,本发明实施例提供的一种视频编码中的块分割方式确定方法可包括以下内容:
101、获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
例如图1-b所示,当前块a的N个相关块可为如下图像块中的至少1块:图像块a1、图像块a2、图像块a3、图像块a4、图像块b、图像块b1、图像块b2、图像块b3和图像块b4。其中,图像块a1、图像块a2、图像块a3和图像块a4为 当前块a的相邻块。图像块b为当前块a的参考块、图像块b1、图像块b2、图像块b3和图像块b4为图像块b的参考块。
102、根据上述N个相关块的处理信息确定上述当前块的块分割方式。
其中,确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
举例来说,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的确定上述当前块的块分割方式,计算简单且可靠性较高,具有较强的实施价值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或,若上述处理信息为块分割深度信息和块编码模 式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,上述方法还可包括:确定上述当前块的块分 割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度大于或等于第一块分割深度,并且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,上述方法还可包括:确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度小于第一块分割深度,并且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。其中,上述当前块的块分割方式对应的块分割标识符指示出当前块是否进行分割,其中,可根据第一预置条件来确定上述当前块的块分割方式。
可以理解,由于在有些场景下编码器可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
以当前块为CU为例,在HEVC标准中,CU通常采用四叉树分割方式来进行进一步分割,例如,当上一层的CU划分为子编码单元(Sub-CU)时,采用块分割标识符(split_flag)来标识当前Sub-CU是否继续向下分割为更小的Sub-CU。例如,如split_flag取值为“1”时,表示当前Sub-CU继续向下分割分为更小的Sub-CU;split_flag取值为“0”时,表示当前Sub-CU终止划分。当然split_flag亦可采用其它取值来指示当前块的块分割方式。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。
可以看出,本实施例编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的 块分割标识符,则块分割标识符在码流中可能占据较大的比重。
本发明一种视频解码中的块分割方式确定方法的一个实施例,一种视频解码中的块分割方式确定方法可包括:获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
请参见图2,图2为本发明实施例提供的一种视频解码中的块分割方式确定方法的流程示意图,如图2所示,本发明实施例提供的一种视频解码中的块分割方式确定方法可包括以下内容:
201、获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
202、根据上述N个相关块的处理信息确定上述当前块的块分割方式。
其中,确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
在本发明的一些实施例中,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式,可以包括:在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。进一步的,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述块分割标识符确定上述当前块的块分割方式。或者,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述N个相关块的处理信息确定上述当前块的块分割方式。
可以理解,由于在有些场景下编码器可能不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的几种确定上述当前块的块分割方式的机制,计算简单且可靠性较高,具有较强的实施价值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸, 确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以看出,本实施例解码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于解码端可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例 如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
为便于更好的理解和实施本发明实施例的上述方案,下面通过举例一些具体的应用场景进行说明。
请参见图3,图3为本发明实施例提供的另一种视频编码中的块分割方式确定方法的流程示意图,如图3所示,本发明实施例提供的另一种视频编码中的块分割方式确定方法可包括以下内容:
301、编码器获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
302、编码器判断当前块的块分割深度是否大于或等于第一块分割深度;
若是,则执行步骤303;
若否,则执行步骤305。
其中,第一块分割深度可大于或等于上述N个相关块的块分割深度中的最大值。
303、编码器判断上述N个相关块的块编码模式信息指示出的块编码模式是否为Merge模式;
若是,则执行步骤304;
若否,则执行步骤305;
304、编码器确定当前块的块分割方式为不分割,并且编码器可不在当前块对应的码流中写入当前块的块分割方式对应的块分割标识符。
305、编码器基于第一预设条件确定当前块的块分割方式,并在当前块对应的码流中写入基于第一预设条件确定出的当前块的块分割方式所对应的块分割标识符。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频编码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块 和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频编码。
可以看出,本实施例编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
请参见图4,图4为本发明实施例提供的另一种视频编码中的块分割方式确定方法的流程示意图,如图4所示,本发明实施例提供的另一种视频编码中的块分割方式确定方法可包括以下内容:
401、编码器获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相 邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
402、编码器判断上述N个相关块的块编码模式信息指示出的块编码模式是否为Merge模式;
若是,则执行步骤403;
若否,则执行步骤405。
其中,第一块分割深度可大于或等于上述N个相关块的块分割深度中的最大值。
403、编码器判断当前块的块分割深度是否大于或等于第一块分割深度;
若是,则执行步骤404;
若否,则执行步骤405;
404、编码器确定当前块的块分割方式为不分割,并且编码器可不在当前块对应的码流中写入当前块的块分割方式对应的块分割标识符。
405、编码器基于第一预设条件确定当前块的块分割方式,并在当前块对应的码流中写入基于第一预设条件确定出的当前块的块分割方式所对应的块分割标识符。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割; 若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频编码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频编码。
可以看出,本实施例编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下编码端可以不在当前块对应的码流中写入 当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
请参见图5,图5为本发明实施例提供的另一种视频解码中的块分割方式确定方法的流程示意图,如图5所示,本发明实施例提供的另一种视频解码中的块分割方式确定方法可包括以下内容:
501、解码器通过解析当前块对应的码流判断当前块对应的码流中是否携带当前块对应的块分割标识符;
若是,则执行步骤502;
若否,则执行步骤503;
502、解码器基于当前块对应的码流中携带的当前块对应的块分割标识符确定当前块对应的块分割方式。
503、获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式 可能为Merge模式或Skip模式或其它块编码模式。
504、解码器判断当前块的块分割深度是否大于或等于第一块分割深度;
若是,则执行步骤505;
若否,则执行步骤507。
其中,第一块分割深度可大于或等于上述N个相关块的块分割深度中的最大值。
505、解码器判断上述N个相关块的块编码模式信息指示出的块编码模式是否为Merge模式;
若是,则执行步骤506;
若否,则执行步骤507;
506、解码器确定当前块的块分割方式为不分割。
507、解码器基于第一预设条件确定当前块的块分割方式。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码 第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以看出,本实施例解码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和块编码模式信息。其中,由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于解码端可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
请参见图6,图6为本发明实施例提供的另一种视频解码中的块分割方式确定方法的流程示意图,如图6所示,本发明实施例提供的另一种视频解码中的块分割方式确定方法可包括以下内容:
601、解码器通过解析当前块对应的码流判断当前块对应的码流中是否携带当前块对应的块分割标识符;
若是,则执行步骤602;
若否,则执行步骤603;
602、解码器基于当前块对应的码流中携带的当前块对应的块分割标识符确定当前块对应的块分割方式。
603、获取当前块的N个相关块的处理信息。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
604、解码器判断上述N个相关块的块编码模式信息指示出的块编码模式是否为Merge模式;
若是,则执行步骤605;
若否,则执行步骤607。
其中,第一块分割深度可大于或等于上述N个相关块的块分割深度中的最大值。
605、解码器判断当前块的块分割深度是否大于或等于第一块分割深度;
若是,则执行步骤606;
若否,则执行步骤607;
606、解码器确定当前块的块分割方式为不分割。
607、解码器基于第一预设条件确定当前块的块分割方式。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以看出,本实施例解码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息 和块编码模式信息。其中,由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于解码端可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
下面还提供用于实施上述方案的相关装置。
参见图7,本发明实施例提供一种视频编码器700,可包括:
获取单元710和确定单元720。
其中,获取单元710,用于获取当前块的N个相关块的处理信息;
确定单元720,用于根据所述N个相关块的处理信息确定所述当前块的块分割方式;其中,所述N个相关块包括所述当前块的至少1个相邻块、所述当前块的参考块和/或所述参考块的至少1个相邻块,其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
在本发明的一些实施例中,确定单元720可具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的 块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,确定单元720可具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,确定单元720根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,确定单元720根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层 块尺寸为16x16,第3层块尺寸为8x8,最小的块尺寸为8x8。在实际应用中可根据需要选定第一预置条件,此处不再一一赘述。
参见图7-b,在本发明的一些实施例中,视频编码器700还可包括:
处理单元730,用于确定上述当前块的块分割方式对应的块分割标识符;
若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,处理单元730还可用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符,第一块分割深度大于或等于上述N个相关块的 块分割深度中的最大值。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。
可以理解的是,本实施例的视频编码器700的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例中,视频编码器700获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频编码器可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下视频编码器可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图8,本发明实施例提供一种视频解码器800,可包括:
获取单元810和确定单元820。
其中,获取单元810,用于获取当前块的N个相关块的处理信息;
确定单元820,用于根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。29、根据权利要求27或28上述的视频编码器,其特征在于,
在本发明的一些实施例中,确定单元820可具体用于,在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。
参见图8-b,在本发明的一些实施例中,视频解码器800还可包括:
第二确定单元830,用于在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,根据上述块分割标识符确定上述当前块的块分割方式。
在本发明的一些实施例中,在上述根据上述N个相关块的处理信息确定上述当前块的块分割方式的方面,确定单元820可具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,在上述根据上述N个相关块的处理信息确定上述当前块的块分割方式的方面,确定单元820具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,确定单元820根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,确定单元820根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以理解的是,本实施例的视频编码器700的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例中,视频解码器800获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频解码器可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于视频解码器可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图9,图9为本发明实施例提供的视频编码设备900的示意图,视频编码设备900可包括至少一个总线901、与总线901相连的至少一个处理器902以及与总线601相连的至少一个存储器903。
其中,处理器902通过总线901,调用存储器903中存储的代码以用于,获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,处理器902确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,处理器902可基于多种方式来根据上述N个相关块的处理 信息确定上述当前块的块分割方式。
例如,处理器902根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的确定上述当前块的块分割方式,计算简单且可靠性较高,具有较强的实施价值。
又例如,处理器902根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,处理器902根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第 一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,处理器902根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,处理器902根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,处理器902还可确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度大于或等于第一块分割深度,并且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符, 其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,处理器902还可用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度小于第一块分割深度,并且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。其中,上述当前块的块分割方式对应的块分割标识符指示出当前块是否进行分割,其中,可根据第一预置条件来确定上述当前块的块分割方式。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。
可以理解的是,本实施例的视频编码设备900的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例视频编码设备900获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中, 上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频编码设备900可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下视频编码设备900可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图10,图10为本发明实施例提供的视频编码设备1000的示意图,视频编码设备1000可包括至少一个总线1001、与总线1001相连的至少一个处理器1002以及与总线601相连的至少一个存储器1003。
其中,处理器1002通过总线1001,调用存储器1003中存储的代码以用于获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景 下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,处理器1002确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,处理器1002可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
在本发明的一些实施例中,处理器1002根据上述N个相关块的处理信息确定上述当前块的块分割方式,可以包括:在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。进一步的,处理器1002在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述块分割标识符确定上述当前块的块分割方式。或者,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述N个相关块的处理信息确定上述当前块的块分割方式。
可以理解,由于在有些场景下编码器可能不在当前块对应的码流中写入当前块对应的块分割标识符,而视频解码设备1000可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
举例来说,处理器1002上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前 块的块分割深度大于或等于第一块分割深度,则可确定上述当前块的块分割方式为不分割,第一块分割深度大于或者等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则可确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的几种确定上述当前块的块分割方式的机制,计算简单且可靠性较高,具有较强的实施价值。
又例如,处理器1002根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或者,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,处理器1002根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模 式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,处理器1002根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,处理器1002根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以理解的是,本实施例的视频解码设备1000的各功能模块的功能可根 据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例视频解码设备1000获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频解码设备1000可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于视频解码设备1000可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
本发明实施例还提供一种视频编码中的块分割标识符编码方法,包括:
获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块;确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编 码模式信息,并且上述当前块的块分割深度大于或等于第一块分割深度,并且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度小于第一块分割深度,并且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。其中,上述当前块的块分割方式对应的块分割标识符指示出当前块是否进行分割,其中,可根据第一预置条件来确定上述当前块的块分割方式。
其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性 能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
可以看出,本实施例编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
本发明实施例还提供一种视频编码中的块分割标识符解码方法,包括:
在当前块对应的码流中携带有该当前块的对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式;在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割 方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的几种确定上述当前块的块分割方式的机制,计算简单且可靠性较高,具有较强的实施价值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值; 或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视 对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以看出,本实施例解码端在当前块对应的码流中携带有该当前块的对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式;在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于解码端可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
本发明实施例还提供一种视频编码处理方法,可包括:获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;基于确定出的上述当前块的块分割方式编码上述当前块;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。
请参见图11,图11为本发明一个实施例提供的一种视频编码方法的流程示意图,其中,如图11所示,本发明一个实施例提供的一种视频编码方法可包括以下内容:
1101、获取当前块的N个相关块的处理信息;
1102、根据上述N个相关块的处理信息确定上述当前块的块分割方式;
1103、基于确定出的上述当前块的块分割方式编码上述当前块;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
举例来说,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分 割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的确定上述当前块的块分割方式,计算简单且可靠性较高,具有较强的实施价值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其 中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,上述方法还可包括:确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度大于或等于第一块分割深度,并且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,上述方法还可包括:确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流 中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度小于第一块分割深度,并且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。其中,上述当前块的块分割方式对应的块分割标识符指示出当前块是否进行分割,其中,可根据第一预置条件来确定上述当前块的块分割方式。
可以看出,本实施例编码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于编码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
可以理解,由于在有些场景下编码器可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
本发明实施例还提供一种视频解码处理方法可包括:获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式,基于确定出的当前块的块分割方式解码上述当前块对应的码流;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考 块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
请参见图12,图12为本发明一个实施例提供的一种视频解码方法的流程示意图,其中,如图12所示,本发明一个实施例提供的一种视频解码方法可包括以下内容:
1201、获取当前块的N个相关块的处理信息。
1202、根据上述N个相关块的处理信息确定上述当前块的块分割方式。
1203、基于确定出的当前块的块分割方式解码上述当前块对应的码流;
其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
在本发明的一些实施例中,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式,可以包括:在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。进一步的,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述块分割标识符确定上述当前块的块分割方式。或者,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述N个相关块的处理信息确定上述当前块的块分割方式。
可以理解,由于在有些场景下编码器可能不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的几种确定上述当前块的块分割方式的机制,计算简单且可靠性较高,具有较强的实施价值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深 度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块 的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
可以看出,本实施例解码端获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于解码端可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于解码端可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
下面还提供用于实施上述方案的相关装置。
参见图13,本发明实施例提供一种视频编码器1300,可包括:
获取单元1310、确定单元1320和编码单元1330。
其中,获取单元1310,用于获取当前块的N个相关块的处理信息;
确定单元1320,用于根据所述N个相关块的处理信息确定所述当前块的块分割方式;其中,所述N个相关块包括所述当前块的至少1个相邻块、所述当前块的参考块和/或所述参考块的至少1个相邻块,其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数。
编码单元1330,用于基于所述确定出所述当前块的块分割方式编码所述当前块。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式 可能为Merge模式或Skip模式或其它块编码模式。
在本发明的一些实施例中,确定单元1320可具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,确定单元1320可具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,确定单元1320根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,确定单元1320根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分 割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,最小的块尺寸为8x8。在实际应用中可根据需要选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,视频编码器1300还可包括:
编码单元1330还用于,用于确定上述当前块的块分割方式对应的块分割标识符;若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,处理单元1330还可用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,第一块分割深度大于或等于 上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。
可以理解的是,本实施例的视频编码器1300的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例中,视频编码器1300获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频编码器可以根据当前块的N个相 关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下视频编码器可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图14,本发明实施例提供一种视频解码器1400,可包括:
获取单元1410、确定单元1420和解码单元1430。
其中,获取单元1410,用于获取当前块的N个相关块的处理信息;
确定单元1420,用于根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
解码单元1430,用于基于确定出的上述当前块的块分割方式解码述当前块对应的码流。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。29、根据权利要求27或214上述的视频编码器,其特征在于,
在本发明的一些实施例中,确定单元1420可具体用于,在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。
在本发明的一些实施例中,所述确定单元1420还用于,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,根据上述块分割标识符确定上述当前块的块分割方式。
在本发明的一些实施例中,在上述根据上述N个相关块的处理信息确定上述当前块的块分割方式的方面,确定单元1420可具体用于,若上述处理信 息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,在上述根据上述N个相关块的处理信息确定上述当前块的块分割方式的方面,确定单元1420具体用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;
或者,
若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式;
或者,
若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,确定单元1420根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,确定单元1420根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当 前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为14x14,则最小的块尺寸为14x14。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以理解的是,本实施例的视频编码器1400的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例中,视频解码器1400获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分 割深度信息和/或块编码模式信息。由于视频解码器可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于视频解码器可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图15,图15为本发明实施例提供的视频编码设备1500的示意图,视频编码设备1500可包括至少一个总线1501、与总线1501相连的至少一个处理器1502以及与总线601相连的至少一个存储器1503。
其中,处理器1502通过总线1501,调用存储器1503中存储的代码以用于获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;基于确定出的上述当前块的块分割方式编码上述当前块;其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数;上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数); 或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,处理器1502确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,处理器1502可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
例如,处理器1502根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的确定上述当前块的块分割方式,计算简单且可靠性较高,具有较强的实施价值。
又例如,处理器1502根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前 块的块分割方式为进行分割。或若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,处理器1502根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,处理器1502根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,处理器1502根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或者,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,则最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条 件,此处不再一一赘述。
在本发明的一些实施例中,处理器1502还可确定上述当前块的块分割方式对应的块分割标识符;其中,若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或者,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度大于或等于第一块分割深度,并且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则上述当前块对应的码流中不携带上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
在本发明的一些实施例中,处理器1502还可用于,若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。或若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在上述当前块对应的码流中写入上述块分割标识符;或者,若上述处理信息为块分割深度信息和块编码模式信息,并且上述当前块的块分割深度小于第一块分割深度,并且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可在上述当前块对应的码流中写入上述块分割标识符,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。其中,上述当前块的块分割方式对应的块分割标识符指示出当前块是否进行分割,其中,可根据第一预置条件来确定上述当前块的块分割方式。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在编码第一纹理视时已编码的基准视或依赖视,其中,第一纹理视和第二纹理视对 应相同或不同的时刻。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在编码上述深度图时已编码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。
可以理解的是,本实施例的视频编码设备1500的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例视频编码设备1500获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频编码设备1500可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频编码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于在有些场景下视频编码设备1500可以不在当前块对应的码流中写入当前块对应的块分割标识符,而解码端可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
参见图16,图16为本发明实施例提供的视频编码设备1600的示意图,视频编码设备1600可包括至少一个总线1601、与总线1601相连的至少一个处理器1602以及与总线601相连的至少一个存储器1603。
其中,处理器1602通过总线1601,调用存储器1603中存储的代码以用于获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定 上述当前块的块分割方式;基于确定出的上述当前块的块分割方式解码上述当前块对应的码流;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。
其中,上述处理信息为块分割深度信息和/或块编码模式信息,上述N为正整数。上述N个相关块包括如下图像块中的至少1个:上述当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块。例如,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块(在此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块(此场景下N为等于1的正整数);或者述N个相关块可包括上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为正整数);或者上述N个相关块可包括上述当前块的参考块和上述当前块的4个相邻块中的至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的参考块和该参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括上述当前块的4个相邻块中的至少1个相邻块和上述当前块的参考块的4个相邻块中至少1个相邻块(此场景下N为大于1的正整数);或者,上述N个相关块可包括:当前块的至少1个相邻块、上述当前块的参考块和上述参考块的至少1个相邻块(此场景下N为大于2的正整数)。
其中,处理器1602确定上述当前块的块分割方式具体可能是确定上述当前块不分割或确定上述当前块进行分割,即,是根据上述N个相关块的处理信息确定上述当前块是否进行分割。
在本发明的一些实施例中,上述块编码模式信息所指示出的块编码模式可能为Merge模式或Skip模式或其它块编码模式。
其中,N个相关块的处理信息为N个相关块的块分割深度信息和/或块编码模式信息,因此,处理器1602可基于多种方式来根据上述N个相关块的处理信息确定上述当前块的块分割方式。
在本发明的一些实施例中,处理器1602根据上述N个相关块的处理信息确定上述当前块的块分割方式,可以包括:在上述当前块对应的码流中未携带上述当前块对应的块分割标识符时,根据上述N个相关块的处理信息确定上述当前块的块分割方式。进一步的,处理器1602在上述当前块对应的码流 中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述块分割标识符确定上述当前块的块分割方式,而后基于确定出的上述当前块的块分割方式解码上述当前块对应的码流。或者,在上述当前块对应的码流中携带有上述当前块的对应的块分割标识符时,例如也可以根据上述N个相关块的处理信息确定上述当前块的块分割方式。
可以理解,由于在有些场景下编码器可能不在当前块对应的码流中写入当前块对应的块分割标识符,而视频解码设备1600可基于设定逻辑自行确定当前块的块分割方式,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
举例来说,处理器1602上述根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度大于或等于第一块分割深度,则可确定上述当前块的块分割方式为不分割,第一块分割深度大于或者等于上述N个相关块的块分割深度中的最大值。或,若上述处理信息为块编码模式信息,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定上述当前块的块分割方式为不分割。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度大于或等于第一块分割深度,且上述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则可确定上述当前块的块分割方式为不分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。测试发现,上述举例的几种确定上述当前块的块分割方式的机制,计算简单且可靠性较高,具有较强的实施价值。
又例如,处理器1602根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可确定上述当前块的块分割方式为进行分割,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割。或者,若上述处理信息为块分割深度信息 和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可确定上述当前块的块分割方式为进行分割,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
又例如,处理器1602根据上述N个相关块的处理信息确定上述当前块的块分割方式可包括:若上述处理信息为块分割深度信息,且上述当前块的块分割深度小于第一块分割深度,则可根据第一预置条件确定上述当前块的块分割方式,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值;或者,若上述处理信息为块编码模式信息,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式。或,若上述处理信息为块分割深度信息和块编码模式信息,且上述当前块的块分割深度小于第一块分割深度,且上述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则可根据第一预置条件确定上述当前块的块分割方式,其中,第一块分割深度大于或等于上述N个相关块的块分割深度中的最大值。
其中,处理器1602根据第一预置条件确定上述当前块的块分割方式的具体实现方式可以是多种多样的,举例来说,处理器1602根据第一预置条件确定上述当前块的块分割方式可以包括:若当前块分割后对应的率失真性能优于当前块不分割对应的率失真性能,则确定上述当前块进行分割;若当前块分割后对应的率失真性能差于当前块不分割对应的率失真性能,则确定上述当前块不分割;或者,若当前块的分割深度小于第二分割深度阈值,则确定上述当前块进行分割;若当前块的分割深度大于或等于第二分割深度阈值,则确定上述当前块不分割;或,若当前块的块尺寸大于当前块所述图像的所允许的最小块的尺寸,确定上述当前块进行分割;若当前块的块尺寸小于或等于当前块所述图像的所允许的最小块的尺寸,确定上述当前块不分割。其中,当前图像的最小块的尺寸,可为预设的图像块最大可分割深度对应的块尺寸。例如,64x64的图像块,按照最大分割深度为4层进行划分,第0层块尺寸为64x64,第1层块尺寸为32x32,第2层块尺寸为16x16,第3层块尺寸为8x8,最小的块尺寸为8x8。在实际应用中可根据需要来选定第一预置条件,此处不再一一赘述。
在本发明的一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于第一纹理视,上述参考块和上述参考块的至少1个相邻块归属于第二纹理视。例如,第二纹理视为第一纹理视的参考视;或者,第一纹理视为依赖视,第二纹理视为在解码第一纹理视时已解码的基准视或依赖视,其中,第一纹理视和第二纹理视对应相同或不同的时刻。可以理解,上述场景可对应多视视频解码。
在本发明另一些实施例中,若上述N个相关块包括上述当前块的参考块和/或上述参考块的至少1个相邻块,上述当前块归属于深度图,上述参考块和上述参考块的至少1个相邻块归属于纹理视。例如,上述深度图和纹理视对应相同视或不同视;上述纹理视为在解码上述深度图时已解码的纹理视,上述深度图和上述纹理视对应相同或不同时刻。可以理解的是,上述场景可对应带有深度图的多视视频解码。
可以理解的是,本实施例的视频解码设备1600的各功能模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
可以看出,本实施例视频解码设备1600获取当前块的N个相关块的处理信息;根据上述N个相关块的处理信息确定上述当前块的块分割方式;其中,上述N个相关块包括:上述当前块的至少1个相邻块、上述当前块的参考块和/或上述参考块的至少1个相邻块,上述N为正整数,上述处理信息为块分割深度信息和/或块编码模式信息。由于视频解码设备1600可以根据当前块的N个相关块的处理信息(即块分割深度信息和/或块编码模式信息等)来确定上述当前块的块分割方式,而并非是每次都通过计算多个块的率失真等性能参数来确定上述当前块的块分割方式,因此,有利于降低在视频解码过程中确定当前块的块分割方式的计算复杂度。
进一步的,由于视频解码设备1600可基于设定逻辑自行确定当前块的块分割方式,因此在有些场景下编码端可以不在当前块对应的码流中写入当前块对应的块分割标识符,因此有利于在一定程度上减少码流负载,因为当当前块(例如CU)分割比较复杂时,如果所有情况都在当前块对应的码流中写入当前块对应的块分割标识符,则块分割标识符在码流中可能占据较大的比重。
可以理解,由于本发明各实施例中,编码端和解码端可基于相同的逻辑来确定当前块的分割方式,因此可以保证编解码处理的一致性。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频编码中的块分割方式确定方法的部分或全部步骤。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频解码中的块分割方式确定方法的部分或全部步骤。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频编码中的块分割方式确定方法或视频解码中的块分割标识符编码方法的部分或全部步骤。
本发明实施例还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的视频编码中的块分割方式确定方法或视频解码中的块分割标识符编码方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (32)

  1. 一种视频编码中的块分割方式确定方法,其特征在于,包括:
    获取当前块的N个相关块的处理信息;
    根据所述N个相关块的处理信息确定所述当前块的块分割方式;
    其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;其中,所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
  2. 根据权利要求1所述的方法,其特征在于,所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
  3. 根据权利要求1或2所述的方法,其特征在于,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  4. 根据权利要求1或2所述的方法,其特征在于,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条 件确定所述当前块的块分割方式;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  5. 根据权利要求1至4任一项所述的方法,其特征在于,
    所述方法还包括:
    确定所述当前块的块分割方式对应的块分割标识符;
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则所述当前块对应的码流中不携带所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符,其中,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  6. 根据权利要求1至4任一项所述的方法,其特征在于,
    所述方法还包括:
    确定所述当前块的块分割方式对应的块分割标识符;
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  7. 根据权利要求1至6任意一项所述的方法,其特征在于,
    若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于第一纹理视,所述参考块和所述参考块的至少1个相邻块归属于第二纹理视。
  8. 根据权利要求7所述的方法,其特征在于,
    所述第二纹理视为所述第一纹理视的参考视;
    或者,所述第一纹理视为依赖视,所述第二纹理视为在编码所述第一纹理视时已编码的基准视或依赖视,其中,所述第一纹理视和所述第二纹理视对应相同或不同的时刻。
  9. 根据权利要求1至6任意一项所述的方法,其特征在于,
    若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于深度图,所述参考块和所述参考块的至少1个相邻块归属于纹理视。
  10. 根据权利要求9所述的方法,其特征在于,
    所述深度图和纹理视对应相同视或不同视;
    其中,所述纹理视为在编码所述深度图时已编码的纹理视,所述深度图和所述纹理视对应相同或不同时刻。
  11. 一种视频解码中的块分割方式确定方法,其特征在于,包括:
    获取当前块的N个相关块的处理信息;
    根据所述N个相关块的处理信息确定所述当前块的块分割方式;
    其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;其中,所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
  12. 根据权利要求11所述的方法,其特征在于,所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
  13. 根据权利要求11或12所述的方法,其特征在于,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:在所述当前块对应的码流中未携带所述当前块对应的块分割标识符时,根据所述N个相关块的处理信息确定所述当前块的块分割方式。
  14. 根据权利要求13所述的方法,其特征在于,所述方法还包括:在所述当前块对应的码流中携带有所述当前块的对应的块分割标识符时,根据所述块分割标识符确定所述当前块的块分割方式。
  15. 根据权利要求11至14任一项所述的方法,其特征在于,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
    或者,若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,并且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  16. 根据权利要求11至14任一项所述的方法,其特征在于,所述根据所述N个相关块的处理信息确定所述当前块的块分割方式,包括:
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  17. 根据权利要求11至16任一项所述的方法,其特征在于,
    若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于第一纹理视,所述参考块和所述参考块的至少1个相邻块归属于第二纹理视。
  18. 根据权利要求17所述的方法,其特征在于,
    所述第二纹理视为所述第一纹理视的参考视;
    或者,所述第一纹理视为依赖视,所述第二纹理视为在解码所述第一纹理视时已解码的基准视或依赖视,其中,所述第一纹理视和所述第二纹理视对应相同或不同的时刻。
  19. 根据权利要求11至16任一项所述的方法,其特征在于,
    若所述N个相关块包括所述当前块的参考块和/或所述参考块的至少1个相邻块,所述当前块归属于深度图,所述参考块和所述参考块的至少1个相邻块归属于纹理视。
  20. 根据权利要求19所述的方法,其特征在于,
    所述深度图和纹理视对应相同视或不同视;
    其中,所述纹理视为在解码所述深度图时已解码的纹理视,所述深度图和所述纹理视对应相同或不同时刻。
  21. 一种视频编码器,其特征在于,包括:
    获取单元,用于获取当前块的N个相关块的处理信息;
    确定单元,用于根据所述N个相关块的处理信息确定所述当前块的块分 割方式;其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
  22. 根据权利要求21所述的视频编码器,其特征在于,
    所述获取单元获取的所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
  23. 根据权利要求21或22所述的视频编码器,其特征在于,
    所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  24. 根据权利要求21或22所述的视频编码器,其特征在于,
    所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的 块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  25. 根据权利要求21至24任一项所述的视频编码器,其特征在于,
    所述视频编码器还包括:
    处理单元,用于确定所述当前块的块分割方式对应的块分割标识符;
    若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则所述当前块对应的码流中不携带所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且所述N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则所述当前块对应的码流中不携带所述块分割标识符,其中,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  26. 根据权利要求25所述的视频编码器,其特征在于,
    所述处理单元还用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则在所述当前块对应的码流中写入所述块分割标识符,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  27. 一种视频解码器,其特征在于,包括:
    获取单元,用于获取当前块的N个相关块的处理信息;
    确定单元,用于根据所述N个相关块的处理信息确定所述当前块的块分割方式;其中,所述处理信息为块分割深度信息和/或块编码模式信息,所述N为正整数;所述N个相关块包括如下图像块中的至少1个:所述当前块的至少1个相邻块、所述当前块的参考块和所述参考块的至少1个相邻块。
  28. 根据权利要求27所述的视频解码器,其特征在于,
    所述获取单元获取的所述块编码模式信息所指示的块编码模式为Merge模式或Skip模式。
  29. 根据权利要求27或28所述的视频解码器,其特征在于,
    所述确定单元具体用于,在所述当前块对应的码流中未携带所述当前块对应的块分割标识符时,根据所述N个相关块的处理信息确定所述当前块的块分割方式。
  30. 根据权利要求29所述的视频解码器,其特征在于,
    所述视频解码器还包括:第二确定单元,用于在所述当前块对应的码流中携带有所述当前块的对应的块分割标识符时,根据所述块分割标识符确定所述当前块的块分割方式。
  31. 根据权利要求27至30任一项所述的视频解码器,其特征在于,
    在所述根据所述N个相关块的处理信息确定所述当前块的块分割方式的方面,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度大于或等于第一块分割深度,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,若所述处理信息为块编码模式信息,且所述N个相关块的块编码 模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度大于或等于第一块分割深度,且N个相关块的块编码模式信息指示出的块编码模式为Merge模式,则确定所述当前块的块分割方式为不分割,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
  32. 根据权利要求27至30任一项所述的视频解码器,其特征在于,在所述根据所述N个相关块的处理信息确定所述当前块的块分割方式的方面,所述确定单元具体用于,若所述处理信息为块分割深度信息,且所述当前块的块分割深度小于第一块分割深度,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值;
    或者,
    若所述处理信息为块编码模式信息,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式;
    或者,
    若所述处理信息为块分割深度信息和块编码模式信息,且所述当前块的块分割深度小于第一块分割深度,且所述N个相关块之中的至少1个块的块编码模式信息指示出的块编码模式不是Merge模式,则根据第一预置条件确定所述当前块的块分割方式,所述第一块分割深度大于或等于所述N个相关块的块分割深度中的最大值。
PCT/CN2014/088799 2013-10-18 2014-10-17 视频编解码中的块分割方式确定方法及相关装置 WO2015055134A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP14853668.3A EP3051817A4 (en) 2013-10-18 2014-10-17 METHODS AND DEVICES RELATED THERETO TO DETERMINE BLOCK SEGMENTATION MODE IN VIDEO ENCODING AND DECODING
US15/130,035 US10506241B2 (en) 2013-10-18 2016-04-15 Method for determining block partition manner in video codec, and related apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310495089.9A CN104581159B (zh) 2013-10-18 2013-10-18 视频编解码中的块分割方式确定方法及相关装置
CN201310495089.9 2013-10-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/130,035 Continuation US10506241B2 (en) 2013-10-18 2016-04-15 Method for determining block partition manner in video codec, and related apparatus

Publications (1)

Publication Number Publication Date
WO2015055134A1 true WO2015055134A1 (zh) 2015-04-23

Family

ID=52827678

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/088799 WO2015055134A1 (zh) 2013-10-18 2014-10-17 视频编解码中的块分割方式确定方法及相关装置

Country Status (4)

Country Link
US (1) US10506241B2 (zh)
EP (1) EP3051817A4 (zh)
CN (2) CN104581159B (zh)
WO (1) WO2015055134A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110139106A (zh) * 2019-04-04 2019-08-16 中南大学 一种视频编码单元分割方法及其***、装置、存储介质
WO2020164480A1 (en) * 2019-02-11 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Condition dependent video block partition

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9924183B2 (en) * 2014-03-20 2018-03-20 Nanjing Yuyan Information Technology Ltd. Fast HEVC transcoding
CN105120295B (zh) * 2015-08-11 2018-05-18 北京航空航天大学 一种基于四叉树编码分割的hevc复杂度控制方法
EP3522532A1 (en) * 2016-11-01 2019-08-07 Samsung Electronics Co., Ltd. Encoding method and device therefor, and decoding method and device therefor
EP3791582A1 (en) * 2018-05-30 2021-03-17 Huawei Technologies Co., Ltd. Method and apparatus for boundary partition
US11190777B2 (en) * 2019-06-30 2021-11-30 Tencent America LLC Method and apparatus for video coding
US11317090B2 (en) * 2019-08-12 2022-04-26 Tencent America LLC Method and apparatus for video coding
CN111385585B (zh) * 2020-03-18 2022-05-24 北京工业大学 一种基于机器学习的3d-hevc深度图编码单元划分方法
CN112584143B (zh) * 2020-12-02 2022-09-06 浙江大华技术股份有限公司 一种视频编码方法、装置、***及计算机可读存储介质
CN113259663B (zh) * 2021-06-08 2021-10-15 浙江华创视讯科技有限公司 一种图像块划分方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183080A1 (en) * 2011-01-13 2012-07-19 Texas Instruments Incorporated Method and apparatus for a low complexity transform unit partitioning structure for hevc
CN102984521A (zh) * 2012-12-12 2013-03-20 四川大学 基于时域相关性的高性能视频编码帧间模式判决方法
CN104023234A (zh) * 2014-06-24 2014-09-03 华侨大学 一种适用于hevc的快速帧间预测方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101415115B (zh) * 2007-10-15 2011-02-02 华为技术有限公司 基于运动跳跃模式的视频编解码方法及其编解码器
US8798158B2 (en) * 2009-03-11 2014-08-05 Industry Academic Cooperation Foundation Of Kyung Hee University Method and apparatus for block-based depth map coding and 3D video coding method using the same
DK2924995T3 (en) * 2010-07-09 2018-10-01 Samsung Electronics Co Ltd PROCEDURE FOR VIDEO DECODING, BY USING BLOCK COLLECTION
US8526495B2 (en) * 2010-11-22 2013-09-03 Mediatek Singapore Pte. Ltd. Apparatus and method of constrained partition size for high efficiency video coding
CN102724493B (zh) * 2011-01-18 2014-06-25 清华大学 基于图像块的帧内预测模式的编解码方法和编解码器
US9049452B2 (en) * 2011-01-25 2015-06-02 Mediatek Singapore Pte. Ltd. Method and apparatus for compressing coding unit in high efficiency video coding
US9565449B2 (en) * 2011-03-10 2017-02-07 Qualcomm Incorporated Coding multiview video plus depth content
CN102685483B (zh) * 2011-03-11 2014-12-03 华为技术有限公司 解码方法
AU2012269583B2 (en) * 2011-06-15 2015-11-26 Hfi Innovation Inc. Method and apparatus of motion and disparity vector prediction and compensation for 3D video coding
US9485503B2 (en) * 2011-11-18 2016-11-01 Qualcomm Incorporated Inside view motion prediction among texture and depth view components
CN103327327B (zh) * 2013-06-03 2016-03-30 电子科技大学 用于高性能视频编码hevc的帧间预测编码单元选择方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120183080A1 (en) * 2011-01-13 2012-07-19 Texas Instruments Incorporated Method and apparatus for a low complexity transform unit partitioning structure for hevc
CN102984521A (zh) * 2012-12-12 2013-03-20 四川大学 基于时域相关性的高性能视频编码帧间模式判决方法
CN104023234A (zh) * 2014-06-24 2014-09-03 华侨大学 一种适用于hevc的快速帧间预测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LI, WEI ET AL.: "A Fast Mode Decision Algorithm for High Efficiency Video Coding", JOURNAL OF XI AN JIAOTONG UNIVERSITY, vol. 47, no. 8, 31 August 2013 (2013-08-31), XP008180328 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020164480A1 (en) * 2019-02-11 2020-08-20 Beijing Bytedance Network Technology Co., Ltd. Condition dependent video block partition
CN110139106A (zh) * 2019-04-04 2019-08-16 中南大学 一种视频编码单元分割方法及其***、装置、存储介质
CN110139106B (zh) * 2019-04-04 2023-01-17 中南大学 一种视频编码单元分割方法及其***、装置、存储介质

Also Published As

Publication number Publication date
US20160234511A1 (en) 2016-08-11
CN104581159B (zh) 2019-04-05
CN109743577A (zh) 2019-05-10
US10506241B2 (en) 2019-12-10
EP3051817A1 (en) 2016-08-03
CN104581159A (zh) 2015-04-29
EP3051817A4 (en) 2016-10-26

Similar Documents

Publication Publication Date Title
WO2015055134A1 (zh) 视频编解码中的块分割方式确定方法及相关装置
CN107079160B (zh) 对亮度及色度使用单独编码树的视频编码方法
TWI663873B (zh) 使用靈活型四叉樹與二叉樹塊分割的視訊編解碼方法及裝置
KR102014618B1 (ko) 2진 트리 블록 분할을 사용한 비디오 코딩 방법
JP6037341B2 (ja) 映像をデコーディングするための方法
TWI499285B (zh) 判定視訊寫碼之解塊濾波之邊界強度值
CN112005550B (zh) 用于处理图像的方法及其设备
CN110720217B (zh) 用于支持各种块大小的图像编码或解码的设备和方法
KR20180082330A (ko) 영상 부호화 또는 복호화하기 위한 장치 및 방법
WO2013063113A1 (en) Determining quantization parameters for deblocking filtering for video coding
BR112014010360B1 (pt) Método e dispositivo para codificar dados de vídeo, método e dispositivo para decodificar dados de vídeo e memória legível por computador
KR20140130465A (ko) B 슬라이스에서의 예측 유닛의 단방향성 인터 예측으로의 제한
RU2753371C2 (ru) Способ кодирования текущего блока первого компонента изображения относительно контрольного блока по меньшей мере одного второго компонента изображения, устройство кодирования и соответствующая компьютерная программа
CN112106364B (zh) 使用参考样本的视频信号处理方法及设备
JP2013509006A (ja) 動画像の並列的な符号化および復号のための方法
CN112166606B (zh) 用于处理图像的方法及其设备
JP2022524916A (ja) 適応的な数の領域を伴う幾何学的分割のための形状適応離散コサイン変換
KR20140110802A (ko) 병렬 처리를 위한 비디오 복호화 방법
JP2023107986A (ja) 変換に基づく映像コーディング方法及びその装置
WO2012044925A1 (en) Selective indication of transform sizes
JP2020504539A (ja) 非対称符号化ユニットサイズブロック依存比
JP2022537160A (ja) 変換に基づく映像コーディング方法及びその装置
KR20200058565A (ko) 비디오 신호의 처리 방법 및 장치
CN113316937A (zh) 处理视频信号的方法和设备
RU2810123C2 (ru) Способ и оборудование кодирования/декодирования изображений для выполнения внутреннего предсказания и способ для передачи потока битов

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: 14853668

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2014853668

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014853668

Country of ref document: EP