WO2019001006A1 - 一种图像数据的编码、解码方法及装置 - Google Patents
一种图像数据的编码、解码方法及装置 Download PDFInfo
- Publication number
- WO2019001006A1 WO2019001006A1 PCT/CN2018/078498 CN2018078498W WO2019001006A1 WO 2019001006 A1 WO2019001006 A1 WO 2019001006A1 CN 2018078498 W CN2018078498 W CN 2018078498W WO 2019001006 A1 WO2019001006 A1 WO 2019001006A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- division
- preset
- sub
- coding tree
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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 picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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 a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/184—Methods 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 bits, e.g. of the compressed video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
Definitions
- the embodiments of the present invention relate to the field of image processing, and in particular, to a method and an apparatus for encoding and decoding image data.
- the video codec standard H.265 divides a frame of image into Coding Tree Units (CTUs) that do not overlap each other, and uses each CTU as the root node of a Quad-Tree (QT) according to QT.
- the structure recursively divides each CTU into several leaf nodes. Each node in the QT structure corresponds to an image area. If a node is no longer divided, the node is called a leaf node, and its corresponding image area forms a coding unit (CU). Therefore, H.265 can be considered as a process of dividing a CTU into a group of CUs.
- the division of the CTU into a group of CUs corresponds to a coding tree.
- the Joint Exploration Team on Future Video Coding (JVET) reference software Joint Exploration Model (JEM) proposed the QTBT division method, that is, the nodes in the first-level coding tree adopt the QT division method.
- the nodes in the second-level coding tree adopt the Binary Tree (BT) division method (the BT division method includes "horizontal dichotomy” and "vertical dichotomy”).
- BT Binary Tree
- the CTU is first divided according to the QT division manner to obtain a plurality of QT leaf nodes; the leaf nodes of the QT may be divided according to the BT division manner.
- the CU shape is more diverse and can better adapt to the content of the partial image.
- the encoding end device usually needs to calculate the Rate Distortion Cost (RD cost) for each partitioning method that the node can use, compare the calculated RD cost, and the smallest RD cost.
- the corresponding division mode is determined as the division manner of the node. Therefore, for each node, the coding end device needs to calculate the RD cost of multiple division modes, so that the coding complexity is high.
- the embodiment of the present application provides a method and an apparatus for encoding and decoding image data, which can solve the problem of high coding complexity.
- a method for decoding image data After obtaining a code stream including image data, the decoding end device obtains node partitioning mode information of the first-level coding tree and a second-level coding tree by parsing the code stream.
- the node division mode information where the node division mode information of the second-level coding tree indicates the division manner corresponding to the first node in the second-level coding tree, and the division manner corresponding to the first node is the candidate division manner set corresponding to the first node
- the candidate mode set corresponding to the first node is determined according to the first preset dividing condition, where the first preset dividing condition is used to indicate whether to limit the first node according to the target dividing manner, and the target dividing manner includes a horizontal binary At least one of a horizontal three-point, a vertical two-point, and a vertical three-point.
- the division manner corresponding to the first node of the second-level coding tree in the embodiment of the present application is one of the first preset division conditions, and the first preset division condition is used to indicate whether to limit the first division according to the target division manner.
- a node and the target division manner includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the number of division manners corresponding to the first node is decreased, The complexity of decoding is effectively reduced.
- the node division manner corresponding to the first-level coding tree is different from the node division manner corresponding to the second-level coding tree, and the node division manner corresponding to the first-level coding tree is Including quadtree partitioning, the node partitioning manner corresponding to the second-level coding tree includes binary tree partitioning and tri-tree partitioning.
- the foregoing first preset dividing condition includes a first preset dividing sub-condition, a second preset dividing sub-condition, and a third preset dividing sub-condition, At least one of four preset sub-conditions, fifth preset sub-conditions, sixth preset sub-conditions, seventh preset sub-conditions, eighth preset sub-conditions, and ninth predetermined sub-conditionskind.
- the first preset sub-condition is that if the aspect ratio of the image region corresponding to the first node is greater than or equal to the first preset threshold, the candidate partition mode set corresponding to the first node does not include the horizontal dichotomy and the horizontal triad,
- the aspect ratio of the image region corresponding to one node is a ratio of the width of the image region corresponding to the first node to the image region corresponding to the first node.
- the second preset dividing sub-condition is that if the aspect ratio of the image region corresponding to the first node is greater than or equal to the second preset threshold, the candidate partitioning mode set corresponding to the first node does not include the vertical binary and the vertical three-point,
- the aspect ratio of the image region corresponding to a node is a ratio of a height of the image region corresponding to the first node to a width of the image region corresponding to the first node.
- the third preset dividing sub-condition is that if the ratio of the area of the image area corresponding to the first node to the area of the image area corresponding to the leaf node of the first-level coding tree to which the first node belongs is less than or equal to a third preset threshold,
- the candidate partitioning mode set corresponding to the first node does not include a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the fourth preset partitioning sub-condition is that if the partitioning manner corresponding to the first node includes the first dividing manner, the decoding order of the first sub-node of the first node is later than the second sub-node of the first node, and the second sub-node corresponds to
- the division manner is the first division manner, and the candidate division manner set corresponding to the first sub-node does not include the first division manner, and the first division manner is a horizontal division or a vertical division.
- the fifth preset dividing sub-condition is that if the partitioning manner corresponding to the first node includes the second dividing manner, the area of the image region corresponding to the first child node of the first node is the area of the image region corresponding to the three child nodes of the first node.
- the smallest candidate, the candidate partition mode set corresponding to the first child node does not include the second partition mode, and the second partition mode is horizontal three-point or vertical three-point.
- the sixth preset partition sub-condition is that if the partitioning manner corresponding to the first node includes the second partitioning manner, the area of the image region corresponding to the first child node of the first node is the area of the image region corresponding to the three child nodes of the first node.
- the seventh preset partitioning sub-condition is that if the ratio of the width of the image region corresponding to the first node to the edge length of the preset minimum CU is less than or equal to the third preset threshold, the candidate partitioning mode set corresponding to the first node does not include the vertical If the ratio of the height of the image region corresponding to the first node to the edge length of the preset minimum CU is less than or equal to the third preset threshold, the candidate partition mode set corresponding to the first node does not include the horizontal three-point.
- the eighth preset sub-condition is that if the area of the image region corresponding to the first node is less than or equal to the fourth preset threshold, the candidate partition mode set corresponding to the first node does not include the horizontal dichotomy, the horizontal trisection, the vertical dichotomy, and the vertical Straight three points.
- the ninth preset sub-condition is that if the partitioning manner corresponding to the first node is the second partitioning mode, the area of the image region corresponding to the first sub-node of the first node is the area of the image region corresponding to the three sub-nodes of the first node. The largest one, the candidate partition mode set corresponding to the first sub-node does not include the first partition mode, and the first partition mode and the second partition mode have the same split direction.
- the node division manner information of the second level coding tree includes first information, second information, and third information, where the first information is used to indicate whether to continue to divide
- the first node is configured to indicate a direction in which the first node is divided
- the third information is used to indicate a mode in which the first node is divided.
- the method of “parsing the code stream and obtaining the node division mode information of the second-level coding tree” is: parsing the code stream, and determining, according to the first preset division condition, the candidate division mode set corresponding to the first node. And parsing the code stream according to the candidate partitioning mode set corresponding to the first node, and determining the first information, the second information, and the third information.
- the decoding end device acquires the first information, the second information, and the third information parsing method according to the candidate partitioning mode set corresponding to the first node, and the values of the first information, the second information, and the third information may be parsed from the code stream. Get it, it can also be preset for the system.
- the method for “resolving a code stream according to a first candidate node, and parsing a code stream, determining the first information, the second information, and the third information” is specifically Determining a first value, where the first value is a quantity of the division manner included in the candidate division manner set corresponding to the first node; and further analyzing the code stream according to the first value, determining the first information, the second information, and the third information .
- the candidate mode set corresponding to the node in the second-level coding tree may include at most fifteen types of division manners, and for the plurality of the fifteen division manners, obtaining the first information, the second information, and the third information
- the methods are the same or similar. Therefore, the decoding end device can determine the first information, the second information, and the third information according to the number of division modes (level first value) included in the candidate mode set corresponding to the first node, so that the decoding end device can be faster.
- the node division mode information of the second-level coding tree is determined.
- the node division manner corresponding to the second-level coding tree further includes a quad-tree partition.
- the method of “analysing the code stream and obtaining the node division mode information of the second-level coding tree” is: parsing the code stream, and obtaining node division mode information of the second-level coding tree, where the node of the second-level coding tree is obtained.
- the division mode information indicates a division manner corresponding to the first node in the second-level coding tree, and the division manner corresponding to the first node is one of the candidate division manners corresponding to the first node, and the candidate mode set corresponding to the first node is And determining, according to the first preset dividing condition and the second preset dividing condition, the second preset dividing condition is used to indicate whether to limit the dividing the first node according to the quadtree division.
- the foregoing second preset splitting condition includes at least one of a tenth preset split sub-condition and an eleventh preset split sub-condition.
- the tenth preset sub-condition is that if the second-level coding tree level of the first node is smaller than the preset maximum second-level coding tree level, the candidate partition mode set corresponding to the first node does not include the quad-tree partition.
- the eleventh preset sub-condition is that if the aspect ratio of the image region corresponding to the first node is greater than or equal to the fifth preset threshold, the candidate partition mode set corresponding to the first node does not include the quadtree partition.
- the node division manner information of the second level coding tree further includes fourth information, where the fourth information is used to indicate whether to divide the first node according to the quadtree division .
- the method of “resolving the code stream and obtaining the node division mode information of the second-level coding tree” is: parsing the code stream, and determining, according to the first preset division condition and the second preset division condition, the first node corresponding to the first node a candidate partitioning mode set; parsing the code stream according to the partitioning manner corresponding to the first node, and determining the first information, the second information, the third information, and the fourth information.
- the information wherein the node division mode information of the second-level coding tree indicates a division manner corresponding to the first node in the second-level coding tree, and the division manner corresponding to the first node is one of the candidate division manners corresponding to the first node.
- the first preset partitioning condition is used to indicate whether to limit the first node according to the target partitioning manner, and the target dividing manner includes horizontal dichotomy and level three.
- the root node of the second-level coding tree is a leaf node of the first-level coding tree , If the first node and a corresponding division mode is not to continue dividing, parsing code stream to obtain the encoded information of the first node, wherein the first node corresponds to a coding unit CU.
- the decoding reconstruction module is configured to perform decoding and reconstruction on the coding unit according to the coding information of the first node obtained by the analysis module, to obtain an image corresponding to the image data.
- the node division manner corresponding to the first-level coding tree is different from the node division manner corresponding to the second-level coding tree, and the node division manner corresponding to the first-level coding tree is Including quadtree partitioning, the node partitioning manner corresponding to the second-level coding tree includes binary tree partitioning and tri-tree partitioning.
- the node division manner corresponding to the first-level coding tree includes a quad-tree division
- the node division manner corresponding to the second-level coding tree includes a binary tree division and a tri-tree division .
- the node division manner information of the second-level coding tree includes first information, second information, and third information, where the first information is used to indicate whether to continue to divide A node, the second information is used to indicate the direction in which the first node is divided, and the third information is used to indicate the mode in which the first node is divided.
- the parsing module is specifically configured to parse the code stream, and determine, according to the first preset partitioning condition, a candidate partitioning mode set corresponding to the first node, and specifically configured to use the candidate partitioning mode set corresponding to the first node, and parse the code. Flow, determining the first information, the second information, and the third information.
- the foregoing parsing module is specifically configured to determine a first value, where the first value is a quantity of the division manner included in the candidate division manner set corresponding to the first node, and Specifically, the code stream is parsed according to the first value, and the first information, the second information, and the third information are determined.
- the node division manner corresponding to the second-level coding tree further includes a quad-tree partition.
- the parsing module is specifically configured to parse the code stream, and obtain node partitioning mode information of the second-level coding tree, where the node partitioning mode information of the second-level coding tree indicates that the first node in the second-level coding tree corresponds to
- the division manner of the first node is one of the candidate division manners corresponding to the first node, and the candidate mode set corresponding to the first node is determined according to the first preset division condition and the second preset division condition.
- the second preset division condition is used to indicate whether to limit the division of the first node according to the quadtree division.
- the node division manner information of the second level coding tree further includes fourth information, where the fourth information is used to indicate whether to divide the first node according to the quadtree division .
- the parsing module is specifically configured to parse the code stream, and determine, according to the first preset partitioning condition and the second preset partitioning condition, a candidate partitioning mode set corresponding to the first node, and specifically used according to the first node The division manner, parsing the code stream, and determining the first information, the second information, the third information, and the fourth information.
- first preset division condition in the second aspect reference may be made to the description of the first preset division condition in the foregoing first aspect.
- second preset division condition in the second aspect may refer to the foregoing first aspect.
- a decoding end device comprising: one or more processors, a memory, and a communication interface.
- the memory, communication interface is coupled to one or more processors; the memory is for storing computer program code, the computer program code comprising instructions, and when the one or more processors execute the instructions, the decoding device performs the first and any A possible implementation of a method of decoding image data.
- a computer readable storage medium stores instructions, wherein when the instruction is run on the decoding device, the decoding device performs the first aspect and any of the above A possible implementation of a method of decoding image data.
- a computer program product comprising instructions for causing a decoding end device to perform decoding of image data as in the first aspect and any one of its possible implementations is provided when the computer program product is run on a decoding end device method.
- the name of the above-mentioned decoder device is not limited to the device or the function module itself. In actual implementation, these devices or function modules may appear under other names. As long as the functions of the respective devices or functional modules are similar to the present application, they are within the scope of the claims and their equivalents.
- a method for decoding image data After determining a CTU corresponding to an image block to be encoded, the encoding end device divides the CTU according to a node division manner corresponding to the first-level coding tree, to obtain a first-level coding.
- the encoding end device determines a candidate partition mode set corresponding to the first node in the second level coding tree, and the candidate partition mode set corresponding to the first node And satisfying a first preset dividing condition for indicating whether to limit the first node according to the target dividing manner, the target dividing manner includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad, and the second level
- the root node of the coding tree is a leaf node of the first level coding tree; if the candidate partition mode set corresponding to the first node includes not continuing to divide, the coding end device encodes the coding unit corresponding to the first node to obtain a corresponding coding.
- the first preset division condition in the embodiment of the present application limits the division manner of the nodes in the second-level coding tree, greatly reduces the complexity of dividing the nodes in the second-level coding tree, and reduces the coding complexity.
- the node division manner corresponding to the first-level coding tree includes a quad-tree division
- the node division manner corresponding to the second-level coding tree includes a binary tree division and a tri-tree division.
- the node division manner corresponding to the second-level coding tree further includes a quad-tree partition.
- the method for determining the candidate partitioning mode set corresponding to the first node in the second-level coding tree is: determining the candidate partitioning mode set corresponding to the first node, and the candidate partitioning mode set corresponding to the first node satisfies the first And a second preset dividing condition for indicating whether to limit the dividing the first node according to the quadtree partitioning.
- the first preset division condition in the sixth aspect may be referred to the description of the first preset division condition in the foregoing first aspect.
- the second preset division condition in the sixth aspect may refer to the foregoing first aspect.
- an encoding end device includes a determining module, a dividing module, and an encoding module.
- the determining module is configured to determine a coding tree unit CTU corresponding to the image block to be encoded.
- the dividing module is configured to divide the CTU determined by the determining module according to a node partitioning manner corresponding to the first-level coding tree, to obtain a leaf node of the first-level coding tree, where the root node of the first-level coding tree corresponds to the CTU.
- the determining module is further configured to determine a candidate partitioning mode set corresponding to the first node in the second-level coding tree, where the candidate partitioning mode set corresponding to the first node meets the first preset dividing condition, and the first preset dividing condition is used for Indicate whether to limit the first node according to the target division manner, and the root node of the second-level coding tree is a leaf node of the first-level coding tree, and the target division manner includes horizontal dichotomy, horizontal three-point, vertical dichotomy, and vertical three-point At least one of them.
- the coding module is configured to: if the set of candidate division modes corresponding to the first node determined by the determining module includes not continuing to divide, coding the coding unit CU corresponding to the first node to obtain a coding unit code stream corresponding to the coding unit.
- the node division manner corresponding to the first-level coding tree includes a quad-tree division
- the node division manner corresponding to the second-level coding tree includes a binary tree division and a tri-tree division.
- the node division manner corresponding to the second-level coding tree further includes a quad-tree partition.
- the determining module is specifically configured to determine a candidate partitioning mode set corresponding to the first node, where the candidate partitioning mode set corresponding to the first node meets the first preset dividing condition and the second preset limiting condition, and the second preset dividing The condition is used to indicate whether to limit the division of the first node according to the quadtree partition.
- the encoding end device provided by the embodiment of the present application further includes a calculating module, where the calculating module is configured to: if the determining module determines the candidate partitioning mode set corresponding to the first node Including other division modes other than continuing the division, the rate distortion cost of each of the division manners that the first node can use is calculated.
- the determining module is further configured to determine a partitioning manner corresponding to a minimum rate distortion cost as a target partitioning manner corresponding to the first node.
- the foregoing dividing module is specifically configured to divide the first node by using a target dividing manner corresponding to the first node determined by the determining module.
- the first preset division condition in the seventh aspect may be referred to the description of the first preset division condition in the foregoing first aspect.
- the second preset division condition in the seventh aspect may refer to the foregoing first aspect.
- an encoding end device comprising: one or more processors, a memory, and a communication interface.
- the memory, communication interface is coupled to one or more processors; the memory is for storing computer program code, the computer program code comprising instructions, and when the one or more processors execute the instructions, the encoding end device performs the sixth aspect as described above An encoding method of image data of any of the possible implementations.
- a computer readable storage medium stores instructions, wherein when the instruction is run on the encoding end device, the encoding end device performs the sixth aspect and any of the foregoing A possible implementation of an encoding method of image data.
- a computer program product comprising instructions for causing an encoding end device to perform encoding of image data as in the sixth aspect and any one of its possible implementations when the computer program product is run on an encoding device method.
- the names of the above-mentioned encoding end devices are not limited to the devices or the functional modules themselves. In actual implementation, these devices or functional modules may appear under other names. As long as the functions of the respective devices or functional modules are similar to the present application, they are within the scope of the claims and their equivalents.
- FIG. 1 is a schematic structural diagram of different division manners provided by an embodiment of the present application.
- FIG. 2 is a schematic structural diagram of a quadtree hierarchy according to an embodiment of the present application.
- FIG. 3 is a schematic diagram of a combined division of a quadtree partition and a binary tree partition according to an embodiment of the present disclosure
- FIG. 4 is a schematic structural diagram of an image processing system according to an embodiment of the present application.
- FIG. 5 is a schematic structural diagram of hardware of a mobile phone according to an embodiment of the present application.
- FIG. 6 is a schematic flowchart 1 of a method for decoding image data according to an embodiment of the present application.
- FIG. 7 is a second schematic flowchart of a method for decoding image data according to an embodiment of the present disclosure.
- FIG. 8 is a schematic flowchart of a method for encoding image data according to an embodiment of the present disclosure
- FIG. 9 is a schematic structural diagram of a decoding end device according to an embodiment of the present disclosure.
- FIG. 10 is a schematic structural diagram of an encoding end device according to an embodiment of the present disclosure.
- the words “exemplary” or “such as” are used to mean an example, illustration, or illustration. Any embodiment or design described as “exemplary” or “for example” in the embodiments of the present application should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of the words “exemplary” or “such as” is intended to present the concepts in a particular manner.
- Coding Tree Unit An image consists of multiple CTUs. One CTU usually corresponds to a square image area. As shown in Figure 1(a), image 10 consists of multiple CTUs (including CTU A). , CTU B, CTU C, etc.).
- the coding information corresponding to a certain CTU includes luminance values and/or chrominance values of pixels in a square image region corresponding to the CTU. Furthermore, the coding information corresponding to a certain CTU may further include syntax elements indicating how to divide the CTU into at least one CU, and a method of decoding each CU to obtain a reconstructed image.
- An image area corresponding to one CTU may include 64 ⁇ 64, 128 ⁇ 128, or 256 ⁇ 256 pixels.
- a CTU of 64x64 pixels contains a rectangular pixel lattice of 64 columns of 64 pixels per column, each pixel containing a luminance component and/or a chrominance component.
- CU Coding Unit
- A is the width of the rectangle
- B is the height of the rectangle.
- the width referred to in the embodiment of the present application refers to the width shown in FIG. 1 .
- the length in the X-axis direction (horizontal direction) in the two-dimensional Cartesian coordinate system XoY, the height refers to the length in the Y-axis direction (vertical direction) in the two-dimensional Cartesian coordinate system XoY shown in FIG.
- the values of A and B may be the same or different.
- the values of A and B are usually an integer power of 2, for example: 256, 128, 64, 32, 16, 8, or 4.
- a CU can obtain a reconstructed image block of an A ⁇ B rectangular region by decoding processing, and the decoding process usually includes processing such as prediction, dequantization, and inverse transform to generate a predicted image and a residual.
- the reconstructed image block is obtained by superimposing the predicted image and the residual.
- a plurality of reconstructed image blocks can be used to obtain a final reconstructed image.
- Quad-Tree A tree structure in which one node can be divided into four sub-nodes.
- the video codec standard H.265 adopts a quadtree-based CTU partitioning method: a CTU is used as a root node, and each node corresponds to a square image area; for a node, the node can no longer be divided ( At this time, the square image area corresponding to the node is a CU), and the node may be divided into four lower level nodes, that is, the square image area corresponding to the node is divided into four square areas of the same size (the width thereof) The height is half of the width and height of the front area, and each area corresponds to one node.
- CTU A is the root node, and CTU A is divided into four nodes a, b, c, and d. If the node a is not divided, the square image area corresponding to node a corresponds to one CU.
- the image area corresponding to the node is divided into upper and lower areas of the same size, that is, the width of the divided image area remains unchanged, and the height becomes half of the divided image area, and each divided image area corresponds to A child node.
- the node b is divided by a horizontal binary division method to generate a node e and a node f.
- the area corresponding to the node is divided into left and right areas of the same size, that is, the height of the divided image area remains unchanged, the width becomes half of the divided image area, and each divided image area corresponds to one Child node.
- the node d is divided by a vertical binary division method to generate a node g and a node h.
- horizontal dichotomy and vertical dichotomy are an example of the manner in which the binary tree is divided.
- the image area corresponding to the node may be divided into two sub-areas in another manner.
- two high unequal sub-regions are horizontally divided, or vertically divided into two unequal regions.
- Triple Tree A tree structure in which one node can be divided into three child nodes.
- the node may not be divided, or the node may be divided into three lower-level nodes.
- the trigeminal division can include:
- the image area corresponding to the node is divided into upper, middle and lower regions, and each region corresponds to one child node.
- the heights of the upper, middle, and lower regions are respectively 1/4, 1/2, and 1/4 of the height of the image region before division.
- the node c is divided by a horizontal three-division method to generate a node j, a node k, and a node m.
- the height of the image region corresponding to the node j is the height 1/4 of the image region corresponding to the node c.
- the height of the image area corresponding to the node k is 1/2 of the height of the image area corresponding to the node c
- the height of the image area corresponding to the node m is 1/4 of the height of the image area corresponding to the node c.
- the heights of the upper, middle, and lower regions are respectively 1/3, 1/3, and 1/3 of the height of the image region before the division, that is, the image region corresponding to the node is as shown in FIG.
- the direction of the X-axis in the two-dimensional Cartesian coordinate system XoY is equally divided into three regions. As shown in Fig.
- the node c is divided by a horizontal three-division method to generate a node j, a node k, and a node m.
- the height of the image region corresponding to the node j and the height of the image region corresponding to the node k correspond to the node m.
- the height of the image area is 1/3 of the height of the image area corresponding to the node c.
- the image area corresponding to the node is divided into three areas of left, middle and right, each area corresponding to one child node.
- the widths of the left, middle, and right image regions are respectively 1/4, 1/2, and 1/4 of the width of the image region before division.
- the node c is divided by a vertical three-division method to generate a node p, a node q, and a node x.
- the width of the image region corresponding to the node p is the width of the image region corresponding to the node c. 4.
- the width of the image area corresponding to the node q is 1/2 of the width of the image area corresponding to the node c
- the width of the image area corresponding to the node x is 1/4 of the width of the image area corresponding to the node c.
- the heights of the left, middle, and right image regions are respectively 1/3, 1/3, and 1/3 of the height of the image region before the division, that is, the image region corresponding to the node is shown in FIG.
- the direction of the X-axis in the two-dimensional Cartesian coordinate system XoY is equally divided into three regions. As shown in FIG.
- the node c is divided by a vertical three-division method to generate a node p, a node q, and a node x, the width of the image region corresponding to the node p, the width of the image region corresponding to the node q, and the node x.
- the width of the corresponding image area is 1/3 of the width of the image area corresponding to the node c.
- Image encoding The process of compressing a sequence of images into a stream of code.
- Image decoding The process of restoring a code stream into a reconstructed image according to specific grammar rules and processing methods.
- the video codec standard H.265 uses the QT partitioning method to divide the CTU. Specifically, the CTU is used as the root node (root) of the QT structure, and the CTU is recursively divided into a plurality of leaf nodes according to the QT division manner. If a node is no longer split, the node is called a leaf node.
- an image is composed of a plurality of CTUs, and one CTU corresponds to a square image area, that is, one CTU corresponds to one image block.
- Each leaf node corresponds to one CU, and each CU is equivalent to a certain sub-image block in the image block corresponding to the CTU, and the sub-image block can no longer be divided by using the QT division manner. If it is necessary to continue to divide a certain node, the image area corresponding to the node is divided into four image areas of the same size. Referring to FIG. 1(b), after the image area corresponding to the node is divided, each generated after the division is generated. Each image area corresponds to a node, and it is also necessary to determine whether these nodes will continue to be divided. Whether a node is divided is indicated by a partition flag bit (such as split_cu_flag) corresponding to the node in the code stream.
- the level of the root node in the QT structure (referred to as the QT level) is 0, and the QT level of the child node generated by the QT partitioning method is 1 for the QT level of the parent node of the child node.
- split_cu_flag indicates that the node is no longer divided
- the CTU node is divided into four 32 ⁇ 32 nodes (QT level is 1), and the fourth The 32 ⁇ 32 nodes are node A1, node A2, node A3, and node A4, respectively.
- Each of the four 32 ⁇ 32 nodes can choose to continue dividing or not to continue dividing according to its corresponding split_cu_flag.
- the node A1 is further divided, and the node A1 is divided into four 16 ⁇ 16 nodes (the QT level is 2), and the four 16 ⁇ 16 nodes are the node B1 and the node B2, respectively. , node B3, and node B4. And so on, until all nodes are no longer divided, so that a CTU is divided into a group of CUs.
- the minimum size of each CU ie, the minimum size of the CU
- the minimum size of the CU is identified in the Sequence Parameter Set (SPS) of the code stream, for example, 8 ⁇ 8.
- the CU is the smallest CU.
- FIG. 3(a) is an example of a coding tree.
- a coding tree may correspond to only one division, such as a quadtree; or it may correspond to multiple divisions, such as the aforementioned QTBT structure and the QT-BT/TT structure described below.
- the first level coding tree, the second level coding tree, the third level coding tree, ..., the Nth coding tree respectively correspond to a set of different division modes, and N is a positive integer greater than 3.
- the set of different division manners may be a type of a certain tree, such as a trigeminal tree, a binary tree, or a quadtree; or a collection of division manners in the same tree type, such as horizontal dichotomy, vertical dichotomy, etc.; It can also be a combination of the two. It can be understood that a coding tree does not need to include multiple different levels of coding trees at the same time.
- a coding tree may only include a first-level coding tree; or a coding tree may include first-level and second-level coding trees; or a coding tree may include a first-level coding tree, a second-level coding tree, and a A three-level coding tree.
- the first level coding tree may comprise a division of a quadtree
- the second level coding tree may comprise a division of a binary tree and a division of a trifurcation tree.
- the first level coding tree may comprise a division of a quadtree
- the second level coding tree may comprise a division of a binary tree, a division of a trigeminal tree and a quadtree.
- the first level coding tree may include a partition of a quadtree and a division of a binary tree
- the second level coding tree includes a division of a trifurcation tree
- the first level coding tree may comprise a division of a quadtree
- the second level coding tree may comprise a division of a binary tree
- the third level coding tree may comprise a division of a triblock tree.
- the first level coding tree may comprise a horizontal binary
- the second level coding tree may comprise vertical binary and quadtree partitioning
- the third level coding tree may comprise vertical three and horizontal three.
- the second level coding tree may also include other division manners, which is not specifically limited in this embodiment of the present application.
- the coding end device usually adopts Rate Distortion Optimization (RDO) technology to determine which coding tree coding is used by the CTU. Specifically, for each node, the encoding end device calculates a Rate Distortion Cost (RD cost) for each of the partitioning modes that the node can use, compares the calculated RD cost, and corresponds to the minimum RD cost. The division method is determined as the division mode of the node.
- RDO Rate Distortion Optimization
- the level of a node in the BT structure is called the BT level, and the BT level of the child node generated by the BT partitioning method is 1 for the BT level of the parent node of the child node. If the BT level of a node is equal to the maximum BT level, it is determined that the node is no longer divided. In general, the largest BT level in the BT structure is identified in the SPS.
- the BT division mode is introduced on the basis of the QT division mode, wherein the QT division manner and the BT division manner are cascaded, and the division manner is called a QTBT division manner.
- the CTU is divided according to the QT division manner, and the leaf nodes of the QT can continue to be divided by the BT division manner, that is, the first-level coding tree is QT, and the second-level coding tree is BT.
- each endpoint represents a node
- the solid line indicates that the node is divided by QT division
- the dotted line indicates that the node is divided by BT division
- a to M are 13 leaf nodes, and each leaf node corresponds to 1 CU.
- 10 represents a vertical dichotomy
- 11 represents a horizontal dichotomy.
- Fig. 3(b) shows an image area corresponding to the CTU divided according to the division manner shown in Fig. 3(a).
- each CU has a QT level and a BT level.
- the QT level of the CU is the QT level of the QT leaf node to which the CU belongs
- the BT level of the CU is the BT level of the BT leaf node to which the CU belongs. If the CTU is not divided, that is, there is only one CU, the QT level of the CU is 0, and the BT level is 0.
- the QT level of A and B is 1, and the BT level is 2; the QT level of C, D, and E is 1, and the BT level is 1; the QT level of F, K, and L is 2, the BT level is 1; the QT level of I and J is 2, the BT level is 0; the QT level of G and H is 2, the BT level is 2; the QT level of M is 1, and the BT level is 0.
- the CU shape is more diverse and can better adapt to the content of the partial image.
- All CUs generated by the QT partitioning method in the H.265 standard can only be square, that is, the width of the CU is equal to the height of the CU.
- the width and height of the CU may be different.
- the aspect ratio (the value is equal to the width divided by the height) is 2, 4, 8, 16, 1/2, 1/4. 1/8 or 1/16.
- the width and height of all CUs cannot be smaller than the side length of the minimum CU (for example, the minimum CU can be set to 4 ⁇ 4).
- the SPS of a video stream contains the size information of the smallest CU.
- a QT-BT/TT division mode may also be included, that is, nodes in the first-level coding tree use QT division mode, and nodes in the second-level coding tree may use BT division mode or TT division.
- the CTU is a root node of the first-level coding tree, and the CTU is divided into QT division manners to generate a plurality of leaf nodes of the first-level coding tree; and the leaf node of the first-level coding tree is used as the second-level coding tree.
- the root node divides the nodes in the second-level coding tree by BT partitioning (including horizontal binary and vertical binary) or TT partitioning (including horizontal three-point and vertical three-point) to generate several second-level coding trees.
- Leaf node is a root node of the first-level coding tree, and the CTU is divided into QT division manners to generate a plurality of leaf nodes of the first-level coding tree; and the leaf node of the first-level coding tree
- the encoding end device usually needs to calculate the RD cost of each partitioning mode that the node can use, compare the calculated RD cost, and determine the partitioning mode corresponding to the minimum RD cost as the node's The way of division.
- the TT division mode can also be used. Therefore, for each node in the second-level coding tree, the coding end devices are used. It is necessary to calculate the RD cost of the four division methods (horizontal, vertical, horizontal, and vertical) to determine the actual division of each node in the second-level coding tree.
- the coding complexity is high.
- the embodiment of the present application provides a method for decoding image data. After obtaining a code stream including image data, the decoding end device obtains information about node partitioning manner of the first-level coding tree and second by analyzing the code stream.
- the node division mode information of the level coding tree where the node division mode information of the second level coding tree indicates the division manner corresponding to the first node in the second level coding tree, and the corresponding division manner of the first node is corresponding to the first node.
- One of the candidate partitioning mode sets, the candidate mode set corresponding to the first node is determined according to the first preset dividing condition, and the first preset dividing condition is used to indicate whether to limit the first node according to the target dividing manner, and the target dividing
- the method includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad. If the division manner corresponding to the first node is not to continue to be divided, the decoding end device obtains the coding of the first node by parsing the code stream.
- the first node corresponds to one coding unit CU, so that the decoding end device can be based on the coding information of the first node, Encoding means for decoding reconstructed to obtain an image corresponding to the image data.
- the root node of the first-level coding tree corresponds to one CTU
- the leaf node of the first-level coding tree is performed by the node division manner corresponding to the node division mode information of the first-level coding tree and the root node of the first-level coding tree.
- the root node of the second level coding tree is a leaf node of the first level coding tree.
- the division manner corresponding to the first node of the second-level coding tree in the embodiment of the present application is one of the first preset division conditions, and the first preset division condition is used to indicate whether to limit the first division according to the target division manner.
- a node and the target division manner includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the number of division manners corresponding to the first node is decreased, The complexity of decoding is effectively reduced.
- the embodiment of the present application further provides an encoding method of image data, after the encoding end device determines the CTU corresponding to the image block to be encoded, the CTU is divided according to the node division manner corresponding to the first-level coding tree, a leaf node of the first level coding tree, where the root node of the first level coding tree corresponds to the CTU; the coding end device determines a candidate division mode set corresponding to the first node in the second level coding tree, where the first node corresponds
- the candidate partition mode set satisfies a first preset partitioning condition for indicating whether to limit the first node according to the target partitioning manner, and the target dividing manner includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the root node of the second-level coding tree is a leaf node of the first-level coding tree. If the candidate partition mode set corresponding to the first node includes not continuing to divide, the coding end device encodes the coding unit corresponding to the first node. And obtaining a coding unit code stream corresponding to the coding unit.
- the first preset division condition in the embodiment of the present application limits the division manner of the nodes in the second-level coding tree, greatly reduces the complexity of dividing the nodes in the second-level coding tree, and reduces the coding complexity.
- FIG. 4 is a schematic structural diagram of an image processing system according to an embodiment of the present application.
- the image processing system includes an encoding end device 40 and a decoding end device 41.
- the encoding end device 40 and the decoding end device 41 may be independently configured or integrated in the same device, which is not specifically limited in this embodiment of the present application.
- the encoding end device 40 and the decoding end device 41 are independently set as an example. For the convenience of description, the following description will be made by taking the independent setting of the encoding end device and the decoding end device as an example.
- the encoding end device 40 processes the CTU corresponding to each image in the image according to the division manner of the first-level coding tree and the division manner of the second-level coding tree, where If the candidate partitioning mode set corresponding to the first node in the second-level coding tree includes not continuing to divide, the encoding end device 40 encodes the coding unit corresponding to the first node, and obtains a coding unit code stream corresponding to the coding unit; After the coding unit code stream corresponding to each node of the second-level coding tree, the encoding end device 40 acquires the CTU code stream, and sends the CTU code stream to the decoding end device 41; the decoding end device 41 parses the acquired CTU code. The stream obtains the division mode information of the nodes of the second-level coding tree, and performs corresponding processing according to the division manner information of the nodes of the second-level coding tree to obtain the reconstructed image.
- Both the encoding end device 40 and the decoding end device 41 may be various devices configured with a camera (such as a front camera or a rear camera), for example, the encoding end device and the decoding end device are wearable electronic devices (such as smart watches, etc.) ), Polaroid, can also be the mobile phone shown in Figure 5, but also can be a tablet, desktop computer, virtual reality device, laptop, ultra-mobile personal computer (UMPC), personal digital assistant ( Personal Digital Assistant (PDA), etc., the specific form of the encoding end device 40 and the decoding end device 41 is not particularly limited in the embodiment of the present application.
- UMPC ultra-mobile personal computer
- PDA Personal Digital Assistant
- both the encoding end device 40 and the decoding end device 41 in this embodiment may be mobile phones.
- the embodiment will be specifically described below by taking a mobile phone as an example.
- the illustrated mobile phone is only one example of the encoding end device 40 and the decoding end device 41, and the mobile phone may have more or fewer components than those shown in the figure, and two or more may be combined. Parts, or can have different part configurations.
- the various components shown in FIG. 5 may be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and/or application specific integrated circuits.
- the mobile phone includes an RF (Radio Frequency) circuit 50, a memory 51, an input unit 52, a display unit 53, a sensor 54, an audio circuit 55, and a Wireless Fidelity (Wi-Fi) module 56.
- the processor 57, the Bluetooth module 58, and the power source 59 and the like It will be understood by those skilled in the art that the structure of the handset shown in FIG. 5 does not constitute a limitation to the handset, and may include more or less components than those illustrated, or some components may be combined, or different components may be arranged.
- the RF circuit 50 can be used for transmitting and receiving information or during a call, and receiving and transmitting signals.
- the downlink information of the base station can be received and processed by the processor 57.
- the data related to the uplink is sent to the base station.
- RF circuitry includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, and the like.
- RF circuitry 50 can also communicate with the network and other mobile devices via wireless communication.
- the wireless communication can use any communication standard or protocol, including but not limited to global mobile communication systems, general packet radio services, code division multiple access, wideband code division multiple access, long term evolution, email, short message service, and the like.
- the memory 51 can be used to store software programs and data.
- the processor 57 executes various functions and data processing of the mobile phone by running software programs and data stored in the memory 51.
- the memory 51 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to Data created by the use of the mobile phone (such as audio data, phone book, video, etc.).
- the memory 51 may include a high speed random access memory, and may also include a nonvolatile memory such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
- the memory 51 stores an operating system that enables the mobile phone to operate, such as developed by Apple. Operating system, developed by Google Inc. Open source operating system, developed by Microsoft Corporation Operating system, etc.
- An input unit 52 such as a touch screen, can be used to receive input numeric or character information and to generate signal inputs related to user settings and function controls of the handset.
- the input unit 52 can include a touch screen 521 and other input devices 522.
- the touch screen 521 also referred to as a touch panel, can collect touch operations on or near the user (eg, the user operates on or near the touch screen 521 using any suitable object or accessory such as a finger, a stylus, or the like. ), and drive the corresponding connection device according to a preset program.
- the touch screen 521 may include two parts (not shown in FIG. 5) of the touch detecting device and the touch controller.
- the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information.
- the processor 57 is provided and can receive instructions from the processor 57 and execute them.
- the touch screen 521 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
- the display unit 53 (ie, the display screen) can be used to display information input by the user or information provided to the user and a graphical user interface (GUI) of various menus of the mobile phone.
- the display unit 53 may include a display panel 531 disposed on the front of the mobile phone.
- the display panel 531 can be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
- the touch screen 521 can cover the display panel 531. When the touch screen 521 detects a touch operation on or near it, the touch screen 521 transmits to the processor 57 to determine the type of the touch event, and then the processor 57 displays the panel according to the type of the touch event.
- the touch screen 521 can also be provided with a pressure sensing sensor, so that when the user performs a touch operation on the touch panel, the touch panel can also detect the pressure of the touch operation, and the mobile phone can be more accurate. The touch operation is detected.
- the handset may also include at least one type of sensor 54, such as a light sensor, motion sensor, and other sensors.
- the light sensor may include an ambient light sensor and a proximity sensor, and the ambient light sensor may adjust the brightness of the display panel 531 according to the brightness of the ambient light, and the proximity light sensor is disposed on the front side of the mobile phone, when the mobile phone moves to the ear, according to Close to the detection of the light sensor, the mobile phone turns off the power of the display panel 531, so that the mobile phone can further save power.
- the accelerometer sensor can detect the acceleration of each direction (usually three axes). When it is still, it can detect the magnitude and direction of gravity.
- Other sensors such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors that can be configured on the mobile phone are not described here.
- An audio circuit 55, a speaker 551, and a microphone 552 provide an audio interface between the user and the handset.
- the audio circuit 55 can transmit the converted electrical data of the received audio data to the speaker 551, and is converted into a sound signal output by the speaker 551.
- the microphone 552 converts the collected sound signal into an electrical signal, and the audio circuit 55 is used by the audio circuit 55. After receiving, it is converted into audio data, and then the audio data is output to the RF circuit 50 for transmission to, for example, another mobile phone, or the audio data is output to the memory 51 for further processing.
- Wi-Fi is a short-range wireless transmission technology.
- the mobile phone can help users to send and receive emails, browse web pages and access streaming media through the Wi-Fi module 56, which provides users with wireless broadband Internet access.
- the processor 57 is a control center of the mobile phone, and connects various parts of the entire mobile phone by using various interfaces and lines, and executes various kinds of mobile phones by running or executing a software program stored in the memory 51 and calling data stored in the memory 51. Function and process data to monitor the phone as a whole.
- processor 57 may include one or more processing units; processor 57 may also integrate an application processor and a modem processor, where the application processor primarily processes operating systems, user interfaces, applications, etc.
- the modem processor primarily handles wireless communications. It can be understood that the above modem processor can also be independently set.
- the Bluetooth module 58 is configured to exchange information with other devices through a short-range communication protocol such as Bluetooth.
- the mobile phone can establish a Bluetooth connection through the Bluetooth module 58 and a wearable electronic device (such as a smart watch) that also has a Bluetooth module, thereby performing data interaction.
- the handset also includes a power source 59 (such as a battery) that powers the various components.
- the power supply can be logically coupled to the processor 57 through the power management system to manage functions such as charging, discharging, and power consumption through the power management system.
- FIG. 6 is a schematic flowchart diagram of a method for decoding image data according to an embodiment of the present application, and the decoding method can be applied to the image processing system shown in FIG. 4.
- the decoding method of the image data includes:
- the decoding end device obtains a code stream that includes image data.
- the code stream that includes the image data obtained by the decoding device includes a Sequence Parameter Set (SPS), a Picture Parameter Set (PPS), a slice header, or a slice header ( A slice segment header), and a CTU code stream, the CTU code stream carries image data.
- SPS Sequence Parameter Set
- PPS Picture Parameter Set
- slice header or a slice header ( A slice segment header)
- CTU code stream the CTU code stream carries image data.
- the decoding end device decodes the obtained code stream to obtain node division manner information of the first-level coding tree.
- the root node of the first-level coding tree corresponds to a CTU, and the leaf node of the first-level coding tree is indicated by the node division manner corresponding to the node division mode information of the first-level coding tree and the root node of the first-level coding tree.
- the node division manner corresponding to the first-level coding tree includes quadtree partitioning.
- the decoding end device After obtaining the code stream, the decoding end device parses the CTU code stream in the code stream to obtain node partitioning information of the first level coding tree.
- the method for the decoding end device to parse the CTU code stream to obtain the node partitioning information of the first level coding tree may be: the decoding end device uses the CTU as the root node of the first level coding tree, parses the CTU code stream, and obtains the CTU.
- the first identifier (such as SplitFlag) included in the syntax element of the code stream is used to indicate how to divide the CTU into at least one CU, that is, the first identifier indicates node division manner information of the first-level coding tree.
- the node corresponding to the SplitFlag is a leaf node of the first-level coding tree; if the value of a SplitFlag is 1, the node corresponding to the SplitFlag is continuously obtained. SplitFlag of the four child nodes until the information of all leaf nodes of the first level coding tree is determined.
- the width of the image region corresponding to a certain node is equal to the first threshold (for example, the first threshold is 8 or 16)
- the node is a leaf node of the first-level coding tree
- the SplitFlag corresponding to the node is The value is 0.
- the method for the decoding end device to parse the CTU code stream to obtain the node partitioning information of the first level coding tree may also be: the decoding end device uses the CTU as the root node of the first level coding tree, parses the CTU code stream, and obtains the a second identifier (such as NSFlag) included in the syntax element of the CTU code stream for indicating whether to divide the node of the first level coding tree; if the value of the second identifier is the first value (for example, 1), The node corresponding to the second identifier is a leaf node of the first-level coding tree, and is also a second-level coding leaf node; if the value of the second identifier is a second value (for example, 0), acquiring the third identifier included in the syntax element (such as QTSplitFlag); if the value of the third identifier is a third value (for example, 0), it indicates that the node corresponding to the third identifier is
- the node is a leaf node of the first-level coding tree, and the third node corresponding to the node
- the value of the identification is the third value.
- the width or height of the image area corresponding to a certain node is greater than the second threshold, and the value of the second identifier corresponding to the node is the second value, the value of the third identifier is the third value. If the mapping mode of the node is QT, the value of the second identifier corresponding to the node is the second value, and the value of the third identifier corresponding to the node is the third value.
- coding_quadtree() is a first-level coding tree syntax structure that describes information about a node of the first-level coding tree.
- the CTU is used as the root node to parse coding_quadtree(xCtb, yCtb, CtbLog2SizeY, 0), where CtbLog2SizeY is the base 2 logarithm of the CTU side length (here, the image area corresponding to the CTU is square).
- xCtb and yCtb respectively represent the horizontal coordinate offset and the vertical coordinate offset of the upper left corner of the image region corresponding to the CTU with respect to the upper left corner of the image region corresponding to the node.
- X0 and y0 respectively represent the horizontal coordinate offset and the vertical coordinate offset of the upper left corner of the image region corresponding to the node with respect to the upper left corner of the image region corresponding to the CTU;
- log2CbSize indicates that the edge length of the image region corresponding to the node is 2 Logarithmic value (since the image area corresponding to the CTU is square and the first-level coding tree is only divided by quadtree, the image area corresponding to all nodes on the first-level coding tree is also square, and the width and height are equal, so only need Indicates the length of the side, does not need to distinguish between width and height);
- cqtDepth represents the first level of the coding tree hierarchy of the node.
- the condition condA indicates that the condition of the first-level coding tree node division information syntax element split_cu_flag needs to be parsed from the code stream, for example, condA is “the image area corresponding to the node is within the image area corresponding to the CTU and the side length of the image area corresponding to the node is greater than the threshold. ".
- Split_cu_flag is 0 to indicate that the node is not divided according to the quadtree, and the leaf node is encoded for the first level. At this time, the leaf node will be parsed according to the syntax structure coding_second_tree() of the second-level coding tree; the split_cu_flag is 1 indicating that the node is in accordance with the quadruple The tree is divided.
- the node is divided into four sub-nodes, and the edge length, coordinates, and first-level coding tree hierarchy of each sub-node are determined, and the sub-nodes are parsed according to coding_quadtree().
- coding_quadtree() "X>>Y” means that X is shifted right by Y bits; "X ⁇ Y” means that X is shifted left by Y bits; ae(v) means that syntax elements are parsed using CABAC.
- the decoding end device parses the obtained code stream to obtain node division mode information of the second-level coding tree.
- the node division mode information of the second-level coding tree indicates a division manner corresponding to the first node in the second-level coding tree, and the division manner corresponding to the first node is one of the candidate division manners corresponding to the first node,
- the candidate mode set corresponding to the first node is determined according to the first preset dividing condition, where the first preset dividing condition is used to indicate whether to limit the first node according to the target dividing manner, and the target dividing manner includes a horizontal dichotomy, a horizontal three-point, and At least one of a vertical two-point and a vertical three-point.
- the root node of the second level coding tree is a leaf node of the first level coding tree.
- the node division manner corresponding to the second-level coding tree is different from the node division manner corresponding to the first-level coding tree.
- the node division manner corresponding to the second-level coding tree includes binary tree division and tri-tree division, and the binary tree division includes horizontal Dichotomous and vertical two points, the trigeminal tree division includes horizontal three points and vertical three points.
- the decoding end device After obtaining the node partitioning mode information of the first-level coding tree, the decoding end device performs the first-level coding tree indicating the node partitioning manner corresponding to the node partitioning mode information of the first-level coding tree and the root node of the first-level coding tree.
- the leaf node is used as the root node of the second-level coding tree, and the CTU code stream is parsed to obtain the division mode information of the nodes of the second-level coding tree.
- the method for the decoding end device to parse the CTU code stream to obtain the partitioning mode information of the node of the second level coding tree may be: the decoding end device parses the CTU code stream, and obtains a method for indicating how to divide the second level coding tree.
- the fourth identifier of a node (such as STSplitMode), that is, the fourth identifier indicates the node division manner information of the second-level coding tree.
- the fourth identifier of the child node of the corresponding node until the information of all the leaf nodes of the second level coding tree is determined.
- the method for the decoding end device to parse the CTU code stream to obtain the split mode information of the node of the second level coding tree may be: for the first node in the second level coding tree, the decoding end device first parses the code. And, according to the first preset dividing condition, determining a candidate partitioning mode set corresponding to the first node, and then determining, according to the candidate partitioning mode set corresponding to the first node, the parsing codestream to determine the partitioning mode information corresponding to the first node.
- the first preset dividing condition includes at least one of the following preset dividing sub-conditions:
- a first preset sub-condition if the aspect ratio of the image region corresponding to the first node is greater than or equal to a first preset threshold (such as 8 or 4), the candidate partition mode set corresponding to the first node does not include the horizontal dichotomy and level
- a first preset threshold such as 8 or 4
- the aspect ratio of the image region corresponding to the first node is a ratio of the width of the image region corresponding to the first node to the image region corresponding to the first node.
- a second preset sub-condition if the aspect ratio of the image region corresponding to the first node is greater than or equal to a second preset threshold (such as 8 or 4), the candidate partitioning mode set corresponding to the first node does not include the vertical dichotomy In a vertical three-point, the aspect ratio of the image region corresponding to the first node is a ratio of the height of the image region corresponding to the first node to the width of the image region corresponding to the first node.
- a second preset threshold such as 8 or 4
- the third preset dividing sub-condition if the ratio of the area of the image area corresponding to the first node to the area of the image area corresponding to the leaf node of the first-level coding tree to which the first node belongs is less than or equal to a third preset threshold (16) Or 8), the candidate partitioning mode set corresponding to the first node does not include a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the fourth preset division sub-condition if the division manner corresponding to the first node includes the first division manner, the decoding order of the first sub-node of the first node is later than the second sub-node of the first node, and the second sub-node corresponds to The division manner is the first division manner, and the candidate division manner set corresponding to the first sub-node does not include the first division manner, and the first division manner is a horizontal division or a vertical division.
- the first node and the second sub-node are all divided into horizontal dichotomy, and the candidate mode set corresponding to the first sub-node does not include the horizontal dichotomy, that is, the first sub-node is not allowed to be divided by the horizontal dichotomy.
- the fifth preset partition sub-condition if the partitioning manner corresponding to the first node includes the second partitioning manner, the area of the image region corresponding to the first child node of the first node is the area of the image region corresponding to the three child nodes of the first node The smallest candidate, the candidate partition mode set corresponding to the first child node does not include the second partition mode, and the second partition mode is horizontal three-point or vertical three-point.
- the first node corresponds to a horizontal three-point
- the candidate mode set corresponding to the first child node does not include a horizontal three-point, that is, the first child node is not allowed to be divided by the horizontal three-point division manner.
- the sixth preset dividing sub-condition if the dividing manner corresponding to the first node includes the second dividing manner, the area of the image region corresponding to the first child node of the first node is the area of the image region corresponding to the three child nodes of the first node The largest, the set of candidate partitioning modes corresponding to the first child node does not include the second partitioning mode.
- the seventh preset partitioning sub-condition if the ratio of the width of the image region corresponding to the first node to the edge length of the preset minimum CU is less than or equal to the third preset threshold, the candidate partitioning mode set corresponding to the first node does not include the vertical If the ratio of the height of the image region corresponding to the first node to the edge length of the preset minimum CU is less than or equal to the third preset threshold, the candidate partition mode set corresponding to the first node does not include the horizontal three-point.
- the eighth preset dividing sub-condition if the area of the image area corresponding to the first node is less than or equal to the fourth preset threshold, the candidate partitioning mode set corresponding to the first node does not include the horizontal dichotomy, the horizontal trisection, the vertical dichotomy, and the vertical Straight three points.
- the ninth preset sub-condition is: if the division manner corresponding to the first node is the second division manner, the area of the image region corresponding to the first sub-node of the first node is the area of the image region corresponding to the three sub-nodes of the first node The largest one, the candidate partition mode set corresponding to the first sub-node does not include the first partition mode, and the first partition mode and the second partition mode have the same split direction.
- the division manner corresponding to the first node is a horizontal three-point, and the area of the image region corresponding to the first sub-node of the first node is the largest of the image regions corresponding to the three sub-nodes of the first node, and then
- the candidate mode set corresponding to a child node does not include a horizontal binary, that is, the first child node is not allowed to be divided by the horizontal binary division method.
- the first preset dividing condition in the embodiment of the present application may include the foregoing third preset dividing sub-condition, and may further include the fourth preset dividing sub-condition, and may further include the fifth preset dividing sub-condition
- the first preset dividing sub-condition and the second preset dividing sub-condition may be further included, and may further include the first preset dividing sub-condition, the second preset dividing sub-condition, and the fourth preset dividing sub-condition
- the sixth preset dividing sub-condition and the seventh preset dividing sub-condition may further include the first preset dividing sub-condition, the second preset dividing sub-condition, the third preset dividing sub-condition, and the seventh preset dividing sub-condition
- the first preset sub-condition, the second preset sub-condition, the third preset sub-condition, the fifth preset sub-condition, and the seventh preset sub-condition may also be included, and may further include the foregoing
- the first preset division condition in the embodiment of the present application may also be other combinations of the foregoing preset sub-conditions, and details are not described herein again.
- the encoding end device may obtain the first preset threshold, the second preset threshold, the third preset threshold, and the fourth preset threshold from the SPS, the PPS, or the strip header in the code stream that includes the image data. And the side length of the preset minimum CU.
- the first preset threshold, the second preset threshold, the third preset threshold, the fourth preset threshold, and the preset minimum CU side length may also be preset by the image processing system.
- first preset partitioning condition in the embodiment of the present application may further include other conditions, which are not specifically limited in this embodiment.
- the first preset dividing condition further includes:
- the candidate corresponding to the first node includes not continuing to divide.
- the encoding end device can obtain the preset maximum second level coding tree hierarchy from the SPS, PPS or slice header in the code stream containing the image data.
- the set of candidate division modes corresponding to the first node does not include the horizontal binary.
- the candidate partition mode set corresponding to the first node includes not continuing to divide.
- the candidate partition mode set corresponding to the first node does not include the vertical binary; if the first node corresponds to The ratio of the height of the image area to the side length of the preset minimum CU is smaller than the seventh preset threshold, and the set of candidate division modes corresponding to the first node does not include the horizontal binary.
- the fourth identifier in the embodiment of the present application is used to indicate how to divide a node in the second level coding tree.
- the fourth identifier may include first information for indicating whether to continue dividing the node, second information for indicating which direction to divide the node, and third for indicating which mode is used to divide the node. information.
- the first information is represented by STSplitFlag. If the value of STSplitFlag is equal to 0, it means that the node corresponding to the STSplitFlag is not continued to be divided; if the value of STSplitFlag is equal to 1, it means that the node corresponding to the STSplitFlag is continued to be divided.
- the second information is represented by STSplitDir. If the value of STSplitDir is equal to 0, it means that the node corresponding to the STSplitDir is divided in the horizontal direction; if the value of STSplitDir is equal to 1, it means that the node corresponding to the STSplitDir is divided in the vertical direction.
- the third information is represented by the STSplitType. If the value of the STSplitType is equal to 0, the division method corresponding to the node corresponding to the STSplitType is a binary tree division; if the value of the STSplitDir is equal to 1, the division manner corresponding to the node corresponding to the STSplitType is Trigeminal tree division.
- the fourth identifier in the embodiment of the present application may further include a binary tree partition identifier that is used to indicate whether the node corresponding to the fourth identifier is divided according to a binary tree partitioning manner, and is used to indicate whether the fourth partition is divided according to a tri-tree partition manner. Identifying a tri-tree partitioning identifier of the corresponding node and second information (the dividing direction identifier is the same as the dividing direction identifier in the previous example).
- the binary tree partitioning identifier is represented as BTFlag. If the value of the BTFlag is equal to 0, the mapping manner corresponding to the node corresponding to the fourth identifier is not the BT partition. If the value of the BTFlag is equal to 1, the node corresponding to the fourth identifier corresponds to The division is BT division.
- the tribtree partition identifier is TTFlag. If the value of the TTFlag is equal to 0, the partitioning mode corresponding to the node corresponding to the fourth identifier is not the TT partition. If the value of the TTFlag is equal to 1, the partition corresponding to the node corresponding to the fourth identifier is TT division.
- the fourth identifier in the embodiment of the present application may also include any combination of the foregoing first information, the foregoing second information, and the foregoing third information, which is not specifically limited in this embodiment of the present application.
- the fourth identifier may include more information.
- the fourth identifier may include the first information, the second information, and the third information. Therefore, after determining the candidate partitioning mode set corresponding to the first node, the decoding end device determines the first according to the candidate partitioning mode set corresponding to the first node. The information, the second information, and the third information, so that the division mode information corresponding to the first node can be determined.
- the decoding end device first determines, according to the first preset dividing condition, the candidate partitioning mode set of the first node; and then, the decoding end device determines, according to the candidate partitioning mode set of the first node, whether it can be parsed from the code stream.
- the first information, the second information, and the third information if any one of the first information, the second information, and the third information cannot be parsed from the code stream, the value of the information is a system default.
- the decoding end device first parses the STSplitFlag from the code stream, if the value of the STSplitFlag is 0.
- the value of STSplitDir and STSplitType defaults to 0; if the value of STSplitFlag is 1, then the STSplitDir is further parsed (the parsing mode of STSplitDir is related to the set of candidate partitioning modes corresponding to the first node), and the STSplitType is parsed according to the value of STSplitDir ( The parsing manner of the STSplitType is related to the set of candidate partitioning modes corresponding to the first node, wherein if the candidate partitioning mode set corresponding to the first node includes a horizontal dichotomy, a horizontal three-point, a vertical dichotomy, and a vertical three-point, the decoding end The device parses the STSplitDir and the STSplitType in sequence from the code stream. If the candidate partitioning mode set corresponding to the first node includes one or three partitioning modes, at least one of the STSplitDir and the STSplitType is
- Table 2 shows all possible cases of the set of candidate division modes corresponding to the first node in this embodiment, and shows the first information, the second information, and the corresponding information corresponding to each case.
- the value of the Vertical Binary Tree (VBT) is 0, indicating that the candidate partition mode set corresponding to the first node does not include a vertical binary
- the VBT value of 1 indicates the candidate partitioning mode corresponding to the first node.
- the set includes a vertical binary
- a horizontal binary value (HBT) has a value of 0, indicating that the candidate partitioning mode set corresponding to the first node does not include a horizontal binary
- the HBT value of 1 indicates a candidate partitioning manner corresponding to the first node.
- the set includes a horizontal binary, and a value of 0 in the vertical triple tree (VTT) indicates that the candidate partitioning mode set corresponding to the first node does not include a vertical three-point, and the value of the VTT is 1 indicating that the first node corresponds to the first node.
- the candidate partition mode set includes a vertical three-point, and the horizontal binary value (HTT) has a value of 0, indicating that the candidate partition mode set corresponding to the first node does not include a horizontal three-point, and the HTT value is 1 and the first
- the set of candidate partitioning modes corresponding to the nodes includes a horizontal three-point.
- a, b, and c respectively indicate that STSplitFlag, STSplitDir, and STSplitType are obtained by parsing the code stream; NA(x) indicates that the corresponding bit is set to the default value x.
- the values of STSplitDir and STSplitType default to 0; when parsing to STSplitFlag is 1, parsing STSplitDir first, and then parsing STSplitType according to the value of STSplitDir. symbol!
- the expression "exp?m:n" means that m is used if exp is true, otherwise n is used. For example: STSplitDir?
- NA(1) indicates that if the value of STSplitDir is not 0 (that is, equal to 1, since the value of STSplitDir is 0 or 1 in this embodiment), the STSplitType is obtained from the code stream; otherwise, the value of STSplitType defaults to 1.
- the decoding end device can determine the STSplitFlag, STSplitDir, and STSplitType according to the candidate partitioning mode set corresponding to the first node.
- the candidate partition mode set corresponding to the first node does not include vertical dichotomy, horizontal dichotomy, horizontal triad, and vertical triad, then STSplitFlag, STSplitDir, and The value of STSplitType defaults to 0.
- the first corresponding candidate partition mode set does not include a horizontal dichotomy, a horizontal triad, and a vertical triad, and the decoding end device firstly from the code stream.
- Parse STSplitFlag if the value of STSplitFlag is 0, the values of STSplitDir and STSplitType default to 0. If the value of STSplitFlag is 1, the value of STSplitDir defaults to 1, and the value of STSplitType defaults to 0.
- the first corresponding candidate partition mode set does not include the horizontal three-point and the vertical three-point, and the first decoding end device first parses the STSplitFlag from the code stream. If the value of STSplitFlag is 0, the values of STSplitDir and STSplitType default to 0. If the value of STSplitFlag is 1, the decoding device parses STSplitDir from the code stream and defaults the value of STSplitType to 0.
- the first corresponding candidate partition mode set does not include the vertical three-point, and the first decoding device first parses the STSplitFlag from the code stream; if the STSplitFlag If the value is 0, the values of STSplitDir and STSplitType default to 0. If the value of STSplitFlag is 1, the decoding device parses STSplitDir from the code stream; if the value of STSplitDir is 1, the value of STSplitType defaults to 0, if STSplitDir The value of 0 is the decoding device that parses the STSplitType from the code stream.
- the decoding end device may determine the fourth identifier STSplitMode according to the three values, that is, determine the division manner information of the first node in the second-level coding tree.
- the decoding end device determines the value of STSplitMode according to the values of STSplitFlag, STSplitDir, and STSplitType by using the mapping manner shown in Table 3.
- the value of STSplitMode is 2, that is, the division manner corresponding to the first node is vertical two points. .
- the candidate partition mode set may further include only horizontal three-point and vertical three-point, and does not include horizontal binary and vertical binary.
- the decoding device first parses the STSplitFlag from the code stream; if the value of STSplitFlag is 0.
- the values of STSplitDir and STSplitType are both 0 by default. If the value of STSplitFlag is 1, the decoding device parses STSplitDir from the code stream, and the value of STSplitType defaults to 1.
- the division method of the second-level coding tree further includes other division methods other than horizontal binary, vertical binary, horizontal three-point, and vertical three-point, the information analysis method exemplified in Table 2 above needs to be performed.
- the embodiment of the present application does not specifically limit this.
- the first information, the second information, and the third information corresponding to the plurality of candidate partitioning mode sets in the above-mentioned 15 candidate partitioning mode sets are parsed in the same or similar manner. Therefore, the foregoing several types may also be used.
- the candidate partitioning method sets are combined into one class, and each class adopts an analytical method.
- the analysis method of the first information, the second information, and the third information is equivalent to the above-described analysis method of determining the first information, the second information, and the third information according to Table 2, but the number of judgment branches is smaller.
- the decoding end device may determine the first information STSplitFlag according to the parsing manner shown in Table 4, determine the second information STSplitDir according to the parsing manner shown in Table 5, and determine the third information STSplitType according to the parsing manner shown in Table 6.
- && is logical and operation
- is logical or operation,! It is logically non-operational.
- a, b, and c respectively indicate that the corresponding information needs to be parsed from the code stream, and NA(x) indicates that the value of the corresponding information is set to x.
- the decoding end device parses the STSplitFlag from the code stream; when the value of the NumType is equal to 0, the STSplitFlag The value defaults to 0.
- the decoding device determines that the value of STSplitFlag is 1, it continues to parse STSplitDir and STSplitType; otherwise, the values of STSplitDir and STSplitType default to 0.
- each candidate partitioning mode set includes multiple partitioning modes, and the STSplitFlag corresponding to each candidate partitioning mode set needs to be parsed from the codestream. , corresponding to the situation shown in Table 4.
- the candidate partition mode set 15 in Table 2 does not include the partition mode, that is, the number of partition modes included in the candidate partition mode set 15 is 0, and the value of the STSplitFlag corresponding to the candidate partition mode set 15 defaults to NA (0), and Table 4 Corresponding.
- the decoding end device determines STSplitDir in a different manner.
- the decoding device needs to determine which method to use to determine STSplitDir according to different conditions.
- the decoding device parses the code stream to obtain STSplitDir.
- the value of NumType is set to ! HBT (that is, STSplitDir is 1 when HBT is 0, and STSplitDir is 0 when HBT is 1).
- the number of partition modes included in each candidate partition mode set is greater than or equal to 3, and each candidate partition mode set in the candidate partition mode sets 1 to 5
- the corresponding STSplitDir needs to be parsed from the code stream, corresponding to the situation shown in Table 5.
- the candidate partition mode set 6 to 10 in Table 2 the number of the partitioning modes included in each candidate partitioning mode set is equal to 2
- the STSplitDir corresponding to each candidate partitioning mode set in the candidate partitioning mode set 6-10 is under different conditions.
- the analysis method is different, and corresponds to the case shown in Table 5.
- the number of the partitioning modes included in each candidate partitioning mode set is equal to 1, and the value of the STSplitDir corresponding to each candidate partitioning mode set in the candidate partitioning mode sets 11 to 14 is a default value.
- NA VBT
- the number of division modes included in the candidate division mode set 15 in Table 2 is equal to 0, and the STSplitDir corresponding to the candidate division mode set 15 is the default value NA(0), which corresponds to the case shown in Table 5.
- the method for determining the STSplitType by the decoding device according to Table 6 is similar to the method for the decoding device to determine the STSplitDir according to Table 5, and details are not described herein again.
- the first-level coding tree partition information is represented by NSFlag and QTSplitFlag
- the node when the value of the NSFlag of a certain node is the first value, the node is the leaf node of the second-level coding tree, and the value of the STSplitFlag is defaulted. 0; when the value of NSFlag of a node is the second value and the value of QTSplitFlag is the second value, the node is not the leaf node of the second-level coding tree, and the value of STSplitFlag defaults to 1.
- the decoding device in the embodiment of the present application may perform S602 after executing S601, or may acquire information about a leaf node of the first-level coding tree for the first time in the process of executing S601.
- the leaf node of the first level coding tree immediately executes S602 until the last leaf node of the first level coding tree is obtained.
- the decoding end device parses the code stream to obtain coding information of the first node.
- the first node is a second-level coding tree. Leaf node.
- nodes that are no longer divided correspond to one CU.
- the first node corresponds to one CU.
- the decoding end device parses the coding unit syntax structure in the code stream (for example, the coding_unit() syntax structure in H.265, the explanation of the coding_unit() syntax structure is described below, and obtains the coding of each CU.
- Information, the coding information of each CU includes information such as a prediction mode and a transform coefficient of the CU.
- the decoding end device acquiring the encoding information of each CU means that the decoding end device obtains the encoding information of each leaf node of the second-level coding tree.
- the decoding end device in the embodiment of the present application may obtain the information of one leaf node of the second-level coding tree in the process of performing S602, parse the code stream, and obtain the coding information of the leaf node; After the coding information of the leaf node is obtained, the leaf information of the next second-level coding tree is obtained, and the coding information of the leaf node of the next second-level coding tree is obtained, and so on, until the last second-level second-level coding The leaf node of the tree.
- the syntax table of the second level coding tree in the embodiment of the present application is as shown in Table 7.
- the coding_second_tree() is a grammatical structure of the second-level coding tree, and describes information of a node of the second-level coding tree.
- log2CuWidth and log2CuHeight respectively represent the base-2 logarithm of the width and height of the image region corresponding to the node
- stDepth represents the second-level coding tree hierarchy of the leaf node of the second-level coding tree.
- the condition condB indicates a condition for parsing the second-level coding tree node division information syntax element STSplitMode from the code stream, for example, the condition condB is “the second-level coding tree level stDepth of the node is smaller than the preset maximum second-level coding tree level maxSTDepth, And the width and height of the image area corresponding to the node are both smaller than the threshold maxSTSize, and the width or height of the image area corresponding to the node is greater than the threshold minSTSize".
- maxSTDepth is an integer greater than 0 (for example, 2 or 3 or 4), which can be preset or parsed from SPS;
- minSTSize is an integer greater than 0 (for example, 4 or 8), which can be preset or parsed from SPS. ;
- maxSTSize is an integer greater than minSTSize (for example, 64 or 128), which can be pre-set or parsed from SPS.
- the value of STSplitMode ranges from 0, 1, 2, 3, and 4.
- the node is a leaf node of the second-level coding tree, and the node corresponds to one CU.
- the coding unit information is parsed according to the CU syntax structure coding_unit().
- the embodiment of the present application does not limit the manner in which the syntax elements of the coding unit information are organized.
- the value of STSplitMode is 1 to 4
- the node is divided into 2 or 3 sub-nodes by using horizontal dichotomy, vertical dichotomy, horizontal triad, and vertical three-point respectively, and for each sub-node, an image corresponding to each sub-node is determined.
- the width, height, coordinates, and second-level coding tree hierarchy of the region and then parse these child nodes according to coding_second_tree().
- the STSplitFlag, the STSplitDir, and the STSplitType in the embodiment of the present application may be coded by a by-pass method, or may be encoded using a probability model, and the probability model may be adaptively selected based on a context.
- the context model selection method of the STSplitFlag is: obtaining the size of the CU corresponding to the left side of the image area corresponding to the node S1, the size of the upper side of the image area corresponding to the node, and the size of the image area corresponding to the CU. S3; if both S1 and S2 are smaller than S3, the context model No. 2 is selected, and if there is only one small S3 in S1 and S2, the context model No. 1 is selected; otherwise (S1 and S2 are not smaller than S3), the context No. 0 is selected. model.
- the left position of the image area corresponding to the node is, for example, (x0-1, y0)), and the upper position of the image area corresponding to the node is, for example, (x0, y0-1).
- the context model selection method of STSplitDir is: if the width of the image area corresponding to the node is greater than 2 times of the height, the model No. 0 is used; if the width of the image area corresponding to the node is equal to 2 times the height, the model No. 1 is used; The width of the image area is equal to high, and the model number 2 is used; if the width of the image area corresponding to the node is equal to 1/2 of the height, the model No. 3 is used; if the width of the image area corresponding to the node is less than 1/2 of the height, the number 4 is used. model.
- the context model selection method of STSplitType is: if the level of the secondary coding tree of the node is equal to 0, select the model number 0; if the level of the secondary coding tree of the node is equal to 1, select the model number 1; if the level of the secondary coding tree of the node is greater than 1 , choose model number 2.
- the decoding end device performs decoding and reconstruction on the coding unit according to the coding information of the three child nodes of the first node, to obtain an image corresponding to the image data.
- the process of decoding and reconstructing a coding unit includes processing such as prediction, inverse quantization, inverse transform, loop filtering, and the like.
- the process of performing decoding reconstruction for each coding unit includes:
- the transform coefficient of the CU is inverse quantized and inverse transformed according to the quantization parameter and the transform mode, and the reconstructed residual of the CU is obtained. If the CU does not have a transform coefficient, the reconstructed residual of the CU is 0, that is, the reconstructed residual value of each pixel in the CU is 0.
- the encoding end device performs decoding reconstruction on each coding unit according to the above method, and acquires a reconstructed image block of each CU. After acquiring the reconstructed image block of each CU, the encoding end device obtains the final reconstructed image according to all the reconstructed image blocks obtained, that is, obtains an image corresponding to the image data.
- the division manner corresponding to the first node of the second-level coding tree in the embodiment of the present application is one of the first preset division conditions, and the first preset division condition is used to indicate whether to limit the first division according to the target division manner.
- a node and the target division manner includes at least one of a horizontal dichotomy, a horizontal triad, a vertical dichotomy, and a vertical triad.
- the number of division manners corresponding to the first node is decreased, The complexity of decoding is effectively reduced.
- the decoding device may further determine the first information, the third information, and the second information according to the parsing method shown in Table 8, and further obtain the second level encoding according to the mapping manner shown in Table 3.
- the node division mode information of the tree may be further determined.
- Table 8 is similar to Table 2 and will not be described in detail here.
- the first information, the third information, and the second information corresponding to the plurality of candidate partitioning mode sets of the 15 candidate partitioning mode sets shown in Table 8 are parsed in the same or similar manner. Therefore, the foregoing may also be Several sets of candidate partitioning methods are combined into one class, and each class adopts an analytical method.
- the parsing method of the first information, the third information, and the second information is equivalent to the above-described parsing method for determining the first information, the third information, and the second information according to Table 8, but the judging branch is less.
- the decoding device can determine the first information STSplitFlag according to the parsing manner shown in Table 4, determine the third information STSplitType according to the parsing manner shown in Table 9, and determine the second information STSplitDir according to the parsing manner shown in Table 10.
- the decoding end device determines the node division manner information of the second-level coding tree according to the order of the first information, the second information, and the third information, or according to the order of the first information, the third information, and the second information
- the node division mode information of the second-level coding tree is determined. Under the action of the first preset division condition, the decoding end device can decode quickly, and the decoding complexity is low.
- the method for decoding image data includes:
- the decoding end device obtains a code stream that includes image data.
- the decoding end device decodes the obtained code stream to obtain node division manner information of the first-level coding tree.
- S701 can refer to the description of S601 above, and details are not described herein again.
- the decoding end device parses the obtained code stream to obtain node division mode information of the second-level coding tree.
- the node division mode information of the second-level coding tree indicates a division manner corresponding to the first node in the second-level coding tree, and the division manner corresponding to the first node is one of the candidate division manners corresponding to the first node,
- the candidate mode set corresponding to the first node is determined according to the first preset dividing condition and the second preset dividing condition, where the first preset dividing condition is used to indicate whether to limit the first node according to the target dividing manner, and the target dividing manner includes At least one of a horizontal dichotomy, a horizontal three-division, a vertical dichotomy, and a vertical three-division, the second preset division condition is used to indicate whether to limit the division of the first node according to the quadtree division.
- the root node of the second level coding tree is a leaf node of the first level coding tree.
- the node division manner corresponding to the second-level coding tree is different from the node division manner corresponding to the first-level coding tree.
- the node division manner corresponding to the second-level coding tree includes binary tree division, tri-tree division, and quad-tree division.
- the binary tree division includes a horizontal dichotomy and a vertical dichotomy
- the trigeminal tree division includes a horizontal three-point and a vertical three-point.
- the decoding end device needs to determine a candidate partitioning mode set corresponding to the first node according to the first preset dividing condition and the second preset dividing condition.
- the first preset dividing condition is the same as the first preset dividing condition in the embodiment in FIG. 6, where the second preset dividing condition may include at least one preset dividing sub-condition:
- the tenth preset sub-condition if the second-level coding tree level of the first node is smaller than the preset maximum second-level coding tree level, the candidate partition mode set corresponding to the first node does not include the quad-tree partition.
- the eleventh preset sub-conditions are: if the aspect ratio of the image region corresponding to the first node is greater than or equal to the fifth preset threshold, the candidate partition mode set corresponding to the first node does not include the quadtree partition.
- the decoding end device in this embodiment first determines, according to the first preset dividing condition and the second preset dividing condition, a candidate partitioning mode set corresponding to the first node, and then according to the corresponding dividing manner of the first node. And parsing the code stream, and determining node division mode information corresponding to the second-level coding tree.
- the fourth identifier in this embodiment further includes fourth information (the fourth information in the text is represented by STQTSplitFlag), and the fourth information is used to indicate whether the first node is divided according to the quadtree partition. That is, the fourth identifier in this embodiment includes the first information, the second information, the third information, and the fourth information.
- the value of the STQTSplitFlag is equal to 1 and the division mode corresponding to the node corresponding to the fourth identifier includes a quadtree partition.
- the value of the STQTSplitFlag is equal to 0, and the candidate partition mode set corresponding to the node corresponding to the fourth identifier does not include. Quadtree division.
- the decoding end device sequentially determines the first information, the second information, the third information, and the fourth information, so as to determine the node division manner information corresponding to the second-level coding tree.
- the decoding device in this embodiment may determine the first information according to the content of the first value and the fourth information in the embodiment in FIG. 6, thereby determining the second information and the third. information.
- the decoding end device may determine the first information STSplitFlag according to the parsing manner shown in Table 11, and determine the fourth information STQTSplitFlag according to the parsing manner shown in Table 12.
- the value of QT is 1 to indicate that the first node is divided according to the QT division mode, and the value of QT is 0, indicating that the first node is not allowed to be divided according to the QT division manner.
- the decoding end device parses the STQTSplitFlag from the code stream; otherwise, the value of the STQTSplitFlag defaults to 0. If the value of STQTSplitFlag is 0, then STSplitDir and STSplitType continue to be parsed in order; otherwise, the values of STSplitDir and STSplitType default to 0.
- the parsing manners of the STSplitDir and the STSplitType are the same as those of the STSplitDir and the STSplitType in the embodiment shown in FIG. 6, and details are not described herein again.
- the decoding end device may determine the fourth identifier STSplitMode according to the four values, that is, determine the division manner information of the first node in the second-level coding tree.
- the decoding end device determines the value of STSplitMode according to the values of STSplitFlag, STSplitDir, STSplitType, and STQTSplitFlag using the mapping manner shown in Table 13.
- the STQTSplitFlag in this embodiment can also be encoded using a skip mode, or encoded using one probability model, or encoded using multiple probability models.
- the decoding end device parses the code stream to obtain coding information of the first node.
- S703 can refer to the above S603, and details are not described herein.
- the decoding end device performs decoding and reconstruction on the coding unit according to the coding information of the three child nodes of the first node, to obtain an image corresponding to the image data.
- S704 can refer to the foregoing S604, and details are not described herein again.
- the partitioning manner corresponding to the second-level coding tree in this embodiment further includes a quad-tree partitioning, and further restricts the partition included in the candidate partitioning mode set corresponding to the first node. In this way, the decoding rate of the decoding device can be further improved.
- the embodiment of the present application further provides an encoding method of image data, which can be applied to the image processing system shown in FIG. 4.
- the encoding method of the image data includes:
- the encoding end device determines a CTU corresponding to the image block to be encoded.
- an image is composed of a plurality of CTUs, and a CTU generally corresponds to a square image area.
- the encoding end device After acquiring an image, the encoding end device performs encoding processing on each CTU of the image.
- the coding process of the CPT is the same for each CTU. Therefore, the coding process of one CTU by the coding end device is taken as an example for description.
- the coding end device divides the CTU according to a node division manner corresponding to the first-level coding tree, and obtains a leaf node of the first-level coding tree.
- the root node of the first-level coding tree corresponds to the CTU, and the node division manner corresponding to the first-level coding tree is a quad-tree partition.
- the encoding end device determines the CTU as the root node of the first-level coding tree, and uses the QT division manner to recursively divide the CTU into at least one leaf node.
- the encoding end device After acquiring the at least one leaf node of the first-level coding tree, the encoding end device determines each leaf node of the first-level coding tree as the root node of the second-level coding tree, and sequentially pairs each of the second-level coding trees.
- the root nodes perform the following steps until information about all leaf nodes of the second level coding tree is obtained.
- the embodiment of the present application is described by taking the processing of the first node in the second-level coding tree by the encoding end device as an example.
- the encoding end device determines a candidate partitioning mode set corresponding to the first node in the second-level coding tree, where the candidate partitioning mode set corresponding to the first node meets the first preset dividing condition.
- the first preset dividing condition is used to indicate whether to limit the first node according to the target dividing manner, and the root node of the second-level coding tree is a leaf node of the first-level coding tree, and the target dividing manner includes horizontal two-point, horizontal three-point, At least one of a vertical two-point and a vertical three-point.
- the division manner that the first node can use includes non-continuation division, horizontal dichotomy, horizontal trisection, vertical dichotomy, vertical triad, and quadtree division. the way.
- the encoding end device needs to calculate the RD cost of the six partitioning modes in turn, resulting in high coding complexity.
- An embodiment of the present application provides a first preset dividing condition that limits a dividing manner that can be used by a first node, where the first preset dividing condition is the same as the first preset dividing condition described in the embodiment shown in FIG. No detailed description will be given.
- the number of partitioning modes included in the candidate partitioning mode set corresponding to the first node is limited, so that in most cases, the encoding end device does not need to calculate six types for the first node.
- the RD cost of the division mode reduces the coding complexity.
- the encoding end device encodes the CU corresponding to the first node to obtain a coding unit code stream corresponding to the CU.
- the candidate partitioning mode set corresponding to the first node includes not continuing to divide, the first node is a leaf node of the second-level coding tree, and the first node corresponds to one CU.
- the encoding end device encodes the CU corresponding to the first node to obtain a coded unit code stream with the CU.
- the CU coding includes a prediction, a transform, a quantization, and an entropy coding.
- the encoding end device encodes the CU, and the process of obtaining the CU code stream of the CU mainly includes:
- the encoding end device selects the intra prediction or the inter prediction according to the prediction mode to obtain the predicted pixel of the CU.
- the encoding end device changes and quantizes the residual between the original pixel of the CU and the predicted pixel of the CU to obtain a transform coefficient, and performs inverse quantization and inverse transform processing on the obtained transform coefficient, thereby obtaining the CU. Rebuild the residual.
- the encoding end device adds the predicted pixel of the CU and the reconstructed residual of the CU, and performs loop filtering processing to obtain the reconstructed pixel of the CU.
- the encoding end device entropy encodes the prediction mode and the transform coefficient of the CU to obtain a CU code stream.
- the method for generating the CU code stream of the CU may refer to the existing method for generating the CU code stream, and details are not described herein again.
- the encoding end device calculates the RD cost of each partitioning mode in the candidate partitioning mode set corresponding to the first node.
- the encoding end device divides the first node by using the dividing mode, and obtains all the CUs after the first node is divided by the dividing mode, and the encoding end device calculates each The RD cost of each CU, and the sum of the RD costs of all CUs is determined as the RD cost of the division mode.
- the RD cost of the CU is equal to the sum of the Sum of Squared Errors (SSE) of the reconstructed distortion of the pixel included in the CU and the estimated number of bits of the CU corresponding code stream. with.
- SSE Sum of Squared Errors
- the coding end device determines a division manner corresponding to a minimum rate distortion cost as a target division manner corresponding to the first node.
- the coding end device divides the first node by using a target division manner corresponding to the first node.
- the S802-S806 is sequentially executed for each child node of the first node until all the leaf nodes in the second-level coding tree are acquired.
- Each leaf node of the second-level coding tree corresponds to one CU, and after obtaining all the leaf nodes of the second-level coding tree, the coding end device can acquire the CU corresponding to each leaf node of the second-level coding tree. It can be known from S803 that the encoding end device encodes one CU to obtain the CU code stream corresponding to the CU. Therefore, the encoding end device can obtain at least one CU code stream. In this way, the encoding end device can obtain the CTU code stream according to the at least one CU code stream, the node division manner information corresponding to the first level coding tree, and the node division manner information corresponding to the second level coding tree, thereby generating a code stream including the image data. .
- the second preset dividing condition may include at least one of the following predetermined dividing sub-conditions:
- the tenth preset sub-condition if the second-level coding tree level of the first node is smaller than the preset maximum second-level coding tree level, the candidate partition mode set corresponding to the first node does not include the quad-tree partition.
- the eleventh preset sub-conditions are: if the aspect ratio of the image region corresponding to the first node is greater than or equal to the fifth preset threshold, the candidate partition mode set corresponding to the first node does not include the quadtree partition.
- the first preset condition in the embodiment of the present application limits the division of nodes in the second-level coding tree, so that the complexity of dividing the nodes in the second-level coding tree is greatly reduced, and the coding complexity is reduced.
- the embodiment of the present application provides a decoding end device, which is used to perform the steps performed by the decoding end device in the decoding method of the above image data.
- the decoding device provided by the embodiment of the present application may include a module corresponding to the corresponding step.
- the embodiment of the present application may perform the division of the function module on the decoding end device according to the foregoing method example.
- each function module may be divided according to each function, or two or more functions may be integrated into one processing module.
- the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
- the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and may be further divided in actual implementation.
- FIG. 9 shows a possible structural diagram of the terminal device involved in the foregoing embodiment, in the case where the respective functional modules are divided by corresponding functions.
- the decoding end device includes an obtaining module 900, a parsing module 901, and a decoding and resolving module 910.
- the obtaining module 900 is configured to support the decoding end device to perform S600, and/or S700, etc. in the foregoing embodiments, and/or other processes for the techniques described herein;
- the parsing module 901 is configured to support the decoding end device to perform the above S601, S602, S603, S701, S702, and/or S703, etc.
- the decoding reconstruction module 910 is configured to support the decoding end device to perform the above embodiment S604, and/or S704, etc., and/or other processes for the techniques described herein. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
- the decoding device provided by the embodiment of the present application includes, but is not limited to, the foregoing module.
- the decoding device may further include a storage module 911.
- the storage module 911 can be used to store program code and data of the decoding end device.
- the resolution module 901 and the decoding reconstruction module 910 in the embodiment of the present application may be the processor 57 in FIG. 5, and the acquisition module 900 may be the RF circuit 50 in FIG. 5 and the RF.
- the antenna connected to the circuit 50, the memory module 911 may be the memory 51 in FIG.
- the decoding device When the decoding device operates, the decoding device performs a decoding method of the image data of the embodiment as shown in FIG. 6 or 7.
- the decoding device performs a decoding method of the image data of the embodiment as shown in FIG. 6 or 7.
- the decoding device performs a decoding method of the image data of the embodiment as shown in FIG. 6 or 7.
- Another embodiment of the present application further provides a computer readable storage medium including one or more program codes, the one or more programs including instructions, when a processor in a decoding end device is executing the At the time of the program code, the decoding device performs a decoding method of the image data as shown in FIG. 6 or 7.
- a computer program product comprising computer executed instructions stored in a computer readable storage medium; at least one processor of the decoding end device is The computer readable storage medium reads the computer execution instructions, and the at least one processor executes the computer execution instructions such that the decoding end device implements the step of executing the decoding end device in the decoding method of the image data shown in FIG. 6 or FIG.
- the embodiment of the present application provides an encoding end device, which is used to perform the steps performed by the encoding end device in the decoding method of the above image data.
- the encoding end device provided by the embodiment of the present application may include a module corresponding to the corresponding step.
- the embodiment of the present application may perform the division of the function module on the encoding end device according to the foregoing method example.
- each function module may be divided according to each function, or two or more functions may be integrated into one processing module.
- the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
- the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and may be further divided in actual implementation.
- FIG. 10 shows a possible structural diagram of the terminal device involved in the foregoing embodiment in the case where the respective functional modules are divided by corresponding functions.
- the encoding end device includes a determining module 1000, a dividing module 1001, an encoding module 1010, and a computing module 1011.
- the determining module 1000 is configured to support the encoding end device to perform S800, S802, and/or S805 and the like in the above embodiments, and/or other processes for the techniques described herein;
- the dividing module 1001 is configured to support the encoding end device Performing S801, and/or S806, etc.
- encoding module 1010 is configured to support the encoding end device to perform S803 in the above embodiment, and/or Other processes of the techniques described herein;
- computing module 1011 is for supporting the encoding end device to perform S804 in the above-described embodiments, and/or other processes for the techniques described herein. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
- the encoding end device provided by the embodiment of the present application includes but is not limited to the foregoing module.
- the encoding end device may further include a storage module 1002, a sending module 1003, and a receiving module 1004.
- the storage module 1002 can be used to store program code and data of the encoding end device.
- the transmitting module 1003 and the receiving module 1004 are configured to communicate with other devices.
- the determining module 1000, the dividing module 1001, the encoding module 1010, and the computing module 1011 in the embodiment of the present application may be the processor 57 in FIG. 5, and the sending module 1003 and the receiving module 1004 may be in the form of an integrated unit.
- the RF circuit 50 in 5 and the antenna connected to the RF circuit 50, the memory module 1002 may be the memory 51 in FIG.
- the encoding device When the encoding device operates, the encoding device performs a decoding method of the image data of the embodiment shown in FIG.
- the decoding method of the specific image data refer to the related description in the embodiment shown in FIG. 8 above, and details are not described herein again.
- Another embodiment of the present application further provides a computer readable storage medium comprising one or more program codes, the one or more programs including instructions, when a processor in an encoding end device is executing the At the time of the program code, the encoding side device executes the decoding method of the image data as shown in FIG.
- a computer program product comprising computer executed instructions stored in a computer readable storage medium; at least one processor of the encoding end device is The computer readable storage medium reads the computer execution instructions, and the at least one processor executes the computer execution instructions such that the encoding side device implements the steps of the encoding end device in the decoding method of the image data shown in FIG.
- the computer program product includes one or more computer instructions.
- the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
- the computer instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be from a website site, computer, server or data center Transfer to another website site, computer, server, or data center by wire (eg, coaxial cable, fiber optic, digital subscriber line (DSL), or wireless (eg, infrared, wireless, microwave, etc.).
- the computer readable storage medium can be any available media that can be accessed by a computer or a data storage device such as a server, data center, or the like that includes one or more available media.
- the usable medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (such as a solid state disk (SSD)).
- the units described as separate components may or may not be physically separated, and the components displayed as units may be one physical unit or multiple physical units, that is, may be located in one place, or may be distributed to multiple different places. . 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 application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
- the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a readable storage medium.
- the technical solution of the embodiments of the present application may be embodied in the form of a software product in the form of a software product in essence or in the form of a contribution to the prior art, and the software product is stored in a storage medium.
- a number of instructions are included to cause a device (which may be a microcontroller, chip, etc.) or a processor to perform all or part of the steps of the methods described in various embodiments of the present application.
- the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program codes. .
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
NumType>0 | NumType==0 | |
STSplitFlag | a | NA(0) |
NumType>0||QT | NumType==0&&!QT | |
STSplitFlag | a | NA(0) |
QT | !QT | |
STQTSplitFlag | a | NA(0) |
STSplitMode | STSplitFlag | STQTSplitFlag | STSplitDir | STSplitType |
0 | 0 | 0 | 0 | 0 |
1 | 1 | 0 | 0 | 0 |
2 | 1 | 0 | 1 | 0 |
3 | 1 | 0 | 0 | 1 |
4 | 1 | 0 | 1 | 1 |
5 | 1 | 1 | 0 | 0 |
Claims (28)
- 一种图像数据的解码方法,其特征在于,所述解码方法包括:得到包含所述图像数据的码流;解析所述码流,得到第一级编码树的节点划分方式信息,其中,所述第一级编码树的根节点对应一个编码树单元CTU,所述第一级编码树的叶节点是通过所述第一级编码树的节点划分方式信息对应的节点划分方式和所述第一级编码树的根节点进行指示的;解析所述码流,得到第二级编码树的节点划分方式信息,其中,所述第二级编码树的节点划分方式信息指示所述第二级编码树中的第一节点对应的划分方式,所述第一节点对应的划分方式为所述第一节点对应的候选划分方式集合中的一种,所述第一节点对应的候选方式集合是根据第一预设划分条件确定的,所述第一预设划分条件用于指示是否限制按照目标划分方式划分所述第一节点,所述目标划分方式包括水平二分、水平三分、竖直二分和竖直三分的至少一种,所述第二级编码树的根节点为所述第一级编码树的一个叶节点;如果所述第一节点对应的划分方式为不继续划分,解析所述码流,得到所述第一节点的编码信息,其中,所述第一节点对应一个编码单元CU;根据所述第一节点的编码信息,对所述编码单元进行解码重建,得到对应所述图像数据的图像。
- 根据权利要求1所述的解码方法,其特征在于,所述第一级编码树对应的节点划分方式包括四叉树划分,所述第二级编码树对应的节点划分方式包括二叉树划分和三叉树划分。
- 根据权利要求1或2所述的解码方法,其特征在于,所述第一预设划分条件包括以下至少一种预设划分子条件:第一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第一预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分和所述水平三分,所述第一节点对应的图像区域的宽高比为所述第一节点对应的图像区域的宽与所述第一节点对应的图像区域的高的比值;第二预设划分子条件:如果所述第一节点对应的图像区域的高宽比大于或等于第二预设阈值,所述第一节点对应的候选划分方式集合不包括所述竖直二分和所述竖直三分,所述第一节点对应的图像区域的高宽比为所述第一节点对应的图像区域的高与所述第一节点对应的图像区域的宽的比值;第三预设划分子条件:如果所述第一节点对应的图像区域的面积与所述第一节点归属的第一级编码树的叶节点对应的图像区域的面积的比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第四预设划分子条件:如果所述第一节点对应的划分方式包括第一划分方式,所述第一节点的第一子节点的解码顺序晚于所述第一节点的第二子节点,且所述第二子节点对应的划分方式为所述第一划分方式,则所述第一子节点对应的候选划分方式集合不包括所述 第一划分方式,所述第一划分方式为所述水平二分或所述竖直二分;第五预设划分子条件:如果所述第一节点对应的划分方式包括第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最小的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式,所述第二划分方式为所述水平三分或所述竖直三分;第六预设划分子条件:如果所述第一节点对应的划分方式包括所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式;第七预设划分子条件:如果所述第一节点对应的图像区域的宽与预设的最小CU的边长比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述竖直三分;如果所述第一节点对应的图像区域的高与预设的最小CU的边长比值小于或等于所述第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平三分;第八预设划分子条件:如果所述第一节点对应的图像区域的面积小于或者等于第四预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第九预设划分子条件:如果所述第一节点对应的划分方式为所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式与所述第二划分方式的划分方向相同。
- 根据权利要求1-3中任意一项所述的解码方法,其特征在于,所述第二级编码树的节点划分方式信息包括第一信息、第二信息以及第三信息,所述第一信息用于表示是否继续划分所述第一节点,所述第二信息用于表示划分所述第一节点的方向,所述第三信息用于表示划分所述第一节点的模式;所述解析所述码流,得到第二级编码树的节点划分方式信息,具体包括:解析所述码流,根据所述第一预设划分条件,确定所述第一节点对应的候选划分方式集合;根据所述第一节点对应的候选划分方式集合,解析所述码流,确定所述第一信息、所述第二信息以及所述第三信息。
- 根据权利要求4所述的解码方法,其特征在于,所述根据所述第一节点对应的候选划分方式集合,解析所述码流,确定所述第一信息、所述第二信息以及所述第三信息,具体包括:确定第一数值,所述第一数值为所述第一节点对应的候选划分方式集合包括的划分方式的数量;根据所述第一数值,解析所述码流,确定所述第一信息、所述第二信息以及所述第三信息。
- 根据权利要求4或5所述的解码方法,其特征在于,所述第二级编码树对应的节点划分方式还包括四叉树划分;所述解析所述码流,得到第二级编码树的节点划分方式信息,具体包括:解析所述码流,得到所述第二级编码树的节点划分方式信息,其中,所述第二级编码树的节点划分方式信息指示所述第二级编码树中的第一节点对应的划分方式,所述第一节点对应的划分方式为所述第一节点对应的候选划分方式集合中的一种,所述第一节点对应的候选方式集合是根据所述第一预设划分条件和第二预设划分条件确定的,所述第二预设划分条件用于指示是否限制按照所述四叉树划分进行划分所述第一节点。
- 根据权利要求6所述的解码方法,其特征在于,所述第二预设划分条件包括以下至少一种预设划分子条件:第十预设划分子条件:如果所述第一节点的第二级编码树层级小于预设的最大第二级编码树层级,所述第一节点对应的候选划分方式集合不包括所述四叉树划分;第十一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第五预设阈值,所述第一节点对应的候选划分方式集合不包括所述四叉树划分。
- 根据权利要求6或7所述的解码方法,其特征在于,所述第二级编码树的节点划分方式信息还包括第四信息,所述第四信息用于表示是否按照所述四叉树划分进行划分所述第一节点;所述解析所述码流,得到第二级编码树的节点划分方式信息,具体包括:解析所述码流,根据所述第一预设划分条件和所述第二预设划分条件,确定所述第一节点对应的候选划分方式集合;根据所述第一节点对应的划分方式,解析所述码流,确定所述第一信息、所述第二信息、所述第三信息以及所述第四信息。
- 一种图像数据的编码方法,其特征在于,所述编码方法包括:确定与待编码图像块对应的编码树单元CTU;将所述CTU按照第一级编码树对应的节点划分方式进行划分,得到所述第一级编码树的叶节点,所述第一级编码树的根节点对应所述CTU;确定第二级编码树中的第一节点对应的候选划分方式集合,所述第一节点对应的候选划分方式集合满足第一预设划分条件,所述第一预设划分条件用于指示是否限制按照目标划分方式划分所述第一节点,所述第二级编码树的根节点为所述第一级编码树的一个叶节点,所述目标划分方式包括水平二分、水平三分、竖直二分和竖直三分中的至少一种;如果所述第一节点对应的候选划分方式集合包括不继续划分,对与所述第一节点对应的编码单元CU进行编码,得到对应所述编码单元的编码单元码流。
- 根据权利要求9所述的编码方法,其特征在于,所述第一级编码树对应的节点划分方式包括四叉树划分,所述第二级编码树对应的节点划分方式包括所述二叉树划分和所述三叉树划分。
- 根据权利要求9或10所述的编码方法,其特征在于,所述第一预设划分条件包括一下至少一种预设划分子条件:第一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第一预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分和所述水平三分,所述第一节点对应的图像区域的宽高比为所述第一节点对应的图像区域的宽与所述第一节点对应的图像区域的高的比值;第二预设划分子条件:如果所述第一节点对应的图像区域的高宽比大于或等于第二预 设阈值,所述第一节点对应的候选划分方式集合不包括所述竖直二分和所述竖直三分,所述第一节点对应的图像区域的高宽比为所述第一节点对应的图像区域的高与所述第一节点对应的图像区域的宽的比值;第三预设划分子条件:如果所述第一节点对应的图像区域的面积与所述第一节点归属的第一级编码树的叶节点对应的图像区域的面积的比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第四预设划分子条件:如果所述第一节点对应的划分方式包括第一划分方式,所述第一节点的第一子节点的解码顺序晚于所述第一节点的第二子节点,且所述第二子节点对应的划分方式为所述第一划分方式,则所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式为所述水平二分或所述竖直二分;第五预设划分子条件:如果所述第一节点对应的划分方式包括第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最小的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式,所述第二划分方式为所述水平三分或所述竖直三分;第六预设划分子条件:如果所述第一节点对应的划分方式包括所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式;第七预设划分子条件:如果所述第一节点对应的图像区域的宽与预设的最小CU的边长比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述竖直三分;如果所述第一节点对应的图像区域的高与预设的最小CU的边长比值小于或等于所述第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平三分;第八预设划分子条件:如果所述第一节点对应的图像区域的面积小于或者等于第四预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第九预设划分子条件:如果所述第一节点对应的划分方式为所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式与所述第二划分方式的划分方向相同。
- 根据权利要求10所述的编码方法,其特征在于,所述第二级编码树对应的节点划分方式还包括所述四叉树划分;所述确定第二级编码树中的第一节点对应的候选划分方式集合,包括:确定所述第一节点对应的候选划分方式集合,所述第一节点对应的候选划分方式集合满足所述第一预设划分条件和所述第二预设限制条件,所述第二预设划分条件用于指示是否限制按照所述四叉树划分进行划分所述第一节点。
- 根据权利要求12所述的编码方法,其特征在于,所述第二预设划分条件包括以下至少一种预设划分子条件:第十预设划分子条件:如果所述第一节点的第二级编码树层级小于预设的最大第二级 编码树层级,所述第一节点对应的候选划分方式集合不包括所述四叉树划分;第十一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第五预设阈值,所述第一节点对应的候选划分方式集合不包括所述四叉树划分。
- 根据权利要求9-13中任意一项所述的编码方法,其特征在于,所述编码方法还包括:如果所述第一节点对应的候选划分方式集合包括除不继续划分以外的其他划分方式,计算所述第一节点能够使用的划分方式中的每种划分方式的率失真代价;将最小的率失真代价对应的划分方式确定为所述第一节点对应的目标划分方式;使用所述第一节点对应的目标划分方式划分所述第一节点。
- 一种解码端设备,其特征在于,包括:获取模块,用于得到包含所述图像数据的码流;解析模块,用于解析所述获取模块获取到的所述码流,得到第一级编码树的节点划分方式信息,其中,所述第一级编码树的根节点对应一个编码树单元CTU,所述第一级编码树的叶节点是通过所述第一级编码树的节点划分方式信息对应的节点划分方式和所述第一级编码树的根节点进行指示的,以及用于解析所述码流,得到第二级编码树的节点划分方式信息,其中,所述第二级编码树的节点划分方式信息指示所述第二级编码树中的第一节点对应的划分方式,所述第一节点对应的划分方式为所述第一节点对应的候选划分方式集合中的一种,所述第一节点对应的候选方式集合是根据第一预设划分条件确定的,所述第一预设划分条件用于指示是否限制按照目标划分方式划分所述第一节点,所述目标划分方式包括水平二分、水平三分、竖直二分和竖直三分的至少一种,所述第二级编码树的根节点为所述第一级编码树的一个叶节点,以及用于如果所述第一节点对应的划分方式为不继续划分,解析所述码流,得到所述第一节点的编码信息,其中,所述第一节点对应一个编码单元CU;解码重建模块,用于根据所述解析模块得到的所述第一节点的编码信息,对所述编码单元进行解码重建,得到对应所述图像数据的图像。
- 根据权利要求15所述的解码端设备,其特征在于,所述第一级编码树对应的节点划分方式包括四叉树划分,所述第二级编码树对应的节点划分方式包括二叉树划分和三叉树划分。
- 根据权利要求15或16所述的解码端设备,其特征在于,所述第一预设划分条件包括以下至少一种预设划分子条件:第一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第一预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分和所述水平三分,所述第一节点对应的图像区域的宽高比为所述第一节点对应的图像区域的宽与所述第一节点对应的图像区域的高的比值;第二预设划分子条件:如果所述第一节点对应的图像区域的高宽比大于或等于第二预设阈值,所述第一节点对应的候选划分方式集合不包括所述竖直二分和所述竖直三分,所述第一节点对应的图像区域的高宽比为所述第一节点对应的图像区域的高与所述第一节点对应的图像区域的宽的比值;第三预设划分子条件:如果所述第一节点对应的图像区域的面积与所述第一节点归属 的第一级编码树的叶节点对应的图像区域的面积的比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第四预设划分子条件:如果所述第一节点对应的划分方式包括第一划分方式,所述第一节点的第一子节点的解码顺序晚于所述第一节点的第二子节点,且所述第二子节点对应的划分方式为所述第一划分方式,则所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式为所述水平二分或所述竖直二分;第五预设划分子条件:如果所述第一节点对应的划分方式包括第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最小的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式,所述第二划分方式为所述水平三分或所述竖直三分;第六预设划分子条件:如果所述第一节点对应的划分方式包括所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式;第七预设划分子条件:如果所述第一节点对应的图像区域的宽与预设的最小CU的边长比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述竖直三分;如果所述第一节点对应的图像区域的高与预设的最小CU的边长比值小于或等于所述第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平三分;第八预设划分子条件:如果所述第一节点对应的图像区域的面积小于或者等于第四预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第九预设划分子条件:如果所述第一节点对应的划分方式为所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式与所述第二划分方式的划分方向相同。
- 根据权利要求15-17中任意一项所述的解码端设备,其特征在于,所述第二级编码树的节点划分方式信息包括第一信息、第二信息以及第三信息,所述第一信息用于表示是否继续划分所述第一节点,所述第二信息用于表示划分所述第一节点的方向,所述第三信息用于表示划分所述第一节点的模式;所述解析模块,具体用于解析所述码流,根据所述第一预设划分条件,确定所述第一节点对应的候选划分方式集合,以及具体用于根据所述第一节点对应的候选划分方式集合,解析所述码流,确定所述第一信息、所述第二信息以及所述第三信息。
- 根据权利要求18所述的解码端设备,其特征在于,所述解析模块,具体用于确定第一数值,所述第一数值为所述第一节点对应的候选划分方式集合包括的划分方式的数量,以及具体用于根据所述第一数值,解析所述码流,确定所述第一信息、所述第二信息以及所述第三信息。
- 根据权利要求18或19所述的解码端设备,其特征在于,所述第二级编码树对应的节点划分方式还包括四叉树划分;所述解析模块,具体用于解析所述码流,得到所述第二级编码树的节点划分方式信息,其中,所述第二级编码树的节点划分方式信息指示所述第二级编码树中的第一节点对应的划分方式,所述第一节点对应的划分方式为所述第一节点对应的候选划分方式集合中的一种,所述第一节点对应的候选方式集合是根据所述第一预设划分条件和第二预设划分条件确定的,所述第二预设划分条件用于指示是否限制按照所述四叉树划分进行划分所述第一节点。
- 根据权利要求20所述的解码端设备,其特征在于,所述第二预设划分条件包括以下至少一种预设划分子条件:第十预设划分子条件:如果所述第一节点的第二级编码树层级小于预设的最大第二级编码树层级,所述第一节点对应的候选划分方式集合不包括所述四叉树划分;第十一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第五预设阈值,所述第一节点对应的候选划分方式集合不包括所述四叉树划分。
- 根据权利要求20或21所述的解码端设备,其特征在于,所述第二级编码树的节点划分方式信息还包括第四信息,所述第四信息用于表示是否按照所述四叉树划分进行划分所述第一节点;所述解析模块,具体用于解析所述码流,根据所述第一预设划分条件和所述第二预设划分条件,确定所述第一节点对应的候选划分方式集合,以及具体用于根据所述第一节点对应的划分方式,解析所述码流,确定所述第一信息、所述第二信息、所述第三信息以及所述第四信息。
- 一种编码端设备,其特征在于,包括:确定模块,用于确定与待编码图像块对应的编码树单元CTU;划分模块,用于将所述确定模块确定的所述CTU按照第一级编码树对应的节点划分方式进行划分,得到所述第一级编码树的叶节点,所述第一级编码树的根节点对应所述CTU;所述确定模块,还用于确定第二级编码树中的第一节点对应的候选划分方式集合,所述第一节点对应的候选划分方式集合满足第一预设划分条件,所述第一预设划分条件用于指示是否限制按照目标划分方式划分所述第一节点,所述第二级编码树的根节点为所述第一级编码树的一个叶节点,所述目标划分方式包括水平二分、水平三分、竖直二分和竖直三分中的至少一种;编码模块,用于如果所述确定模块确定的所述第一节点对应的候选划分方式集合包括不继续划分,对与所述第一节点对应的编码单元CU进行编码,得到对应所述编码单元的编码单元码流。
- 根据权利要求23所述的编码端设备,其特征在于,所述第一级编码树对应的节点划分方式包括四叉树划分,所述第二级编码树对应的节点划分方式包括所述二叉树划分和所述三叉树划分。
- 根据权利要求23或24所述的编码端设备,其特征在于,所述第一预设划分条件包括以下至少一种预设划分子条件:第一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第一预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分和所述水平三分,所 述第一节点对应的图像区域的宽高比为所述第一节点对应的图像区域的宽与所述第一节点对应的图像区域的高的比值;第二预设划分子条件:如果所述第一节点对应的图像区域的高宽比大于或等于第二预设阈值,所述第一节点对应的候选划分方式集合不包括所述竖直二分和所述竖直三分,所述第一节点对应的图像区域的高宽比为所述第一节点对应的图像区域的高与所述第一节点对应的图像区域的宽的比值;第三预设划分子条件:如果所述第一节点对应的图像区域的面积与所述第一节点归属的第一级编码树的叶节点对应的图像区域的面积的比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第四预设划分子条件:如果所述第一节点对应的划分方式包括第一划分方式,所述第一节点的第一子节点的解码顺序晚于所述第一节点的第二子节点,且所述第二子节点对应的划分方式为所述第一划分方式,则所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式为所述水平二分或所述竖直二分;第五预设划分子条件:如果所述第一节点对应的划分方式包括第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最小的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式,所述第二划分方式为所述水平三分或所述竖直三分;第六预设划分子条件:如果所述第一节点对应的划分方式包括所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第二划分方式;第七预设划分子条件:如果所述第一节点对应的图像区域的宽与预设的最小CU的边长比值小于或等于第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述竖直三分;如果所述第一节点对应的图像区域的高与预设的最小CU的边长比值小于或等于所述第三预设阈值,则所述第一节点对应的候选划分方式集合不包括所述水平三分;第八预设划分子条件:如果所述第一节点对应的图像区域的面积小于或者等于第四预设阈值,所述第一节点对应的候选划分方式集合不包括所述水平二分、所述水平三分、所述竖直二分和所述竖直三分;第九预设划分子条件:如果所述第一节点对应的划分方式为所述第二划分方式,所述第一节点的第一子节点对应的图像区域的面积为所述第一节点的三个子节点对应的图像区域的面积中最大的,所述第一子节点对应的候选划分方式集合不包括所述第一划分方式,所述第一划分方式与所述第二划分方式的划分方向相同。
- 根据权利要求24所述的编码端设备,其特征在于,所述第二级编码树对应的节点划分方式还包括所述四叉树划分;所述确定模块,具体用于确定所述第一节点对应的候选划分方式集合,所述第一节点对应的候选划分方式集合满足所述第一预设划分条件和所述第二预设限制条件,所述第二预设划分条件用于指示是否限制按照所述四叉树划分进行划分所述第一节点。
- 根据权利要求26所述的编码端设备,其特征在于,所述第二预设划分条件包括 以下至少一种预设划分子条件:第十预设划分子条件:如果所述第一节点的第二级编码树层级小于预设的最大第二级编码树层级,所述第一节点对应的候选划分方式集合不包括所述四叉树划分;第十一预设划分子条件:如果所述第一节点对应的图像区域的宽高比大于或等于第五预设阈值,所述第一节点对应的候选划分方式集合不包括所述四叉树划分。
- 根据权利要求23-27中任意一项所述的编码端设备,其特征在于,所述编码端设备还包括计算模块,所述计算模块,用于如果所述确定模块确定的所述第一节点对应的候选划分方式集合包括除不继续划分以外的其他划分方式,计算所述第一节点能够使用的划分方式中的每种划分方式的率失真代价;所述确定模块,还用于将最小的率失真代价对应的划分方式确定为所述第一节点对应的目标划分方式;所述划分模块,具体用于使用所述确定模块确定的所述第一节点对应的目标划分方式划分所述第一节点。
Priority Applications (15)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BR112019027732-3A BR112019027732B1 (pt) | 2017-06-28 | 2018-03-09 | Método e aparelho de codificação de dados de imagem e método e aparelho de decodificação de dados de imagem |
RU2020103339A RU2754870C2 (ru) | 2017-06-28 | 2018-03-09 | Способ и устройство кодирования данных изображения, способ и устройство декодирования данных изображения |
AU2018290360A AU2018290360B9 (en) | 2017-06-28 | 2018-03-09 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
CA3068551A CA3068551A1 (en) | 2017-06-28 | 2018-03-09 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
JP2019572511A JP6915105B2 (ja) | 2017-06-28 | 2018-03-09 | 画像データ符号化方法及び装置並びに画像データ復号化方法及び装置 |
EP18824528.6A EP3637782A4 (en) | 2017-06-28 | 2018-03-09 | METHOD AND DEVICE FOR ENCODING AND DECODING IMAGE DATA |
KR1020207002490A KR102320023B1 (ko) | 2017-06-28 | 2018-03-09 | 화상 데이터 인코딩 방법 및 장치 및 화상 데이터 디코딩 방법 및 장치 |
KR1020217034782A KR102478441B1 (ko) | 2017-06-28 | 2018-03-09 | 화상 데이터 인코딩 방법 및 장치 및 화상 데이터 디코딩 방법 및 장치 |
SG11201913535UA SG11201913535UA (en) | 2017-06-28 | 2018-03-09 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
US16/728,287 US10834430B2 (en) | 2017-06-28 | 2019-12-27 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
PH12020500016A PH12020500016A1 (en) | 2017-06-28 | 2020-01-02 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
US16/949,362 US11277648B2 (en) | 2017-06-28 | 2020-10-27 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
US17/646,707 US11695968B2 (en) | 2017-06-28 | 2021-12-31 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
AU2023201428A AU2023201428C1 (en) | 2017-06-28 | 2023-03-08 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
US18/200,141 US12069317B2 (en) | 2017-06-28 | 2023-05-22 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710509138.8A CN109151468B (zh) | 2017-06-28 | 2017-06-28 | 一种图像数据的编码、解码方法及装置 |
CN201710509138.8 | 2017-06-28 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/728,287 Continuation US10834430B2 (en) | 2017-06-28 | 2019-12-27 | Picture data encoding method and apparatus and picture data decoding method and apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019001006A1 true WO2019001006A1 (zh) | 2019-01-03 |
Family
ID=64740356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/078498 WO2019001006A1 (zh) | 2017-06-28 | 2018-03-09 | 一种图像数据的编码、解码方法及装置 |
Country Status (13)
Country | Link |
---|---|
US (4) | US10834430B2 (zh) |
EP (1) | EP3637782A4 (zh) |
JP (3) | JP6915105B2 (zh) |
KR (2) | KR102478441B1 (zh) |
CN (5) | CN112601084A (zh) |
AU (2) | AU2018290360B9 (zh) |
CA (1) | CA3068551A1 (zh) |
MX (2) | MX2023010008A (zh) |
PH (1) | PH12020500016A1 (zh) |
RU (1) | RU2754870C2 (zh) |
SG (1) | SG11201913535UA (zh) |
TW (1) | TWI674790B (zh) |
WO (1) | WO2019001006A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020186117A1 (en) * | 2019-03-12 | 2020-09-17 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and apparatus of video coding for triangle prediction |
CN114467308A (zh) * | 2019-09-22 | 2022-05-10 | 北京字节跳动网络技术有限公司 | 视频处理中的参考图片重采样 |
JP2022535665A (ja) * | 2019-04-23 | 2022-08-10 | オッポ広東移動通信有限公司 | 画像デコーディング方法、デコーダおよび記憶媒体 |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108965894B (zh) * | 2017-05-27 | 2021-12-21 | 华为技术有限公司 | 一种视频图像的编解码方法及装置 |
CN117336511A (zh) * | 2017-07-06 | 2024-01-02 | Lx 半导体科技有限公司 | 图像编码方法、图像解码方法、发送方法和数字存储介质 |
CN110892718B (zh) | 2017-07-06 | 2023-02-03 | 三星电子株式会社 | 视频编码方法和装置、视频解码方法和装置 |
EP3737098A4 (en) * | 2018-01-02 | 2021-06-09 | Samsung Electronics Co., Ltd. | CODING PROCESS AND ASSOCIATED APPARATUS, AND DECODING PROCESS AND ASSOCIATED APPARATUS |
WO2019151268A1 (ja) * | 2018-01-30 | 2019-08-08 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 符号化装置、復号装置、符号化方法および復号方法 |
KR20210005326A (ko) * | 2018-03-05 | 2021-01-13 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 부호화 장치, 복호 장치, 부호화 방법 및 복호 방법 |
WO2019190280A1 (ko) * | 2018-03-29 | 2019-10-03 | 세종대학교산학협력단 | 영상 부호화/복호화 방법 및 장치 |
HUE064218T2 (hu) | 2018-08-28 | 2024-02-28 | Huawei Tech Co Ltd | Képfelosztási eljárás és eszköz |
KR20240005108A (ko) | 2019-01-08 | 2024-01-11 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 이미지 예측 방법, 장치 및 시스템, 디바이스 및 저장 매체 |
CN111770337B (zh) * | 2019-03-30 | 2022-08-19 | 华为技术有限公司 | 视频编码方法、视频解码方法及相关设备 |
KR20210145754A (ko) | 2019-04-12 | 2021-12-02 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 행렬 기반 인트라 예측에서의 산출 |
WO2020221372A1 (en) * | 2019-05-01 | 2020-11-05 | Beijing Bytedance Network Technology Co., Ltd. | Context coding for matrix-based intra prediction |
CN111901593B (zh) * | 2019-05-04 | 2024-01-02 | 华为技术有限公司 | 一种图像划分方法、装置及设备 |
JP2022535726A (ja) | 2019-05-31 | 2022-08-10 | 北京字節跳動網絡技術有限公司 | 行列ベースイントラ予測における制約されたアップサンプリングプロセス |
WO2020244610A1 (en) | 2019-06-05 | 2020-12-10 | Beijing Bytedance Network Technology Co., Ltd. | Context determination for matrix-based intra prediction |
CN110490845A (zh) * | 2019-07-26 | 2019-11-22 | 北京大米科技有限公司 | 一种图像特征提取方法、装置、存储介质及电子设备 |
CN111507071B (zh) * | 2020-04-17 | 2024-02-27 | 上海电气风电集团股份有限公司 | 风电场的编码方法、编码装置及计算机可读存储介质 |
CN112511843B (zh) * | 2020-11-19 | 2022-03-04 | 腾讯科技(深圳)有限公司 | 视频编码方法、装置、终端设备以及存储介质 |
CN113347403B (zh) * | 2021-04-19 | 2023-10-27 | 浙江大学 | 一种图像处理方法及装置 |
CN113660490A (zh) * | 2021-06-24 | 2021-11-16 | 浙江大华技术股份有限公司 | 编码单元的划分方法、编码方法、电子装置及存储介质 |
WO2023197832A1 (en) * | 2022-04-13 | 2023-10-19 | Mediatek Inc. | Method and apparatus of using separate splitting trees for colour components in video coding system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016091161A1 (en) * | 2014-12-10 | 2016-06-16 | Mediatek Singapore Pte. Ltd. | Method of video coding using binary tree block partitioning |
WO2017088170A1 (en) * | 2015-11-27 | 2017-06-01 | Mediatek Inc. | Entropy coding the binary tree block partitioning structure |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2010116869A1 (ja) * | 2009-04-08 | 2012-10-18 | シャープ株式会社 | 動画像符号化装置および動画像復号装置 |
BR122020008249B1 (pt) * | 2010-04-13 | 2021-02-17 | Ge Video Compression, Llc | herança em amostra de arranjo em subdivisão multitree |
US8576097B2 (en) * | 2010-07-06 | 2013-11-05 | Nokia Corporation | Coding using a mapping between a syntax element and a code word |
US20120170648A1 (en) | 2011-01-05 | 2012-07-05 | Qualcomm Incorporated | Frame splitting in video coding |
US8494290B2 (en) * | 2011-05-05 | 2013-07-23 | Mitsubishi Electric Research Laboratories, Inc. | Method for coding pictures using hierarchical transform units |
AU2012200345B2 (en) * | 2012-01-20 | 2014-05-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit |
CN102801976B (zh) * | 2012-08-03 | 2014-10-22 | 山东省科学院情报研究所 | 基于三维小波视频编码的帧间块模式选择方法 |
WO2014078068A1 (en) * | 2012-11-13 | 2014-05-22 | Intel Corporation | Content adaptive transform coding for next generation video |
WO2014120367A1 (en) * | 2013-01-30 | 2014-08-07 | Intel Corporation | Content adaptive parametric transforms for coding for next generation video |
EP3886433A3 (en) * | 2013-03-07 | 2021-10-27 | Telefonaktiebolaget LM Ericsson (publ) | Video transcoding |
CN103414891B (zh) * | 2013-07-19 | 2016-08-10 | 北京交通大学 | 一种hevc帧内编码的自底向上快速四叉树裁剪算法 |
US20170118486A1 (en) * | 2014-06-11 | 2017-04-27 | Lg Electronics Inc. | Method And Apparatus For Encoding And Decoding Video Signal Using Embedded Block Partitioning |
KR20170128390A (ko) * | 2015-03-19 | 2017-11-22 | 엘지전자 주식회사 | 비디오 신호의 처리 방법 및 이를 위한 장치 |
CN104853220B (zh) * | 2015-05-18 | 2017-08-25 | 武汉随锐亿山科技有限公司 | 一种hevc编码四叉树的递推译码方法 |
WO2017008263A1 (en) * | 2015-07-15 | 2017-01-19 | Mediatek Singapore Pte. Ltd. | Conditional binary tree block partitioning structure |
JP6866369B2 (ja) * | 2015-11-24 | 2021-04-28 | サムスン エレクトロニクス カンパニー リミテッド | 符号化順序符号化方法及びその装置、該復号方法及びその装置 |
CN105721866B (zh) * | 2016-02-01 | 2019-02-12 | 北京奇艺世纪科技有限公司 | 一种编码单元划分方法及装置 |
CN116567236A (zh) * | 2016-12-16 | 2023-08-08 | 夏普株式会社 | 图像解码方法 |
US11539952B2 (en) * | 2019-03-12 | 2022-12-27 | Qualcomm Incorporated | Implicit transform selection in video coding |
US20220232255A1 (en) * | 2019-05-30 | 2022-07-21 | Sharp Kabushiki Kaisha | Image decoding apparatus |
-
2017
- 2017-06-28 CN CN202011327789.3A patent/CN112601084A/zh active Pending
- 2017-06-28 CN CN201710509138.8A patent/CN109151468B/zh active Active
- 2017-06-28 CN CN202011327920.6A patent/CN112822491B/zh active Active
- 2017-06-28 CN CN202011327518.8A patent/CN112601083A/zh active Pending
- 2017-06-28 CN CN202011329058.2A patent/CN112601085A/zh active Pending
-
2018
- 2018-03-09 KR KR1020217034782A patent/KR102478441B1/ko active IP Right Grant
- 2018-03-09 CA CA3068551A patent/CA3068551A1/en active Pending
- 2018-03-09 JP JP2019572511A patent/JP6915105B2/ja active Active
- 2018-03-09 AU AU2018290360A patent/AU2018290360B9/en active Active
- 2018-03-09 KR KR1020207002490A patent/KR102320023B1/ko active IP Right Grant
- 2018-03-09 SG SG11201913535UA patent/SG11201913535UA/en unknown
- 2018-03-09 EP EP18824528.6A patent/EP3637782A4/en active Pending
- 2018-03-09 WO PCT/CN2018/078498 patent/WO2019001006A1/zh unknown
- 2018-03-09 RU RU2020103339A patent/RU2754870C2/ru active
- 2018-04-03 TW TW107111799A patent/TWI674790B/zh active
-
2019
- 2019-12-27 US US16/728,287 patent/US10834430B2/en active Active
-
2020
- 2020-01-02 PH PH12020500016A patent/PH12020500016A1/en unknown
- 2020-01-08 MX MX2023010008A patent/MX2023010008A/es unknown
- 2020-01-08 MX MX2023010006A patent/MX2023010006A/es unknown
- 2020-10-27 US US16/949,362 patent/US11277648B2/en active Active
-
2021
- 2021-07-14 JP JP2021116530A patent/JP7189282B2/ja active Active
- 2021-12-31 US US17/646,707 patent/US11695968B2/en active Active
-
2022
- 2022-12-01 JP JP2022192791A patent/JP7437485B2/ja active Active
-
2023
- 2023-03-08 AU AU2023201428A patent/AU2023201428C1/en active Active
- 2023-05-22 US US18/200,141 patent/US12069317B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016091161A1 (en) * | 2014-12-10 | 2016-06-16 | Mediatek Singapore Pte. Ltd. | Method of video coding using binary tree block partitioning |
WO2017088170A1 (en) * | 2015-11-27 | 2017-06-01 | Mediatek Inc. | Entropy coding the binary tree block partitioning structure |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020186117A1 (en) * | 2019-03-12 | 2020-09-17 | Beijing Dajia Internet Information Technology Co., Ltd. | Methods and apparatus of video coding for triangle prediction |
US11134261B2 (en) | 2019-03-12 | 2021-09-28 | Beijing Daija Internet Information Technology Co., Ltd. | Methods and apparatus of video coding for triangle prediction |
JP2022535665A (ja) * | 2019-04-23 | 2022-08-10 | オッポ広東移動通信有限公司 | 画像デコーディング方法、デコーダおよび記憶媒体 |
JP7309909B2 (ja) | 2019-04-23 | 2023-07-18 | オッポ広東移動通信有限公司 | 画像デコーディング方法、デコーダおよび記憶媒体 |
US11882318B2 (en) | 2019-04-23 | 2024-01-23 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for picture decoding, decoder and storage medium |
US11930223B2 (en) | 2019-04-23 | 2024-03-12 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for picture decoding, decoder and storage medium |
JP7490863B2 (ja) | 2019-04-23 | 2024-05-27 | オッポ広東移動通信有限公司 | 画像デコーディング方法、デコーダおよび記憶媒体 |
CN114467308A (zh) * | 2019-09-22 | 2022-05-10 | 北京字节跳动网络技术有限公司 | 视频处理中的参考图片重采样 |
CN114467308B (zh) * | 2019-09-22 | 2024-04-12 | 北京字节跳动网络技术有限公司 | 视频处理中的参考图片重采样 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019001006A1 (zh) | 一种图像数据的编码、解码方法及装置 | |
TWI667914B (zh) | 一種影像資料的編碼、解碼方法及裝置 | |
CN108304753B (zh) | 视频通信方法及视频通信装置 | |
CN105992001A (zh) | 一种对图片进行量化处理的方法及装置 | |
US20240095966A1 (en) | Coding of displacements by use of contexts for vertex mesh (v-mesh) | |
CN113066139A (zh) | 图片处理方法和装置、存储介质及电子设备 | |
CN109003313B (zh) | 一种传输网页图片的方法、装置和系统 | |
RU2773641C2 (ru) | Способ и устройство кодирования данных изображения, способ и устройство декодирования данных изображения | |
BR112019027732B1 (pt) | Método e aparelho de codificação de dados de imagem e método e aparelho de decodificação de dados de imagem | |
BR122024002650A2 (pt) | Método e aparelho de codificação de dados de imagem e método e aparelho de decodificação de dados de imagem | |
CN117742577A (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN116996681A (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: 18824528 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 3068551 Country of ref document: CA Ref document number: 2019572511 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112019027732 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 20207002490 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2018824528 Country of ref document: EP Effective date: 20200111 |
|
ENP | Entry into the national phase |
Ref document number: 2018290360 Country of ref document: AU Date of ref document: 20180309 Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 112019027732 Country of ref document: BR Kind code of ref document: A2 Effective date: 20191223 |