WO2016054975A1 - 预测块的划分方法、编码设备和解码设备 - Google Patents

预测块的划分方法、编码设备和解码设备 Download PDF

Info

Publication number
WO2016054975A1
WO2016054975A1 PCT/CN2015/090438 CN2015090438W WO2016054975A1 WO 2016054975 A1 WO2016054975 A1 WO 2016054975A1 CN 2015090438 W CN2015090438 W CN 2015090438W WO 2016054975 A1 WO2016054975 A1 WO 2016054975A1
Authority
WO
WIPO (PCT)
Prior art keywords
size
prediction block
division
horizontal
sub
Prior art date
Application number
PCT/CN2015/090438
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 EP15849357.7A priority Critical patent/EP3104605A4/en
Publication of WO2016054975A1 publication Critical patent/WO2016054975A1/zh
Priority to US15/362,452 priority patent/US10230953B2/en
Priority to US16/263,779 priority patent/US10834398B2/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/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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/162User input
    • 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

Definitions

  • the present invention relates to the field of image processing, and in particular, to a method for dividing a prediction block in an image processing field, an encoding device, and a decoding device.
  • the interframe compression method is a universal video coding technology, which can compress the video image to be transmitted, and can reduce the amount of data transmitted by the video.
  • the interframe compression method is a video coding technology based on motion estimation.
  • the process of encoding a video image by the encoding device includes: firstly, dividing the video image to be encoded into several equal-sized image blocks, which are called coding blocks; Subdividing the coded block to obtain a sub-image block, referred to as a prediction block, searching for a picture block that best matches the current prediction block as a reference block in the reference image; and thereafter, corresponding pixel values of the current prediction block and the reference block Subtracting to obtain a residual, and combining the obtained residuals of the prediction blocks to obtain a residual of the video image to be encoded; and then performing the transformed and quantized residuals of the video image to be encoded Entropy coding; finally, the bit stream obtained by entropy coding and the motion information are sent to the decoding device.
  • the motion information indicates a position difference between the current prediction block and the reference block.
  • a seed prediction block technique is introduced.
  • the basic idea of the sub-prediction block technique is to divide the current prediction block into smaller sub-prediction blocks.
  • the current prediction block can be divided into a plurality of sub-predicted blocks having a smaller size (for example, size 8 ⁇ 8) for segmentation.
  • the subsequent sub-predicted block obtains a reference motion vector from the reference image in units.
  • the current prediction block can be divided into multiple sub-prediction blocks to obtain more reference motion vectors, which can improve the coding quality.
  • the existing sub-prediction block technique has the following two problems: First, since the size of the sub-prediction block is preset, for example, the size of the sub-prediction block is preset to 8 ⁇ 8, and some of the prediction blocks are When the size of one side is smaller than the preset size of the sub-predicted block, the side is not divided. For example, when the size of the prediction block is 16 ⁇ 4, the size of the vertical side of the prediction block is 4 less than 8, so the vertical edge is not Dividing, at this time, the 16 ⁇ 4 prediction block partitioning obtains 2 sub-prediction blocks with a size of 8 ⁇ 4; when the size of one side of the prediction block is not a multiple of 8, the edge is not divided, for example, in the prediction block.
  • the size of the prediction block is 16 ⁇ 12
  • the size of the vertical side of the prediction block is 12, which is not a multiple of 8, and the vertical edge is not divided.
  • the prediction block of 16 ⁇ 12 is divided into two sub-predictions with a size of 8 ⁇ 12. Piece.
  • the prediction block size is 12 ⁇ 12 and the sub-prediction block size is preset to 8 ⁇ 8, since the size of the horizontal side of the prediction block and the size of the vertical side are not multiples of 8, the sub-predicted block obtained by the division is obtained.
  • the size is still 12 ⁇ 12.
  • a problem with this division method is that some sub-prediction blocks whose size does not belong to the size used in the existing codec device, such as a sub-prediction block having a size of 8 ⁇ 12, will be introduced.
  • these blocks that do not belong to the size used in the existing codec device do not exist, thereby adding some sub-prediction block sizes due to the sub-prediction block technique, thereby increasing the codec.
  • the implementation burden of the system Second, the existing sub-prediction block technique neutron prediction block is unified into a square and cannot reflect the texture of the prediction block, which affects the accuracy of the acquired reference motion vector.
  • the embodiment of the present invention provides a method for dividing a prediction block, an encoding device, and a decoding device, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, and improve the acquisition of the reference motion vector through the sub-prediction block. The accuracy.
  • a method for dividing a prediction block comprising:
  • the division manner of the prediction block is a horizontal division manner, a vertical division manner, or a square division manner;
  • the prediction block is divided into at least one sub-prediction block according to the horizontal division size and the vertical division size.
  • a size of a horizontal side of the sub-predicted block is equal to the horizontal partition size
  • a size of a vertical side of the sub-predicted block is equal to the vertical Divide the size
  • the determining the horizontal division size and the vertical division size according to the division manner of the prediction block include:
  • the horizontal division size and the vertical division size are determined based on the reference size M according to the division manner of the prediction block.
  • the The division of the block determines the horizontal and vertical division dimensions, including:
  • the division manner of the prediction block is the horizontal division manner
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the determining, according to the division manner of the prediction block, determining the horizontal division based on the reference size M Dimensions and the vertical division dimensions including:
  • the horizontal division size is determined as J based on the reference size M
  • the vertical division size is determined as K, where J and K are positive integers, And J is greater than M, and K is less than M.
  • the value of J shifts M to the left corresponding to the p-bit value, and the value of K shifts M to the right.
  • the The division of the block determines the horizontal and vertical division dimensions, including:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the determining, according to the partitioning manner of the prediction block, determining the The horizontal division size and the vertical division size include:
  • the horizontal division size is determined to be Y based on the reference size M, and the vertical division size is determined as Z, wherein Y and Z are positive integers, And Y is less than M, and Z is greater than M.
  • the value of Y is a value corresponding to the right shift of the M bit
  • the value of Z is the left shift of the M.
  • any one of the first to the second possible implementation manners of the first aspect Predict the division of blocks, determine the horizontal and vertical division dimensions, including:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the determining the level based on the reference size M according to the manner of dividing the prediction block Dividing the size and the vertical dividing size including:
  • the horizontal division size is determined to be M based on the reference size M, and the vertical division size is determined to be M.
  • the dividing the prediction block into the at least one sub-predicted block according to the horizontal partition size and the vertical partition size includes:
  • the prediction block When the horizontal partition size is larger than a size of a horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to a size of a horizontal side of the prediction block, and a size of a horizontal side of the sub-predicted block is equal to a size of a horizontal side of the prediction block; when the horizontal division size is less than or equal to a size of a horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, the sub- The size of the horizontal edge of the prediction block is equal to the horizontal division size;
  • the size of the vertical side divides the prediction block into sub-prediction blocks, the size of the vertical side of the sub-prediction block is equal to the size of the vertical side of the prediction block; and the vertical division size is less than or equal to the prediction block
  • the size of the vertical side is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the fourteenth possible implementation of the first aspect according to the level Dividing the size and the vertical division size, the size of the horizontal edges of all the sub-predicted blocks obtained is the same, and the obtained vertical edges of all the sub-predicted blocks have the same size.
  • the method further include:
  • Motion information is obtained based on the sub-prediction block.
  • the obtaining the motion information according to the sub prediction block includes:
  • the motion information is obtained from a reference view image or from a texture image according to the sub-prediction block.
  • a method for dividing a prediction block comprising:
  • a size of a horizontal side of the sub-predicted block according to a numerical relationship between a size of a horizontal side of the prediction block and the reference size or a numerical relationship between a size of a vertical side of the prediction block and the reference size, according to the prediction a numerical relationship between a size of a horizontal side of the block and the reference size or a numerical relationship between a size of a vertical side of the prediction block and the reference size determines a size of a vertical side of the sub-predicted block, according to a level of the sub-predicted block The size of the edge and the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks.
  • the numerical relationship between a size of a horizontal edge of the prediction block and the reference size or a size of a vertical edge of the prediction block determines a size of a horizontal side of the sub-predicted block, a numerical relationship according to a size of a horizontal side of the predicted block to the reference size or a size of a vertical side of the predicted block and the reference size
  • the numerical relationship determines the size of the vertical side of the sub-predicted block, according to which the sub-predicted block
  • the size of the horizontal edge and the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks, including:
  • a size of a horizontal side of the prediction block is smaller than the reference size, or a size of a vertical side of the prediction block is smaller than the reference size, or a size of a horizontal side of the prediction block is larger than the reference size but cannot be divisible
  • the reference size, or the size of the vertical side of the prediction block is larger than the reference size but cannot divide the reference size, according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block
  • the prediction block is divided into one sub-prediction block.
  • the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the vertical edge of the prediction block determines a size of a horizontal side of the sub-predicted block, a numerical relationship according to a size of a horizontal side of the predicted block to the reference size or a size of a vertical side of the predicted block and the reference size
  • the numerical relationship determines the size of the vertical edges of the sub-predicted block, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set as the vertical side of the prediction block size of;
  • the preset condition is that a ratio of a size of a horizontal side of the prediction block to the reference size is less than or equal to 1, or a ratio of a size of a vertical side of the prediction block to the reference size is less than or equal to 1.
  • the method further includes:
  • Motion information is obtained based on the sub-prediction block.
  • the obtaining the motion information according to the sub prediction block includes:
  • the motion information is obtained from a reference view image or from a texture image according to the sub-prediction block.
  • an encoding device comprising:
  • a first acquiring module configured to acquire a dividing manner of the prediction block, where the partitioning manner is a horizontal dividing manner, a vertical dividing manner, or a square dividing manner;
  • a determining module configured to determine a horizontal division size and a vertical division size according to a division manner of the prediction block acquired by the first acquisition module
  • a dividing module configured to divide the prediction block into at least one sub-prediction block according to the horizontal partition size and the vertical partition size determined by the determining module.
  • a size of a horizontal side of the sub-predicted block is equal to the horizontal partition size, and a size of a vertical side of the sub-predicted block is equal to the vertical Divide the size.
  • the determining module includes:
  • a determining submodule configured to determine the horizontal partition size and the vertical partition size based on the reference size M acquired by the acquiring submodule according to a division manner of the prediction block acquired by the first obtaining module.
  • the determining module is specifically used to:
  • the division manner of the prediction block acquired by the first acquisition module is a horizontal division manner, determining the horizontal division size and the vertical division size, where the horizontal division size is larger than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as J
  • the vertical division size is determined as K, where J and K are positive integers And J is greater than M and K is less than M.
  • the value of J shifts M to the left corresponding to the p-bit value, and the value of K shifts M to the right.
  • the determining module is specifically used to:
  • the division manner of the prediction block acquired by the first acquisition module is a vertical division manner, determining the horizontal division size and the vertical division size, where the horizontal division size is smaller than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as Y
  • the vertical division size is determined as Z, where Y and Z are positive integers And Y is less than M and Z is greater than M.
  • the value of Y is a value corresponding to the right shift of the M bit
  • the value of Z is the left shift of the M.
  • the determining module is specific Used for:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as M
  • the vertical division size is determined as M.
  • the dividing module is specifically configured to:
  • the size of the horizontal edge divides the prediction block into sub-prediction blocks, the size of the horizontal side of the sub-prediction block is equal to the size of the horizontal side of the prediction block; and the horizontal division size is less than or equal to the prediction block
  • the prediction block is divided into sub-predicted blocks according to the horizontal division size, and the size of the horizontal side of the sub-predicted block is equal to the horizontal division size
  • the prediction block When the vertical division size is larger than a size of a vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to a size of a vertical side of the prediction block, and a size of a vertical side of the sub-predicted block is equal to a size of a vertical side of the prediction block; when the vertical division size is less than or equal to a size of a vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, the sub- The size of the vertical side of the prediction block is equal to the vertical division size.
  • the fourteenth possible implementation manner of the third aspect according to the level Dividing the size and the vertical division size, the size of the horizontal edges of all the sub-predicted blocks obtained is the same, and the obtained vertical edges of all the sub-predicted blocks have the same size.
  • the encoding device Also includes:
  • a second acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the second acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • an encoding device including:
  • a first acquiring module configured to acquire a size of a horizontal edge of the prediction block and a size of a vertical edge
  • a second obtaining module configured to obtain a reference size
  • a dividing module configured to determine a size of a horizontal side of the sub-predicted block according to a numerical relationship between a size of a horizontal side of the predicted block and the reference size or a numerical relationship between a size of a vertical side of the predicted block and the reference size Determining the vertical of the sub-predicted block according to a numerical relationship between the size of the horizontal side of the prediction block and the reference size or a numerical relationship between the size of the vertical side of the prediction block and the reference size
  • the size of the edge is divided into at least one of the sub-predicted blocks according to the size of the horizontal side of the sub-predicted block and the size of the vertical side of the sub-predicted block.
  • the dividing module is specifically configured to:
  • a size of a horizontal side of the prediction block is smaller than the reference size, or a size of a vertical side of the prediction block is smaller than the reference size, or a size of a horizontal side of the prediction block is larger than the reference size but cannot be divisible
  • the reference size, or the size of the vertical side of the prediction block is larger than the reference size but cannot divide the reference size, according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block
  • the prediction block is divided into one sub-prediction block.
  • the dividing module is based on a numerical relationship between a size of a horizontal edge of the prediction block and the reference size or a vertical edge of the prediction block
  • the numerical relationship between the size and the reference size determines a size of a horizontal side of the sub-predicted block, according to a numerical relationship of a size of a horizontal side of the predicted block to the reference size or a size of a vertical side of the predicted block
  • the numerical relationship of the reference dimensions determines the dimensions of the vertical edges of the sub-predicted blocks, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set as the vertical side of the prediction block size of;
  • the preset condition is that a ratio of a size of a horizontal side of the prediction block to the reference size is less than or equal to 1, or a ratio of a size of a vertical side of the prediction block to the reference size is less than or equal to 1.
  • the coding device further includes :
  • a third acquiring module configured to acquire motion information according to the sub prediction block.
  • the third acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module is obtained from a reference view image or from a texture image The motion information.
  • a fifth aspect provides a decoding device, where the decoding device includes:
  • a first acquiring module configured to acquire a dividing manner of the prediction block, where the partitioning manner is a horizontal dividing manner, a vertical dividing manner, or a square dividing manner;
  • a determining module configured to determine a horizontal division size and a vertical division size according to a division manner of the prediction block acquired by the first acquisition module
  • a dividing module configured to divide the prediction block into at least one sub-prediction block according to the horizontal partition size and the vertical partition size determined by the determining module.
  • a size of a horizontal side of the sub-predicted block is equal to the horizontal partition size, and a size of a vertical side of the sub-predicted block is equal to the vertical Divide the size.
  • the determining module includes:
  • a determining submodule configured to determine the horizontal partition size and the vertical partition size based on the reference size M acquired by the acquiring submodule according to a division manner of the prediction block acquired by the first obtaining module.
  • the determining module is specifically used to:
  • the division manner of the prediction block acquired by the first acquisition module is a horizontal division manner, determining the horizontal division size and the vertical division size, where the horizontal division size is larger than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as J
  • the vertical division size is determined as K, where J and K are positive integers. And J is greater than M and K is less than M.
  • the fifth possible implementation in the fifth aspect In conjunction with the fourth possible implementation of the fifth aspect, the fifth possible implementation in the fifth aspect In the mode, the value of J is a value corresponding to shifting M to the left by p bits, and the value of K is a value corresponding to shifting M right by p bits, where p is a positive integer.
  • the determining module is specifically used to:
  • the division manner of the prediction block acquired by the first acquisition module is a vertical division manner, determining the horizontal division size and the vertical division size, where the horizontal division size is smaller than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as Y
  • the vertical division size is determined as Z, where Y and Z are positive integers And Y is less than M and Z is greater than M.
  • the value of Y is a value corresponding to the right shift of the M bit
  • the value of Z is the left shift of the M.
  • the determining module is specific Used for:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as M
  • the vertical division size is determined as M.
  • the dividing module is specifically configured to:
  • the prediction block When the horizontal partition size is larger than a size of a horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to a size of a horizontal side of the prediction block, and a size of a horizontal side of the sub-predicted block is equal to a size of a horizontal side of the prediction block; when the horizontal division size is less than or equal to a size of a horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, the sub- The size of the horizontal edge of the prediction block is equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than a size of a vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to a size of a vertical side of the prediction block, and a size of a vertical side of the sub-predicted block is equal to a size of a vertical side of the prediction block; when the vertical division size is less than or equal to a size of a vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, the sub- The size of the vertical side of the prediction block is equal to the vertical division size.
  • the size of the horizontal edges of all the sub-predicted blocks obtained is the same, and the obtained vertical edges of all the sub-predicted blocks have the same size.
  • the decoding device Also includes:
  • a second acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the second acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • a decoding apparatus including:
  • a first acquiring module configured to acquire a size of a horizontal edge of the prediction block and a size of a vertical edge
  • a second obtaining module configured to obtain a reference size
  • a dividing module configured to determine a size of a horizontal side of the sub-predicted block according to a numerical relationship between a size of a horizontal side of the predicted block and the reference size or a numerical relationship between a size of a vertical side of the predicted block and the reference size Determining a size of a vertical side of the sub-predicted block according to a numerical relationship between a size of a horizontal side of the prediction block and the reference size or a numerical relationship between a size of a vertical side of the prediction block and the reference size, according to the The size of the horizontal side of the sub-predicted block and the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks.
  • the dividing module is specifically configured to:
  • a size of a horizontal side of the prediction block is smaller than the reference size, or a size of a vertical side of the prediction block is smaller than the reference size, or a size of a horizontal side of the prediction block is larger than the reference size but cannot be divisible
  • the reference size, or the size of the vertical side of the prediction block is larger than the reference size but cannot divide the reference size, according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block
  • the prediction block is divided into one sub-prediction block.
  • the dividing module is based on a numerical relationship between a size of a horizontal edge of the prediction block and the reference size or a vertical edge of the prediction block
  • the numerical relationship between the size and the reference size determines a size of a horizontal side of the sub-predicted block, according to a numerical relationship of a size of a horizontal side of the predicted block to the reference size or a size of a vertical side of the predicted block
  • the numerical relationship of the reference dimensions determines the dimensions of the vertical edges of the sub-predicted blocks, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set as the vertical side of the prediction block size of;
  • the preset condition is that a ratio of a size of a horizontal side of the prediction block to the reference size is less than or equal to 1, or a ratio of a size of a vertical side of the prediction block to the reference size is less than or equal to 1.
  • the decoding device further includes :
  • a third acquiring module configured to acquire motion information according to the sub prediction block.
  • the third acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • the method for dividing a prediction block, the encoding device, and the decoding device determine a horizontal partition size and a vertical partition size according to a partitioning manner of the prediction block, according to the horizontal partition size and the vertical partition size pair.
  • the prediction block is divided such that the texture of the sub-prediction block is consistent with the texture of the prediction block, and the sub-prediction block that does not belong to the size used in the existing codec device can be avoided, thereby avoiding an increase in the implementation burden of the codec system. And can improve the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • 1A, 1B, 1C, and 1D are schematic views of a symmetric division manner of a coding block.
  • 2A, 2B, 2C, and 2D are schematic diagrams of an asymmetric division manner of a coding block.
  • FIG. 3 is a schematic flowchart of a method for dividing a prediction block according to an embodiment of the present invention.
  • 4A, 4B, and 4C are schematic diagrams of an undivided prediction block, a division of a prediction block in the prior art, and a division of a prediction block according to an embodiment of the present invention, respectively.
  • 5A, 5B, and 5C are schematic diagrams of an undivided prediction block, a division of a prediction block in the prior art, and a division of a prediction block according to an embodiment of the present invention, respectively.
  • 6A, 6B, and 6C are schematic diagrams of an undivided prediction block, a division of a prediction block in the prior art, and a division of a prediction block according to an embodiment of the present invention, respectively.
  • FIGS. 7A, 7B, and 7C are schematic diagrams of an undivided prediction block, a division of a prediction block in the prior art, and a division of a prediction block according to an embodiment of the present invention, respectively.
  • 8A, 8B, and 8C are schematic diagrams of an undivided prediction block, a division of a prediction block in the prior art, and a division of a prediction block according to an embodiment of the present invention, respectively.
  • FIG. 9 is a schematic flowchart of a method for dividing a prediction block according to an embodiment of the present invention.
  • Figure 10 is a schematic block diagram of an encoding device in accordance with one embodiment of the present invention.
  • Figure 11 is a schematic block diagram of an encoding device in accordance with one embodiment of the present invention.
  • Figure 12 is a schematic block diagram of a decoding device in accordance with one embodiment of the present invention.
  • Figure 13 is a schematic block diagram of a decoding device in accordance with one embodiment of the present invention.
  • Figure 14 is a schematic block diagram of an encoding device in accordance with one embodiment of the present invention.
  • Figure 15 is a schematic block diagram of an encoding device in accordance with one embodiment of the present invention.
  • Figure 16 is a schematic block diagram of a decoding device in accordance with one embodiment of the present invention.
  • Figure 17 is a schematic block diagram of a decoding device in accordance with one embodiment of the present invention.
  • a common symmetric division manner of dividing a coding block into a prediction block includes: a 2N ⁇ 2N division manner, and only divides the coding block into one prediction block, that is, the coding block is not divided into smaller sub-images.
  • Block as shown in FIG. 1A; 2N ⁇ N partitioning method, dividing the coding block into two upper and lower prediction blocks, as shown in FIG. 1B; N ⁇ 2N division mode, dividing the coding block into two equal parts
  • the prediction block is shown in FIG. 1C; in the N ⁇ N division manner, the coding block is divided into four equal-sized prediction blocks, as shown in FIG. 1D.
  • the above N is any positive integer.
  • dividing the coding block into prediction blocks may also adopt an asymmetric division manner, as shown in FIGS. 2A to 2D.
  • the division mode shown in FIG. 2A and FIG. 2B divides one coding block into two upper and lower rectangular prediction blocks, and the two prediction blocks divided by the 2N ⁇ nU division method shown in FIG.
  • the upper prediction block The dimensions of the two sides are 2N and 0.5N, and the dimensions of the two sides of the lower prediction block are 2N and 1.5N, where 2N ⁇ nU indicates that the dividing line is shifted by 0.5N with respect to the horizontal bisector of the coding block;
  • the sizes of the two sides of the upper prediction block are 2N and 1.5N
  • the sizes of the two sides of the lower prediction block are 2N and 0.5N
  • 2N ⁇ nD indicates that the dividing line is shifted downward by 0.5N with respect to the horizontal bisector of the coding block.
  • 2C and 2D divides one coding block into two rectangular prediction blocks of unequal size, and the passage shown in FIG. 2C Among the two prediction blocks partitioned by the nL ⁇ 2N partitioning method, the sizes of the two sides of the left prediction block are 0.5N and 2N, and the sizes of the two sides of the right prediction block are 1.5N and 2N, where nL ⁇ 2N represents the dividing line.
  • the vertical bisector of the coding block is shifted to the left by 0.5N; in the two prediction blocks divided by the nR ⁇ 2N division method shown in FIG. 2D, the sizes of the two sides of the left prediction block are 1.5N and 2N, and the right prediction block is two.
  • the stripe dimensions are 0.5N and 2N, and nR x 2N indicates that the dividing line is shifted right by 0.5N with respect to the vertical bisector of the encoding block.
  • the division modes 2N ⁇ N, 2N ⁇ nL, and 2N ⁇ nD are horizontal division manners.
  • the division mode of the prediction block is the horizontal division mode
  • the size of the horizontal edge of the prediction block is larger than the size of the vertical edge thereof;
  • the division mode is N ⁇ 2N.
  • nL ⁇ 2N and nR ⁇ 2N are vertical division modes.
  • the division mode 2N ⁇ 2N and N ⁇ N are square division.
  • the size of the horizontal edge of the prediction block is equal to the size of its vertical edge.
  • the size of the horizontal side of the prediction block may also be referred to as the width, and the size of the vertical side of the prediction block may also be referred to as the height.
  • the above-described interframe compression method is also used in the three-dimensional video image encoding.
  • Two types of images, a texture and a depth image are included in the three-dimensional video system.
  • the texture image contains the information of the image itself, and the depth image contains the depth information of the texture image. Since 3D video usually contains multi-path texture images, multi-path depth images are usually also included in 3D systems, where each texture image or depth image is called a view.
  • the depth image corresponding to the texture image provides depth information for the coding prediction between the texture images.
  • the current texture image may be predictively encoded using adjacent texture images, where the adjacent texture image is referred to as a reference view image or a reference view.
  • the reference view image is also one of the reference frames.
  • the technique of inter-view prediction includes Inter-view Motion Vector Candidate (IVC) and Motion Parameter Inheritance (MPI) technology.
  • Techniques such as IVMP and MPI involve obtaining a reference block from a reference frame, and obtaining motion information based on the reference block, the motion information including a motion vector, a reference frame index value, and the like.
  • the IVMC technique obtains a reference block from a reference view, obtains motion information according to the reference block;
  • MPI is used for depth image coding and decoding, and the block in the depth image obtains the motion information of the corresponding texture block by the corresponding position. Its own motion information. Introduced a seed prediction block technique in the prior art for more accurate acquisition Refer to the motion vector.
  • the basic idea of the sub-prediction block technique is to divide the current prediction block into smaller sub-prediction blocks.
  • the current prediction block can be divided into a plurality of sub-predicted blocks having a smaller size (for example, size 8 ⁇ 8) for segmentation.
  • the subsequent sub-predicted block obtains a reference motion vector from the reference image in units.
  • the current prediction block can be divided into multiple sub-prediction blocks to obtain more reference motion vectors, which can improve the coding quality.
  • the existing sub-prediction block technique has the following two problems: First, since the size of the sub-prediction block is preset, for example, the size of the sub-prediction block is preset to 8 ⁇ 8, and some of the prediction blocks are When the size of one side is smaller than the preset size of the sub-predicted block, the side is not divided.
  • the 16 ⁇ 4 prediction block partitioning obtains 2 sub-predicted blocks of size 8 ⁇ 4; when the size of one side of the prediction block is not a multiple of 8, the edge is not divided, for example, in prediction
  • the size of the block is 16 ⁇ 12
  • the size of the vertical side of the prediction block is 12, which is not a multiple of 8, and the vertical edge is not divided.
  • the prediction block of 16 ⁇ 12 is divided into 2 ⁇ 12. Sub prediction block.
  • the prediction block size is 12 ⁇ 12 and the sub-prediction block size is preset to 8 ⁇ 8, since the size of the horizontal side of the prediction block and the size of the vertical side are not multiples of 8, the sub-predicted block obtained by the division is obtained.
  • the size is still 12 ⁇ 12.
  • a problem with this division method is that some sub-prediction blocks whose size does not belong to the size used in the existing codec device, such as a sub-prediction block having a size of 8 ⁇ 12, will be introduced. However, before the sub-prediction block technique is introduced, these blocks that do not belong to the size used in the existing codec device do not exist, thereby adding some sub-prediction block sizes due to the sub-prediction block technique, thereby increasing the codec. The implementation burden of the system.
  • the coding block size used in the existing codec device includes 64 ⁇ 64, 32 ⁇ 32, 16 ⁇ 16, 8 ⁇ 8, etc.
  • the division coding mode commonly used in the codec device includes 2N ⁇ 2N, 2N ⁇ N, N ⁇ 2N, 2N ⁇ nU, 2N ⁇ nD, nL ⁇ 2N, nR ⁇ 2N, N ⁇ N, taking into account that the size of the prediction block or sub-prediction block in the common codec device is not less than 4, so the prediction
  • the size of the block or sub-prediction block includes 64 ⁇ 64, 64 ⁇ 32, 32 ⁇ 64, 64 ⁇ 16, 16 ⁇ 64, 32 ⁇ 32, 32 ⁇ 16, 16 ⁇ 32, 32 ⁇ 8, 8 ⁇ 32, 16 ⁇ . 16, 16 ⁇ 4, 4 ⁇ 16, 16 ⁇ 8, 8 ⁇ 16, 8 ⁇ 8, 8 ⁇ 4, 4 ⁇ 8, 4 ⁇ 4 and so on.
  • the existing sub-prediction block technique neutron prediction block is unified into a square and cannot reflect the texture of the prediction block, which affects the accuracy of the acquired reference motion vector.
  • the idea of the present invention is based on solving Two problems are unfolded.
  • FIG. 3 is a schematic flowchart of a method 100 for dividing a prediction block according to an embodiment of the present invention.
  • the method 100 may be performed by an encoding device or a decoding device, and the method 100 includes:
  • the partitioning mode of the prediction block is the horizontal division mode (ie, 2N ⁇ N, 2N ⁇ nU, or 2N ⁇ nD division)
  • the size of the horizontal edge of the prediction block is larger than the size of the vertical edge; the division mode of the prediction block is vertical division.
  • the size of the horizontal edge of the prediction block is smaller than the size of the vertical edge;
  • the division mode of the prediction block is square division (ie, 2N ⁇ 2N or N)
  • ⁇ N the size of the horizontal side of the prediction block is equal to the size of its vertical side.
  • the texture of a prediction block is related to the division manner used to obtain the prediction block. For example, an image texture corresponding to a prediction block obtained by horizontal division is generally inclined to use a horizontal texture.
  • the horizontal division size and the vertical division size for the reference are determined for the division sub-prediction block according to the division manner of the prediction block.
  • the division mode of the prediction block is the horizontal division mode
  • the size of the horizontal edge of the prediction block is larger than the size of the vertical edge thereof, and then the horizontal division size is determined to be larger than the vertical division size
  • the prediction block is divided into the vertical division mode
  • the size of the horizontal edge of the prediction block is smaller than the size of the vertical edge thereof, and then the horizontal division size is also smaller than the vertical division size
  • the division mode of the prediction block is the square division mode
  • the size of the horizontal edge of the prediction block is equal to the vertical edge thereof.
  • the horizontal division size should also be equal to the vertical division size.
  • S130 Divide the prediction block into at least one sub-prediction block according to the horizontal division size and the vertical division size. It should be understood that there are two cases, one case is that the size of the horizontal side of the sub-predicted block obtained by the division is equal to the horizontal division size, the size of the vertical side of the sub-predicted block is equal to the vertical division size; the other case is the horizontal division
  • the size and the vertical division size are factors that need to be referenced for dividing the prediction block, but the size of the horizontal edge of the sub-predicted block obtained by the division is not equal to the horizontal division size, or the size of the vertical side of the sub-predicted block is not equal to the vertical division. size.
  • the method for dividing a prediction block determines a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block The texture is consistent with the texture of the predicted block and can be avoided
  • the sub-prediction block does not belong to the size used in the existing codec device, thereby avoiding an increase in the implementation burden of the codec system and improving the accuracy of acquiring the reference motion vector through the sub-prediction block.
  • the size of the horizontal side of the sub-predicted block is equal to the horizontal division size.
  • the size of the vertical side of the sub-predicted block is equal to the vertical dividing size.
  • the prediction block when the horizontal partition size is larger than the size of the horizontal edge of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the horizontal edge of the prediction block, and the horizontal edge of the sub-predicted block The size is equal to the size of the horizontal edge of the prediction block; when the horizontal division size is less than or equal to the size of the horizontal edge of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, and the level of the sub-predicted block The size of the edge is equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the vertical side of the prediction block, and the size of the vertical side of the sub-predicted block is equal to the vertical of the prediction block.
  • the size of the edge when the vertical division size is less than or equal to the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the horizontal direction of the prediction block is not divided.
  • the prediction block is obtained by horizontal division, and its size is 8 ⁇ 4, that is, the size of the horizontal side is 8, and the size of the vertical side is 4.
  • the horizontal division mode is adopted, and by shifting the reference size M (assuming the basic size is 8), the horizontal division size and the vertical division size are 16 and 4, respectively.
  • the size of the horizontal side of the prediction block is 8, which is smaller than the horizontal division size 16, so the horizontal edge of the prediction block is not divided; the size of the vertical side of the prediction block is 4, which is equal to the vertical division size 4,
  • the sub-prediction block obtained by the prediction block partition still has a vertical side size of 4, and finally a sub-predicted block having a size of 8 ⁇ 4 is obtained.
  • the obtained horizontal edges of all sub-predicted blocks have the same size, and the obtained vertical sub-predicted blocks have the same size.
  • determining the horizontal division according to the division manner of the prediction block Dimensions and vertical dimensions including:
  • the horizontal division size and the vertical division size are determined based on the reference size M.
  • the sub-predicted blocks in the prior art are all square, assuming that the size of the horizontal side of the sub-predicted block obtained by the prediction block partition is M, and the size of the vertical side of the sub-predicted block is also M, and M can be
  • M can be
  • the reference size is applied to the embodiment of the present invention, but the embodiment of the present invention does not limit this, and the reference size of the sub-prediction block may be preset to any positive integer. Since the size of the prediction block in the prior art is generally a multiple of 4, the reference size of the sub-predicted block can generally be set to a value of 4, 8, or 16, and the like.
  • the horizontal division size and the vertical division size are determined based on the reference size M, and when the prediction block is divided into the sub-predicted blocks, the horizontal division size and the vertical division size are referred to, thereby ensuring the texture of the sub-predicted block and The texture of the prediction block is consistent, which can improve the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • the division mode of the prediction block is the horizontal division mode, that is, when the size of the horizontal edge of the prediction block is larger than the size of the vertical edge thereof, the horizontal division size is expanded by M, the first vertical size is reduced by M, and the reference horizontal division is performed.
  • the size of the horizontal edge of the sub-prediction block can be made larger than the size of the vertical edge; when the division mode of the prediction block is the vertical division mode, that is, the size of the horizontal edge of the prediction block When the size is smaller than the size of the vertical side, the horizontal division size is reduced by M, the vertical division size is enlarged by M, and the reference horizontal division size and the vertical division size are used to divide the prediction block, so that the horizontal edge size of the sub prediction block can also be The size smaller than the vertical side of the prediction block; when the division mode of the prediction block is the square division mode, that is, when the size of the horizontal edge of the prediction block is equal to the size of the vertical side thereof, the horizontal division size and the first vertical size may be determined as M, reference After dividing the prediction block by the horizontal division size and the vertical division size, the size of the horizontal edge of the sub-predicted block can be made equal. The size of the vertical sides.
  • the method for dividing a prediction block determines a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block The texture is consistent with the texture of the prediction block, which improves the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • the horizontal division size and the vertical division size are determined such that the difference between the area of the rectangular block formed by the horizontal division size and the vertical division size and M 2 is less than a certain threshold.
  • the size of the horizontal side of the sub-prediction block is equal to the horizontal division size
  • the size of the vertical side of the sub-predicted block is equal to the vertical division size, so that the area of the sub-predicted block and the M 2 The difference is less than a certain threshold.
  • the area of the rectangular block formed by the horizontal division size and the vertical division size is M 2 such that the area of the sub-predicted block is M 2 .
  • the horizontal division size may be increased by a certain multiple with respect to M, while the vertical division size is also reduced by the same multiple with respect to M; or the horizontal division size is reduced by a certain multiple with respect to M, while The vertical division size is also expanded by the same multiple with respect to M, so that the area of the rectangular block composed of the horizontal division size and the vertical division size is M 2 such that the area of the sub-predicted block is maintained as M 2 .
  • the method for dividing a prediction block adjusts the horizontal division size and the vertical division size according to the division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, thereby finally making the sub prediction.
  • the area of the block remains the same as the area of the sub-predicted block of the reference size, so that the number of sub-prediction blocks obtained by the division is consistent with the number of sub-predicted blocks obtained by dividing the reference size, and the number of reference motion vectors obtained is not a factor prediction block. Changes in width and height change.
  • the horizontal division size and the vertical division size need to be adjusted based on the reference size M.
  • M is a positive integer, and the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be a left shift or a right shift on the binary form of M.
  • M is a positive integer
  • the adjustment here may be
  • adjusting the size of the horizontal side of the sub-predicted block and the size of the vertical side may also be a simple expansion or reduction of the corresponding multiple of M, which is not limited by the embodiment of the present invention.
  • determining a horizontal division size and a vertical division size according to the division manner of the prediction block including:
  • the division mode of the prediction block is the horizontal division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the division mode of the prediction block is the horizontal division mode, that is, when the size of the horizontal edge of the prediction block is larger than the size of the vertical edge thereof, the horizontal division size and the vertical division size are determined such that the horizontal division size is larger than the vertical division
  • the size is finally divided into at least one sub-prediction block such that the size of the horizontal side of the sub-predicted block is larger than the size of the vertical side of the sub-predicted block.
  • a base size M may be set, the horizontal division size is increased with respect to the base size M, and the vertical division size is decreased with respect to the base size M, thereby making the size of the horizontal side of the sub-predicted block And the size of the vertical side is equal to the horizontal division size and the vertical division size respectively; or the base size may not be set, and the size of the horizontal side of the sub-predicted block is larger than the size of the vertical side of the sub-predicted block by other methods,
  • the embodiment of the invention is not limited thereto.
  • the method for dividing a prediction block adjusts a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block
  • the texture is consistent with the texture of the prediction block, that is, the division manner of the sub-prediction block is consistent with the division manner of the prediction block, and the accuracy of obtaining the reference motion vector through the sub-prediction block can be improved.
  • determining the horizontal division size and the vertical division size based on the reference size M according to the division manner of the prediction block including:
  • the horizontal division size is determined as J based on the reference size M
  • the vertical division size is determined as K, wherein J and K are positive integers, and J is greater than M , K is less than M.
  • the horizontal division size is determined as J
  • the vertical division size is determined as K
  • J is greater than M
  • K is less than M
  • the value of J is a value corresponding to shifting M to the left by p bits
  • the value of K is a value corresponding to shifting M to the right by p bits, where p is a positive integer.
  • the left shift p bit or the right shift p bit may be a left shift or a right shift on the binary form of M; the left shift or the right shift of the decimal form of M may also be performed, which is not used in the embodiment of the present invention. limited.
  • the prediction block is divided by horizontal division, and its size is 16 ⁇ 4, that is, the size of the horizontal side is 16, and the size of the vertical side is 4.
  • the reference size is 8, that is, the size of the reference sub-prediction block is 8 ⁇ 8.
  • the prediction block is divided into two sub-prediction blocks having a size of 8 ⁇ 4.
  • the size of the horizontal side of the sub-prediction block is made equal to the horizontal division size
  • the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the final partitioning result is as shown in FIG. 4C, that is, the prediction block is not subdivided, or the prediction block is divided into one sub-prediction block having a size of 16 ⁇ 4.
  • the division result given in this example is different from the prior art.
  • the method 100 of the embodiment of the present invention is applied, the method 100 is uniformly divided according to the method 100, and after the prediction block is divided into 16 ⁇ 4, the division is no longer performed. Keep the results of the division consistent.
  • the prediction block is divided by the horizontal division method, and its size is 16 ⁇ 8, that is, the size of the horizontal side is 16, and the size of the vertical side is 8.
  • the reference size is 8, that is, the size of the reference sub-prediction block is 8 ⁇ 8.
  • the prediction block is divided into two sub-prediction blocks of size 8 ⁇ 8, and the texture of the sub-prediction block of size 8 ⁇ 8 is inconsistent with the texture of the prediction block, which is not favorable for passing.
  • the size of the horizontal side of the sub-prediction block is made equal to the horizontal division size
  • the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • Figure 5C which is about to predict block partitioning. It is 2 sub-predicted blocks of size 16 ⁇ 4.
  • the prediction block is divided by the horizontal division method, and its size is 16 ⁇ 12, that is, the size of the horizontal side is 16, and the size of the vertical side is 12.
  • the reference size is 8, that is, the size of the reference sub-prediction block is 8 ⁇ 8.
  • the prediction block is divided into two sub-prediction blocks of size 8 ⁇ 12, and the size 8 ⁇ 12 is not used in the existing codec device. size of.
  • the size of the horizontal side of the sub-prediction block is made equal to the horizontal division size
  • the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the final partitioning result is shown in Fig. 6C, that is, the prediction block is divided into three sub-prediction blocks having a size of 16 ⁇ 4.
  • determining the horizontal division size and the vertical division size according to the division manner of the prediction block including:
  • the division mode of the prediction block is the vertical division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the division mode of the prediction block is the vertical division mode, that is, when the size of the horizontal edge of the prediction block is smaller than the size of the vertical edge thereof, the horizontal division size and the vertical division size are determined such that the horizontal division size is smaller than the vertical division.
  • the size is finally divided into at least one sub-prediction block such that the size of the horizontal side of the sub-predicted block is smaller than the size of the vertical side of the sub-predicted block.
  • a base size M may be set, the horizontal division size is decreased with respect to the base size M, and the vertical division size is increased with respect to the base size M, thereby making the size of the horizontal side of the sub-predicted block And the size of the vertical side is equal to the horizontal division size and the vertical division size respectively; the base size may not be set, and the size of the horizontal side of the sub-predicted block is smaller than the size of the vertical side of the sub-predicted block by other methods,
  • the embodiment of the invention is not limited thereto.
  • the method for dividing a prediction block adjusts a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block
  • the texture is consistent with the texture of the prediction block, that is, the guaranteed sub-prediction
  • the division manner of the block is consistent with the division manner of the prediction block, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • determining the horizontal division size and the vertical division size based on the reference size M according to the division manner of the prediction block including:
  • the horizontal division size is determined to be Y based on the reference size M, and the vertical division size is determined as Z, wherein Y and Z are positive integers, and Y is smaller than M, Z is greater than M.
  • the horizontal division size is determined as Y
  • the vertical division size is determined as Z
  • Y is smaller than M
  • Z is greater than M
  • the value of Y is a value corresponding to shifting M right by q bits
  • the value of Z is a value corresponding to shifting M to the left by q bits, where q is a positive integer.
  • the left shift q bit or the right shift q bit may be a left shift or a right shift on the binary form of M; the left shift or the right shift of the decimal form of M may also be performed, which is not used in the embodiment of the present invention. limited.
  • the prediction block is divided by the vertical division method, and its size is 16 ⁇ 32, that is, the size of the horizontal side is 16, and the size of the vertical side is 32.
  • the reference size is 8, that is, the size of the reference sub-prediction block is 8 ⁇ 8.
  • the prediction block is divided into 8 sub-prediction blocks of size 8 ⁇ 8, texture of sub-prediction block with size of 8 ⁇ 8 and texture of prediction block.
  • the size is equal to the horizontal division size
  • the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the final division result is as shown in Fig. 7C, that is, the prediction block is divided into 8 sub-prediction blocks having a size of 4 ⁇ 16.
  • determining the horizontal division size and the vertical division size according to the division manner of the prediction block including:
  • the division mode of the prediction block is a square division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the prediction block division mode is the square division mode, that is, when the size of the horizontal edge of the prediction block is equal to the size of the vertical edge thereof, the horizontal division size and the vertical division size are determined such that the horizontal division size is equal to the vertical division size.
  • the prediction block is divided into at least one sub-prediction block such that the size of the horizontal side of the sub-predicted block is equal to the size of the vertical side of the sub-predicted block.
  • the size of the horizontal side of the sub-predicted block is made equal to the size of its vertical side, and a base size M can be set such that the horizontal dividing size and the vertical dividing size are equal to the basic size M, and then the horizontal side of the sub-predicting block is dimensioned and vertical.
  • the size of the edge is equal to the horizontal dividing size and the vertical dividing size respectively; the basic size may not be set, and the size of the horizontal side of the sub-predicted block is equal to the size of the vertical side of the sub-predicted block by other methods, and the present invention is implemented. This example does not limit this.
  • the method for dividing a prediction block adjusts a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block
  • the texture is consistent with the texture of the prediction block, that is, the division manner of the sub-prediction block is consistent with the division manner of the prediction block, and the accuracy of obtaining the reference motion vector through the sub-prediction block can be improved.
  • determining the horizontal division size and the vertical division size based on the reference size M including:
  • the horizontal division size is determined to be M based on the reference size M, and the vertical division size is determined to be M.
  • the prediction block is divided by a square division method, and its size is 32 ⁇ 32, that is, the size of the horizontal side is 32, and the size of the vertical side is 32.
  • the reference size is 16, that is, the size of the reference sub-prediction block is 16 ⁇ 16.
  • the existing division method since the size of the horizontal side of the prediction block is 32, the division in the horizontal direction can be divided into two sub-prediction blocks; the size of the vertical side of the prediction block is 32, and the division is performed in the vertical direction. , It can be divided into 2 sub-prediction blocks, and the final division result is as shown in FIG. 8B, and the prediction block is divided into 4 sub-prediction blocks having a size of 16 ⁇ 16.
  • the partitioning manner of the prediction block is a square partitioning manner, determining the horizontal partitioning size as M (ie, 16), and determining the first vertical dimension as M (ie, 16) dividing the prediction block.
  • the size of the horizontal side of the sub-predicted block is equal to the horizontal dividing size
  • the size of the vertical side of the sub-predicted block is equal to the vertical dividing size.
  • the final division result is as shown in Fig. 8C, that is, the prediction block is divided into four sub-prediction blocks having a size of 16 ⁇ 16 as in the prior art division result.
  • the horizontal direction of the prediction block is not divided.
  • the prediction block is obtained by horizontal division, and its size is 8 ⁇ 4, that is, the size of the horizontal side is 8, and the size of the vertical side is 4.
  • the sub-prediction block has a reference size of 8, and the prediction block is divided into a horizontal division mode, so that the horizontal division size and the vertical division size are 16 and 4, respectively.
  • the size of the horizontal side of the prediction block is 8, which is smaller than the horizontal division size 16, so the horizontal edge of the prediction block is not divided; the size of the vertical side of the prediction block is 4, which is equal to the vertical division size 4,
  • the sub-predicted block obtained by the prediction block partition still has a vertical side size of 4, and finally a sub-predicted block having a size of 8 ⁇ 4 is obtained.
  • the method for dividing a prediction block determines a horizontal division size and a vertical division size according to a division manner of the prediction block, and divides the prediction block according to the horizontal division size and the vertical division size, so that the sub-prediction block
  • the texture is consistent with the texture of the prediction block, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the reference by the sub-prediction block.
  • the accuracy of the motion vector is consistent with the texture of the prediction block.
  • the method 100 may further include: acquiring motion information according to the sub prediction block.
  • motion information may be obtained from a reference view image or from a texture image based on the sub-predicted block.
  • the texture of the sub-prediction block obtained by the method according to the embodiment of the present invention is consistent with the texture of the prediction block, and thus the accuracy of the reference motion vector in the motion information obtained according to the sub-prediction block is good.
  • FIG. 9 shows a schematic flowchart of a method 200 for dividing a prediction block according to an embodiment of the present invention.
  • the method 200 may be performed by an encoding device or a decoding device, and the method 200 includes:
  • the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the prediction block determines the size of the horizontal side of the sub-predicted block, according to the numerical relationship of the size of the horizontal side of the predicted block to the reference size or the size of the vertical side of the predicted block and the reference
  • the numerical relationship of the size determines the size of the vertical side of the sub-predicted block, and the predicted block is divided into at least one of the sub-predicted blocks according to the size of the horizontal side of the sub-predicted block and the size of the vertical side of the sub-predicted block.
  • the method for dividing a prediction block compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or is not a reference.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal edge of the prediction block and the size of the vertical side of the prediction block, so that sub-predictions that do not belong to the size used in the existing codec device can be avoided. Blocks, thereby avoiding an increase in the implementation burden of the codec system and improving the accuracy of obtaining reference motion vectors through the sub-predicted blocks.
  • determining a size of a horizontal edge of the sub-predicted block according to a numerical relationship between a size of the horizontal edge of the prediction block and the reference size or a numerical relationship between a size of a vertical edge of the prediction block and the reference size Determining the size of the vertical side of the sub-predicted block according to the numerical relationship between the size of the horizontal side of the prediction block and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size, according to the level of the sub-predicted block
  • the size of the edge and the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks, including:
  • the size of the horizontal side of the prediction block is smaller than the reference size, or the size of the vertical side of the prediction block is smaller than the reference size, or the size of the horizontal side of the prediction block is larger than the reference size but cannot be divisible, or When the size of the vertical side of the prediction block is larger than the reference size but cannot be divisible, the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block.
  • 16 ⁇ 4 and 16 ⁇ 12 prediction blocks are divided.
  • the reference size is set to M. If the reference size M is 8, the 16 ⁇ 12 prediction block is divided according to the prior art, and 8 sub-predicted blocks of 8 ⁇ 12 are obtained. For a 16 ⁇ 4 prediction block partition, 8 sub-predicted blocks of 8 ⁇ 4 are obtained.
  • the 8 ⁇ 12 sub-prediction block does not belong to the sub-prediction block of the size used in the existing codec device. To avoid this, the size of the sub-prediction block can be determined according to the size of the prediction block.
  • the prediction block is no longer subdivided, that is, the prediction block is divided into one sub-prediction block according to the size of the horizontal edge of the prediction block and the size of the vertical side of the prediction block, or the prediction block is directly determined as the sub-prediction block.
  • the 16 ⁇ 4 prediction block is divided into 16 ⁇ 4 1 sub prediction blocks.
  • the prediction block is no longer subdivided, that is, according to the size of the horizontal edge of the prediction block.
  • the size of the vertical side of the prediction block divides the prediction block into one sub-prediction block, or directly determines the prediction block as a sub-prediction block.
  • the 16 ⁇ 12 prediction block is divided into 16 ⁇ 12 1 sub prediction blocks.
  • the method for dividing a prediction block compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or is not a reference.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal edge of the prediction block and the size of the vertical side of the prediction block, so that sub-predictions that do not belong to the size used in the existing codec device can be avoided. Blocks, thereby avoiding an increase in the implementation burden of the codec system and improving the accuracy of obtaining reference motion vectors through the sub-predicted blocks.
  • determining a size of a horizontal edge of the sub-predicted block according to a numerical relationship between a size of the horizontal edge of the prediction block and the reference size or a numerical relationship between a size of a vertical edge of the prediction block and the reference size Determining the size of the vertical side of the sub-predicted block according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set to the size of the vertical side of the prediction block;
  • the preset condition is that the ratio of the size of the horizontal side of the prediction block to the reference size is less than or equal to 1, or the ratio of the size of the vertical side of the prediction block to the reference size is less than or equal to 1.
  • the ratio herein refers to the division and the rounding operation, that is, the ratio of the size of the horizontal edge of the prediction block to the reference size refers to the size of the horizontal edge of the prediction block divided by the reference size and is rounded down.
  • the value, the ratio of the size of the vertical side of the prediction block to the reference size refers to the value of the vertical side of the prediction block divided by the reference size and rounded down.
  • the reference size is M
  • the size of one side of the prediction block is divided by M and the value obtained by rounding is less than or equal to 1
  • the size of the side of the prediction block is less than or equal to the reference size, or prediction The size of this side of the block cannot be divisible by the reference size.
  • the size of the vertical side of the prediction block is divided by 8 and the value obtained by rounding down is 0; when the size of the prediction block is 16 ⁇ 12, the reference size is 8 When the size of the vertical side of the prediction block is larger than the reference size, the size of the vertical side cannot be divisible by the reference size, and the size of the vertical side is divided by 8 and the value obtained by rounding down is 1.
  • the prediction block is no longer subdivided, that is, the prediction block is divided into one sub-prediction block according to the size of the horizontal edge of the prediction block and the size of the vertical side of the prediction block, or the prediction block is directly determined as the sub-predicted block.
  • the reference size be subPUSize
  • the size of the horizontal side of the prediction block be nPbW
  • the size of the vertical side of the prediction block be nPbH.
  • nPbW otherwise the size of the horizontal side of the sub-predicted block is equal to the reference size subPUSize; when nPbH is divided by subPUSize and the value obtained by rounding is less than or equal to 1 or nPbW divided by subPUSize and the value obtained by rounding is less than or equal to 1
  • nSbH of the vertical side of the sub-predicted block is equal to the size nPbW of the vertical side of the prediction block, otherwise the size of the vertical side of the sub-predicted block is equal to the reference size subPUSize. Its mathematical formula is expressed as:
  • nPbH/subPUSize ⁇ 1)? nPbW:subPUSize
  • nPbH/subPUSize ⁇ 1)? nPbH:subPUSize
  • the method 200 may further include: acquiring motion information according to the sub-prediction block.
  • motion information may be obtained from a reference view image or from a texture image based on the sub-predicted block.
  • the texture of the sub-prediction block obtained by the method according to the embodiment of the present invention is consistent with the texture of the prediction block, and thus the accuracy of the reference motion vector in the motion information acquired according to the sub-prediction block is good.
  • the method for dividing a prediction block compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or is not a reference.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal edge of the prediction block and the size of the vertical side of the prediction block, so that sub-predictions that do not belong to the size used in the existing codec device can be avoided. Blocks, thereby avoiding an increase in the implementation burden of the codec system and improving the accuracy of obtaining reference motion vectors through the sub-predicted blocks.
  • FIG. 10 shows a schematic block diagram of an encoding device 300 in accordance with an embodiment of the present invention.
  • the encoding device 300 includes:
  • the first obtaining module 310 is configured to obtain a division manner of the prediction block, where the division manner is a horizontal division manner, a vertical division manner, or a square division manner;
  • a determining module 320 configured to determine a horizontal dividing size and a vertical dividing size according to the dividing manner of the prediction block acquired by the first obtaining module 310;
  • the dividing module 330 is configured to divide the prediction block into at least one sub-prediction block according to the horizontal partition size and the vertical partition size determined by the determining module 320.
  • the encoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block The textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • a size of a horizontal side of the sub-prediction block is equal to the horizontal division size
  • a size of a vertical side of the sub-prediction block is equal to the vertical division size
  • the determining module 320 includes:
  • the determining submodule is configured to determine the horizontal partition size and the vertical partition size based on the partition size M acquired by the acquiring submodule according to the partitioning manner of the prediction block acquired by the first obtaining module 310.
  • the determining module 320 is specifically configured to:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as J
  • the vertical division size is determined as K, where J and K are positive integers, and J Greater than M, K is less than M.
  • the value of J is a value corresponding to shifting M to the left by p bits
  • the value of K is a value corresponding to shifting M right by p bits, where p is a positive integer.
  • p 1
  • the determining module 320 is specifically configured to:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as Y
  • the vertical division size is determined as Z, where Y and Z are positive integers, and Y Less than M, Z is greater than M.
  • the value of Y is a value corresponding to shifting M right by q bits
  • the value of Z is a value corresponding to shifting M to the left by q bits, where q is a positive integer.
  • the determining module 320 is specifically configured to:
  • the division manner of the prediction block acquired by the first acquisition module 310 is a square division manner
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as M
  • the vertical division size is determined as M.
  • the dividing module 330 is specifically configured to:
  • the prediction block is divided into sub-predicted blocks according to the size of the horizontal side of the prediction block, and the size of the horizontal side of the sub-predicted block is equal to the level of the prediction block.
  • the size of the edge when the horizontal division size is less than or equal to the size of the horizontal edge of the prediction block, Dividing the prediction block into sub-predicted blocks according to the horizontal division size, the size of the horizontal side of the sub-predicted block being equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the vertical side of the prediction block, and the size of the vertical side of the sub-predicted block is equal to the vertical of the prediction block.
  • the size of the edge when the vertical division size is less than or equal to the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the obtained horizontal edges of all sub-predicted blocks have the same size, and the obtained vertical sub-predicted blocks have the same size.
  • the encoding device 300 further includes:
  • a second acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the second acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • the encoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block The textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • an embodiment of the present invention further provides an encoding device 400.
  • the encoding device 400 includes a processor 410, a memory 420, and a bus system 430.
  • the processor 410 and the memory 420 are connected by a bus system 430.
  • the memory 420 is for storing instructions
  • the processor 410 is for executing instructions stored by the memory 420.
  • the processor 410 is configured to:
  • the division manner is a horizontal division manner, a vertical division manner, or a square division manner
  • the encoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block The textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • the processor 410 may be a central processing unit (CPU), and the processor 410 may also be another general-purpose processor, a digital signal processor (DSP). , Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • the memory 420 can include read only memory and random access memory and provides instructions and data to the processor 410. A portion of the memory 420 may also include a non-volatile random access memory. For example, the memory 420 can also store information of the device type.
  • the bus system 430 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 430 in the figure.
  • each step of the foregoing method may be completed by an integrated logic circuit of hardware in the processor 410 or an instruction in a form of software.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory 420, and the processor 410 reads the information in the memory 420 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
  • a size of a horizontal side of the sub-prediction block is equal to the horizontal division size
  • a size of a vertical side of the sub-prediction block is equal to the vertical division size
  • the processor 410 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the horizontal division size and the vertical division size are determined based on the reference size M.
  • the processor 410 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is the horizontal division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the processor 410 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined as J based on the reference size M
  • the vertical division size is determined as K, wherein J and K are positive integers, and J is greater than M , K is less than M.
  • the value of J is a value corresponding to shifting M to the left by p bits
  • the value of K is a value corresponding to shifting M right by p bits, where p is a positive integer.
  • p 1
  • the processor 410 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is the vertical division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the processor 410 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined as Y based on the reference size M, and the vertical division size is determined as Z, wherein Y and Z are positive integers, and Y is smaller than M , Z is greater than M.
  • the value of Y is a value corresponding to shifting M right by q bits
  • the value of Z is a value corresponding to shifting M to the left by q bits, where q is a positive integer.
  • the processor 410 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is a square division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the processor 410 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined to be M based on the reference size M, and the vertical division size is determined to be M.
  • the processor 410 divides the prediction block into at least one sub-prediction block according to the horizontal partition size and the vertical partition size, including:
  • the prediction block When the horizontal partitioning size is larger than the size of the horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the horizontal side of the prediction block, and the size of the horizontal side of the sub-predicted block is equal to the level of the prediction block.
  • the size of the edge when the horizontal division size is less than or equal to the size of the horizontal edge of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, and the size of the horizontal edge of the sub-predicted block is equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the vertical side of the prediction block, and the size of the vertical side of the sub-predicted block is equal to the vertical of the prediction block.
  • the size of the edge when the vertical division size is less than or equal to the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the obtained horizontal edges of all sub-predicted blocks have the same size, and the obtained vertical sub-predicted blocks have the same size.
  • the processor 410 is further configured to:
  • the motion information is acquired according to the sub-prediction block.
  • the processor 410 obtains motion information according to the sub-prediction block, including:
  • the motion information is acquired from the reference view image or from the texture image according to the sub-prediction block.
  • the encoding apparatus 400 may correspond to the main body of the method in the embodiment of the present invention, and may also correspond to the encoding apparatus 300 according to the embodiment of the present invention, and the encoding apparatus
  • the above and other operations and/or functions of the various modules in the standby 400 are for the purpose of implementing the corresponding processes of the methods of FIGS. 1-9, and are not described herein again for brevity.
  • the encoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block The textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • FIG. 12 shows a schematic block diagram of a decoding device 500 in accordance with an embodiment of the present invention. As shown in FIG. 12, the decoding device 500 includes:
  • the first obtaining module 510 is configured to obtain a division manner of the prediction block, where the division manner is a horizontal division manner, a vertical division manner, or a square division manner;
  • a determining module 520 configured to determine a horizontal dividing size and a vertical dividing size according to the division manner of the prediction block acquired by the first obtaining module 510;
  • the dividing module 530 is configured to divide the prediction block into at least one sub-prediction block according to the horizontal partition size and the vertical partition size determined by the determining module 520.
  • the decoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block
  • the textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • a size of a horizontal side of the sub-prediction block is equal to the horizontal division size
  • a size of a vertical side of the sub-prediction block is equal to the vertical division size
  • the determining module 520 includes:
  • the determining submodule is configured to determine the horizontal partition size and the vertical partition size based on the partition size M acquired by the acquiring submodule according to the partitioning manner of the prediction block acquired by the first obtaining module 510.
  • the determining module 520 is specifically configured to:
  • the division mode of the prediction block acquired by the first acquisition module 510 is a horizontal division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as J
  • the vertical division size is determined as K, where J and K are positive integers, and J Greater than M, K is less than M.
  • the value of J is a value corresponding to shifting M to the left by p bits
  • the value of K is a value corresponding to shifting M right by p bits, where p is a positive integer.
  • p 1
  • the determining module 520 is specifically configured to:
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as Y
  • the vertical division size is determined as Z, where Y and Z are positive integers, and Y Less than M, Z is greater than M.
  • the value of Y is a value corresponding to shifting M right by q bits
  • the value of Z is a value corresponding to shifting M to the left by q bits, where q is a positive integer.
  • the determining module 520 is specifically configured to:
  • the division manner of the prediction block acquired by the first acquisition module 510 is a square division manner
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is equal to the vertical division size.
  • the determining submodule is specifically configured to:
  • the horizontal division size is determined as M
  • the vertical division size is determined as M.
  • the dividing module 530 is specifically configured to:
  • the prediction block When the horizontal partitioning size is larger than the size of the horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the horizontal side of the prediction block, and the size of the horizontal side of the sub-predicted block is equal to the level of the prediction block.
  • the size of the edge when the horizontal division size is less than or equal to the size of the horizontal edge of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, and the size of the horizontal edge of the sub-predicted block Equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the vertical side of the prediction block, and the size of the vertical side of the sub-predicted block is equal to the vertical of the prediction block.
  • the size of the edge when the vertical division size is less than or equal to the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the obtained horizontal edges of all sub-predicted blocks have the same size, and the obtained vertical sub-predicted blocks have the same size.
  • the decoding device 500 further includes:
  • a second acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the second acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • the decoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block
  • the textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • an embodiment of the present invention further provides a decoding device 600.
  • the decoding device 600 includes a processor 610, a memory 620, and a bus system 630.
  • the processor 610 and the memory 620 are connected by a bus system 630.
  • the memory 620 is for storing instructions, and the processor 610 is for executing instructions stored by the memory 620.
  • the processor 610 is configured to:
  • the division manner is a horizontal division manner, a vertical division manner, or a square division manner
  • the prediction block is divided into at least one sub-prediction block according to the horizontal division size and the vertical division size.
  • the decoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block
  • the textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • the processor 610 may be a central processing unit (CPU), and the processor 610 may also be another general-purpose processor, a digital signal processor (DSP). , Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • the memory 620 can include read only memory and random access memory and provides instructions and data to the processor 610. A portion of the memory 620 can also include a non-volatile random access memory. For example, the memory 620 can also store information of the device type.
  • the bus system 630 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 630 in the figure.
  • each step of the foregoing method may be completed by an integrated logic circuit of hardware in the processor 610 or an instruction in a form of software.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory 620, and the processor 610 reads the information in the memory 620 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
  • a size of a horizontal side of the sub-prediction block is equal to the horizontal division size
  • a size of a vertical side of the sub-prediction block is equal to the vertical division size
  • the processor 610 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the horizontal division size and the vertical division size are determined based on the reference size M.
  • the processor 610 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is the horizontal division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is larger than the vertical division size.
  • the processor 610 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined as J based on the reference size M
  • the vertical division size is determined as K, wherein J and K are positive integers, and J is greater than M , K is less than M.
  • the value of J is a value corresponding to shifting M to the left by p bits
  • the value of K is a value corresponding to shifting M right by p bits, where p is a positive integer.
  • p 1
  • the processor 610 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is the vertical division mode
  • the horizontal division size and the vertical division size are determined, and the horizontal division size is smaller than the vertical division size.
  • the processor 610 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined as Y based on the reference size M, and the vertical division size is determined as Z, wherein Y and Z are positive integers, and Y is smaller than M , Z is greater than M.
  • the value of Y is a value corresponding to shifting M right by q bits
  • the value of Z is a value corresponding to shifting M to the left by q bits, where q is a positive integer.
  • the processor 610 determines the horizontal division size and the vertical division size according to the division manner of the prediction block, including:
  • the division mode of the prediction block is a square division manner, determining the horizontal division size and the vertical The size is divided, and the horizontal division size is equal to the vertical division size.
  • the processor 610 determines the horizontal partition size and the vertical partition size based on the reference size M according to the division manner of the prediction block, including:
  • the horizontal division size is determined to be M based on the reference size M, and the vertical division size is determined to be M.
  • the processor 610 according to the horizontal partition size and the vertical partition size, divide the prediction block into at least one sub-prediction block, including:
  • the prediction block When the horizontal partitioning size is larger than the size of the horizontal side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the horizontal side of the prediction block, and the size of the horizontal side of the sub-predicted block is equal to the level of the prediction block.
  • the size of the edge when the horizontal division size is less than or equal to the size of the horizontal edge of the prediction block, the prediction block is divided into sub-predicted blocks according to the horizontal division size, and the size of the horizontal edge of the sub-predicted block is equal to the horizontal division size;
  • the prediction block When the vertical division size is larger than the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the size of the vertical side of the prediction block, and the size of the vertical side of the sub-predicted block is equal to the vertical of the prediction block.
  • the size of the edge when the vertical division size is less than or equal to the size of the vertical side of the prediction block, the prediction block is divided into sub-predicted blocks according to the vertical division size, and the size of the vertical side of the sub-predicted block is equal to the vertical division size.
  • the obtained horizontal edges of all sub-predicted blocks have the same size, and the obtained vertical sub-predicted blocks have the same size.
  • the processor 610 is further configured to:
  • the motion information is acquired according to the sub-prediction block.
  • the processor 610 acquires motion information according to the sub prediction block, including:
  • the motion information is acquired from the reference view image or from the texture image according to the sub-prediction block.
  • the decoding apparatus 600 may correspond to a main body that performs the method in the embodiment of the present invention, and may also correspond to the decoding apparatus 500 according to an embodiment of the present invention, and the above-described respective modules in the decoding apparatus 600 And other operations and/or functions are to achieve the aspects of Figures 1-9 The corresponding process of the law, for the sake of brevity, will not be repeated here.
  • the decoding apparatus of the embodiment of the present invention determines the horizontal partition size and the vertical partition size according to the division manner of the prediction block, and divides the prediction block according to the horizontal partition size and the vertical partition size, so that the texture and the prediction block of the sub-prediction block
  • the textures are consistent, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the accuracy of obtaining the reference motion vector through the sub-prediction block.
  • FIG. 14 shows a schematic block diagram of an encoding device 700 in accordance with an embodiment of the present invention.
  • the encoding device 700 includes:
  • a first obtaining module 710 configured to acquire a size of a horizontal edge of the prediction block and a size of a vertical edge
  • a second obtaining module 720 configured to acquire a reference size
  • a dividing module 730 configured to determine a size of a horizontal side of the sub-predicted block according to a numerical relationship between a size of the horizontal side of the predicted block and the reference size or a numerical relationship between a size of the vertical side of the predicted block and the reference size, according to the The numerical relationship between the size of the horizontal side of the prediction block and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size determines the size of the vertical side of the sub-predicted block, according to the size of the horizontal side of the sub-predicted block And the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks.
  • the encoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • the dividing module 730 is specifically configured to:
  • the size of the horizontal side of the prediction block is smaller than the reference size, or the size of the vertical side of the prediction block is smaller than the reference size, or the size of the horizontal side of the prediction block is larger than the reference size but cannot be divisible, or When the size of the vertical side of the prediction block is larger than the reference size but cannot be divisible, the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block.
  • the dividing module 730 is configured according to a size of a horizontal edge of the prediction block.
  • the numerical relationship with the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size determines the size of the horizontal side of the sub-predicted block, according to the numerical relationship of the size of the horizontal side of the predicted block to the reference size or
  • the numerical relationship between the size of the vertical side of the prediction block and the reference size determines the size of the vertical side of the sub-predicted block, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set to the size of the vertical side of the prediction block;
  • the preset condition is that the ratio of the size of the horizontal side of the prediction block to the reference size is less than or equal to 1, or the ratio of the size of the vertical side of the prediction block to the reference size is less than or equal to 1.
  • the encoding device 700 further includes:
  • a third acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the third acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • the encoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • an embodiment of the present invention further provides an encoding device 800.
  • the encoding device 800 includes a processor 810, a memory 820, and a bus system 830.
  • the processor 810 and the memory 820 are connected by a bus system 830.
  • the memory 820 is for storing instructions
  • the processor 810 is for executing instructions stored by the memory 820.
  • the processor 810 is configured to:
  • the prediction block is divided into at least one of the sub-predicted blocks.
  • the encoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • the processor 810 may be a central processing unit (CPU), and the processor 810 may also be another general-purpose processor, a digital signal processor (DSP). , Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • the memory 820 can include read only memory and random access memory and provides instructions and data to the processor 810. A portion of the memory 820 may also include a non-volatile random access memory. For example, the memory 820 can also store information of the device type.
  • the bus system 830 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 830 in the figure.
  • each step of the foregoing method may be completed by an integrated logic circuit of hardware in the processor 810 or an instruction in a form of software.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory 820, and the processor 810 reads the information in the memory 820 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
  • the processor 810 is specifically configured to:
  • the size of the horizontal side of the prediction block is smaller than the reference size, or the size of the vertical side of the prediction block is smaller than the reference size, or the size of the horizontal side of the prediction block is larger than the reference size but cannot be divisible, or When the size of the vertical side of the prediction block is larger than the reference size but cannot be divisible, the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block.
  • the processor 810 determines the level of the sub-predicted block according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical edge of the prediction block and the reference size.
  • the size of the edge according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical edge of the prediction block and the reference size, determines the size of the vertical side of the sub-predicted block, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set to the size of the vertical side of the prediction block;
  • the preset condition is that the ratio of the size of the horizontal side of the prediction block to the reference size is less than or equal to 1, or the ratio of the size of the vertical side of the prediction block to the reference size is less than or equal to 1.
  • the processor 810 is further configured to:
  • the motion information is acquired according to the sub-prediction block.
  • the processor 810 acquires motion information according to the sub-prediction block, including:
  • the motion information is acquired from the reference view image or from the texture image according to the sub-prediction block.
  • the encoding device 800 may correspond to a main body that performs the method in the embodiment of the present invention, and may also correspond to the encoding device 700 according to an embodiment of the present invention, and the above-described modules of the encoding device 800 are And other operations and/or functions are for implementing the corresponding processes of the methods of FIGS. 1 to 9, which are not described herein for brevity.
  • the encoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size. Times, according to the size of the horizontal edge of the prediction block and the vertical edge of the prediction block The size divides the prediction block into one sub-prediction block, which can avoid sub-prediction blocks that do not belong to the size used in the existing codec device, thereby avoiding the implementation burden of the codec system and improving the pass sub-prediction block. Get the accuracy of the reference motion vector.
  • FIG. 16 shows a schematic block diagram of a decoding device 900 in accordance with an embodiment of the present invention.
  • the decoding device 900 includes:
  • a first obtaining module 910 configured to acquire a size of a horizontal edge of the prediction block and a size of a vertical edge
  • a second obtaining module 920 configured to acquire a reference size
  • a dividing module 930 configured to determine a size of a horizontal side of the sub-predicted block according to a numerical relationship between a size of the horizontal side of the predicted block and the reference size or a numerical relationship between a size of the vertical side of the predicted block and the reference size, according to the The numerical relationship between the size of the horizontal side of the prediction block and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size determines the size of the vertical side of the sub-predicted block, according to the size of the horizontal side of the sub-predicted block And the size of the vertical side of the sub-predicted block, the prediction block is divided into at least one of the sub-predicted blocks.
  • the decoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • the dividing module 930 is specifically configured to:
  • the size of the horizontal side of the prediction block is smaller than the reference size, or the size of the vertical side of the prediction block is smaller than the reference size, or the size of the horizontal side of the prediction block is larger than the reference size but cannot be divisible, or When the size of the vertical side of the prediction block is larger than the reference size but cannot be divisible, the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block.
  • the dividing module 930 determines the sub-predicted block according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical edge of the prediction block and the reference size.
  • the size of the horizontal edge determines the sub-prediction according to the numerical relationship between the size of the horizontal side of the prediction block and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size.
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set to the size of the vertical side of the prediction block;
  • the preset condition is that the ratio of the size of the horizontal side of the prediction block to the reference size is less than or equal to 1, or the ratio of the size of the vertical side of the prediction block to the reference size is less than or equal to 1.
  • the decoding device 900 further includes:
  • a third acquiring module configured to acquire motion information according to the sub-prediction block obtained by the dividing module.
  • the third acquiring module is specifically configured to:
  • the sub-predicted block obtained according to the dividing module acquires the motion information from a reference view image or from a texture image.
  • the decoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • the embodiment of the present invention further provides a decoding device 1000.
  • the decoding device 1000 includes a processor 1010, a memory 1020, and a bus system 1030.
  • the processor 1010 and the memory 1020 are connected by a bus system 1030.
  • the memory 1020 is for storing instructions
  • the processor 1010 is for executing instructions stored by the memory 1020.
  • the processor 1010 is configured to:
  • the numerical relationship between the size and the reference size or the numerical relationship between the size of the vertical side of the prediction block and the reference size determines the size of the vertical side of the sub-predicted block, according to the size of the horizontal side of the sub-predicted block and the sub-predicted block
  • the decoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby The implementation burden of increasing the codec system is avoided, and the accuracy of acquiring the reference motion vector through the sub-prediction block can be improved.
  • the processor processor 1010 may be a central processing unit (CPU), and the processor processor 1010 may also be other general-purpose processors and digital signal processors (Digital Signal). Processor, DSP), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • the memory 1020 can include read only memory and random access memory and provides instructions and data to the processor 1010. A portion of the memory 1020 may also include a non-volatile random access memory. For example, the memory 1020 can also store information of the device type.
  • the bus system 1030 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. However, for clarity of description, various buses are labeled as the bus system 1030 in the figure.
  • each step of the foregoing method may be completed by an integrated logic circuit of hardware in the processor 1010 or an instruction in a form of software.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory 1020, and the processor 1010 reads the information in the memory 1020 and performs the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
  • the processor 1010 is specifically configured to:
  • the size of the horizontal side of the prediction block is smaller than the reference size, or the ruler of the vertical side of the prediction block If the inch is smaller than the reference size, or the size of the horizontal edge of the prediction block is larger than the reference size but cannot be divisible, or the vertical edge of the prediction block is larger than the reference size but cannot be divisible, according to the prediction
  • the size of the horizontal side of the block and the size of the vertical side of the prediction block divide the prediction block into one sub-prediction block.
  • the processor 1010 determines the level of the sub-predicted block according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical edge of the prediction block and the reference size.
  • the size of the edge according to the numerical relationship between the size of the horizontal edge of the prediction block and the reference size or the numerical relationship between the size of the vertical edge of the prediction block and the reference size, determines the size of the vertical side of the sub-predicted block, including:
  • the size of the horizontal side of the sub-prediction block is set to the size of the horizontal side of the prediction block, and the size of the vertical side of the sub-prediction block is set to the size of the vertical side of the prediction block;
  • the preset condition is that the ratio of the size of the horizontal side of the prediction block to the reference size is less than or equal to 1, or the ratio of the size of the vertical side of the prediction block to the reference size is less than or equal to 1.
  • the processor 1010 is further configured to:
  • the motion information is acquired according to the sub-prediction block.
  • the processor 1010 obtains motion information according to the sub-prediction block, including:
  • the motion information is acquired from the reference view image or from the texture image according to the sub-prediction block.
  • the decoding apparatus 1000 may correspond to a main body that performs the method in the embodiment of the present invention, and may also correspond to the decoding apparatus 900 according to an embodiment of the present invention, and the above-described respective modules in the decoding apparatus 1000 And other operations and/or functions are for implementing the corresponding processes of the methods of FIGS. 1 to 9, which are not described herein for brevity.
  • the decoding apparatus of the embodiment of the present invention compares the size of the horizontal side of the prediction block with the numerical relationship between the size of the vertical side of the prediction block and the reference size, and the size of one side of the prediction block is smaller than the reference size or an integer that is not the reference size.
  • the prediction block is divided into one sub-prediction block according to the size of the horizontal side of the prediction block and the size of the vertical side of the prediction block, so that sub-prediction blocks that do not belong to the size used in the existing codec device can be avoided, thereby Avoid increasing the implementation burden of the codec system, and can The accuracy of the reference motion vector is obtained by the high pass sub-prediction block.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • 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 Can be integrated 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 in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the 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 functions may be stored in a computer readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product.
  • the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
  • the instructions are used 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 aforementioned storage medium Including: U disk, mobile hard disk, ROM, RAM, disk or optical disk and other media that can store program code.

Landscapes

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

Abstract

本发明公开了一种预测块的划分方法、编码设备和解码设备,该方法包括:获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式(S110);根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸(S120);根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块(S130)。本发明实施例的预测块的划分方法,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。

Description

预测块的划分方法、编码设备和解码设备
本申请要求于2014年10月11日提交中国专利局、申请号为201410535982.4、发明名称为“预测块的划分方法、编码设备和解码设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及图像处理领域,尤其涉及图像处理领域中预测块的划分方法、编码设备和解码设备。
背景技术
为减少视频传输所占用的带宽,编码设备需要对视频图像进行编码处理,相对应地,解码设备则需要对其接收的视频数据进行解码处理。其中,帧间压缩方法是一种普遍的视频编码技术,其可对待传输的视频图像进行压缩处理,能够减少视频传输的数据量。
帧间压缩方法是基于运动估计的一种视频编码技术,编码设备对视频图像进行编码的过程包括:首先,将待编码的视频图像划分为若干大小相等的图像块,称之为编码块;然后,对编码块进行划分得到子图像块,称之为预测块,在参考图像中搜索与当前预测块最匹配的图像块作为参考块;其后,将该当前预测块与参考块的相应像素值相减得到残差,并将得到的各预测块对应的残差组合在一起,得到待编码的视频图像的残差;然后将待编码的视频图像的残差经变换与量化后得到的值进行熵编码;最后,将熵编码得到的比特流和运动信息一并发给解码设备。其中,运动信息表示当前预测块与参考块的位置差。解码设备接收到编码设备发送的比特流和运动信息后,进行与编码设备相反的处理过程,即可得到相应的原始视频图像的数据。
在现有技术中,为了更精确地获得参考运动矢量,引入了一种子预测块技术。子预测块技术的基本思想是将当前预测块分割成更小的子预测块,例如,可以将当前预测块分割成多个尺寸更小(如尺寸为8×8)的子预测块,以分割后的子预测块为单位从参考图像中获得参考运动矢量。使用子预测块技术,可以将当前预测块划分为多个子预测块,以得到更多的参考运动矢量,能够提升编码质量。
但是,现有的子预测块技术存在以下两个问题:第一,由于子预测块的尺寸是预先设定的,例如将子预测块的尺寸预先设定为8×8,在预测块的某一边的尺寸小于子预测块的预设的尺寸时,则该边不进行划分,例如在预测块的尺寸为16×4时,预测块的垂直边的尺寸为4小于8,因此该垂直边不进行划分,此时16×4的预测块划分得到尺寸为8×4的2个子预测块;在预测块的某一边的尺寸不为8的倍数时,则该边不进行划分,例如在预测块的尺寸为16×12时,预测块的垂直边的尺寸为12不为8的倍数,则该垂直边不进行划分,此时16×12的预测块划分得到尺寸为8×12的2个子预测块。还比如预测块尺寸为12×12、子预测块尺寸预先设定为8×8时,由于预测块的水平边的尺寸、垂直边的尺寸均不为8的倍数,因此划分得到的子预测块尺寸仍为12×12。这种划分方法的问题在于会引入一些尺寸不属于现有的编解码设备中使用的尺寸的子预测块,例如尺寸为8×12的子预测块。而在未引入子预测块技术前并不存在这些不属于现有的编解码设备中使用的尺寸的块,由此因为子预测块技术而新增加了一些子预测块尺寸,从而增加了编解码系统的实现负担。第二,现有的子预测块技术中子预测块统一为正方形,不能反应预测块的纹理,这会影响获取的参考运动矢量的准确性。
发明内容
本发明实施例提供了一种预测块的划分方法、编码设备和解码设备,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,并提高通过子预测块获取参考运动矢量的准确性。
第一方面,提供了一种预测块的划分方法,所述方法包括:
获取所述预测块的划分方式,所述预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
根据所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块。
结合第一方面,在第一方面的第一种可能的实现方式中,所述子预测块的水平边的尺寸等于所述水平划分尺寸,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
获取基准尺寸M,其中,M为正整数;
根据所述预测块的划分方式,基于所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸。
结合第一方面和第一方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在所述预测块的划分方式为水平划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸大于所述垂直划分尺寸。
结合第一方面的第二种可能的实现方式,在第一方面的第四种可能的实现方式中,所述根据所述预测块的划分方式,基于所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸,包括:
在所述预测块的划分方式为水平划分方式时,基于所述基准尺寸M,将所述水平划分尺寸确定为J,将所述垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,p=1。
结合第一方面和第一方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第一方面的第七种可能的实现方式中,所述根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
结合第一方面的第二种可能的实现方式,在第一方面的第八种可能的实现方式中,所述根据所述预测块的划分方式,基于所述基准尺寸M,确定所述 水平划分尺寸和所述垂直划分尺寸,包括:
在所述预测块的划分方式为垂直划分方式时,基于所述基准尺寸M,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
结合第一方面的第八种可能的实现方式,在第一方面的第九种可能的实现方式中,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
结合第一方面的第九种可能的实现方式,在第一方面的第十种可能的实现方式中,q=1。
结合第一方面和第一方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第一方面的第十一种可能的实现方式中,所述根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
结合第一方面的第二种可能的实现方式,在第一方面的第十二种可能的实现方式中,所述根据所述预测块的划分方式,基于所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸,包括:
在所述预测块的划分方式为方形划分方式时,基于所述基准尺寸M,将所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
结合第一方面,在第一方面的第十三种可能的实现方式中,所述根据所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块,包括:
在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块 的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第一方面和第一方面的第一种至第十三种可能的实现方式中的任一种可能的实现方式,在第一方面的第十四种可能的实现方式中,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
结合第一方面和第一方面的第一种至第十四种可能的实现方式中的任一种可能的实现方式,在第一方面的第十五种可能的实现方式中,所述方法还包括:
根据所述子预测块获得运动信息。
结合第一方面的第十五种可能的实现方式,在第一方面的第十六种可能的实现方式中,所述根据所述子预测块获得运动信息,包括:
根据所述子预测块从参考视图像或从纹理图像获得所述运动信息。
第二方面,提供了一种预测块的划分方法,所述方法包括:
获取所述预测块的水平边的尺寸和垂直边的尺寸;
获取基准尺寸;
根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
结合第二方面,在第二方面的第一种可能的实现方式中,所述根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的 水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块,包括:
在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
结合第二方面,在第二方面的第二种可能的实现方式中,所述根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
结合第二方面和第二方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述方法还包括:
根据所述子预测块获得运动信息。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述根据所述子预测块获得运动信息,包括:
根据所述子预测块从参考视图像或从纹理图像获得所述运动信息。
第三方面,提供了一种编码设备,所述编码设备包括:
第一获取模块,用于获取所述预测块的划分方式,所述预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
确定模块,用于根据所述第一获取模块获取的所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
划分模块,用于根据所述确定模块确定的所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块。
结合第三方面,在第三方面的第一种可能的实现方式中,所述子预测块的水平边的尺寸等于所述水平划分尺寸,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述确定模块包括:
获取子模块,用于获取基准尺寸M,其中,M为正整数;
确定子模块,用于根据所述第一获取模块获取的所述预测块的划分方式,基于所述获取子模块获取的所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸。
结合第三方面和第三方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第三方面的第三种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸大于所述垂直划分尺寸。
结合第三方面的第二种可能的实现方式,在第三方面的第四种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,将所述水平划分尺寸确定为J,将所述垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
结合第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,p=1。
结合第三方面和第三方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第三方面的第七种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
结合第三方面的第二种可能的实现方式,在第三方面的第八种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
结合第三方面的第八种可能的实现方式,在第三方面的第九种可能的实现方式中,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
结合第三方面的第九种可能的实现方式,在第三方面的第十种可能的实现方式中,q=1。
结合第三方面和第三方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第三方面的第十一种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
结合第三方面的第二种可能的实现方式,在第三方面的第十二种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,将所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
结合第三方面,在第三方面的第十三种可能的实现方式中,所述划分模块具体用于:
在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块 的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第三方面和第三方面的第一种至第十三种可能的实现方式中的任一种可能的实现方式,在第三方面的第十四种可能的实现方式中,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
结合第三方面和第三方面的第一种至第十四种可能的实现方式中的任一种可能的实现方式,在第三方面的第十五种可能的实现方式中,所述编码设备还包括:
第二获取模块,用于根据所述划分模块得到的所述子预测块获取运动信息。
结合第三方面的第十五种可能的实现方式,在第三方面的第十六种可能的实现方式中,所述第二获取模块具体用于:
根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
第四方面,提供了一种编码设备,包括:
第一获取模块,用于获取所述预测块的水平边的尺寸和垂直边的尺寸;
第二获取模块,用于获取基准尺寸;
划分模块,用于根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直 边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
结合第四方面,在第四方面的第一种可能的实现方式中,所述划分模块具体用于:
在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
结合第四方面,在第四方面的第二种可能的实现方式中,所述划分模块根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
结合第四方面和第四方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第四方面的第三种可能的实现方式中,所述编码设备还包括:
第三获取模块,用于根据所述子预测块获取运动信息。
结合第四方面的第三种可能的实现方式,在第四方面的第四种可能的实现方式中,所述第三获取模块具体用于:
根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取 所述运动信息。
第五方面,提供了一种解码设备,所述解码设备包括:
第一获取模块,用于获取所述预测块的划分方式,所述预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
确定模块,用于根据所述第一获取模块获取的所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
划分模块,用于根据所述确定模块确定的所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块。
结合第五方面,在第五方面的第一种可能的实现方式中,所述子预测块的水平边的尺寸等于所述水平划分尺寸,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第五方面或第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述确定模块包括:
获取子模块,用于获取基准尺寸M,其中,M为正整数;
确定子模块,用于根据所述第一获取模块获取的所述预测块的划分方式,基于所述获取子模块获取的所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸。
结合第五方面和第五方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第五方面的第三种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸大于所述垂直划分尺寸。
结合第五方面的第二种可能的实现方式,在第五方面的第四种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,将所述水平划分尺寸确定为J,将所述垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
结合第五方面的第四种可能的实现方式,在第五方面的第五种可能的实现 方式中,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
结合第五方面的第五种可能的实现方式,在第五方面的第六种可能的实现方式中,p=1。
结合第五方面和第五方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第五方面的第七种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
结合第五方面的第二种可能的实现方式,在第五方面的第八种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
结合第五方面的第八种可能的实现方式,在第五方面的第九种可能的实现方式中,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
结合第五方面的第九种可能的实现方式,在第五方面的第十种可能的实现方式中,q=1。
结合第五方面和第五方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第五方面的第十一种可能的实现方式中,所述确定模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
结合第五方面的第二种可能的实现方式,在第五方面的第十二种可能的实现方式中,所述确定子模块具体用于:
在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,将 所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
结合第五方面,在第五方面的第十三种可能的实现方式中,所述划分模块具体用于:
在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
结合第五方面和第五方面的第一种至第十三种可能的实现方式中的任一种可能的实现方式,在第五方面的第十四种可能的实现方式中,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
结合第五方面和第五方面的第一种至第十四种可能的实现方式中的任一种可能的实现方式,在第五方面的第十五种可能的实现方式中,所述解码设备还包括:
第二获取模块,用于根据所述划分模块得到的所述子预测块获取运动信息。
结合第五方面的第十五种可能的实现方式,在第五方面的第十六种可能的实现方式中,所述第二获取模块具体用于:
根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
第六方面,提供了一种解码设备,包括:
第一获取模块,用于获取所述预测块的水平边的尺寸和垂直边的尺寸;
第二获取模块,用于获取基准尺寸;
划分模块,用于根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
结合第六方面,在第六方面的第一种可能的实现方式中,所述划分模块具体用于:
在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
结合第六方面,在第六方面的第二种可能的实现方式中,所述划分模块根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
结合第六方面和第六方面的第一种至第二种可能的实现方式中的任一种可能的实现方式,在第六方面的第三种可能的实现方式中,所述解码设备还包括:
第三获取模块,用于根据所述子预测块获取运动信息。
结合第六方面的第三种可能的实现方式,在第六方面的第四种可能的实现方式中,所述第三获取模块具体用于:
根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
基于上述技术方案,本发明实施例的预测块的划分方法、编码设备和解码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A、图1B、图1C和图1D是编码块的对称划分方式的示意图。
图2A、图2B、图2C和图2D是编码块的非对称划分方式的示意图。
图3是根据本发明实施例的预测块的划分方法的示意性流程图。
图4A、图4B和图4C分别是未经划分的预测块、现有技术中对预测块的划分和根据本发明实施例的对预测块的划分的示意图。
图5A、图5B和图5C分别是未经划分的预测块、现有技术中对预测块的划分和根据本发明实施例的对预测块的划分的示意图。
图6A、图6B和图6C分别是未经划分的预测块、现有技术中对预测块的划分和根据本发明实施例的对预测块的划分的示意图。
图7A、图7B和图7C分别是未经划分的预测块、现有技术中对预测块的划分和根据本发明实施例的对预测块的划分的示意图。
图8A、图8B和图8C分别是未经划分的预测块、现有技术中对预测块的划分和根据本发明实施例的对预测块的划分的示意图。
图9是根据本发明实施例的预测块的划分方法的示意性流程图。
图10是本发明一个实施例的编码设备的示意性框图。
图11是本发明一个实施例的编码设备的示意性框图。
图12是本发明一个实施例的解码设备的示意性框图。
图13是本发明一个实施例的解码设备的示意性框图。
图14是本发明一个实施例的编码设备的示意性框图。
图15是本发明一个实施例的编码设备的示意性框图。
图16是本发明一个实施例的解码设备的示意性框图。
图17是本发明一个实施例的解码设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
在现有的技术中,将编码块划分成预测块的常用对称划分方式包括:2N×2N划分方式,只将编码块划分为一个预测块,即该编码块不被划分成更小的子图像块,如图1A所示;2N×N划分方式,将编码块划分成上下两个等大的预测块,如图1B所示;N×2N划分方式,将编码块划分成左右两个等大的预测块,如图1C所示;N×N划分方式,将编码块划分成四个等大的预测块,如图1D所示。上述N为任意正整数。
此外,将编码块划分成预测块还可以采用非对称划分方式,如图2A至图2D所示。图2A和2B所示的划分方式将一个编码块划分成上下两个不等大的矩形预测块,图2A所示的通过2N×nU划分方式划分出的两个预测块中,上边预测块的两条边的尺寸为2N和0.5N,下边预测块的两条边的尺寸为2N和1.5N,其中,2N×nU表示划分线相对该编码块的水平平分线上移0.5N;图2B所示的通过2N×nD划分方式划分出的两个预测块中,上边预测块的两条边的尺寸2N和1.5N,下边预测块的两条边的尺寸为2N和0.5N,其中,2N×nD表示划分线相对该编码块的水平平分线下移0.5N。图2C和2D所示的划分方式将一个编码块划分成左右两个不等大的矩形预测块,图2C所示的通过 nL×2N划分方式划分出的两个预测块中,左边预测块两条边的尺寸为0.5N和2N,右边预测块两条边的尺寸为1.5N和2N,其中,nL×2N表示划分线相对该编码块的垂直平分线左移0.5N;图2D所示的通过nR×2N划分方式划分出的两预测块中,左边预测块两条边的尺寸为1.5N和2N,右边预测块两条边的尺寸为0.5N和2N,nR×2N表示划分线相对该编码块的垂直平分线右移0.5N。
上述由编码块划分得到预测块的过程在本发明中称为预测块的划分方式。其中,划分方式2N×N、2N×nL和2N×nD为水平划分方式,预测块的划分方式为水平划分方式时,预测块的水平边的尺寸大于其垂直边的尺寸;划分方式N×2N、nL×2N和nR×2N为垂直划分方式,预测块的划分方式为垂直划分方式时,预测块的水平边的尺寸小于其垂直边的尺寸;划分方式2N×2N和N×N为方形划分方式,预测块的划分方式为方形划分方式时,预测块的水平边的尺寸等于其垂直边的尺寸。预测块的水平边的尺寸也可称为宽(Width),预测块的垂直边的尺寸也可称为高(Height)。
在三维视频图像编码中也同样使用了上述帧间压缩方法。在三维视频系统中包括纹理图像(texture)和深度图像两种类型的图像。纹理图像包含了图像本身的信息,深度图像则包含了纹理图像的深度信息。由于三维视频通常包含了多路纹理图像,因此在三维系统中通常也包含多路深度图像,其中每一路纹理图像或深度图像称为一个视(view)。为了提高三维视频的压缩效率,除了使用图像本身的信息进行视频编码压缩,还可以使用纹理视图像之间的信息进行编码。纹理图像对应的深度图像则为纹理图像间的编码预测提供深度信息。当前纹理图像可以使用相邻的纹理图像进行预测编码,此时该相邻纹理图像称为参考视图像或参考视。参考视图像也是参考帧中的一种。
视间预测的技术包括视间候选运动矢量IVMC(Inter-view Motion Vector Candidate)和运动参数继承MPI(Motion Parameter Inheritance)技术。IVMP和MPI等技术均涉及从参考帧中获得参考块,根据参考块获得运动信息,该运动信息包括运动矢量、参考帧索引值等。其中IVMC技术从参考视中获得参考块,根据参考块获得运动信息;MPI用于深度图像编解码,深度图像中的块通过相应位置的纹理图像的块(the corresponding texture block)的运动信息获得其本身的运动信息。在现有技术中引入了一种子预测块技术用于更精确地获 得参考运动矢量。子预测块技术的基本思想是将当前预测块分割成更小的子预测块,例如,可以将当前预测块分割成多个尺寸更小(如尺寸为8×8)的子预测块,以分割后的子预测块为单位从参考图像中获得参考运动矢量。使用子预测块技术,可以将当前预测块划分为多个子预测块,以得到更多的参考运动矢量,能够提升编码质量。
但是,现有的子预测块技术存在以下两个问题:第一,由于子预测块的尺寸是预先设定的,例如将子预测块的尺寸预先设定为8×8,在预测块的某一边的尺寸小于子预测块的预设的尺寸时,则该边不进行划分,例如在预测块的尺寸为16×4时,预测块的垂直边的尺寸为4,小于8,因此该垂直边不进行划分,此时16×4的预测块划分得到尺寸为8×4的2个子预测块;在预测块的某一边的尺寸不为8的倍数时,则该边不进行划分,例如在预测块的尺寸为16×12时,预测块的垂直边的尺寸为12,不为8的倍数,则该垂直边不进行划分,此时16×12的预测块划分得到尺寸为8×12的2个子预测块。还比如预测块尺寸为12×12、子预测块尺寸预先设定为8×8时,由于预测块的水平边的尺寸、垂直边的尺寸均不为8的倍数,因此划分得到的子预测块尺寸仍为12×12。
这种划分方法的问题在于会引入一些尺寸不属于现有的编解码设备中使用的尺寸的子预测块,例如尺寸为8×12的子预测块。而在未引入子预测块技术前并不存在这些不属于现有的编解码设备中使用的尺寸的块,由此因为子预测块技术而新增加了一些子预测块尺寸,从而增加了编解码系统的实现负担。
其中,现有的编解码设备中使用的编码块尺寸包括64×64、32×32、16×16、8×8等,而编解码设备中常用的划分编码块的划分方式包括2N×2N、2N×N、N×2N、2N×nU、2N×nD、nL×2N、nR×2N、N×N,同时考虑到常用编解码设备中预测块或子预测块的尺寸不小于4,因此预测块或子预测块的尺寸包括64×64、64×32、32×64、64×16、16×64、32×32、32×16、16×32、32×8、8×32、16×16、16×4、4×16、16×8、8×16、8×8、8×4、4×8、4×4等。
第二,现有的子预测块技术中子预测块统一为正方形,不能反应预测块的纹理,这会影响获取的参考运动矢量的准确性。本发明的思想正是基于解决上 述两个问题展开的。
图3示出了根据本发明实施例的预测块的划分方法100的示意性流程图,该方法100可以由编码设备或者解码设备执行,方法100包括:
S110,获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式。预测块的划分方式为水平划分方式(即2N×N、2N×nU或2N×nD等划分方式)时,预测块的水平边的尺寸大于其垂直边的尺寸;预测块的划分方式为垂直划分方式(即N×2N、nL×2N或nR×2N等划分方式)时,预测块的水平边的尺寸小于其垂直边的尺寸;预测块的划分方式为方形划分方式(即2N×2N或N×N等划分方式)时,预测块的水平边的尺寸等于其垂直边的尺寸。通常情况下,预测块的纹理与得到该预测块所使用的划分方式相关,例如,使用水平划分方式划分得到的预测块所对应的图像纹理通常倾向于使用水平纹理。
S120,根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸。即,根据预测块的划分方式,为划分子预测块确定用于参考的水平划分尺寸和垂直划分尺寸。例如,在预测块的划分方式为水平划分方式时,预测块的水平边的尺寸大于其垂直边的尺寸,则确定水平划分尺寸也大于垂直划分尺寸;在预测块的划分方式为垂直划分方式时,预测块的水平边的尺寸小于其垂直边的尺寸,则确定水平划分尺寸也小于垂直划分尺寸;在预测块的划分方式为方形划分方式时,预测块的水平边的尺寸等于其垂直边的尺寸,则确定水平划分尺寸也应等于垂直划分尺寸。
S130,根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块。应理解,这里有两种情况,一种情况是划分得到的子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸;另一种情况是该水平划分尺寸和该垂直划分尺寸,为划分预测块是需要参考的因素,但划分得到的子预测块的水平边的尺寸并不等于水平划分尺寸,或子预测块的垂直边的尺寸并不等于垂直划分尺寸。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现 不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
与上文中根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块的两种情况对应地,在一个实施例中,子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。
在另一个实施例中,在该水平划分尺寸大于该预测块的水平边的尺寸时,按照该预测块的水平边的尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该预测块的水平边的尺寸;在该水平划分尺寸小于或等于该预测块的水平边的尺寸时,按照该水平划分尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该水平划分尺寸;
在该垂直划分尺寸大于该预测块的垂直边的尺寸时,按照该预测块的垂直边的尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该预测块的垂直边的尺寸;在该垂直划分尺寸小于或等于该预测块的垂直边的尺寸时,按照该垂直划分尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
前一种情况将在下文中详细阐述,这里对后一种情况举一个具体的例子进行说明。当确定的水平划分尺寸大于预测块的水平边的尺寸时,预测块的水平方向不做划分。例如,预测块为通过水平方式划分得到的,其尺寸为8×4,即水平边的尺寸为8,垂直边的尺寸为4。根据预测块的划分方式为水平划分方式,通过对基准尺寸M(假设基本尺寸为8)进行移位,得到水平划分尺寸和垂直划分尺寸分别为16和4。此时,预测块的水平边的尺寸为8,该值小于水平划分尺寸16,因此预测块的水平边不做划分;预测块的垂直边的尺寸为4,该值等于垂直划分尺寸4,经预测块划分得到的子预测块垂直边尺寸仍为4,最终划分得到尺寸为8×4的1个子预测块。
可选地,作为一个实施例,根据该水平划分尺寸和该垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
可选地,在本发明实施例中,该根据该预测块的划分方式,确定水平划分 尺寸和垂直划分尺寸,包括:
获取基准尺寸M,其中,M为正整数;
根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸。
具体而言,现有技术中的子预测块均为正方形的,假设将预测块划分得到的子预测块的水平边的尺寸为M,子预测块的垂直边的尺寸也为M,可以将M作为基准尺寸应用于本发明的实施例中,但本发明实施例对此不作限定,子预测块的基准尺寸可以预设为任意正整数。由于在现有技术中预测块的尺寸一般都为4的倍数,因此子预测块的基准尺寸一般可设为4、8、16等数值。根据预测块的划分方式,基于该基准尺寸M,确定水平划分尺寸和垂直划分尺寸,将预测块划分为子预测块时,参考水平划分尺寸和垂直划分尺寸,从而能够保证子预测块的纹理与预测块的纹理相一致,能够提高通过子预测块获取参考运动矢量的准确性。
例如,在预测块的划分方式为水平划分方式时,即预测块的水平边的尺寸大于其垂直边的尺寸时,将水平划分尺寸由M扩大,将第一垂直尺寸由M缩小,参考水平划分尺寸和垂直划分尺寸对预测块进行划分后,可以使得子预测块的水平边的尺寸也大于其垂直边的尺寸;在预测块的划分方式为垂直划分方式时,即预测块的水平边的尺寸小于其垂直边的尺寸时,将水平划分尺寸由M缩小,将垂直划分尺寸由M扩大,参考水平划分尺寸和垂直划分尺寸对预测块进行划分后,可以使得子预测块的水平边的尺寸也小于其垂直边的尺寸;在预测块的划分方式为方形划分方式时,即预测块的水平边的尺寸等于其垂直边的尺寸时,则水平划分尺寸和第一垂直尺寸可以确定为M,参考水平划分尺寸和垂直划分尺寸对预测块进行划分后,可以使得子预测块的水平边的尺寸也等于其垂直边的尺寸。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,能够提高通过子预测块获取参考运动矢量的准确性。
可选地,在本发明实施例中,根据预测块的划分方式,基于基准尺寸M, 确定水平划分尺寸和垂直划分尺寸,包括:
根据预测块的划分方式,基于基准尺寸M,确定水平划分尺寸和垂直划分尺寸,使得水平划分尺寸和垂直划分尺寸构成的矩形块的面积与M2的差值小于一定的阈值。将预测块划分为至少一个子预测块后,子预测块的水平边的尺寸等于该水平划分尺寸,子预测块的垂直边的尺寸等于该垂直划分尺寸,从而子预测块的面积与M2的差值小于一定的阈值。
优选地,使得水平划分尺寸和垂直划分尺寸构成的矩形块的面积为M2,从而子预测块的面积为M2。具体而言,基于基准尺寸为M,可以使得水平划分尺寸相对于M扩大一定的倍数,同时垂直划分尺寸相对于M也缩小同样的倍数;或者使得水平划分尺寸相对于M缩小一定的倍数,同时垂直划分尺寸相对于M也扩大同样的倍数,从而使得水平划分尺寸和垂直划分尺寸构成的矩形块的面积为M2,使得子预测块的面积保持为M2
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,调整水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,最终使得子预测块的面积保持与基准尺寸的子预测块的面积一致,从而能够保证划分得到的子预测块数目与按基准尺寸划分得到的子预测块数目一致,获得的参考运动矢量数目不会因子预测块的宽、高尺寸的改变而发生变化。
应理解,在本发明实施例中,在预测块的划分方式为水平划分方式或垂直划分方式时,需基于基准尺寸M调整水平划分尺寸和垂直划分尺寸。M为正整数,这里的调整可以是对M的二进制形式进行左移位或者右移位。例如,当M=8时,其二进制形式为1000,左移一位为10000(十进制表示即为16),左移一位为100(十进制表示即为4);再如,当M=5时,其二进制形式为101,左移一位为1010(十进制表示即为10),左移一位为10(十进制表示即为2);又如,当M=6时,其二进制形式为110,左移一位为1100(十进制表示即为12),左移一位为11(十进制表示即为3)。理论上而言,也可以对M的十进制形式进行左移位或者右移位。此外,调整子预测块的水平边的尺寸和垂直边的尺寸,还可以是单纯地对M扩大或缩小相应的倍数,本发明实施例对此不作限定。
可选地,作为一个实施例,根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸大于该垂直划分尺寸。
具体而言,在预测块的划分方式为水平划分方式时,即预测块的水平边的尺寸大于其垂直边的尺寸时,确定水平划分尺寸和垂直划分尺寸,使得该水平划分尺寸大于该垂直划分尺寸,最终将该预测块划分为至少一个子预测块,使得该子预测块的水平边的尺寸大于该子预测块的垂直边的尺寸。使得水平划分尺寸大于垂直划分尺寸,可以设定一个基础尺寸M,将水平划分尺寸相对于基础尺寸M增大,垂直划分尺寸相对于基础尺寸M减小,继而使得子预测块的水平边的尺寸和垂直边的尺寸分别等于水平划分尺寸和垂直划分尺寸;也可以不设定基础尺寸,通过其它的方法使得子预测块的水平边的尺寸大于该子预测块的垂直边的尺寸即可,本发明实施例对此不作限定。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,调整水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,即保证子预测块的划分方式与预测块的划分方式相一致,能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
具体而言,在该预测块的划分方式为水平划分方式时,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,并且J大于M,K小于M,可以使得最终得到的子预测块的面积尽可能地保持与基准尺寸的子预测块的面积一致,从而能够保证划分得到的子预测块数目与按基准尺寸划分得到的子预测块数目尽可能一致,获得的参考运动矢量数目不会因子预测块的宽、高尺寸的改变而发生过于大的变化。
优选地,作为一个实施例,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。这里的左移p位或右移p位可以是对M的二进制形式进行左移位或者右移位;也可以对M的十进制形式进行左移位或者右移位,本发明实施例对此不作限定。
下面以几个具体的例子对本发明实施例的方法进行详细说明。如图4A所示,预测块为通过水平划分方式划分得到的,其尺寸为16×4,即水平边的尺寸为16,垂直边的尺寸为4。基准尺寸为8,即基准的子预测块的尺寸为8×8。在现有的划分方法中,因为预测块的水平边的尺寸为16,则在水平方向进行划分,可以划分为2个子预测块;预测块的垂直边的尺寸为4,小于基准尺寸8,则在垂直方向不进行划分,最终划分结果如图4B所示,将预测块划分为尺寸为8×4的2个子预测块。而应用本发明实施例的方法100,首先确定预测块的划分方式为水平划分方式,则将水平划分尺寸J确定为M<<1(即8<<1=16),将第一垂直尺寸K确定为M>>1(即8>>1=4)。划分预测块时,使子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。最终划分结果如图4C所示,即不对预测块进行再分,或者说将预测块划分为尺寸为16×4的1个子预测块。本例子给出的划分结果与现有技术不同,在应用本发明实施例的方法100时,统一按照方法100来划分,则预测块划分为尺寸为16×4后,均不再进行划分,可以保持划分的结果一致。
如图5A所示,预测块为通过水平划分方式划分得到的,其尺寸为16×8,即水平边的尺寸为16,垂直边的尺寸为8。基准尺寸为8,即基准的子预测块的尺寸为8×8。在现有的划分方法中,因为预测块的水平边的尺寸为16,则在水平方向进行划分,可以划分为2个子预测块;预测块的垂直边的尺寸为8,则在垂直方向不进行划分,最终划分结果如图5B所示,将预测块划分为尺寸为8×8的2个子预测块,尺寸为8×8的子预测块的纹理与预测块的纹理不相一致,不利于通过子预测块获取的参考运动矢量的准确性。而应用本发明实施例的方法100,首先确定预测块的划分方式为水平划分方式,则将水平划分尺寸J确定为M<<1(即8<<1=16),将第一垂直尺寸K确定为M>>1(即8>>1=4)。划分预测块时,使子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。最终划分结果如图5C所示,即将预测块划分 为尺寸为16×4的2个子预测块。
如图6A所示,预测块为通过水平划分方式划分得到的,其尺寸为16×12,即水平边的尺寸为16,垂直边的尺寸为12。基准尺寸为8,即基准的子预测块的尺寸为8×8。在现有的划分方法中,因为预测块的水平边的尺寸为16,则在水平方向进行划分,可以划分为2个子预测块;预测块的垂直边的尺寸为12,12不是基准尺寸8的整数倍,则在垂直方向不进行划分,最终划分结果如图6B所示,将预测块划分为尺寸为8×12的2个子预测块,尺寸8×12不属于现有的编解码设备中使用的尺寸。而应用本发明实施例的方法100,首先确定预测块的划分方式为水平划分方式,则将水平划分尺寸J确定为M<<1(即8<<1=16),将垂直划分尺寸K确定为M>>1(即8>>1=4)。划分预测块时,使子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。最终划分结果如图6C所示,即将预测块划分为尺寸为16×4的3个子预测块。
可选地,作为一个实施例,该根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸小于该垂直划分尺寸。
具体而言,在预测块的划分方式为垂直划分方式时,即预测块的水平边的尺寸小于其垂直边的尺寸时,确定水平划分尺寸和垂直划分尺寸,使得该水平划分尺寸小于该垂直划分尺寸,最终将该预测块划分为至少一个子预测块,使得该子预测块的水平边的尺寸小于该子预测块的垂直边的尺寸。使得水平划分尺寸小于垂直划分尺寸,可以设定一个基础尺寸M,将水平划分尺寸相对于基础尺寸M减小,垂直划分尺寸相对于基础尺寸M增大,继而使得子预测块的水平边的尺寸和垂直边的尺寸分别等于水平划分尺寸和垂直划分尺寸;也可以不设定基础尺寸,通过其它的方法使得子预测块的水平边的尺寸小于该子预测块的垂直边的尺寸即可,本发明实施例对此不作限定。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,调整水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,即保证子预测 块的划分方式与预测块的划分方式相一致,能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,其中Y和Z为正整数,并且Y小于M,Z大于M。
具体而言,在该预测块的划分方式为垂直划分方式时,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,并且Y小于M,Z大于M,可以使得最终得到的子预测块的面积尽可能地保持与基准尺寸的子预测块的面积一致,从而能够保证划分得到的子预测块数目与按基准尺寸划分得到的子预测块数目尽可能一致,获得的参考运动矢量数目不会因子预测块的宽、高尺寸的改变而发生过于大的变化。
优选地,作为一个实施例,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。这里的左移q位或右移q位可以是对M的二进制形式进行左移位或者右移位;也可以对M的十进制形式进行左移位或者右移位,本发明实施例对此不作限定。
与预测块的划分方式为水平划分方式时的情况类似,为了简洁,当预测块的划分方式为垂直划分方式时,仅举一个具体的例子作为详细说明。
如图7A所示,预测块为通过垂直划分方式划分得到的,其尺寸为16×32,即水平边的尺寸为16,垂直边的尺寸为32。基准尺寸为8,即基准的子预测块的尺寸为8×8。在现有的划分方法中,因为预测块的水平边的尺寸为16,则在水平方向进行划分,可以划分为2个子预测块;预测块的垂直边的尺寸为32,则在垂直方向进行划分,可以划分为4个子预测块,最终划分结果如图7B所示,将预测块划分为尺寸为8×8的8个子预测块,尺寸为8×8的子预测块的纹理与预测块的纹理不相一致,不利于通过子预测块获取的参考运动矢量的准确性。而应用本发明实施例的方法100,首先确定预测块的划分方式为垂直划分方式,则将水平划分尺寸Y确定为M>>1(即8>>1=4),将第一垂直尺寸Z确定为M<<1(即8<<1=16)。划分预测块时,使子预测块的水平边的 尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。最终划分结果如图7C所示,即将预测块划分为尺寸为4×16的8个子预测块。
可选地,作为一个实施例,该根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸等于该垂直划分尺寸。
具体而言,在预测块划分方式为方形划分方式时,即预测块的水平边的尺寸等于其垂直边的尺寸时,确定水平划分尺寸和垂直划分尺寸,使得该水平划分尺寸等于该垂直划分尺寸,最终将该预测块划分为至少一个子预测块,使得该子预测块的水平边的尺寸等于该子预测块的垂直边的尺寸。使得子预测块的水平边的尺寸等于其垂直边的尺寸,可以设定一个基础尺寸M,使水平划分尺寸和垂直划分尺寸均等于基础尺寸M,继而使得子预测块的水平边的尺寸和垂直边的尺寸分别等于水平划分尺寸和垂直划分尺寸;也可以不设定基础尺寸,通过其它的方法使得子预测块的水平边的尺寸等于该子预测块的垂直边的尺寸即可,本发明实施例对此不作限定。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,调整水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,即保证子预测块的划分方式与预测块的划分方式相一致,能够提高通过子预测块获取参考运动矢量的准确性。
优选地,根据该预测块的划分方式,基于该基准尺寸M,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为M,将该垂直划分尺寸确定为M。
下面举一个具体的例子进行详细说明。如图8A所示,预测块为通过方形划分方式划分得到的,其尺寸为32×32,即水平边的尺寸为32,垂直边的尺寸为32。基准尺寸为16,即基准的子预测块的尺寸为16×16。在现有的划分方法中,因为预测块的水平边的尺寸为32,则在水平方向进行划分,可以划分为2个子预测块;预测块的垂直边的尺寸为32,则在垂直方向进行划分, 可以划分为2个子预测块,最终划分结果如图8B所示,将预测块划分为尺寸为16×16的4个子预测块。应用本发明实施例的方法100,首先确定预测块的划分方式为方形划分方式,则将水平划分尺寸确定为M(即16),将第一垂直尺寸确定为M(即16)划分预测块时,使子预测块的水平边的尺寸等于水平划分尺寸,子预测块的垂直边的尺寸等于垂直划分尺寸。最终划分结果如图8C所示,即与现有技术的划分结果相同,也将预测块划分为尺寸为16×16的4个子预测块。
上述几个例子中确定水平划分尺寸和垂直划分尺寸时,当通过移位后水平划分尺寸大于预测块的水平边的尺寸时,预测块的水平方向不做划分。例如,预测块为通过水平方式划分得到的,其尺寸为8×4,即水平边的尺寸为8,垂直边的尺寸为4。子预测块的基准尺寸为8,预测块的划分方式为水平划分方式,因此得到水平划分尺寸和垂直划分尺寸分别为16和4。此时,预测块的水平边的尺寸为8,该值小于水平划分尺寸16,因此预测块的水平边不做划分;预测块的垂直边的尺寸为4,该值等于垂直划分尺寸4,经预测块划分得到的子预测块垂直边尺寸仍为4,最终划分得到一个尺寸为8×4的子预测块。
因此,本发明实施例的预测块的划分方法,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据该水平划分尺寸和该垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,方法100还可以包括:根据子预测块获取运动信息。在一种具体实现中,可以根据子预测块从参考视图像或从纹理图像获取运动信息。根据本发明实施例的方法得到的子预测块的纹理与预测块的纹理相一致,因而根据该子预测块获得的运动信息中的参考运动矢量的准确性好。
图9示出了根据本发明实施例的预测块的划分方法200的示意性流程图,该方法200可以由编码设备或者解码设备执行,方法200包括:
S210,获取该预测块的水平边的尺寸和垂直边的尺寸;
S220,获取基准尺寸;
S230,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块 的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测块。
因此,本发明实施例的预测块的划分方法,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测块,包括:
在该预测块的水平边的尺寸小于该基准尺寸,或者该预测块的垂直边的尺寸小于该基准尺寸,或者该预测块的水平边的尺寸大于该基准尺寸但不能整除该基准尺寸,或者该预测块的垂直边的尺寸大于该基准尺寸但不能整除该基准尺寸时,按照该预测块的水平边的尺寸和该预测块的垂直边的尺寸将该预测块划分为一个子预测块。
具体而言,例如编码块的尺寸为16×16,预测块的划分方式为2N×nU或2N×nD时,会划分得到16×4和16×12的预测块。设定基准尺寸为M,若基准尺寸M为8,则按现有技术对16×12的预测块划分,会得到8×12的2个子预测块。对16×4的预测块划分,会得到8×4的2个子预测块。8×12的子预测块不属于现有的编解码设备中使用的尺寸的子预测块,为避免产生这种情况,可以根据预测块的尺寸确定子预测块的尺寸。
在预测块的水平边的尺寸小于M,或者预测块的垂直边的尺寸小于M时, 不再对预测块进行细分,即按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,或者说直接将预测块确定为子预测块。对于上边的例子而言,即是将16×4的预测块划分为16×4的1个子预测块。
在预测块的水平边的尺寸大于M但不能整除M,或者预测块的垂直边的尺寸大于M但不能整除M时,不再对预测块进行细分,即按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,或者说直接将预测块确定为子预测块。对于上边的例子而言,即是将16×12的预测块划分为16×12的1个子预测块。
因此,本发明实施例的预测块的划分方法,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将该子预测块的水平边的尺寸设置为该预测块的水平边的尺寸,将该子预测块的垂直边的尺寸设置为该预测块的垂直边的尺寸;
在不满足该预设条件时,将该子预测块的水平边的尺寸设置为该基准尺寸,将该子预测块的垂直边的尺寸设置为该基准尺寸;
该预设条件为该预测块的水平边的尺寸与该基准尺寸的比值小于或等于1,或者该预测块的垂直边的尺寸与该基准尺寸的比值小于或等于1。
应理解,这里的比值是指除法并进行下取整的操作,即预测块的水平边的尺寸与该基准尺寸的比值是指预测块的水平边的尺寸除以基准尺寸并下取整所得的值,预测块的垂直边的尺寸与该基准尺寸的比值是指预测块的垂直边的尺寸除以基准尺寸并下取整所得的值。
具体而言,假设基准尺寸为M,在预测块的某一边的尺寸除以M并下取整所得的值小于或等于1时,说明预测块的该边的尺寸小于或等于基准尺寸,或者预测块的该边的尺寸不能被基准尺寸整除。例如当预测块的尺寸为16×4,基准尺寸为8时,该预测块的垂直边的尺寸除以8并下取整所得的值为0;当预测块的尺寸为16x12,基准尺寸为8时,虽然该预测块的垂直边的尺寸大于基准尺寸,但其垂直边的尺寸不能被基准尺寸整除,此时垂直边的尺寸除以8并下取整所得的值为1。因此,在该预测块的水平边的尺寸除以M并下取整所得的值小于或等于1,或者该预测块的垂直边的尺寸除以M并下取整所得的值小于或等于1时,不再对预测块进行细分,即按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,或者说直接将预测块确定为子预测块。以下为具体的实现方式:
设基准尺寸为subPUSize,预测块的水平边的尺寸为nPbW、预测块的垂直边边的尺寸为nPbH。则当nPbW除以subPUSize并下取整所得的值小于或等于1或nPbH除以subPUSize并下取整所得的值小于或等于1时,子预测块的水平边的尺寸nSbW等于预测块的水平边的尺寸nPbW,否则子预测块的水平边的尺寸等于基准尺寸subPUSize;当nPbH除以subPUSize并下取整所得的值小于或等于1或nPbW除以subPUSize并下取整所得的值小于或等于1时,子预测块的垂直边的尺寸nSbH等于预测块的垂直边的尺寸nPbW,否则子预测块的垂直边的尺寸等于基准尺寸subPUSize。其数学公式表示形式为:
nSbW=(nPbW/subPUSize<=1||nPbH/subPUSize<=1)?nPbW:subPUSize
nSbH=(nPbW/subPUSize<=1||nPbH/subPUSize<=1)?nPbH:subPUSize
其中,所述“/”为整除符号,“?”和“:”为计算机语言中的选择表达式。
可选地,作为一个实施例,方法200还可以包括:根据子预测块获取运动信息。在一种具体实现中,可以根据子预测块从参考视图像或从纹理图像获取运动信息。根据本发明实施例的方法得到的子预测块的纹理与预测块的纹理相一致,因而根据该子预测块获取的运动信息中的参考运动矢量的准确性好。
因此,本发明实施例的预测块的划分方法,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
上文中结合图1至图9,详细描述了根据本发明实施例的预测块的划分方法,下面将结合图10至图17,详细描述根据本发明实施例的设备。
图10示出了根据本发明实施例的编码设备300的示意性框图。如图10所示,该编码设备300包括:
第一获取模块310,用于获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
确定模块320,用于根据该第一获取模块310获取的该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
划分模块330,用于根据该确定模块320确定的该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块。
因此,本发明实施例的编码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,该子预测块的水平边的尺寸等于该水平划分尺寸,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,该确定模块320包括:
获取子模块,用于获取基准尺寸M,其中,M为正整数;
确定子模块,用于根据该第一获取模块310获取的该预测块的划分方式,基于该获取子模块获取的该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸。
可选地,作为一个实施例,该确定模块320具体用于:
在该第一获取模块310获取的该预测块的划分方式为水平划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸大于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块310获取的该预测块的划分方式为水平划分方式时,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
可选地,作为一个实施例,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
可选地,作为一个实施例,p=1。
可选地,作为一个实施例,该确定模块320具体用于:
在该第一获取模块310获取的该预测块的划分方式为垂直划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸小于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块310获取的该预测块的划分方式为垂直划分方式时,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
可选地,作为一个实施例,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
可选地,作为一个实施例,q=1。
可选地,作为一个实施例,该确定模块320具体用于:
在该第一获取模块310获取的该预测块的划分方式为方形划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块310获取的该预测块的划分方式为方形划分方式时,将该水平划分尺寸确定为M,将该垂直划分尺寸确定为M。
可选地,作为一个实施例,该划分模块330具体用于:
在该水平划分尺寸大于该预测块的水平边的尺寸时,按照该预测块的水平边的尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该预测块的水平边的尺寸;在该水平划分尺寸小于或等于该预测块的水平边的尺寸时, 按照该水平划分尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该水平划分尺寸;
在该垂直划分尺寸大于该预测块的垂直边的尺寸时,按照该预测块的垂直边的尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该预测块的垂直边的尺寸;在该垂直划分尺寸小于或等于该预测块的垂直边的尺寸时,按照该垂直划分尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,根据该水平划分尺寸和该垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
可选地,作为一个实施例,该编码设备300还包括:
第二获取模块,用于根据该划分模块得到的该子预测块获取运动信息。
可选地,作为一个实施例,该第二获取模块具体用于:
根据该划分模块得到的该子预测块从参考视图像或从纹理图像获取该运动信息。
因此,本发明实施例的编码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
如图11所示,本发明实施例还提供了一种编码设备400,该编码设备400包括处理器410、存储器420和总线系统430,处理器410、存储器420通过总线系统430相连。存储器420用于存储指令,处理器410用于执行存储器420存储的指令。其中,处理器410用于:
获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预 测块。
因此,本发明实施例的编码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
应理解,在本发明实施例中,该处理器410可以是中央处理单元(Central Processing Unit,CPU),该处理器410还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器420可以包括只读存储器和随机存取存储器,并向处理器410提供指令和数据。存储器420的一部分还可以包括非易失性随机存取存储器。例如,存储器420还可以存储设备类型的信息。
该总线系统430除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统430。
在实现过程中,上述方法的各步骤可以通过处理器410中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器420,处理器410读取存储器420中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,该子预测块的水平边的尺寸等于该水平划分尺寸,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
获取基准尺寸M,其中,M为正整数;
根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸大于该垂直划分尺寸。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
可选地,作为一个实施例,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
可选地,作为一个实施例,p=1。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸小于该垂直划分尺寸。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
可选地,作为一个实施例,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
可选地,作为一个实施例,q=1。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,处理器410根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为M,将该垂直划分尺寸确定为M。
可选地,作为一个实施例,处理器410根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块,包括:
在该水平划分尺寸大于该预测块的水平边的尺寸时,按照该预测块的水平边的尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该预测块的水平边的尺寸;在该水平划分尺寸小于或等于该预测块的水平边的尺寸时,按照该水平划分尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该水平划分尺寸;
在该垂直划分尺寸大于该预测块的垂直边的尺寸时,按照该预测块的垂直边的尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该预测块的垂直边的尺寸;在该垂直划分尺寸小于或等于该预测块的垂直边的尺寸时,按照该垂直划分尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,根据该水平划分尺寸和该垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
可选地,作为一个实施例,处理器410还用于:
根据该子预测块获取运动信息。
可选地,作为一个实施例,处理器410根据该子预测块获得运动信息,包括:
根据该子预测块从参考视图像或从纹理图像获取该运动信息。
应理解,根据本发明实施例的编码设备400可对应于执行本发明实施例中的方法的主体,还可以对应于根据本发明实施例的编码设备300,并且编码设 备400中的各个模块的上述和其它操作和/或功能是为了实现图1至图9的方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的编码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
图12示出了根据本发明实施例的解码设备500的示意性框图。如图12所示,该解码设备500包括:
第一获取模块510,用于获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
确定模块520,用于根据该第一获取模块510获取的该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
划分模块530,用于根据该确定模块520确定的该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块。
因此,本发明实施例的解码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,该子预测块的水平边的尺寸等于该水平划分尺寸,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,该确定模块520包括:
获取子模块,用于获取基准尺寸M,其中,M为正整数;
确定子模块,用于根据该第一获取模块510获取的该预测块的划分方式,基于该获取子模块获取的该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸。
可选地,作为一个实施例,该确定模块520具体用于:
在该第一获取模块510获取的该预测块的划分方式为水平划分方式时,确 定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸大于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块510获取的该预测块的划分方式为水平划分方式时,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
可选地,作为一个实施例,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
可选地,作为一个实施例,p=1。
可选地,作为一个实施例,该确定模块520具体用于:
在该第一获取模块510获取的该预测块的划分方式为垂直划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸小于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块510获取的该预测块的划分方式为垂直划分方式时,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
可选地,作为一个实施例,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
可选地,作为一个实施例,q=1。
可选地,作为一个实施例,该确定模块520具体用于:
在该第一获取模块510获取的该预测块的划分方式为方形划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,该确定子模块具体用于:
在该第一获取模块510获取的该预测块的划分方式为方形划分方式时,将该水平划分尺寸确定为M,将该垂直划分尺寸确定为M。
可选地,作为一个实施例,该划分模块530具体用于:
在该水平划分尺寸大于该预测块的水平边的尺寸时,按照该预测块的水平边的尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该预测块的水平边的尺寸;在该水平划分尺寸小于或等于该预测块的水平边的尺寸时,按照该水平划分尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸 等于该水平划分尺寸;
在该垂直划分尺寸大于该预测块的垂直边的尺寸时,按照该预测块的垂直边的尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该预测块的垂直边的尺寸;在该垂直划分尺寸小于或等于该预测块的垂直边的尺寸时,按照该垂直划分尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,根据该水平划分尺寸和该垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
可选地,作为一个实施例,该解码设备500还包括:
第二获取模块,用于根据该划分模块得到的该子预测块获取运动信息。
可选地,作为一个实施例,该第二获取模块具体用于:
根据该划分模块得到的该子预测块从参考视图像或从纹理图像获取该运动信息。
因此,本发明实施例的解码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
如图13所示,本发明实施例还提供了一种解码设备600,该解码设备600包括处理器610、存储器620和总线系统630,处理器610、存储器620通过总线系统630相连。存储器620用于存储指令,处理器610用于执行存储器620存储的指令。其中,处理器610用于:
获取该预测块的划分方式,该预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块。
因此,本发明实施例的解码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
应理解,在本发明实施例中,该处理器610可以是中央处理单元(Central Processing Unit,CPU),该处理器610还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器620可以包括只读存储器和随机存取存储器,并向处理器610提供指令和数据。存储器620的一部分还可以包括非易失性随机存取存储器。例如,存储器620还可以存储设备类型的信息。
该总线系统630除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统630。
在实现过程中,上述方法的各步骤可以通过处理器610中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器620,处理器610读取存储器620中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,该子预测块的水平边的尺寸等于该水平划分尺寸,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
获取基准尺寸M,其中,M为正整数;
根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸大于该垂直划分尺寸。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为水平划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为J,将该垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
可选地,作为一个实施例,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
可选地,作为一个实施例,p=1。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,确定该水平划分尺寸和该垂直划分尺寸,该水平划分尺寸小于该垂直划分尺寸。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为垂直划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为Y,将该垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
可选地,作为一个实施例,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
可选地,作为一个实施例,q=1。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,确定该水平划分尺寸和该垂直 划分尺寸,该水平划分尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,处理器610根据该预测块的划分方式,基于该基准尺寸M,确定该水平划分尺寸和该垂直划分尺寸,包括:
在该预测块的划分方式为方形划分方式时,基于该基准尺寸M,将该水平划分尺寸确定为M,将该垂直划分尺寸确定为M。
可选地,作为一个实施例,处理器610根据该水平划分尺寸和该垂直划分尺寸,将该预测块划分为至少一个子预测块,包括:
在该水平划分尺寸大于该预测块的水平边的尺寸时,按照该预测块的水平边的尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该预测块的水平边的尺寸;在该水平划分尺寸小于或等于该预测块的水平边的尺寸时,按照该水平划分尺寸将该预测块划分为子预测块,该子预测块的水平边的尺寸等于该水平划分尺寸;
在该垂直划分尺寸大于该预测块的垂直边的尺寸时,按照该预测块的垂直边的尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该预测块的垂直边的尺寸;在该垂直划分尺寸小于或等于该预测块的垂直边的尺寸时,按照该垂直划分尺寸将该预测块划分为子预测块,该子预测块的垂直边的尺寸等于该垂直划分尺寸。
可选地,作为一个实施例,根据该水平划分尺寸和该垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
可选地,作为一个实施例,处理器610还用于:
根据该子预测块获取运动信息。
可选地,作为一个实施例,处理器610根据该子预测块获取运动信息,包括:
根据该子预测块从参考视图像或从纹理图像获取该运动信息。
应理解,根据本发明实施例的解码设备600可对应于执行本发明实施例中的方法的主体,还可以对应于根据本发明实施例的解码设备500,并且解码设备600中的各个模块的上述和其它操作和/或功能是为了实现图1至图9的方 法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的解码设备,通过根据预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,根据水平划分尺寸和垂直划分尺寸对预测块进行划分,使得子预测块的纹理与预测块的纹理相一致,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
图14示出了根据本发明实施例的编码设备700的示意性框图。如图14所示,该编码设备700包括:
第一获取模块710,用于获取该预测块的水平边的尺寸和垂直边的尺寸;
第二获取模块720,用于获取基准尺寸;
划分模块730,用于根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测块。
因此,本发明实施例的编码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,该划分模块730具体用于:
在该预测块的水平边的尺寸小于该基准尺寸,或者该预测块的垂直边的尺寸小于该基准尺寸,或者该预测块的水平边的尺寸大于该基准尺寸但不能整除该基准尺寸,或者该预测块的垂直边的尺寸大于该基准尺寸但不能整除该基准尺寸时,按照该预测块的水平边的尺寸和该预测块的垂直边的尺寸将该预测块划分为一个子预测块。
可选地,作为一个实施例,该划分模块730根据该预测块的水平边的尺寸 与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将该子预测块的水平边的尺寸设置为该预测块的水平边的尺寸,将该子预测块的垂直边的尺寸设置为该预测块的垂直边的尺寸;
在不满足该预设条件时,将该子预测块的水平边的尺寸设置为该基准尺寸,将该子预测块的垂直边的尺寸设置为该基准尺寸;
该预设条件为该预测块的水平边的尺寸与该基准尺寸的比值小于或等于1,或者该预测块的垂直边的尺寸与该基准尺寸的比值小于或等于1。
可选地,作为一个实施例,该编码设备700还包括:
第三获取模块,用于根据该划分模块得到的该子预测块获取运动信息。
可选地,作为一个实施例,该第三获取模块具体用于:
根据该划分模块得到的该子预测块从参考视图像或从纹理图像获取该运动信息。
因此,本发明实施例的编码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
如图15所示,本发明实施例还提供了一种编码设备800,该编码设备800包括处理器810、存储器820和总线系统830,处理器810、存储器820通过总线系统830相连。存储器820用于存储指令,处理器810用于执行存储器820存储的指令。其中,处理器810用于:
获取该预测块的水平边的尺寸和垂直边的尺寸;
获取基准尺寸;
根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预 测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测块。
因此,本发明实施例的编码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
应理解,在本发明实施例中,该处理器810可以是中央处理单元(Central Processing Unit,CPU),该处理器810还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器820可以包括只读存储器和随机存取存储器,并向处理器810提供指令和数据。存储器820的一部分还可以包括非易失性随机存取存储器。例如,存储器820还可以存储设备类型的信息。
该总线系统830除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统830。
在实现过程中,上述方法的各步骤可以通过处理器810中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器820,处理器810读取存储器820中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,处理器810具体用于:
在该预测块的水平边的尺寸小于该基准尺寸,或者该预测块的垂直边的尺寸小于该基准尺寸,或者该预测块的水平边的尺寸大于该基准尺寸但不能整除该基准尺寸,或者该预测块的垂直边的尺寸大于该基准尺寸但不能整除该基准尺寸时,按照该预测块的水平边的尺寸和该预测块的垂直边的尺寸将该预测块划分为一个子预测块。
可选地,作为一个实施例,处理器810根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将该子预测块的水平边的尺寸设置为该预测块的水平边的尺寸,将该子预测块的垂直边的尺寸设置为该预测块的垂直边的尺寸;
在不满足该预设条件时,将该子预测块的水平边的尺寸设置为该基准尺寸,将该子预测块的垂直边的尺寸设置为该基准尺寸;
该预设条件为该预测块的水平边的尺寸与该基准尺寸的比值小于或等于1,或者该预测块的垂直边的尺寸与该基准尺寸的比值小于或等于1。
可选地,作为一个实施例,处理器810还用于:
根据该子预测块获取运动信息。
可选地,作为一个实施例,处理器810根据该子预测块获取运动信息,包括:
根据该子预测块从参考视图像或从纹理图像获取该运动信息。
应理解,根据本发明实施例的编码设备800可对应于执行本发明实施例中的方法的主体,还可以对应于根据本发明实施例的编码设备700,并且编码设备800中的各个模块的上述和其它操作和/或功能是为了实现图1至图9的方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的编码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边 的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
图16示出了根据本发明实施例的解码设备900的示意性框图。如图16所示,该解码设备900包括:
第一获取模块910,用于获取该预测块的水平边的尺寸和垂直边的尺寸;
第二获取模块920,用于获取基准尺寸;
划分模块930,用于根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测块。
因此,本发明实施例的解码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
可选地,作为一个实施例,该划分模块930具体用于:
在该预测块的水平边的尺寸小于该基准尺寸,或者该预测块的垂直边的尺寸小于该基准尺寸,或者该预测块的水平边的尺寸大于该基准尺寸但不能整除该基准尺寸,或者该预测块的垂直边的尺寸大于该基准尺寸但不能整除该基准尺寸时,按照该预测块的水平边的尺寸和该预测块的垂直边的尺寸将该预测块划分为一个子预测块。
可选地,作为一个实施例,该划分模块930根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测 块的垂直边的尺寸,包括:
在满足预设条件时,将该子预测块的水平边的尺寸设置为该预测块的水平边的尺寸,将该子预测块的垂直边的尺寸设置为该预测块的垂直边的尺寸;
在不满足该预设条件时,将该子预测块的水平边的尺寸设置为该基准尺寸,将该子预测块的垂直边的尺寸设置为该基准尺寸;
该预设条件为该预测块的水平边的尺寸与该基准尺寸的比值小于或等于1,或者该预测块的垂直边的尺寸与该基准尺寸的比值小于或等于1。
可选地,作为一个实施例,该解码设备900还包括:
第三获取模块,用于根据该划分模块得到的该子预测块获取运动信息。
可选地,作为一个实施例,该第三获取模块具体用于:
根据该划分模块得到的该子预测块从参考视图像或从纹理图像获取该运动信息。
因此,本发明实施例的解码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
如图15所示,本发明实施例还提供了一种解码设备1000,该解码设备1000包括处理器1010、存储器1020和总线系统1030,处理器1010、存储器1020通过总线系统1030相连。存储器1020用于存储指令,处理器1010用于执行存储器1020存储的指令。其中,处理器1010用于:
获取该预测块的水平边的尺寸和垂直边的尺寸;
获取基准尺寸;
根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据该子预测块的水平边的尺寸和该子预测块的垂直边的尺寸,将该预测块划分为至少一个该子预测 块。
因此,本发明实施例的解码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提高通过子预测块获取参考运动矢量的准确性。
应理解,在本发明实施例中,该处理器处理器1010可以是中央处理单元(Central Processing Unit,CPU),该处理器处理器1010还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1020可以包括只读存储器和随机存取存储器,并向处理器1010提供指令和数据。存储器1020的一部分还可以包括非易失性随机存取存储器。例如,存储器1020还可以存储设备类型的信息。
该总线系统1030除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统1030。
在实现过程中,上述方法的各步骤可以通过处理器1010中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1020,处理器1010读取存储器1020中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,处理器1010具体用于:
在该预测块的水平边的尺寸小于该基准尺寸,或者该预测块的垂直边的尺 寸小于该基准尺寸,或者该预测块的水平边的尺寸大于该基准尺寸但不能整除该基准尺寸,或者该预测块的垂直边的尺寸大于该基准尺寸但不能整除该基准尺寸时,按照该预测块的水平边的尺寸和该预测块的垂直边的尺寸将该预测块划分为一个子预测块。
可选地,作为一个实施例,处理器1010根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的水平边的尺寸,根据该预测块的水平边的尺寸与该基准尺寸的数值关系或该预测块的垂直边的尺寸与该基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
在满足预设条件时,将该子预测块的水平边的尺寸设置为该预测块的水平边的尺寸,将该子预测块的垂直边的尺寸设置为该预测块的垂直边的尺寸;
在不满足该预设条件时,将该子预测块的水平边的尺寸设置为该基准尺寸,将该子预测块的垂直边的尺寸设置为该基准尺寸;
该预设条件为该预测块的水平边的尺寸与该基准尺寸的比值小于或等于1,或者该预测块的垂直边的尺寸与该基准尺寸的比值小于或等于1。
可选地,作为一个实施例,处理器1010还用于:
根据该子预测块获取运动信息。
可选地,作为一个实施例,处理器1010根据该子预测块获取运动信息,包括:
根据该子预测块从参考视图像或从纹理图像获取该运动信息。
应理解,根据本发明实施例的解码设备1000可对应于执行本发明实施例中的方法的主体,还可以对应于根据本发明实施例的解码设备900,并且解码设备1000中的各个模块的上述和其它操作和/或功能是为了实现图1至图9的方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的解码设备,通过比较预测块的水平边的尺寸和预测块的垂直边的尺寸与基准尺寸的数值关系,在预测块某一边的尺寸小于基准尺寸或不是基准尺寸的整数倍时,按照预测块的水平边的尺寸和预测块的垂直边的尺寸将预测块划分为一个子预测块,可以避免出现不属于现有的编解码设备中使用的尺寸的子预测块,从而避免了增加编解码系统的实现负担,并能够提 高通过子预测块获取参考运动矢量的准确性。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质 包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Figure PCTCN2015090438-appb-000001

Claims (59)

  1. 述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
    在所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
  2. 根据权利要求3所述的方法,其特征在于,所述根据所述预测块的划分方式,基于所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸,包括:
    在所述预测块的划分方式为垂直划分方式时,基于所述基准尺寸M,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
  3. 根据权利要求9所述的方法,其特征在于,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
  4. 根据权利要求10所述的方法,其特征在于,q=1。
  5. 根据权利要1至3中任一项所述的方法,其特征在于,所述根据所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸,包括:
    在所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
  6. 根据权利要求3所述的方法,其特征在于,所述根据所述预测块的划分方式,基于所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸,包括:
    在所述预测块的划分方式为方形划分方式时,基于所述基准尺寸M,将所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
  7. 根据权利要求1所述的方法,其特征在于,所述根据所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块,包括:
    在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
    在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
  8. 根据权利要求1至14所述的方法,其特征在于,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
  9. 根据权利要求1至15所述的方法,其特征在于,所述方法还包括:
    根据所述子预测块获得运动信息。
  10. 根据权利要求16所述的方法,其特征在于,所述根据所述子预测块获得运动信息,包括:
    根据所述子预测块从参考视图像或从纹理图像获得所述运动信息。
  11. 一种预测块的划分方法,其特征在于,所述方法包括:
    获取所述预测块的水平边的尺寸和垂直边的尺寸;
    获取基准尺寸;
    根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
  12. 根据权利要求18所述的方法,其特征在于,所述根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块,包括:
    在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
  13. 根据权利要求18所述的方法,其特征在于,所述根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
    在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
    在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
    所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
  14. 根据权利要求18至20中任一项所述的方法,其特征在于,所述方法还包括:
    根据所述子预测块获得运动信息。
  15. 根据权利要求21所述的方法,其特征在于,所述根据所述子预测块获得运动信息,包括:
    根据所述子预测块从参考视图像或从纹理图像获得所述运动信息。
  16. 一种编码设备,其特征在于,所述编码设备包括:
    第一获取模块,用于获取所述预测块的划分方式,所述预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
    确定模块,用于根据所述第一获取模块获取的所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
    划分模块,用于根据所述确定模块确定的所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块。
  17. 根据权利要求23所述的编码设备,其特征在于,所述子预测块的水平边的尺寸等于所述水平划分尺寸,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
  18. 根据权利要求23或24所述的编码设备,其特征在于,所述确定模块包括:
    获取子模块,用于获取基准尺寸M,其中,M为正整数;
    确定子模块,用于根据所述第一获取模块获取的所述预测块的划分方式,基于所述获取子模块获取的所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸。
  19. 根据权利要求23至25中任一项所述的编码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸大于所述垂直划分尺寸。
  20. 根据权利要求25所述的编码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,将所述水平划分尺寸确定为J,将所述垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
  21. 根据权利要求27所述的编码设备,其特征在于,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
  22. 根据权利要求28所述的编码设备,其特征在于,p=1。
  23. 根据权利要求23至25中任一项所述的编码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
  24. 根据权利要求25所述的编码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
  25. 根据权利要求31所述的编码设备,其特征在于,Y的值为将M右移q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
  26. 根据权利要求32所述的编码设备,其特征在于,q=1。
  27. 根据权利要23至26中任一项所述的编码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
  28. 根据权利要求25所述的编码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,将所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
  29. 根据权利要求23所述的编码设备,其特征在于,所述划分模块具体用于:
    在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
    在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所 述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
  30. 根据权利要求23至36所述的编码设备,其特征在于,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
  31. 根据权利要求23至37所述的编码设备,其特征在于,所述编码设备还包括:
    第二获取模块,用于根据所述划分模块得到的所述子预测块获取运动信息。
  32. 根据权利要求38所述的编码设备,其特征在于,所述第二获取模块具体用于:
    根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
  33. 一种编码设备,其特征在于,包括:
    第一获取模块,用于获取所述预测块的水平边的尺寸和垂直边的尺寸;
    第二获取模块,用于获取基准尺寸;
    划分模块,用于根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
  34. 根据权利要求40所述的编码设备,其特征在于,所述划分模块具体用于:
    在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
  35. 根据权利要求40所述的编码设备,其特征在于,所述划分模块根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直 边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
    在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
    在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
    所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
  36. 根据权利要求40至42中任一项所述的编码设备,其特征在于,所述编码设备还包括:
    第三获取模块,用于根据所述子预测块获取运动信息。
  37. 根据权利要求43所述的编码设备,其特征在于,所述第三获取模块具体用于:
    根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
  38. 一种解码设备,其特征在于,所述解码设备包括:
    第一获取模块,用于获取所述预测块的划分方式,所述预测块的划分方式为水平划分方式、垂直划分方式或方形划分方式;
    确定模块,用于根据所述第一获取模块获取的所述预测块的划分方式,确定水平划分尺寸和垂直划分尺寸;
    划分模块,用于根据所述确定模块确定的所述水平划分尺寸和所述垂直划分尺寸,将所述预测块划分为至少一个子预测块。
  39. 根据权利要求45所述的解码设备,其特征在于,所述子预测块的水平边的尺寸等于所述水平划分尺寸,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
  40. 根据权利要求45或46所述的解码设备,其特征在于,所述确定模块 包括:
    获取子模块,用于获取基准尺寸M,其中,M为正整数;
    确定子模块,用于根据所述第一获取模块获取的所述预测块的划分方式,基于所述获取子模块获取的所述基准尺寸M,确定所述水平划分尺寸和所述垂直划分尺寸。
  41. 根据权利要求45至47中任一项所述的解码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸大于所述垂直划分尺寸。
  42. 根据权利要求47所述的解码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为水平划分方式时,将所述水平划分尺寸确定为J,将所述垂直划分尺寸确定为K,其中,J和K为正整数,并且J大于M,K小于M。
  43. 根据权利要求49所述的解码设备,其特征在于,J的值为将M左移p位对应的值,K的值为将M右移p位对应的值,其中,p为正整数。
  44. 根据权利要求50所述的解码设备,其特征在于,p=1。
  45. 根据权利要求45至47中任一项所述的解码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸小于所述垂直划分尺寸。
  46. 根据权利要求47所述的解码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为垂直划分方式时,将所述水平划分尺寸确定为Y,将所述垂直划分尺寸确定为Z,其中,Y和Z为正整数,并且Y小于M,Z大于M。
  47. 根据权利要求53所述的解码设备,其特征在于,Y的值为将M右移 q位对应的值,Z的值为将M左移q位对应的值,其中,q为正整数。
  48. 根据权利要求54所述的解码设备,其特征在于,q=1。
  49. 根据权利要45至47中任一项所述的解码设备,其特征在于,所述确定模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,确定所述水平划分尺寸和所述垂直划分尺寸,所述水平划分尺寸等于所述垂直划分尺寸。
  50. 根据权利要求47所述的解码设备,其特征在于,所述确定子模块具体用于:
    在所述第一获取模块获取的所述预测块的划分方式为方形划分方式时,将所述水平划分尺寸确定为M,将所述垂直划分尺寸确定为M。
  51. 根据权利要求45所述的解码设备,其特征在于,所述划分模块具体用于:
    在所述水平划分尺寸大于所述预测块的水平边的尺寸时,按照所述预测块的水平边的尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述预测块的水平边的尺寸;在所述水平划分尺寸小于或等于所述预测块的水平边的尺寸时,按照所述水平划分尺寸将所述预测块划分为子预测块,所述子预测块的水平边的尺寸等于所述水平划分尺寸;
    在所述垂直划分尺寸大于所述预测块的垂直边的尺寸时,按照所述预测块的垂直边的尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述预测块的垂直边的尺寸;在所述垂直划分尺寸小于或等于所述预测块的垂直边的尺寸时,按照所述垂直划分尺寸将所述预测块划分为子预测块,所述子预测块的垂直边的尺寸等于所述垂直划分尺寸。
  52. 根据权利要求45至58所述的解码设备,其特征在于,根据所述水平划分尺寸和所述垂直划分尺寸,得到的所有子预测块的水平边的尺寸相同,得到的所有子预测块的垂直边的尺寸相同。
  53. 根据权利要求45至59所述的解码设备,其特征在于,所述解码设备还包括:
    第二获取模块,用于根据所述划分模块得到的所述子预测块获取运动信息。
  54. 根据权利要求60所述的解码设备,其特征在于,所述第二获取模块具体用于:
    根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
  55. 一种解码设备,其特征在于,包括:
    第一获取模块,用于获取所述预测块的水平边的尺寸和垂直边的尺寸;
    第二获取模块,用于获取基准尺寸;
    划分模块,用于根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,根据所述子预测块的水平边的尺寸和所述子预测块的垂直边的尺寸,将所述预测块划分为至少一个所述子预测块。
  56. 根据权利要求62所述的解码设备,其特征在于,所述划分模块具体用于:
    在所述预测块的水平边的尺寸小于所述基准尺寸,或者所述预测块的垂直边的尺寸小于所述基准尺寸,或者所述预测块的水平边的尺寸大于所述基准尺寸但不能整除所述基准尺寸,或者所述预测块的垂直边的尺寸大于所述基准尺寸但不能整除所述基准尺寸时,按照所述预测块的水平边的尺寸和所述预测块的垂直边的尺寸将所述预测块划分为一个子预测块。
  57. 根据权利要求62所述的解码设备,其特征在于,所述划分模块根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的水平边的尺寸,根据所述预测块的水平边的尺寸与所述基准尺寸的数值关系或所述预测块的垂直边的尺寸与所述基准尺寸的数值关系确定子预测块的垂直边的尺寸,包括:
    在满足预设条件时,将所述子预测块的水平边的尺寸设置为所述预测块的水平边的尺寸,将所述子预测块的垂直边的尺寸设置为所述预测块的垂直边的尺寸;
    在不满足所述预设条件时,将所述子预测块的水平边的尺寸设置为所述基准尺寸,将所述子预测块的垂直边的尺寸设置为所述基准尺寸;
    所述预设条件为所述预测块的水平边的尺寸与所述基准尺寸的比值小于或等于1,或者所述预测块的垂直边的尺寸与所述基准尺寸的比值小于或等于1。
  58. 根据权利要求62至64中任一项所述的解码设备,其特征在于,所述解码设备还包括:
    第三获取模块,用于根据所述子预测块获取运动信息。
  59. 根据权利要求65所述的解码设备,其特征在于,所述第三获取模块具体用于:
    根据所述划分模块得到的所述子预测块从参考视图像或从纹理图像获取所述运动信息。
PCT/CN2015/090438 2014-10-11 2015-09-23 预测块的划分方法、编码设备和解码设备 WO2016054975A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP15849357.7A EP3104605A4 (en) 2014-10-11 2015-09-23 Method for partitioning prediction block, encoding device and decoding device
US15/362,452 US10230953B2 (en) 2014-10-11 2016-11-28 Method for dividing prediction block, encoding device, and decoding device
US16/263,779 US10834398B2 (en) 2014-10-11 2019-01-31 Method for dividing prediction block, encoding device, and decoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410535982.4A CN104284188B (zh) 2014-10-11 2014-10-11 预测块的划分方法、编码设备和解码设备
CN201410535982.4 2014-10-11

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/362,452 Continuation US10230953B2 (en) 2014-10-11 2016-11-28 Method for dividing prediction block, encoding device, and decoding device

Publications (1)

Publication Number Publication Date
WO2016054975A1 true WO2016054975A1 (zh) 2016-04-14

Family

ID=52258597

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/090438 WO2016054975A1 (zh) 2014-10-11 2015-09-23 预测块的划分方法、编码设备和解码设备

Country Status (4)

Country Link
US (2) US10230953B2 (zh)
EP (1) EP3104605A4 (zh)
CN (2) CN104284188B (zh)
WO (1) WO2016054975A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104284188B (zh) * 2014-10-11 2018-03-13 华为技术有限公司 预测块的划分方法、编码设备和解码设备
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
CN111050184A (zh) * 2018-10-15 2020-04-21 华为技术有限公司 图像块的划分方法和装置
CN111327894B (zh) * 2018-12-15 2022-05-17 华为技术有限公司 块划分方法、视频编解码方法、视频编解码器
WO2020125595A1 (zh) * 2018-12-16 2020-06-25 华为技术有限公司 视频译码器及相应方法
CN111327899A (zh) 2018-12-16 2020-06-23 华为技术有限公司 视频译码器及相应方法
CN110234008B (zh) * 2019-03-11 2020-06-16 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置
US11375243B2 (en) * 2019-07-17 2022-06-28 Tencent America LLC Method and apparatus for video coding
CN114567775B (zh) * 2022-04-29 2022-09-09 中国科学技术大学 图像划分方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215395A (zh) * 2010-04-09 2011-10-12 华为技术有限公司 一种视频编解码方法和装置
TW201143446A (en) * 2010-02-11 2011-12-01 Qualcomm Inc Video coding with large macroblocks
US20120147961A1 (en) * 2010-12-09 2012-06-14 Qualcomm Incorporated Use of motion vectors in evaluating geometric partitioning modes
CN102685487A (zh) * 2011-03-16 2012-09-19 华为技术有限公司 图像编解码方法、图像编解码设备及网络系统
US20130163664A1 (en) * 2011-12-22 2013-06-27 Qualcomm Incorporated Unified partition mode table for intra-mode coding
CN104284188A (zh) * 2014-10-11 2015-01-14 华为技术有限公司 预测块的划分方法、编码设备和解码设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EA024522B1 (ru) * 2009-04-08 2016-09-30 Шарп Кабусики Кайся Устройство и способ кодирования видеокадров и устройство и способ декодирования видеокадров
BRPI1014232A2 (pt) * 2009-06-09 2016-04-12 Sony Corp aparelho para gerar múltiplas árvores de codificação de candidato para uso durante codificação, sistema para codificação e de codificação adaptável de imagens ou vídeos, e, método para gerar múltiplas árvores de codificação de candidato
EP2485489A4 (en) * 2009-10-01 2014-01-15 Sk Telecom Co Ltd METHOD AND DEVICE FOR CODING AND DECODING IMAGES THROUGH VARIABLE SIZE MACROBLOCKS
US9532058B2 (en) * 2011-06-03 2016-12-27 Qualcomm Incorporated Intra prediction mode coding with directional partitions
US9807426B2 (en) * 2011-07-01 2017-10-31 Qualcomm Incorporated Applying non-square transforms to video data
CN102957907B (zh) * 2011-08-31 2016-06-29 华为技术有限公司 一种变换块位置信息的获取方法和模块
CN102970526B (zh) * 2011-08-31 2016-12-14 华为技术有限公司 一种获得变换块尺寸的方法和模块
CN103327339B (zh) * 2013-06-09 2016-08-10 深圳市云宙多媒体技术有限公司 一种帧内预测块划分的编码方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201143446A (en) * 2010-02-11 2011-12-01 Qualcomm Inc Video coding with large macroblocks
CN102215395A (zh) * 2010-04-09 2011-10-12 华为技术有限公司 一种视频编解码方法和装置
US20120147961A1 (en) * 2010-12-09 2012-06-14 Qualcomm Incorporated Use of motion vectors in evaluating geometric partitioning modes
CN102685487A (zh) * 2011-03-16 2012-09-19 华为技术有限公司 图像编解码方法、图像编解码设备及网络系统
US20130163664A1 (en) * 2011-12-22 2013-06-27 Qualcomm Incorporated Unified partition mode table for intra-mode coding
CN104284188A (zh) * 2014-10-11 2015-01-14 华为技术有限公司 预测块的划分方法、编码设备和解码设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3104605A4 *

Also Published As

Publication number Publication date
US10834398B2 (en) 2020-11-10
CN104284188A (zh) 2015-01-14
CN108307192A (zh) 2018-07-20
EP3104605A4 (en) 2017-04-26
CN104284188B (zh) 2018-03-13
EP3104605A1 (en) 2016-12-14
US20170078665A1 (en) 2017-03-16
US10230953B2 (en) 2019-03-12
US20190166366A1 (en) 2019-05-30

Similar Documents

Publication Publication Date Title
WO2016054975A1 (zh) 预测块的划分方法、编码设备和解码设备
US20200244986A1 (en) Picture prediction method and related apparatus
US20200260117A1 (en) Methods and Apparatuses for Coding and Decoding Depth Map
EP2850835B1 (en) Estimation, encoding and decoding of motion information in multidimensional signals through motion zones, and of auxiliary information through auxiliary zones
JP2017536002A (ja) 画像予測方法および関連装置
WO2016065872A1 (zh) 图像预测方法及相关装置
CN108271023A (zh) 图像预测方法和相关设备
WO2021093060A1 (zh) 一种视频编码方法、系统及设备
CN109076234A (zh) 图像预测方法和相关设备
JP7309884B2 (ja) クロマイントラ予測方法および装置、並びにコンピュータ記憶媒体
Werner et al. Hardware implementation of a full HD real-time disparity estimation algorithm
TWI802733B (zh) 透過階層式搜尋執行移動估算的電子電路以及電子裝置
CN106464882B (zh) 用于通过视频编码器处理视频帧的技术
US20200107026A1 (en) Intra-prediction for video coding using perspective information
US10187656B2 (en) Image processing device for adjusting computational complexity of interpolation filter, image interpolation method, and image encoding method
TWI637627B (zh) 用於視訊轉碼中經整合之後置處理與前置處理的系統、方法及電腦程式產品
CN114792290A (zh) 图像/视频处理
EP2773115A1 (en) Coding and decoding method, device, encoder, and decoder for multi-view video
US20240078713A1 (en) Texture coordinate prediction in mesh compression
US20230156222A1 (en) Grid-based patch generation for video-based point cloud coding
WO2024124432A1 (en) Enhanced single feature local directional pattern (ldp) -based video post processing
WO2016123783A1 (zh) 图像预测处理方法和相关设备
WO2024140684A1 (zh) 端云协同系统、编解码方法及电子设备
US20240087173A1 (en) Base mesh coding by using surface reflection symmetry
CN117014614A (zh) 一种编码模式确定方法、装置、设备及存储介质

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

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2015849357

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015849357

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE