WO2012097743A1 - 图像编解码方法及编解码设备 - Google Patents

图像编解码方法及编解码设备 Download PDF

Info

Publication number
WO2012097743A1
WO2012097743A1 PCT/CN2012/070595 CN2012070595W WO2012097743A1 WO 2012097743 A1 WO2012097743 A1 WO 2012097743A1 CN 2012070595 W CN2012070595 W CN 2012070595W WO 2012097743 A1 WO2012097743 A1 WO 2012097743A1
Authority
WO
WIPO (PCT)
Prior art keywords
image block
value
point
dividing line
parameter value
Prior art date
Application number
PCT/CN2012/070595
Other languages
English (en)
French (fr)
Inventor
郑萧桢
于浩平
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP12736384.4A priority Critical patent/EP2658256B1/en
Publication of WO2012097743A1 publication Critical patent/WO2012097743A1/zh
Priority to US13/945,541 priority patent/US9521407B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to an image encoding and decoding method and a codec device. Background technique
  • video data may be compressed using a variety of video compression methods, including: intra-frame compression and inter-frame compression.
  • intra-frame compression and inter-frame compression.
  • inter-frame compression method based on motion estimation is adopted.
  • the process of encoding and encoding the image by the encoding end of the image by the encoding end includes: The encoding end divides the image block to be encoded into several sub-image blocks of equal size.
  • the image block that best matches the current sub-image block as a prediction block and then subtracting the corresponding pixel value of the sub-image block from the prediction block to obtain a residual, and the residual
  • the value obtained by the transform and the quantization is entropy encoded, and finally the bit stream and the motion vector information obtained by the entropy coding are sent to the decoding end, wherein the motion vector information indicates the position difference between the current sub-image block and the prediction block.
  • the entropy encoded bit stream is first obtained, and entropy decoding is performed to obtain a corresponding residual, and corresponding motion vector information; and then the corresponding matching image block is obtained in the reference image according to the motion vector information (ie, the above prediction block) And adding, according to the value of each pixel in the matching image block and the value of the corresponding pixel in the residual value, the value of each pixel in the current sub-image block is obtained.
  • the sub-image block performs the above motion estimation and motion compensation with these sizes, and the encoding end of the image needs to transmit the codeword of the identification image block division mode to the decoding end of the image, so that the decoding end of the image knows the division manner of the image encoding end. And determining a corresponding prediction block according to the division manner and the motion vector information.
  • these sub-image blocks are rectangular blocks of NXM (N and M are integers greater than 0), and N and M have a multiple relationship.
  • the image block is divided into rectangular blocks, and the disadvantage is that there is no good test.
  • the image usually contains texture information in various directions, and the textures are often not a rectangular area; and an image generally contains multiple objects, objects and objects or objects.
  • a rectangular area may contain information about two objects or an object and the background of the image.
  • the rectangular area is divided into two non-rectangular or asymmetric A rectangular area (or may be referred to as two irregularly divided areas).
  • the motion estimation is performed by using the NXM rectangular block in the existing standard, and a good prediction result cannot be obtained.
  • a non-block division method is proposed, that is, the image block of 2Nx2N is divided into two arbitrary shape sub-image blocks, where N is a positive integer greater than 0, and the shape of the sub-image block can be triangle, quadrilateral, pentagon, etc. . Since the 2Nx2N image block introduces a non-block division method, the image block needs to use an additional identification method for identifying the non-block division method used by the current image block. At present, the non-block division identification method has an image block geometric division method (Geome t ry Par t i t i on ).
  • the basic principle of the geometric division method is to fit the dividing line of the image block by defining the angle ⁇ and the distance p, by which the image block is divided into two sub-image blocks, and the two sub-image block shapes may be square or non-square.
  • the above distance p refers to the distance from the center point of the image block to the dividing line as shown in Fig. 1
  • the angle ⁇ refers to the rotation angle of the image block dividing line with respect to the X axis as shown in Fig. 1.
  • the dividing line is fitted by the following formula:
  • Embodiments of the present invention provide an image coding and decoding method and a codec device, which can reduce the complexity of determining an image block division mode by an image coding end.
  • An image encoding method comprising:
  • a second length is a distance of a corresponding point of the image block at a boundary of the image block to an end point of the dividing line; An intersection of the dividing line with a boundary of the image block or an extension of a boundary of the image block; wherein the position parameter value represents a relative position of an end point of the dividing line in a reference direction with a reference end point; The direction, the first length, the second length, and the ratio value, determining a division mode of the image block; encoding the image block according to a division mode of the image block; wherein, the first length is the The distance from the point of the image block to the boundary of the image block;
  • the direction parameter value, the scale value, and the position parameter value are encoded, wherein the direction parameter value indicates the direction of the dividing line.
  • An image decoding method includes:
  • the direction parameter value indicates the direction of the dividing line
  • the position parameter value indicates the relative position of the end point of the dividing line in the reference direction with the reference end point
  • the end point of the dividing line is the boundary or the boundary between the dividing line and the image block The intersection of the extension lines of the boundaries of the image block
  • the image block division mode is determined according to a direction of dividing the line, a first length, a second length, and a scale value, wherein the first length is a distance from a point of the image block to a boundary of the image block.
  • An encoding device comprising:
  • a length determining unit configured to determine a second length according to a direction of the dividing line, a scaling value, and a position parameter value, where the second length is a distance of a corresponding point of the image block at a boundary of the image block to an end point of the dividing line;
  • An endpoint of the dividing line is an intersection of the dividing line with a boundary of the image block or an extension of a boundary of the image block; wherein the position parameter value indicates that an endpoint of the dividing line is in a reference direction and a reference end point relative position;
  • a division mode determining unit configured to determine a division mode of the image block according to a direction of the dividing line, a first length, a second length, and the scale value; wherein the first length is a point of the image block to the image block The distance of the boundary;
  • a coding unit configured to encode the image block according to a division mode of the image block; and encode a direction parameter value, a proportional value, and a position parameter value, where the direction parameter value indicates a direction of the dividing line .
  • a decoding device comprising: a decoding unit, configured to parse the code stream, obtain a direction parameter value, a scale value, and a position parameter value; wherein, the direction parameter value represents a direction of the dividing line; and the position parameter value represents a relative position of the end point of the dividing line in the reference direction with the reference end point ;
  • a length determining unit configured to determine a second length according to a direction of the dividing line, a proportional value, and a position parameter value; the second length is a distance of a corresponding point of the image block at a boundary of the image block to an end point of the dividing line;
  • An image block division mode determining unit configured to determine the image block division mode according to a direction of the dividing line, a first length, a second length, and a scale value, wherein the first length is a point of the image block to a boundary of the image block distance.
  • the second length is determined by using a dividing line direction, a proportional value, and a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, and further according to the direction of the dividing line, the first length, and the first a length and a scale value, determining a division mode of the image block, wherein the first length is a distance from a point of the image block to a boundary of the image block; and a second length is a point of the image block at a boundary of the image block Corresponding to the distance from the point to the end point of the dividing line, thus, the fitting of the dividing line is not required, and the complexity of determining the image block dividing mode by the image encoding end and the image decoding end is reduced.
  • FIG. 1 is a schematic diagram of a dividing line fitting provided by the prior art
  • FIG. 2A is a flowchart of an image encoding method according to an embodiment of the present invention.
  • 2B is a flowchart of an image decoding method according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of an image encoding method according to another embodiment of the present invention.
  • FIG. 4 is a schematic diagram of image segmentation from the upper right to the lower left direction according to an embodiment of the present invention
  • FIG. 5 is another schematic diagram of image segmentation from the upper right to the lower left direction according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of image segmentation from the lower left to the upper right direction according to an embodiment of the present invention
  • FIG. 7 is another schematic diagram of image segmentation from the lower left to the upper right direction according to an embodiment of the present invention.
  • FIG. 13 is a flowchart of an image decoding method according to an embodiment of the present invention.
  • FIG. 14 is a structural diagram of an encoding device according to an embodiment of the present invention.
  • FIG. 15 is a structural diagram of a decoding device according to an embodiment of the present invention.
  • FIG. 16 is a structural diagram of a system according to an embodiment of the present invention. detailed description
  • an embodiment of the present invention provides an image encoding method, including:
  • the first length and the second length may be determined according to the direction of the dividing line, the proportional value, and the position parameter value, where the first length is a distance from a point of the image block to a boundary of the image block; the second length is the a distance of a point of the image block from a corresponding point on a boundary of the image block to an end point of the dividing line; an end point of the dividing line is an extension of a boundary between the dividing line and the image block or a boundary of the image block An intersection of the lines; wherein the position parameter value represents a relative position of the end point of the dividing line in the reference direction with the reference end point.
  • the execution body of each step of the embodiment is an image coding end.
  • the reference direction may be a horizontal direction or a vertical direction; a corresponding point of the image block at a boundary of the image block is: a vertical projection point of a point of the image block on a boundary of the image block;
  • the corresponding point of the image block at the boundary of the image block is: located on the boundary of the image block, and a point of the image block having a point of the same abscissa;
  • a boundary of the image block is a left or right boundary of the image block, a corresponding point of the point of the image block on a boundary of the image block is : A point located on the boundary of the image block and having the same ordinate as the point of the image block.
  • the ratio value may represent a ratio of the first distance to the second distance, where the first distance is a distance from a non-boundary point on the dividing line to a boundary of the image block; and the second distance is a non-boundary point on the dividing line. a distance from a corresponding point on a boundary of the block to an end point of the dividing line; wherein, a corresponding point on the boundary of the image block is a non-boundary point on the dividing line in the image block Vertical projection points on the boundary.
  • a corresponding point on a boundary of the image block on a boundary of the image block is: located on a boundary of the image block, and a point having the same abscissa as a point on the dividing line; when a boundary of the image block is a left or right boundary of the image block, a point on the dividing line is on a boundary of the image block
  • the corresponding points are: points on the boundary of the image block and having the same ordinate as the points on the dividing line.
  • the absolute value of the position parameter value indicates the distance of the end point of the dividing line from the reference end point in the reference direction; the different sign of the position parameter value indicates that the end point of the dividing line is located on a different side of the reference end point.
  • the sign of the position parameter value indicates whether the end point of the dividing line is located on the left side or the right side of the reference end point; when the reference direction is the vertical direction, the sign of the position parameter value indicates that the end point of the dividing line is located in the reference The upper side or the lower side of the end point.
  • the reference endpoint is: an intersection of a line parallel to the dividing line and passing through a center of the image block and a boundary of the image block.
  • the point of the image block in this embodiment may be a pixel point of the image block; the point on the dividing line is a pixel point on the dividing line.
  • the specific process of determining the first length and the second length according to the direction of the dividing line, the proportional value, and the position parameter value includes: the coordinates of the center point of the image block when the direction of the dividing line is from the upper left to the lower right
  • the coordinates of the reference endpoint are determined as: (0, N - N / scalar); when the direction of the dividing line is from the upper right to the lower left, the coordinates of the center point of the image block are (N-1, N-1), determining that the coordinates of the reference endpoint are: (0, N-1 + N/scalar); wherein scalar is the scale value; wherein, the size of the image block is 2Nx2N
  • the coordinates of the point in the upper left corner of the image block are (0, 0); determining the position of the end point of the dividing line according to the coordinates of the reference end point and the position parameter value; And determining a second length.
  • the first length and the second length may be determined according to
  • the division mode of the image block indicates the size and shape of the sub-image block into which the image block is divided. Specifically, when the direction of the dividing line is from the upper right to the lower left, when the value of L2 multiplied by scalar is greater than L1, the point of the image block belongs to the first sub-image block; when the value of L2 multiplied by scalar is smaller than LI, the point of the image block belongs to the second sub-image block; when the value of L2 multiplied by scalar is equal to L1, the point of the image block is located on the dividing line; when the direction of the dividing line is from the upper left to the lower right When the value of L2 multiplied by scalar is greater than -L1, the point of the image block belongs to the first sub-image block; when the value of L2 multiplied by scalar is less than -L1, the point of the image block belongs to the second sub-image block; The value of L2 multiplied by scalar is equal to
  • the first sub-image block and the second sub-image block are two sub-image blocks into which the image block is divided; the L2 is an abscissa of an end point of the dividing line minus a point of the image block in the image block The difference in the abscissa of the corresponding point on the boundary; the absolute value of L2 is the second length; L1 is the first length.
  • the boundary of the image block may be an upper boundary of the image block.
  • the first sub-image block may be the sub-image block 0 in FIG. 4, FIG. 5, FIG. 6, and FIG. 7; the second sub-image block may be the sub-image block in FIG. 4, FIG. 5, FIG. 6, and FIG. 1.
  • 203A encode the image block according to a division mode of the image block; encode a direction parameter value, a scale value, and a position parameter value, where the direction parameter value indicates a direction of the dividing line.
  • the step may encode the index value corresponding to any one of the direction parameter value, the proportional value, and the position parameter value, and directly perform the other two values.
  • Encoding that is, encoding the index value corresponding to the direction parameter value, and directly encoding the proportional value and the position parameter value; or encoding the index value corresponding to the proportional value, the direction parameter value and the position parameter The value is directly encoded; or, the index value corresponding to the absolute value of the position parameter value is encoded, and the direction parameter value and the proportional value are directly encoded.
  • the step encodes the direction parameter value, the scale value, and the position parameter value
  • the index value corresponding to the two values of the direction parameter value, the scale value, and the position parameter value may be encoded to another value. Encoding or encoding an index value corresponding to the another value; the other value is a value other than the two values of the direction parameter value, the proportional value, and the position parameter value.
  • the step encodes the direction parameter value, the scale value, and the position parameter value
  • the index value corresponding to the direction parameter value, the scale value, and the position parameter value is encoded.
  • the second length is determined by using a dividing line direction, a proportional value, and a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, and further according to the first length, the second length, and the dividing line.
  • the direction and scale values determine the division mode of the image block, wherein the first length is The distance from the point of the image block to the boundary of the image block; the second length is the distance from the corresponding point of the image block at the boundary of the image block to the end point of the dividing line, so that the dividing line does not need to be performed
  • the fitting reduces the complexity of determining the image block division mode by the image encoding end. Referring to FIG. 2B, an embodiment of the present invention provides an image decoding method, including:
  • the execution body of each step of the embodiment is an image decoding end.
  • the method of parsing the code stream and obtaining the direction parameter value includes: parsing the code stream, obtaining the first index value, and acquiring the parameter value corresponding to the first index value, and the obtained parameter value is the direction parameter value.
  • the method for parsing the code stream and obtaining the scale value includes: parsing the code stream, obtaining the second index value, obtaining the parameter value corresponding to the second index value, and obtaining the parameter value as a proportional value; parsing the code stream, obtaining the position
  • the parameter value includes: parsing a code stream, obtaining a third index value, obtaining a parameter value corresponding to the third index value, and obtaining the parameter value as an absolute value of the position parameter value; parsing the code stream, obtaining a direction parameter value
  • the method of the ratio value and the location parameter value may include: parsing the code stream, obtaining a fourth index value and a fifth index value; acquiring a parameter value corresponding to the fourth index value, and the parameter corresponding to the fourth index
  • the first length and the second length may be determined according to the direction of the dividing line, the proportional value, and the position parameter value, where the first length is a distance from a point of the image block to a boundary of the image block; the second length is the a distance of a point of the image block from a corresponding point on a boundary of the image block to an end point of the dividing line; an end point of the dividing line is an extension of a boundary between the dividing line and the image block or a boundary of the image block The intersection of the lines.
  • the manner of determining the first length and the second length in the step is the same as that determined in the foregoing embodiment, and details are not described herein again.
  • the point of the image block may be a pixel point of the image block, and the point on the dividing line may be a pixel point on the dividing line.
  • the division mode of the image block indicates the size and shape of the sub-image block into which the image block is divided.
  • the image decoding end may decode the encoding result of the image block by the image encoding end according to the division mode of the image block, and obtain the value of each pixel of the image block.
  • the second length is determined by using a dividing line direction, a proportional value, and a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, and further according to the first length, the second length, and the dividing line.
  • the direction and scale values determine a division mode of the image block, the first length being the distance from the point of the image block to the boundary of the image block; and the second length being the corresponding point of the point of the image block on the boundary of the image block to The distance of the end points of the line is divided, so that the fitting of the dividing line is not required, and the complexity of determining the image block dividing mode by the image decoding end is reduced.
  • FIG. 3 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • the image encoding method includes:
  • Step 301 The image encoding end determines a direction of the dividing line, a scale value scalar, and a position parameter value pos. Specifically, in this step, the image encoding end may determine the direction, the scale value, and the position parameter value of the dividing line according to the dividing command input by the user. At this time, the dividing command input by the user includes the indication information of the direction of the dividing line, and the proportional value. And a position parameter value, wherein the user can determine the direction of the dividing line, the scale value scalar, and the position parameter value pos according to the texture of the image, the boundary of the object, and the background boundary of the image.
  • the image encoding end determines the direction, the scale value, and the position parameter value of the dividing line according to a certain rule.
  • the image encoding end may determine the direction of the dividing line according to the texture of the image, the boundary of the object, and the background boundary of the image, and the scaling value scalar And the position parameter value pos.
  • the direction of the dividing line may be from the upper left to the lower right, or from the upper right to the lower left, the scale value scalar
  • the definition of the correlation with the position parameter value pos is the same as the related definition of the proportional value and the position parameter value in the embodiment corresponding to FIG. 2A, and details are not described herein again.
  • the embodiment of the present invention assumes that the upper left corner of the image block is the coordinate system origin, the oblique solid line indicates the dividing line of the image block, and the oblique dotted line indicates the reference line, wherein the reference line is a line parallel to the dividing line and passing through the center of the image block. .
  • the dividing line in each figure divides the image block into two sub-image blocks, sub-picture block 0 and sub-picture block 1.
  • the intersection point of the dividing line and the upper boundary of the image block in FIG. 4 is A, and the intersection point with the left boundary of the image block is B; the intersection point of the dividing line in FIG.
  • the intersection of the extension lines of the left boundary is B; the intersection of the division line and the upper boundary of the image block in Fig. 6 is A; the intersection of the division line in Fig. 7 and the upper boundary extension line of the image block is A.
  • the pixel point Q is a pixel on the dividing line, assuming that its coordinate is ( y, x ), the pixel point Q is at the vertical projection point of the upper boundary of the image block (ie, located on the upper boundary of the image block and with the pixel point Pixels with the same abscissa) are Q,.
  • the vertical distance of the pixel point Q to the upper boundary of the image block is the ordinate of the pixel point, that is, y; assuming the pixel point Q, the distance to the intersection point A is ⁇ , then scalar is:
  • scalar BO/AO, where BO is the distance from the intersection point B to the pixel point 0; AO is the distance from the intersection point A to the pixel point 0, and the pixel point 0 is the pixel located at the upper left corner of the image block.
  • the value of scalar is determined, that is, the angle between the dividing line and the horizontal direction is determined, wherein the value of scalar may be 2, 1/2, 3, 1/3; 4; /4, etc., the angle between the corresponding dividing line and the horizontal direction is 63.4 degrees, 26.6 degrees, 71.6 degrees, 18.4 degrees, 76 degrees, 14 degrees.
  • Step 302 The image encoding end determines the coordinates of the reference endpoint according to the direction and the scale value of the dividing line. As can be seen from FIGS. 4 and 5 or from FIGS. 6 and 7, the position of the end point A of the dividing line is different when pos is greater than 0 and less than 0.
  • the endpoint A of the dividing line corresponding to the two poss is symmetrically distributed with respect to the reference endpoint C (ie, the intersection of the dividing line and the upper boundary when the value of pos is 0),
  • the position of the reference end point C determines the position of the intersection of the dividing line with the upper boundary of the image or the upper boundary extension line (end point A of the dividing line) when pos is not 0.
  • the L1 of the pixel of the image block ie, the distance from the pixel of the image block to the boundary of the image block
  • L2 ie, the abscissa of the endpoint of the dividing line minus the pixel of the image block in the
  • the difference in the abscissa of the corresponding point on the boundary of the image block, the position of the end point A of the dividing line needs to be determined, and thus the position of the reference end point needs to be determined. Since the coding efficiency of the identification parameters (direction parameter value, proportional value, and position parameter value) for any block is high, when the pos value is 0, the division line should ensure that the image block is equally divided or equally divided.
  • the dividing line should pass through the center point of the image block, and the image block size is 2Nx2N, and the coordinates of the pixel point in the upper left corner of the image block are (0, 0), which is assumed in the image block in the embodiment of the present invention.
  • the points are all changed in units of integer pixels, and the center point coordinates of the image block may be (N-1, N-1) or (N, N-1) or (N-1, N) or (N, N).
  • the coordinates of the center point of the image block are (N-1, N), and the coordinates of the reference end point are determined as: (0, N - N/ Scalar); when the direction of the dividing line is from the upper right to the lower left, the coordinates of the center point of the image block are (N-1, N-1), and the coordinates of the reference end point are determined as: (0, N-1) + N/scalar); where scalar is the scale value.
  • Step 303 The image encoding end determines the position of the end point of the dividing line according to the coordinates of the reference end point and the pos value.
  • the sign of the p 0S value indicates whether the end point of the dividing line is located on the left side or the right side of the reference end point;
  • the sign of the pos value indicates whether the end point of the dividing line is located on the upper side or the lower side of the reference end point.
  • the specific side of the endpoint of the determined dividing line ie, when the reference direction is the horizontal direction, whether the specific side is the left side or the right side, the reference direction is the vertical direction, whether the specific side is the upper side or the lower side
  • the distance from the reference endpoint and the coordinates of the reference endpoint determine the coordinates of the endpoint of the dividing line.
  • Step 304 The image encoding end determines a distance L1 from a pixel point of the image block to a boundary of the image block according to the ratio value and a position of the end point of the dividing line, and an abscissa of the end point of the dividing line minus the image block.
  • the pixel is at a difference L2 of the abscissa of the corresponding point on the boundary of the image block.
  • Step 305 The image encoding end determines the division mode of the image block according to the directions L1 and L2, and the direction of the dividing line and the scalar.
  • the division mode of the image block indicates the size and shape of the two sub-image blocks into which the image block is divided.
  • the two sub-image blocks may be irregular sub-image blocks, and the two irregular sub-image blocks may be triangles or pentagons. Specifically, the two irregular sub-image blocks may all be triangles, or one sub-image block may be a triangle, another sub-image block may be a pentagon, or both sub-image blocks may be a pentagon, which does not affect the present. Implementation of the invention.
  • the following three methods are used to determine whether the point of the image block belongs to the sub-image block 0 or belongs to the sub-image block 1:
  • the first way When the first parameter value is 0, the direction of the dividing line of the image block is from the upper right to the top In the lower left, when the value of L2 multiplied by scalar is greater than or equal to L1, the point of the image block belongs to sub-image block 0; otherwise, the point of the image block belongs to sub-image block 1.
  • the point of the image block belongs to the sub-image block 0; Otherwise, the point of the image block belongs to sub-image block 1.
  • the point of the image block belongs to the sub-image block 0; otherwise, The point of the image block belongs to sub-picture block 1.
  • the point of the image block belongs to the sub-image block 0; otherwise The point of the image block belongs to the sub-image block 1.
  • the first parameter value is 0, that is, when the direction of the dividing line of the image block is from the upper right to the lower left, when the value of L2 multiplied by scalar is greater than L1, the point of the image block belongs to the sub-image block 0; otherwise, when The value of L2 multiplied by scalar is smaller than L1, and the point of the image block belongs to sub-image block 1; otherwise, the point of the image block is located on the image block dividing line, wherein the dividing line may be located in sub-image block 0 or may be located Sub-image block 1.
  • the first value is 1, that is, when the direction of the dividing line of the image block is from the upper left to the lower right, when the value of L2 multiplied by scalar is greater than -L1, the point of the image block belongs to the sub-image block 0; otherwise When the value of L2 multiplied by scalar is less than -L1, the point of the image block belongs to the sub-image block 1; otherwise, the point of the image block is located on the image block dividing line, wherein the dividing line may be located in the sub-image block 0. It can also be located in sub-image block 1.
  • Step 306 The image block encoding end searches for a prediction block in the reference image according to the division mode of the image block, where the prediction block is an image block that best matches the divided sub-image block; the image coding end is divided according to the sub-image block.
  • the image block and the corresponding prediction block obtain residual and motion vector information.
  • the residual is the difference between the divided sub-image block and the pixel value of the corresponding pixel of the prediction block; the motion vector information indicates the position difference between the divided sub-image block and the prediction block.
  • Step 307 The image coding end transforms and quantizes the residual, and then encodes and quantizes the value and the data header of the residual transformed and quantized to obtain a code stream and transmits the code stream.
  • the header includes: motion vector information indicating a direction parameter value dividing line direction, the scale value Scalar, the position parameter POS, order bad 1 J parameter set (sequence parameter set, sps), a picture parameter set (picture parameter set, Pps), strips, etc.
  • motion vector information indicating a direction parameter value dividing line direction
  • the scale value Scalar the position parameter POS
  • order bad 1 J parameter set sequence parameter set, sps
  • a picture parameter set picture parameter set
  • strips etc.
  • the manner of encoding the direction ⁇ ! history value, the scale value scalar, and the position parameter value pos is described in detail later.
  • the embodiment of the present invention determines the distance L1 from the pixel point of the image block to the boundary of the image block by using the dividing line direction, the scale value, and the position parameter value indicating the relative position of the end point of the dividing line in the reference direction and the reference end point, and The abscissa of the endpoint of the dividing line minus the difference L2 of the abscissa of the corresponding point of the pixel of the image block on the boundary of the image block, further determined according to L1 and L2, and the direction of the dividing line and scalar
  • the division mode of the image block so that there is no need to fit the dividing line, and the complexity of determining the image block dividing mode by the image encoding end is reduced.
  • the following embodiment will describe the image decoding method provided by the embodiment of the present invention in detail:
  • FIG. 13 is a flowchart of an image decoding method according to an embodiment of the present invention.
  • the image decoding method includes:
  • Step 1301 The image decoding end receives the code stream sent by the image encoding end, and parses the code stream to obtain a direction parameter value, a proportional value and a position parameter value, motion vector information, and a residual.
  • the direction parameter value, the proportional value, and the position parameter value are the same as those in the embodiment shown in FIG. 2A and FIG. 2B, and details are not described herein again.
  • Step 1302 The image decoding end determines the direction of the dividing line according to the direction parameter value.
  • the image decoding end determines whether the direction of the dividing line is along the upper right to the lower left or the lower left to the upper right according to the direction parameter value.
  • Step 1303 The image decoding end determines the coordinates of the reference endpoint according to the direction and the scale value of the dividing line. Specifically, the manner of determining the reference endpoint is similar to the corresponding description in step 302, and is not described here.
  • Step 1304 The image decoding end determines the position of the end point of the dividing line according to the coordinates of the reference end point and the pos value.
  • determining the position of the end point of the dividing line is similar to the corresponding description in step 303, This will not be repeated here.
  • Step 1305 The image decoding end determines, according to the ratio value and the position of the end point of the dividing line, a distance L1 of a point of the image block to a boundary of the image block, and an abscissa of the end point of the dividing line minus the image block. The difference L2 of the abscissa of the corresponding point on the boundary of the image block.
  • Step 1306 The image decoding end determines the division mode of the image block according to the L1 and L2, and the direction of the dividing line and the scalar.
  • determining the division mode of the image block is similar to the corresponding description in step 305, and details are not described herein.
  • the dividing line direction is from the upper right to the lower left
  • the coordinate value of the pixel point (y, x ) in the image block satisfies the following condition, the pixel point is located on the dividing line:
  • TerminalPosi - pos — x y/scalar
  • TerminalPosi is the abscissa of the reference endpoint.
  • the pixel points located on the dividing line may belong to the sub-image block labeled 0, or may belong to the sub-image block labeled 1 , and the image block label is as shown in FIG. 4 .
  • the pixel is located in sub-image block 1.
  • Step 1307 The image decoding end obtains the prediction block corresponding to the sub-image block in the reference image according to the division mode of the image block and the motion vector information.
  • Step 1308 The image decoding end obtains pixel values of each pixel of the sub-image block according to a residual corresponding to each pixel in each sub-image block and a prediction block corresponding to each sub-image block.
  • the embodiment of the present invention determines the distance L1 from the pixel point of the image block to the boundary of the image block by using the dividing line direction, the scale value, and the position parameter value indicating the relative position of the end point of the dividing line in the reference direction and the reference end point, and The abscissa of the endpoint of the dividing line minus the difference L2 of the abscissa of the corresponding point of the pixel of the image block on the boundary of the image block, further determined according to L1 and L2, and the direction of the dividing line and scalar
  • the division mode of the image block so that the division line is not required to be fitted, and the complexity of determining the image block division mode by the image decoding end is reduced.
  • the image encoding end encodes the direction parameter value
  • the image encoding end can separately encode the absolute value and the symbol of the pos. Specifically, when the absolute value of the p 0S is 0, the pos does not have a symbol, and only the absolute value of the pos can be encoded; When the absolute value of the pos is not 0, then the pos has a symbol, and the absolute value and the sign of the pos need to be encoded.
  • the absolute value of pos When encoding the absolute value of pos, the absolute value of pos can be changed as follows: 0, 2, 4, 6, 8, 10, 12, 14, that is, incremented by 2, 2 is a fixed step Long, at this time, the correspondence between the absolute value of pos and the index value is: The absolute value of pos is equal to the index value multiplied by the fixed step size.
  • the image encoding end does not need to encode the absolute value of pos but encodes the index value corresponding to the absolute value of pos, and obtains the codeword corresponding to the absolute value of pos and writes the code stream, and the corresponding index value may be 0, 1, 2, 3, 4, 5, 6, 7, such that the subsequent image decoding end first parses the codeword corresponding to the absolute value of pos in the code stream, and obtains the index value corresponding to the absolute value of pos, and then according to the correspondence between the absolute value of pos and the index value. , obtain the absolute value of pos corresponding to the decoded index value.
  • the fixed step size may be preset to the image encoding end and the image decoding end, or may be sent by the image encoding end to the image decoding end. If the fixed step size is sent by the image encoding end to the image decoding end, the image encoding end The fixed step size may be added to the sequence parameter set, the image parameter set or the slice header to be sent to the image decoding end, and the image decoding end determines the correspondence between the absolute value of the pos and the index value according to the fixed step size, thereby using the absolute value of the pos and The correspondence between the index values obtains the absolute value of pos corresponding to the decoded index value.
  • the mapping between the absolute value of the pos and the index value may also be a mapping relationship between the absolute value of the pos and the index value, for example, the absolute value of pos is 0, 2, 5, 9, 10, 11 , 13 , 15 , and its corresponding
  • the index value is 0, 1, 2, 3, 4, 5, 6, 7, and the image encoding end can obtain the index value corresponding to the determined absolute value of pos according to the mapping relationship between the preset absolute value of pos and the index value.
  • Encode the index value To the codeword corresponding to the absolute value of pos the codeword is written into the code stream and sent to the image decoding end; the image decoding end parses the code stream to obtain the codeword corresponding to the absolute value of the pos, and decodes the codeword to obtain an index.
  • the value determines the absolute value of pos corresponding to the index value according to the mapping relationship between the absolute value of pos and the index value.
  • the image encoding end may choose to adopt a fixed step size, or may select a mapping relationship between the fixed pos absolute value and the index value. If a fixed step size is used, the fixed step size may be added to the sequence parameter set and the image parameter set. Or the strip header is sent to the image decoding end; if the fixed pos absolute value is mapped to the index value, the indication information indicating that the fixed pos absolute value and the index value are mapped is added to the sequence parameter set, The image parameter set or strip header is sent to the image decoding end.
  • the image encoding end and the image decoding end may preset the correspondence between the scalar and the index value, and the image encoding end obtains the index value corresponding to the determined scalar according to the correspondence relationship, and encodes the index value to obtain scalar.
  • the codeword is written into the code stream and sent to the image decoding end.
  • the subsequent image decoding end parses the codeword corresponding to the proportional value in the code stream, and obtains the index value, and determines the scalar corresponding to the parsed index value according to the correspondence between the scalar and the index value.
  • the image encoding end and the image decoding end may preset different dividing line directions corresponding to different index values, for example, when the preset dividing line direction is from upper left to lower right, the dividing line direction corresponds to The index value is 00; when the dividing line direction is from the upper right to the lower left, the dividing line direction corresponds to the index value corresponding to the dividing line direction determined in step 301, and the index value is encoded and then the code stream is sent to the image.
  • Decoding end The subsequent image decoding end parses the code stream to obtain the index value, and determines the direction of the dividing line corresponding to the parsed index value according to the response relationship.
  • the index values corresponding to the three codes are respectively coded, thereby reducing the number of bits occupied by the coding, thereby reducing the length of the code stream.
  • the foregoing descriptions of the direction parameter value, the proportional value, and the position parameter value may each have a corresponding index value.
  • an embodiment of the present invention provides an encoding device, which may be specifically an image encoding device, which specifically includes:
  • the length determining unit 10 is configured to determine a second length according to the direction of the dividing line, the proportional value, and the position parameter value.
  • the first length and the second length may be determined according to the direction of the dividing line, the proportional value, and the position parameter value.
  • the direction of dividing the line may be from the upper left to the lower right, or from the upper right to the lower left.
  • the related definitions of the proportional value, the positional parameter value, the first length, and the second length are the same as the related definitions in the method embodiment, and are not described herein again.
  • a division mode determining unit 20 configured to determine a division mode of the image block according to a direction of the dividing line, a first length, a second length, and the scale value;
  • the encoding unit 30 is configured to encode the image block according to a division mode of the image block, and encode a direction parameter value, a proportional value, and a position parameter value, where the direction parameter value represents the dividing line direction.
  • the reference endpoint is: an intersection of a line parallel to the dividing line and passing through a center of the image block and a boundary of the image block;
  • the length determining unit 10 includes: a reference end position determining unit 11 for dividing the line
  • the coordinates of the center point of the image block are (N-1, N)
  • the coordinates of the reference endpoint are determined as: ( ⁇ , ⁇ - ⁇ /scalar)
  • the coordinates of the center point of the image block are (N-1, N-1)
  • the coordinates of the reference endpoint are determined to be: (0, N-1 + N/scalar);
  • scalar is the scale value; wherein, the size of the image block is 2Nx2N, the coordinates of the point in the upper left corner of the image block is (0, 0); and the dividing line end position determining unit 12 is configured to Determining a position of an end point of the dividing line, and
  • the value of L2 multiplied by scalar is greater than L1, the point of the image block belongs to the sub-first sub-image block; when the value of L2 multiplied by scalar is less than L1, the point of the image block belongs to the second sub-image block; when L2 is multiplied by The value of scalar is equal to L1, the point of the image block is on the dividing line; when the direction of the dividing line is from the upper left to the lower right, when the value of L2 multiplied by scalar is greater than -L1, the point of the image block belongs to a first sub-image block; when the value of L2 multiplied by scalar is less than -L1, the point of the image block belongs to the second sub-image block; when L2 is multiplied The value of the scalar is equal to -LI, the point of the image block is located on the dividing line; wherein the dividing line belongs to the first sub-image block and the second sub-image block; wherein the
  • the encoding unit 30 is specifically configured to encode an index value corresponding to one of a direction parameter value, a proportional value, and a position parameter value, and encode a value other than the one of the direction parameter value, the proportional value, and the position parameter value.
  • the encoding unit 30 is specifically configured to encode the index value corresponding to the two values of the direction parameter value, the scale value, and the position parameter value, and encode another value or correspond to the other value.
  • the index value is encoded; the other value is a value other than the two values of the direction parameter value, the proportional value, and the position parameter value; or, the coding unit is specifically configured to use the direction parameter value, the proportional value, and
  • the position parameter values are encoded by the index values corresponding to the three.
  • the encoding unit 30 encodes the direction parameter value, the scale value, and the position parameter value by the above method, and at the time of encoding, the number of bits occupied by the image block division mode identification parameter can be reduced.
  • the first length and the second length are determined by using a dividing line direction, a scale value, and a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, where the first length is a point of the image block. a distance to a boundary of the image block; a second length is a distance from a corresponding point of the image block at a boundary of the image block to an end point of the dividing line, further determining a dividing mode of the image block, such that It is necessary to fit the dividing line, which reduces the complexity of the image encoding device determining the image block dividing mode.
  • a decoding device which may be specifically an image decoding device, which specifically includes:
  • the decoding unit 50 is configured to parse the code stream, and obtain a direction parameter value, a scale value, and a position parameter value, where the code stream is sent by the encoding device to the decoding device; wherein the direction parameter value, the scale value, and the position length determining unit 60 And determining, according to the direction parameter value, the proportional value, and the position parameter value, the second length; specifically, determining the first length and the second length according to the direction parameter value, the proportional value, and the position parameter value; wherein, the first length
  • the related definitions of the second length are the same as those in the method embodiment, and are not described here;
  • the image block division mode determining unit 70 is configured to determine the image block division mode according to the direction of the dividing line, the first length, the second length, and the scale value.
  • the reference endpoint is: an intersection of a line parallel to the dividing line and passing through a center of the image block and a boundary of the image block;
  • the length determining unit 60 includes: a reference end position determining unit 61 for dividing the line
  • the coordinates of the center point of the image block are (N-1, N)
  • the coordinates of the reference endpoint are determined as: ( ⁇ , ⁇ - ⁇ /scalar)
  • the coordinates of the center point of the image block are (N-1, N-1)
  • the coordinates of the reference endpoint are determined to be: (0, N-1 + N/scalar);
  • scalar is the ratio value; wherein, the size of the image block is 2Nx2N, the coordinates of the point in the upper left corner of the image block is (0, 0); and the dividing line end position determining unit 62 is configured to Determining a position of an end point of the dividing line
  • the value of L2 multiplied by scalar is greater than L1, the point of the image block belongs to the sub-first sub-image block; when the value of L2 multiplied by scalar is less than L1, the point of the image block belongs to the second sub-image block; when L2 is multiplied by The value of scalar is equal to L1, the point of the image block is on the dividing line; when the direction of the dividing line is from the upper left to the lower right, when the value of L2 multiplied by scalar is greater than -L1, the point of the image block belongs to a first sub-image block; when the value of L2 multiplied by scalar is less than -L1, the point of the image block belongs to the second sub-image block; when the value of L2 multiplied by scalar is equal to -L1, the point of the image block is located at the dividing line
  • the dividing line belongs to the first sub-image block and the second sub-image block; wherein the first sub
  • the decoding unit 50 includes: a first decoding unit, configured to parse the code stream to obtain a direction parameter value; a second decoding unit, configured to parse the code stream to obtain a scale value; and a third decoding unit, configured to parse the code stream, and obtain a position parameter
  • the first decoding unit is configured to parse the code stream, obtain a first index value, and obtain a parameter value corresponding to the first index value, where the obtained parameter value is a direction parameter value; and/or,
  • the second decoding unit is configured to parse the code stream, obtain a second index value, and obtain a parameter value corresponding to the second index value, where the obtained parameter value corresponding to the second index value is a proportional value; and
  • the third decoding unit is configured to parse the code stream, obtain a third index value, and obtain a parameter corresponding to the third index value.
  • the value of the obtained third index value is the absolute value of the position parameter value.
  • the decoding unit 50 is specifically configured to parse the code stream, obtain a fourth index value and a fifth index value, and obtain a parameter value corresponding to the fourth index value, where the parameter value corresponding to the fourth index value includes the Two values of the direction parameter value, the proportional value, and the position parameter value; the parameter value corresponding to the fifth index value is obtained, and the parameter value corresponding to the fifth index value is: a direction parameter value, a proportional value, a position a value other than the two values in the parameter value; or, the decoding unit 50 is specifically configured to parse the code stream, and obtain one of a fourth index value and a direction parameter value, a proportional value, and a position parameter value; a parameter value corresponding to the fourth index value, where the parameter value corresponding to the fourth index value includes two values other than the one obtained by the direction parameter value, the proportional value, and the position parameter value; or, decoding The unit 50 is specifically configured
  • the first length and the second length are determined by using a dividing line direction, a scale value, and a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, where the first length is a point of the image block. a distance to a boundary of the image block; a second length is a distance from a corresponding point of the image block at a boundary of the image block to an end point of the dividing line, further determining a dividing mode of the image block, such that It is necessary to fit the dividing line, which reduces the complexity of determining the image block dividing mode by the image decoding device.
  • an embodiment of the present invention provides a network system, which includes: an encoding device 100 and a decoding device 200.
  • the structure and connection relationship of each unit in the encoding device 100 are described in detail in the corresponding embodiment of FIG.
  • FIG. 15 for a detailed description of the corresponding embodiment of the present invention, and details are not described herein again.
  • the network system determines the first length and the second length by using a dividing line direction, a scale value, a position parameter value indicating a relative position of the end point of the dividing line in the reference direction and the reference end point, and the first length is the point of the image block to The distance of the boundary of the image block; the second length is the distance from the corresponding point of the image block to the end point of the dividing line on the boundary of the image block, further determining the dividing mode of the image block, so that it is not required Fitting the dividing line reduces the complexity of determining the image block dividing mode by the image encoding end.

Description

图像编解码方法及编解码设备
技术领域
本发明涉及通信技术领域, 特别涉及一种图像编解码方法及编解码设备。 背景技术
为了尽量减少传送视频数据所需要的带宽, 可以采用多种视频压缩方法对 视频数据进行压缩, 其中视频压缩方法包括: 帧内压缩和帧间压缩。 现在多采 用基于运动估计的帧间压缩方法, 具体的, 图像的编码端采用帧间压缩方法对 图像压缩并编码的过程包括: 编码端将待编码图像块划分成若干个大小相等的 子图像块, 然后针对每个子图像块, 在参考图像中搜索与当前子图像块最匹配 的图像块作为预测块, 然后将该子图像块与预测块的相应像素值相减得到残差, 并将该残差经变换与量化后得到的值进行熵编码, 最后将熵编码得到的比特流 和运动矢量信息一并发给解码端, 其中, 运动矢量信息表示当前子图像块与预 测块的位置差。 在图像的解码端, 首先获得熵编码比特流后进行熵解码, 得到 相应的残差, 及相应的运动矢量信息; 然后根据运动矢量信息在参考图像中获 得相应的匹配图像块(即上述预测块), 再根据匹配图像块中各像素点的值和残 差值中对应像素点的值相加得到当前子图像块中各像素点的值。
在现有的视频编解码标准中, 如移动图像专家组( Moving Picture Experts Group, MPEG ) , H.264/AVC (Advanced Video Coding, 增强视频编码), 一个 图像块, 或称为宏块 (macroblock)、 超宏块 (super-macroblock)等, 被划分为若 干子图像块, 这些子图像块的尺寸为 16x16、 16x8、 8x16、 8x8、 8x4、 4x8、
4x4等,子图像块以这些尺寸进行上述的运动估计和运动补偿, 图像的编码端需 要将标识图像块划分方式的码字发送给图像的解码端, 以便图像的解码端获知 图像编码端的划分方式, 并根据该划分方式和运动矢量信息, 确定相应的预测 块。 在现有的视频编解码标准中这些子图像块均为 NXM(N和 M均为大于 0的 整数)的矩形块, 并且 N和 M具有倍数关系。
现有视频编解码标准中将图像块划分成矩形块, 其缺点在于没有很好的考 虑图像的纹理信息和物体的边界信息, 图像通常包含了各种方向的纹理信息, 这些纹理对应的往往不是一个矩形区域; 并且, 一幅图像中一般包含了多个物 体, 物体与物体间或物体与图像背景间会出现明显的边界, 因此一个矩形区域 可能会包含了两个物体或一个物体与图像背景的信息, 从图像内容来看, 该矩 形区域被划分成了两个非矩形或非对称矩形的区域(或可被称为两个非规则划 分区域)。 此时, 再使用现有标准中的 NXM矩形块的方式进行运动估计, 不能 获得好的预测结果。
针对上述问题, 提出了非方块划分方法, 即 2Nx2N 的图像块划分为两个任 意形状子图像块, 其中 N为大于 0的正整数, 子图像块的形状可以为三角形、 四边形、 五边形等。 由于 2Nx2N 图像块引入了非方块划分方法, 图像块需要使 用额外的标识方式用于标识当前图像块所采用的非方块划分方式。 目前已有的 非方块划分标识方法有图像块几何划分方法(Geome t ry Par t i t i on )。 几何划分 方法的基本原理是通过定义角度 Θ和距离 p拟合出图像块的划分线, 通过该划 分线将图像块划分成两个子图像块, 这两个子图像块形状可以为方块或非方块。 上述距离 p是指如图 1 所示图像块中心点到划分线的距离, 角度 Θ是指如图 1 所示图像块划分线相对于 X轴的旋转角度。 划分线通过以下公式进行拟合:
- 1 p
y = X +— = mx + c
tan Θ sin θ 现有技术具有如下缺点:
图像块的划分线需要通过公式拟合, 拟合过程中需要进行乘除法及三角函 数运算。由于任意块划分的模式不止一种,如对于一个 16x16尺寸的图像块而言, 上述角度 Θ若以 1 1. 25度为单位从 0递增 360度, 距离 ρ以 1为单位递增从 0递增至 8 (图像块边长的一半), 则共有(360/ 1 1. 25) X 8 = 256种划分方式, 若所有的 划分方式均需要通过上述公式进行拟合, 则增加了图像编码端确定图像块划分 方式的复杂度。 发明内容
本发明实施例提供一种图像编解码方法及编解码设备, 其能够减少图像编 码端确定图像块划分模式的复杂度。
有鉴于此, 本发明实施例提供: 一种图像编码方法, 包括:
根据划分线的方向、 比例值和位置参数值, 确定第二长度, 第二长度为图 像块的点在图像块的边界上的对应点到划分线的端点的距离; 所述划分线的端 点为所述划分线与所述图像块的边界或者所述图像块的边界的延长线的交点; 其中, 所述位置参数值表示划分线的端点在参考方向上与参考端点的相对位置; 根据划分线的方向、 第一长度、 第二长度和所述比例值, 确定所述图像块 的划分模式; 根据所述图像块的划分模式, 对所述图像块进行编码; 其中, 第 一长度为所述图像块的点到图像块的边界的距离;
对方向参数值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表 示所述划分线的方向。
一种图像解码方法, 包括:
解析码流, 获得方向参数值、 比例值和位置参数值;
其中, 方向参数值表示划分线的方向; 位置参数值表示划分线的端点在参 考方向上与参考端点的相对位置; 所述划分线的端点为所述划分线与所述图像 块的边界或者所述图像块的边界的延长线的交点;
根据划分线的方向、 比例值和位置参数值, 确定第二长度, 第二长度为图 像块的点在所述图像块的边界上的对应点到划分线的端点的距离;
根据划分线的方向、 第一长度、 第二长度和比例值, 确定所述图像块划分 模式, 其中, 第一长度为所述图像块的点到图像块的边界的距离。
一种编码设备, 包括:
长度确定单元, 用于根据划分线的方向、 比例值和位置参数值, 确定第二 长度, 第二长度为图像块的点在图像块的边界上的对应点到划分线的端点的距 离; 所述划分线的端点为所述划分线与所述图像块的边界或者所述图像块的边 界的延长线的交点; 其中, 所述位置参数值表示划分线的端点在参考方向上与 参考端点的相对位置;
划分模式确定单元, 用于根据划分线的方向、 第一长度、 第二长度和所述 比例值, 确定所述图像块的划分模式; 其中, 第一长度为图像块的点到所述图 像块的边界的距离;
编码单元, 用于根据所述图像块的划分模式, 对所述图像块进行编码; 对 方向参数值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表示所述 划分线的方向。
一种解码设备, 包括: 解码单元, 用于解析码流, 获得方向参数值、 比例值和位置参数值; 其中, 方向参数值表示划分线的方向; 位置参数值表示划分线的端点在参考方向上与 参考端点的相对位置;
长度确定单元, 用于根据划分线的方向、 比例值和位置参数值, 确定第二 长度; 第二长度为图像块的点在图像块的边界上的对应点到划分线的端点的距 离;
图像块划分模式确定单元, 用于根据划分线的方向、 第一长度、 第二长度 和比例值, 确定所述图像块划分模式, 其中, 第一长度为图像块的点到图像块 的边界的距离。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者确定第二长度, 进一步根据划分线的 方向、 第一长度、 第二长度和比例值, 确定了图像块的划分模式, 其中第一长 度为图像块的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图 像块的边界上的对应点到划分线的端点的距离, 这样, 就不需要对划分线进行 拟合, 减少了图像编码端和图像解码端确定图像块划分模式的复杂度。 附图说明
为了更清楚地说明本发明实施例的技术方案, 下面将对实施例中所需要使 用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些 实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可 以根据这些附图获得其他的附图。
图 1是现有技术提供的划分线拟合示意图;
图 2A是本发明一实施例提供的图像编码方法流程图;
图 2B是本发明一实施例提供的图像解码方法流程图;
图 3是本发明又一实施例提供的图像编码方法流程图;
图 4是本发明实施例提供的一种从右上到左下方向划分的图像分割示意图; 图 5是本发明实施例提供的另一种从右上到左下方向划分的图像分割示意 图;
图 6是本发明实施例提供的一种从左下到右上方向划分的图像分割示意图; 图 7是本发明实施例提供的另一种从左下到右上方向划分的图像分割示意 图;
图 8是本发明实施例提供的比例值 sca lar=l时参考端点的位置图;
图 9是本发明实施例提供的 sca lar=2时参考端点的位置图;
图 10是本发明实施例提供的 sca lar=l /2时参考端点的位置图;
图 11是本发明实施例提供的 sca lar=4时参考端点的位置图;
图 12是本发明实施例提供的 sca lar=l /4时参考端点的位置图;
图 13是本发明实施例提供的图像解码方法流程图;
图 14是本发明实施例提供的编码设备结构图;
图 15是本发明实施例提供的解码设备结构图;
图 16是本发明实施例提供的系统结构图。 具体实施方式
参阅图 2A, 本发明实施例提供一种图像编码方法, 其包括:
201A、 根据划分线的方向、 比例值和位置参数值, 确定第二长度。
具体的, 可以根据划分线的方向、 比例值和位置参数值, 确定第一长度和 第二长度, 其中, 第一长度为图像块的点到图像块的边界的距离; 第二长度为 所述图像块的点在所述图像块的边界上的对应点到划分线的端点的距离; 所述 划分线的端点为所述划分线与所述图像块的边界或者所述图像块的边界的延长 线的交点; 其中, 所述位置参数值表示划分线的端点在参考方向上与参考端点 的相对位置。
其中, 该实施例各步骤的执行主体是图像编码端。
其中, 参考方向可以为水平方向或者垂直方向; 所述图像块的点在所述图 像块的边界上的对应点为: 所述图像块的点在该图像块的边界上的垂直投影点; 当所述图像块的边界是所述图像块的上边界或者下边界时, 所述图像块的点在 所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述图像块 的点具有相同横坐标的点; 当所述图像块的边界是所述图像块的左边界或者右 边界时, 所述图像块的点在所述图像块的边界上的对应点是: 位于所述图像块 的边界上, 且与所述图像块的点具有相同纵坐标的点。
其中, 比例值可以表示第一距离与第二距离的比值, 第一距离为划分线上 的非边界点到图像块的边界的距离; 第二距离为划分线上的非边界点在所述图 像块的边界上的对应点到划分线的端点的距离; 其中, 划分线上的非边界点在 所述图像块的边界上的对应点为所述划分线上的非边界点在该图像块的边界上 的垂直投影点。 当所述图像块的边界是所述图像块的上边界或者下边界时, 所 述划分线上的点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述划分线上的点具有相同横坐标的点; 当所述图像块的边界是所述图像 块的左边界或者右边界时, 所述划分线上的点在所述图像块的边界上的对应点 是: 位于所述图像块的边界上, 且与所述划分线上的点具有相同纵坐标的点。
其中, 位置参数值的绝对值表示划分线的端点在参考方向上与参考端点的 距离; 位置参数值的不同符号表示所述划分线的端点位于所述参考端点的不同 侧。 当参考方向为水平方向时, 位置参数值的符号表示该划分线的端点位于参 考端点的左侧还是右侧; 当参考方向为垂直方向时, 位置参数值的符号表示该 划分线的端点位于参考端点的上侧还是下侧。 其中, 参考端点是: 与所述划分 线平行、 且过所述图像块中心的线与所述图像块的边界的交点。
其中, 本实施例中的图像块的点可以是该图像块的像素点; 划分线上的点 为该划分线上的像素点。
其中, 根据划分线的方向、 比例值和位置参数值, 确定第一长度和第二长 度的具体过程包括: 当划分线的方向为从左上至右下时, 所述图像块的中心点 的坐标为 (N-1, N), 确定所述参考端点的坐标为: (0, N - N/scalar); 当划分线的 方向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参 考端点的坐标为: (0, N-1 + N/scalar); 其中, scalar是所述比例值; 其中, 所述 图像块的大小为 2Nx2N, 所述图像块的左上角的点的坐标为(0, 0 ); 根据所述 参考端点的坐标和所述位置参数值, 确定所述划分线的端点的位置; 根据所述 划分线的端点的位置, 确定第二长度, 可选的, 可以根据所述比例值和所述划 分线的端点的位置, 确定第一长度和第二长度。 其中, 图像块的左上角的点为 位于该图像块的左上角的像素点。
202A、 根据划分线的方向、 第一长度、 第二长度和所述比例值, 确定所述 图像块的划分模式。
其中, 图像块的划分模式表示该图像块所划分成的子图像块的大小及形状。 具体的, 当所述划分线的方向为从右上至左下时, 当 L2乘以 scalar 的值 大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2乘以 scalar 的值小于 LI , 所述图像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 L1 , 所述 图像块的点位于划分线上; 当所述划分线的方向为从左上至右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的 值小于 -L1 , 所述图像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 -L1 , 所述图像块的点位于划分线上; 其中, 所述划分线属于第一子图像块或者 第二子图像块; 其中, 第一子图像块可以为位于所述图像块左边的子图像块; 第二子图像块为位于所述图像块右边的图像块。 所述第一子图像块和第二子图 像块为图像块划分成的两个子图像块; 所述 L2为所述划分线的端点的横坐标减 去所述图像块的点在所述图像块的边界上的对应点的横坐标的差; L2的绝对值 为所述第二长度; L1为所述第一长度。 其中, 图像块的边界可以为图像块的上 边界。 其中, 第一子图像块可以是图 4、 图 5、 图 6、 图 7中的子图像块 0; 第 二子图像块可以是图 4、 图 5、 图 6、 图 7中的子图像块 1。
203A、 根据所述图像块的划分模式, 对所述图像块进行编码; 对方向参数 值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表示所述划分线的 方向。
具体的, 该步骤对方向参数值、 比例值和位置参数值进行编码时, 可以对 方向参数值、 比例值和位置参数值任意一个值所对应的索引值进行编码, 对其 他两个值直接进行编码, 即对所述方向参数值所对应的索引值进行编码, 对比 例值和位置参数值直接进行编码; 或者, 对所述比例值所对应的索引值进行编 码, 对方向参数值和位置参数值直接进行编码; 或者, 对所述位置参数值的绝 对值所对应的索引值进行编码, 对方向参数值和比例值直接进行编码。
或者, 该步骤对方向参数值、 比例值和位置参数值进行编码时, 可以对所 述方向参数值、 比例值和位置参数值中的两个值联合对应的索引值进行编码, 对另一值进行编码或者对所述另一值所对应的索引值进行编码; 所述另一值是 方向参数值、 比例值和位置参数值中除所述两个值以外的值。
或者, 该步骤对方向参数值、 比例值和位置参数值进行编码时, 对所述方 向参数值、 比例值和位置参数值三者联合对应的索引值进行编码。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者确定第二长度, 进一步根据第一长度、 第二长度、 划分线方向和比例值确定了图像块的划分模式, 其中, 第一长度为 图像块的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图像块 的边界上的对应点到划分线的端点的距离, 这样, 就不需要对划分线进行拟合, 减少了图像编码端确定图像块划分模式的复杂度。 参阅图 2B, 本发明实施例提供一种图像解码方法, 其包括:
201B、 解析码流, 获得方向参数值、 比例值和位置参数值。
其中, 该实施例各步骤的执行主体是图像解码端。
其中, 方向参数值、 比例值和位置参数值的定义与上述实施例相同, 在此 不再赘述。
其中, 该步骤中, 解析码流, 获得方向参数值的方式包括: 解析码流, 获 得第一索引值, 获取所述第一索引值所对应的参数值, 所获取的参数值为方向 参数值; 解析码流, 获得比例值的方式包括: 解析码流, 获得第二索引值, 获 取所述第二索引值所对应的参数值, 所获取的参数值为比例值; 解析码流, 获 得位置参数值的方式包括: 解析码流, 获得第三索引值, 获取所述第三索引值 所对应的参数值, 所获取的参数值为位置参数值的绝对值; 解析码流, 获得方 向参数值、 比例值和位置参数值的方式可以包括: 解析码流, 获得第四索引值 和第五索引值; 获取所述第四索引值所对应的参数值, 所述第四索引值所对应 的参数值包括所述方向参数值、 比例值、 位置参数值中的两个值; 获取所述第 五索引值所对应的参数值, 所述第五索引值所对应的参数值为: 方向参数值、 比例值、 位置参数值中除所述两个值以外的值; 或者, 解析码流, 获得第四索 引值和方向参数值、 比例值和位置参数值中的一个值; 获取所述第四索引值所 对应的参数值, 所述第四索引值所对应的参数值包括所述方向参数值、 比例值、 位置参数值中除所获得的一个值以外的两个值; 或者, 获取所述第六索引值所 对应的参数值, 所获取的参数值包括方向参数值、 比例值、 位置参数值。
202B、 根据方向参数值、 比例值和位置参数值, 确定第二长度。
具体的, 可以根据划分线的方向、 比例值和位置参数值, 确定第一长度和 第二长度, 其中, 第一长度为图像块的点到图像块的边界的距离; 第二长度为 所述图像块的点在所述图像块的边界上的对应点到划分线的端点的距离; 所述 划分线的端点为所述划分线与所述图像块的边界或者所述图像块的边界的延长 线的交点。 其中, 该步骤中确定第一长度和第二长度的方式与上述实施例中确定的方 式相同, 在此不再赘述。 其中, 图像块的点可以是图像块的像素点, 划分线上 的点可以是划分线上的像素点。
203B、 根据划分线的方向、 第一长度、 第二长度和比例值, 确定所述图像 块划分模式。
其中, 该步骤中确定图像块划分模式的方式与上述实施例中确定的方式相 同, 在此不再赘述。
其中, 图像块的划分模式表示该图像块所划分成的子图像块的大小及形状。 后续, 图像解码端可以根据图像块的划分模式, 对图像编码端对图像块的编码 结果进行解码, 得到图像块的各像素点的值。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者确定第二长度, 进一步根据第一长度、 第二长度、 划分线方向和比例值确定了图像块的划分模式, 第一长度为图像块 的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图像块的边界 上的对应点到划分线的端点的距离, 这样, 就不需要对划分线进行拟合, 减少 了图像解码端确定图像块划分模式的复杂度。 为了使图 2A所示实施例提供的技术方案更加清楚明白,如下实施例将对本 发明实施例提供的图像编码方法进行详细描述:
图 3 示出了本发明实施例提供的图像编码方法流程图, 该图像编码方法具 体包括:
步骤 301、 图像编码端确定划分线的方向、 比例值 scalar和位置参数值 pos。 具体的, 该步骤中, 图像编码端可以根据用户输入的分割命令确定划分线 的方向、 比例值和位置参数值, 此时, 用户输入的分割命令中包括划分线的方 向的指示信息, 比例值, 和位置参数值, 其中, 用户可以根据图像的纹理、 物 体的边界和图像的背景边界确定划分线的方向、比例值 scalar和位置参数值 pos。 或者, 图像编码端根据某种规则确定划分线的方向、 比例值和位置参数值, 比 如, 图像编码端可以根据图像的纹理、 物体的边界和图像的背景边界确定划分 线的方向、 比例值 scalar和位置参数值 pos。
其中,划分线的方向可以为从左上至右下,或者从右上至左下,比例值 scalar 和位置参数值 pos的相关定义与图 2A所对应实施例中的比例值和位置参数值的 相关定义相同, 在此不再赘述。
具体的, 本发明实施例假定图像块的左上角为坐标系原点, 斜实线表示图 像块的划分线, 斜虚线表示基准线, 其中基准线为与划分线平行且过该图像块 中心的线。 各图中划分线将图像块划分成两个子图像块, 即子图像块 0和子图 像块 1。 图 4中划分线与图像块的上边界的交点为 A, 与图像块的左边界的交点 为 B; 图 5中划分线与图像块的上边界的延长线的交点为 A,与图像块的左边界 的延长线的交点为 B; 图 6中划分线与图像块的上边界的交点为 A; 图 7中划分 线与图像块的上边界延长线的交点为 A。 像素点 Q为划分线上的一个像素点, 假定其坐标为( y,x ), 该像素点 Q在图像块上边界的垂直投影点(即位于该图像 块的上边界上且与该像素点具有相同横坐标的像素点)为 Q,。从图中可以看出, 该像素点 Q到图像块的上边界的垂直距离为该像素点的纵坐标, 即 y; 假定像 素点 Q,到交点 A的距离为 χ,, 则 scalar为:
scalar = y/x'。
其中, 对于图 4和图 5如果像素点 Q与交点 B重合, 则 scalar = BO/AO, 其中, BO为交点 B到像素点 0的距离; AO为交点 A到像素点 0的距离,像素 点 0为位于图像块左上角的像素点。
其中, 需要说明的是, 该步骤中确定了 scalar的值, 即确定了划分线与水平 方向的夹角, 其中, scalar的值可以为 2, 1/2, 3 , 1/3; 4; 1/4等, 对应的划分 线与水平方向的夹角分别为 63.4度, 26.6度, 71.6度, 18.4度, 76度, 14度。
步骤 302、 图像编码端根据划分线的方向和比例值, 确定参考端点的坐标。 从图 4和图 5或者从图 6和图 7可以看出, pos大于 0与小于 0时划分线的 端点 A的位置不同。 由于当 pos的绝对值相同但符号不同时, 此时这两个 pos 所对应的划分线的端点 A关于参考端点 C (即 pos的值为 0时划分线与上边界 的交点)对称分布, 因此参考端点 C的位置决定了 pos不为 0时划分线与图像 的上边界或者上边界延长线的交点 (划分线的端点 A ) 的位置。 也就是说为了 有效确定图像块的像素点的 L1 (即图像块的像素点到图像块的边界的距离)和 L2 (即划分线的端点的横坐标减去所述图像块的像素点在所述图像块的边界上 的对应点的横坐标的差), 需要确定划分线的端点 A的位置, 因而需要确定参考 端点的位置。 由于为保证任意块划分标识参数(方向参数值、 比例值和位置参数值) 的 编码效率高, pos值为 0时划分线应该保证图像块被等分或尽可能被等分。因此, pos值为 0时划分线应该经过图像块的中心点,设图像块大小为 2Nx2N, 图像块 左上角的像素点的坐标为 (0, 0 ), 本发明实施例中假定图像块中的点均以整像 素为单位变化, 则图像块的中心点坐标可以为 (N-1, N-1)或 (N, N-1)或 (N-1, N) 或 (N, N)。 具体的, 当划分线的方向为从左上至右下时, 所述图像块的中心点的 坐标为 (N-1, N), 确定所述参考端点的坐标为: (0, N - N/scalar); 当划分线的方 向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参考 端点的坐标为: (0, N-1 + N/scalar); 其中, scalar是所述比例值。
如下描述划分线方向为沿右上至左下时,不同的 scalar对应的参考端点的位 置:
scalar=l时, 参考端点坐标为(0, 2N-1), 如图 8所示;
scalar=2时, 参考端点坐标为(0, N-1+N/2) , 如图 9所示;
scalar=l/2时, 参考端点坐标为(0, 3N-1) , 如图 10所示;
scalar=4时, 参考端点坐标为(0, N-1+N/4) , 如图 11所示;
scalar=l/4时, 参考端点坐标为(0, 5N-1) , 如图 12所示;
若图像块的尺寸为 16x16, 即 2N=16, 则不同的 scalar值对应的参考端点的 位置为:
scalar=l时, 参考端点坐标为(0, 15);
scalar=2时, 参考端点坐标为(0, 11);
scalar=l/2时, 参考端点坐标为(0, 23);
scalar=4时, 参考端点坐标为(0, 9);
scalar=l/4时, 参考端点坐标为(0, 39)。
如下描述划分线方向为沿左上至右下时,不同的 scalar对应的参考端点的位 置:
scalar=l时, 参考端点坐标为(0, 0);
scalar=2时, 参考端点坐标为(0, N-1-N/2);
scalar=l/2时, 参考端点坐标为(0, N-1-2N);
scalar=4时, 参考端点坐标为(0, N-1-N/4);
scalar=l/4时, 参考端点坐标为(0, N-1-4N); 若图像块的尺寸为 16x16, 即 2N=16, 则不同的 scalar值对应的参考端点的 位置为:
scalar=l时, 参考端点坐标为(0, 0);
scalar=2时, 参考端点坐标为(0, 3);
scalar=l/2时, 参考端点坐标为(0, -9);
scalar=4时, 参考端点坐标为(0, 5);
scalar=l/4时, 参考端点坐标为(0, -25)。
步骤 303、 图像编码端根据参考端点的坐标和 pos值, 确定所述划分线的端 点的位置。
根据 pos值的符号,确定划分线的端点在参考端点的哪一侧, 当参考方向为 水平方向时, p0S值的符号表示该划分线的端点位于参考端点的左侧还是右侧; 当参考方向为垂直方向时, pos值的符号表示该划分线的端点位于参考端点的上 侧还是下侧。
根据 pos值的绝对值, 确定划分线的端点与参考端点的距离;
根据所确定的划分线的端点的具体侧 (即当参考方向为水平方向, 具体侧 为左侧还是右侧, 参考方向为垂直方向时, 具体侧为上侧还是下侧)和划分线 的端点与参考端点的距离, 以及参考端点的坐标, 确定划分线的端点的坐标。
步骤 304、 图像编码端根据所述比例值和所述划分线的端点的位置, 确定图 像块的像素点到图像块的边界的距离 L1 , 以及划分线的端点的横坐标减去所述 图像块的像素点在所述图像块的边界上的对应点的横坐标的差 L2。
步骤 305、 图像编码端根据所述 L1和 L2, 以及划分线的方向和 scalar, 确 定图像块的划分模式。
其中, 图像块的划分模式表示该图像块所划分成的两个子图像块的大小及 形状。 其中, 这两个子图像块可以为非规则子图像块, 这两个非规则子图像块 可以为三角形, 或五边形。 具体的, 这两个非规则子图像块可以都为三角形, 也可以一个子图像块为三角形, 另一个子图像块为五边形, 也可以两个子图像 块都为五边形, 不影响本发明的实现。
具体的, 使用以下三种方法判断图像块的点属于子图像块 0或属于子图像 块 1 :
第一种方式: 当第一参数值为 0 时, 即图像块的划分线的方向为从右上至 左下时, 当 L2乘以 scalar 的值大于等于 L1 , 则所述图像块的点属于子图像块 0; 否则, 所述图像块的点属于子图像块 1。
当第一参数值为 1时, 即图像块的划分线的方向为从左上至右下时, 当 L2 乘以 scalar 的值大于等于 -L1 , 则所述图像块的点属于子图像块 0; 否则, 所 述图像块的点属于子图像块 1。
第二种方式:
当第一 丈值为 0时, 即图像块的划分线的方向为从右上至左下时, 当 L2 乘以 scalar 的值大于 L1 , 则所述图像块的点属于子图像块 0; 否则, 所述图像 块的点属于子图像块 1。
当第一参数值为 1时, 即图像块的划分线的方向为从左上至右下时, 当 L2 乘以 scalar 的值大于 -L1 , 则所述图像块的点属于子图像块 0; 否则, 所述图像 块的点属于子图像块 1。
第三种方式:
当第一参数值为 0时, 即图像块的划分线的方向为从右上至左下时, 当 L2 乘以 scalar 的值大于 L1 , 则所述图像块的点属于子图像块 0; 否则, 当 L2乘 以 scalar 的值小于 L1 , 所述图像块的点属于子图像块 1 ; 否则, 所述图像块的 点位于图像块划分线上, 其中, 该划分线可以位于子图像块 0也可以位于子图 像块 1。
当第一 丈值为 1时, 即图像块的划分线的方向为从左上至右下时, 当 L2 乘以 scalar 的值大于 -L1 , 则所述图像块的点属于子图像块 0; 否则, 当 L2乘 以 scalar 的值小于 -L1 , 所述图像块的点属于子图像块 1 ; 否则, 所述图像块的 点位于图像块划分线上, 其中, 该划分线可以位于子图像块 0也可以位于子图 像块 1。
步骤 306、图像块编码端根据图像块的划分模式,在参考图像中查找预测块, 所述预测块是与所划分成的子图像块最匹配的图像块; 图像编码端根据所划分 成的子图像块和相应的预测块, 获得残差和运动矢量信息。
其中, 残差为所划分成的子图像块与预测块相应像素点的像素值的差值; 运动矢量信息表示所划分成的子图像块与预测块的位置差。
步骤 307、 图像编码端将残差进行变换和量化, 然后将残差进行变换和量化 后的值、 数据头进行编码, 得到码流并发送。 其中, 数据头包括: 运动矢量信息、 表示划分线方向的方向参数值、 比例 值 scalar、 位置参数值 pos、 序歹1 J参数集 ( sequence parameter set, sps )、 图像参 数集 ( picture parameter set, pps )、条带头等。其中,对方向^!史值、比例值 scalar, 位置参数值 pos进行编码的方式见后续详细描述。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者, 确定图像块的像素点到图像块的边 界的距离 L1 , 以及划分线的端点的横坐标减去所述图像块的像素点在所述图像 块的边界上的对应点的横坐标的差 L2, 进一步根据 L1和 L2, 以及划分线的方 向和 scalar, 确定了图像块的划分模式, 这样, 就不需要对划分线进行拟合, 减 少了图像编码端确定图像块划分模式的复杂度。 为了使图 2B所示实施例提供的技术方案更加清楚明白,如下实施例将对本 发明实施例提供的图像解码方法进行详细描述:
图 13示出了本发明实施例提供的图像解码方法流程图, 该图像解码方法具 体包括:
步骤 1301、 图像解码端接收到图像编码端发送的码流, 解析码流得到方向 参数值、 比例值和位置参数值、 运动矢量信息和残差。
其中, 方向参数值、 比例值和位置参数值与图 2A和图 2B所示实施例 中的定义相同, 在此不再赘述。
具体的, 解析码流得到方向参数值、 比例值和位置参数值的过程见后续详 细描述。
步骤 1302、 图像解码端根据方向参数值, 确定划分线的方向。
具体的, 图像解码端根据方向参数值, 确定划分线的方向是沿右上到左下, 还是沿左下到右上。
步骤 1303、 图像解码端根据划分线的方向和比例值, 确定参考端点的坐标。 具体的, 确定参考端点的方式与步骤 302 中的相应描述相似, 在此不再赘 述。
步骤 1304、 图像解码端根据参考端点的坐标和 pos值, 确定所述划分线的 端点的位置。
具体的, 确定所述划分线的端点的位置与步骤 303 中的相应描述相似, 在 此不再赘述。
步骤 1305、 图像解码端根据所述比例值和所述划分线的端点的位置, 确定 图像块的点到图像块的边界的距离 L1 , 以及划分线的端点的横坐标减去所述图 像块的点在所述图像块的边界上的对应点的横坐标的差 L2。
步骤 1306、 图像解码端根据所述 L1和 L2, 以及划分线的方向和 scalar, 确 定图像块的划分模式。
具体的, 确定所图像块的划分模式与步骤 305 中的相应描述相似, 在此不 再赘述。
具体的, 当划分线方向为沿右上至左下时, 当图像块内的像素点 (y, x ) 的 坐标值满足以下条件时, 该像素点位于划分线上:
TerminalPosi - pos — x = y/scalar
当划分线方向为沿左上至右下时, 当图像块内的像素点 (y, x ) 的坐标值满 足以下条件时, 该像素点位于划分线上:
X - TerminalPosi - pos = y/scalar
其中, TerminalPosi为参考端点的横坐标。
由于图像块被划分线划分成两个子图像块, 则位于该划分线上的像素点可 属于标号为 0的子图像块, 也可属于标号为 1的子图像块, 图像块标号如图 4、 图 5、 图 6和图 7所示。
当划分线方向为从右上至左下时, 当图像块内的像素点 (y, x ) 的坐标值满 足以下条件时, 该像素点位于子图像块 0内:
TerminalPosi - pos - x > y/scalar
否则, 该像素点位于子图像块 1。
当划分线方向为从左上至右下时, 当图像块内的像素点 (y, x ) 的坐标值满 足以下条件时, 该像素点位于子图像块 0:
X — TerminalPosi - pos < y/scalar
否则, 该点位于子图像块 1。
步骤 1307、 图像解码端根据图像块的划分模式和运动矢量信息, 在参考图 像中获得子图像块所对应的预测块。
步骤 1308、 图像解码端根据每个子图像块中各像素点对应的残差和每个子 图像块对应的预测块, 获得子图像块各像素的像素值。 本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者, 确定图像块的像素点到图像块的边 界的距离 L1 , 以及划分线的端点的横坐标减去所述图像块的像素点在所述图像 块的边界上的对应点的横坐标的差 L2, 进一步根据 L1和 L2, 以及划分线的方 向和 scalar, 确定了图像块的划分模式, 这样, 就不需要对划分线进行拟合, 减 少了图像解码端确定图像块划分模式的复杂度。 如下描述步骤 307 中, 图像编码端对方向参数值、 比例值、 位置参数值进 行编码, 及步骤 1301中图像解码端解析码流并获得方向参数值、 比例值、 位置 参数值的过程:
对于位置参数值 os, 图像编码端可以对该 pos的绝对值和符号分开编码, 具体的, 当该 p0S的绝对值为 0时则该 pos不存在符号, 可以只编码该 pos的绝 对值; 当该 pos的绝对值不为 0时则该 pos存在符号, 需要对该 pos的绝对值和 符号都进行编码。在对 pos的绝对值进行编码时, 考虑到 pos的绝对值可以按照 以下方式进行变化: 0, 2, 4, 6, 8, 10, 12, 14, 即以 2为单位递增, 2为固 定步长, 此时, pos绝对值与索引值的对应关系为: pos绝对值等于索引值乘以 该固定步长。此时图像编码端不需要编码 pos绝对值而是编码 pos绝对值对应的 索引值,得到 pos绝对值所对应的码字并写入码流,前述对应的索引值可以为 0, 1 , 2, 3 , 4, 5 , 6, 7, 这样后续图像解码端首先解析码流中 pos绝对值所对应 的码字,得到 pos绝对值对应的索引值, 再根据 pos的绝对值与索引值的对应关 系, 获得解码得到的索引值所对应的 pos绝对值。 其中, 该固定步长可以预置在 图像编码端和图像解码端, 也可以由图像编码端发送给图像解码端, 如果该固 定步长由图像编码端发送给图像解码端, 则该图像编码端可以将该固定步长加 入序列参数集、 图像参数集或者条带头中发送给图像解码端, 图像解码端根据 该固定步长确定 pos绝对值与索引值的对应关系,进而利用该 pos绝对值与索引 值的对应关系, 获得解码得到的索引值所对应的 pos绝对值。
其中, pos绝对值与索引值的对应关系还可以为固定的 pos绝对值与索引值 的映射关系, 如 pos绝对值为 0, 2, 5, 9, 10, 11 , 13 , 15 , 其对应的索引值 为 0, 1 , 2, 3 , 4, 5 , 6, 7, 图像编码端可以根据预置的 pos绝对值与索引值 的映射关系,获取所确定的 pos绝对值所对应的索引值,对该索引值进行编码得 到 pos绝对值所对应的码字,将码字写入码流并发送给图像解码端; 图像解码端 解析码流后得到该 pos绝对值所对应的码字,对该码字进行解码得到索引值,根 据 pos绝对值与索引值的映射关系, 确定该索引值所对应的 pos绝对值。
其中, 图像编码端可以选择采用固定步长, 也可以选择采用上述固定的 pos 绝对值与索引值的映射关系, 如果采用固定步长, 则可以将该固定步长加入序 列参数集、 图像参数集或者条带头中发送给图像解码端; 如果采用上述固定的 pos绝对值与索引值的映射关系, 则可以将标识采用固定的 pos绝对值与索引值 的映射关系的指示信息加入到序列参数集、 图像参数集或者条带头中发送给图 像解码端。
对于比例值 scalar, 图像编码端和图像解码端可以预置 scalar与索引值的对 应关系, 图像编码端根据该对应关系, 获取所确定的 scalar所对应的索引值, 对 该索引值进行编码得到 scalar对应的码字, 将该码字写入码流发送给图像解码 端。 后续图像解码端解析码流中比例值对应的码字, 得到该索引值, 根据 scalar 与索引值的对应关系, 确定解析得到的索引值所对应的 scalar。
对于方向参数值, 图像编码端和图像解码端可以预置不同的划分线方向与 不同的索引值的相对应, 比如, 预置划分线方向为沿左上到右下时, 该划分线 方向对应的索引值为 00; 划分线方向为沿右上到左下时, 该划分线方向对应的 获取步骤 301 所确定的划分线方向所对应的索引值, 对该索引值进行编码后写 入码流发送给图像解码端。 后续图像解码端解析码流得到该索引值, 根据该应 关系, 确定解析得到的索引值所对应的划分线方向。
根据方向参数值、 位置参数值、 位置参数值分别与索引值的对应关系, 编 码三者分别对应的索引值, 可以减少编码所占的比特数, 进而减少码流的长度。
可选的, 上述描述了方向参数值、 比例值、 位置参数值三者可以各自有对 应的索引值, 在另一种实施方式中, 方向参数值、 比例值、 位置参数值中两个 值可以联合对应一个索引值, 比如比例值和位置参数值联合对应一个索引值, 如比例值 = 2, 位置参数值 = 5时, 对应索引值 10; 比例值 = 1/2, 位置参数值 = 5 时, 对应索引值 00。 或者方向参数值、 位置参数值、 位置参数值三者联合对 应一个索引值, 比如划分线方向为沿左上到右下, 比例值 = 2, 位置参数值 = 5 时, 对应索引值 001 ; 划分线方向为沿左上到右下, 比例值 = 1/2, 位置参数值 = 6时, 对应索引值 011。 参阅图 14, 本发明实施例提供一种编码设备, 其具体可以是图像编码设备, 其具体包括:
长度确定单元 10, 用于根据划分线的方向、 比例值和位置参数值, 确定第 二长度, 具体的, 可以根据划分线的方向、 比例值和位置参数值, 确定第一长 度和第二长度; 其中, 划分线的方向可以是从左上至右下, 也可以是从右上到 左下。 其中, 比例值、 位置参数值、 第一长度和第二长度的相关定义与方法实 施例中的相关定义相同, 在此不再赘述。
划分模式确定单元 20, 用于根据划分线的方向、 第一长度、 第二长度和所 述比例值, 确定所述图像块的划分模式;
编码单元 30, 用于根据所述图像块的划分模式, 对所述图像块进行编码; 对方向参数值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表示所 述划分线的方向。
其中, 参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述 图像块的边界的交点; 长度确定单元 10包括: 参考端点位置确定单元 11 , 用于 当划分线的方向为从左上至右下时, 所述图像块的中心点的坐标为 (N-1, N), 确 定所述参考端点的坐标为: (Ο, Ν - Ν/scalar); 当划分线的方向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1),确定所述参考端点的坐标为:(0, N-1 + N/scalar); 其中, scalar是所述比例值; 其中, 所述图像块的大小为 2Nx2N, 所 述图像块的左上角的点的坐标为(0, 0 ); 划分线端点位置确定单元 12, 用于根 据所述参考端点的坐标和所述位置参数值, 确定所述划分线的端点的位置; 确 定单元 13 , 用于根据所述划分线的端点的位置, 确定第二长度, 具体的, 可以 根据所述比例值和所述划分线的端点的位置, 确定第一长度和第二长度。
L2 乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2乘 以 scalar 的值小于 L1 , 所述图像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 L1 , 所述图像块的点位于划分线上; 当所述划分线的方向为从左上至 右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像块的点属于第二子图像块;当 L2乘 以 scalar 的值等于 -LI , 所述图像块的点位于划分线上; 其中, 所述划分线属于 第一子图像块和第二子图像块; 其中, 所述第一子图像块或者第二子图像块为 图像块划分成的两个子图像块; 所述 L2为所述划分线的端点的横坐标减去所述 图像块的点在所述图像块的边界上的对应点的横坐标的差; L2的绝对值为所述 第二长度; L1为所述第一长度。
编码单元 30具体用于对方向参数值、 比例值和位置参数值中一个值所对应 的索引值进行编码, 对方向参数值、 比例值和位置参数值中除所述一个值以外 的值进行编码; 或者, 编码单元 30具体用于对所述方向参数值、 比例值和位置 参数值中的两个值联合对应的索引值进行编码, 对另一值进行编码或者对所述 另一值所对应的索引值进行编码; 所述另一值是方向参数值、 比例值和位置参 数值中除所述两个值以外的值; 或者, 编码单元具体用于对所述方向参数值、 比例值和位置参数值三者联合对应的索引值进行编码。 编码单元 30通过上述方 式对方向参数值、 比例值和位置参数值进行编码, 在编码时, 可以减少图像块 划分模式标识参数所占的比特数。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者确定第一长度和第二长度, 第一长度 为图像块的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图像 块的边界上的对应点到划分线的端点的距离, 进一步确定了图像块的划分模式, 这样, 就不需要对划分线进行拟合, 减少了图像编码设备确定图像块划分模式 的复杂度。 参阅图 15, 本发明实施例提供一种解码设备, 其具体可以是图像解码设备, 其具体包括:
解码单元 50, 用于解析码流, 获得方向参数值、 比例值和位置参数值; 其 中, 该码流是编码设备发送给解码设备的; 其中, 方向参数值、 比例值和位置 长度确定单元 60, 用于根据方向参数值、 比例值和位置参数值, 确定第二 长度; 具体的, 可以根据方向参数值、 比例值和位置参数值, 确定第一长度和 第二长度; 其中, 第一长度和第二长度的相关定义与方法实施例中的相关定义 相同, 在此不再赘述; 图像块划分模式确定单元 70, 用于根据划分线的方向、 第一长度、 第二长 度和比例值, 确定所述图像块划分模式。
其中, 参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述 图像块的边界的交点; 长度确定单元 60包括: 参考端点位置确定单元 61 , 用于 当划分线的方向为从左上至右下时, 所述图像块的中心点的坐标为 (N-1, N), 确 定所述参考端点的坐标为: (Ο, Ν - Ν/scalar); 当划分线的方向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1),确定所述参考端点的坐标为:(0, N-1 + N/scalar); 其中, scalar是所述比例值; 其中, 所述图像块的大小为 2Nx2N, 所 述图像块的左上角的点的坐标为(0, 0 ); 划分线端点位置确定单元 62, 用于根 据所述参考端点的坐标和所述位置参数值, 确定所述划分线的端点的位置; 确 定单元 63 , 用于根据所述划分线的端点的位置, 确定第二长度, 具体的, 可以 根据所述比例值和所述划分线的端点的位置, 确定第一长度和第二长度。
L2 乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2乘 以 scalar 的值小于 L1 , 所述图像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 L1 , 所述图像块的点位于划分线上; 当所述划分线的方向为从左上至 右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像块的点属于第二子图像块;当 L2乘 以 scalar 的值等于 -L1 , 所述图像块的点位于划分线上; 其中, 所述划分线属于 第一子图像块和第二子图像块; 其中, 所述第一子图像块或者第二子图像块为 图像块划分成的两个子图像块; 所述 L2为所述划分线的端点的横坐标减去所述 图像块的点在所述图像块的边界上的对应点的横坐标的差; L2的绝对值为所述 第二长度; L1为所述第一长度。
解码单元 50包括: 第一解码单元, 用于解析码流, 获得方向参数值; 第二 解码单元, 用于解析码流, 获得比例值; 第三解码单元, 用于解析码流, 获得 位置参数值; 其中, 所述第一解码单元, 用于解析码流, 获得第一索引值, 获 取所述第一索引值所对应的参数值, 所获取的参数值为方向参数值; 和 /或, 所 述第二解码单元, 用于解析码流, 获得第二索引值, 获取所述第二索引值所对 应的参数值, 所获取的第二索引值所对应的参数值为比例值; 和 /或, 所述第三 解码单元, 用于解析码流, 获得第三索引值, 获取所述第三索引值所对应的参 数值, 所获取的第三索引值所对应的参数值为位置参数值的绝对值。 或者, 解码单元 50具体用于解析码流, 获得第四索引值和第五索引值; 获 取所述第四索引值所对应的参数值, 所述第四索引值所对应的参数值包括所述 方向参数值、 比例值、 位置参数值中的两个值; 获取所述第五索引值所对应的 参数值, 所述第五索引值所对应的参数值为: 方向参数值、 比例值、 位置参数 值中除所述两个值以外的值; 或者, 解码单元 50具体用于解析码流, 获得第四 索引值和方向参数值、 比例值和位置参数值中的一个值; 获取所述第四索引值 所对应的参数值, 所述第四索引值所对应的参数值包括所述方向参数值、 比例 值、 位置参数值中除获得的所述一个值以外的两个值; 或者, 解码单元 50具体 用于解析码流, 获得第六索引值; 获取所述第六索引值所对应的参数值, 所获 取的参数值包括方向参数值、 比例值、 位置参数值。
本发明实施例利用划分线方向、 比例值、 表示划分线的端点在参考方向上 与参考端点的相对位置的位置参数值三者确定第一长度和第二长度, 第一长度 为图像块的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图像 块的边界上的对应点到划分线的端点的距离, 进一步确定了图像块的划分模式, 这样, 就不需要对划分线进行拟合, 减少了图像解码设备确定图像块划分模式 的复杂度。
参阅图 16, 本发明实施例提供一种网络系统, 其包括: 编码设备 100和解 码设备 200, 其中, 编码设备 100中各单元的结构和连接关系参见图 14所对应 实施例的详细描述, 其中, 解码设备 200中各单元的结构和连接关系参见图 15 所对应实施例的详细描述见图 14所对应实施例的详细描述, 在此不再赘述。 该 网络系统利用划分线方向、 比例值、 表示划分线的端点在参考方向上与参考端 点的相对位置的位置参数值三者确定第一长度和第二长度, 第一长度为图像块 的点到图像块的边界的距离; 第二长度为所述图像块的点在所述图像块的边界 上的对应点到划分线的端点的距离, 进一步确定了图像块的划分模式, 这样, 就不需要对划分线进行拟合, 减少了图像编码端确定图像块划分模式的复杂度。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是 可以通过程序来指令相关的硬件完成, 所述的程序可以存储于一种计算机可读 存储介质中, 例如只读存储器, 磁盘或光盘等。
以上对本发明实施例所提供的图像编解码方法及设备进行了详细介绍, 本 明只是用于帮助理解本发明的方法及其核心思想; 同时, 对于本领域的一般技 术人员, 依据本发明的思想, 在具体实施方式及应用范围上均会有改变之处, 综上所述, 本说明书内容不应理解为对本发明的限制。

Claims

权 利 要 求 书
1、 一种图像编码方法, 其特征在于, 包括:
根据划分线的方向、 比例值和位置参数值, 确定第二长度, 第二长度为图 像块的点在图像块的边界上的对应点到划分线的端点的距离; 所述划分线的端 点为所述划分线与所述图像块的边界或者所述图像块的边界的延长线的交点; 其中, 所述位置参数值表示划分线的端点在参考方向上与参考端点的相对位置; 根据划分线的方向、 第一长度、 第二长度和所述比例值, 确定所述图像块 的划分模式; 根据所述图像块的划分模式, 对所述图像块进行编码; 其中, 第 一长度为所述图像块的点到图像块的边界的距离;
对方向参数值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表 示所述划分线的方向。
2、 根据权利要求 1所述的方法, 其特征在于,
当所述图像块的边界是所述图像块的上边界或者下边界时, 所述图像块的 点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述图 像块的点具有相同横坐标的点;
当所述图像块的边界是所述图像块的左边界或者右边界时, 所述图像块的 点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述图 像块的点具有相同纵坐标的点。
3、 根据权利要求 1所述的方法, 其特征在于,
所述参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述图 像块的边界的交点。
4、 根据权利要求 3所述的方法, 其特征在于,
根据划分线的方向、 比例值和位置参数值, 确定第二长度包括:
当划分线的方向为从左上至右下时, 所述图像块的中心点的坐标为 (N-1,
N), 确定所述参考端点的坐标为: (Ο, Ν - Ν/scalar); 当划分线的方向为从右上至 左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参考端点的坐标为: (0, N-1 + N/scalar);其中 , scalar是所述比例值;其中 ,所述图像块的大小为 2Nx2N, 所述图像块的左上角的点的坐标为 (0, 0 );
根据所述参考端点的坐标和所述位置参数值, 确定所述划分线的端点的位 置; 根据所述划分线的端点的位置, 确定第二长度。
5、 根据权利要求 4所述的方法, 其特征在于,
根据划分线的方向、 第一长度、 第二长度和第二参数值, 确定所述图像块 划分模式包括:
当所述划分线的方向为从右上至左下时, 当 L2乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2乘以 scalar 的值小于 L1 , 所述图 像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 L1 , 所述图像块的点 位于划分线上;
当所述划分线的方向为从左上至右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像 块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 -L1 ,所述图像块的点位 于划分线上;
其中, 所述划分线属于第一子图像块或者第二子图像块; 其中, 所述第一 子图像块和第二子图像块为图像块划分成的两个子图像块; 所述 L2为所述划分 线的端点的横坐标减去所述图像块的点在所述图像块的边界上的对应点的横坐 标的差; L2的绝对值为所述第二长度; L1为所述第一长度。
6、 根据权利要求 1所述的方法, 其特征在于,
对所述方向参数值进行编码包括:
对所述方向参数值所对应的索引值进行编码;
或者,
对所述比例值进行编码包括:
对所述比例值所对应的索引值进行编码;
或者,
对所述位置参数值进行编码包括:
对所述位置参数值的绝对值所对应的索引值进行编码;
或者,
对所述方向参数值、 比例值和位置参数值进行编码包括:
对所述方向参数值、 比例值和位置参数值中的两个值联合对应的索引值进 行编码, 对另一值进行编码或者对所述另一值所对应的索引值进行编码; 所述 另一值是方向参数值、 比例值和位置参数值中除所述两个值以外的值; 或者,
对所述方向参数值、 比例值和位置参数值进行编码包括:
对所述方向参数值、 比例值和位置参数值三者联合对应的索引值进行编码。
7、 一种图像解码方法, 其特征在于, 包括:
解析码流, 获得方向参数值、 比例值和位置参数值;
其中, 方向参数值表示划分线的方向; 位置参数值表示划分线的端点在参 考方向上与参考端点的相对位置; 所述划分线的端点为所述划分线与所述图像 块的边界或者所述图像块的边界的延长线的交点;
根据划分线的方向、 比例值和位置参数值, 确定第二长度, 第二长度为图 像块的点在所述图像块的边界上的对应点到划分线的端点的距离;
根据划分线的方向、 第一长度、 第二长度和比例值, 确定所述图像块划分 模式, 其中, 第一长度为所述图像块的点到图像块的边界的距离。
8、 根据权利要求 7所述的方法, 其特征在于,
当所述图像块的边界是所述图像块的上边界或者下边界时, 所述图像块中 的点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述 图像块的点具有相同横坐标的点;
当所述图像块的边界是所述图像块的左边界或者右边界时, 所述图像块中 的点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述 图像块的点具有相同纵坐标的点。
9、 根据权利要求 7所述的方法, 其特征在于,
所述参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述边 界的交点。
10、 根据权利要求 9所述的方法, 其特征在于,
根据划分线的方向、 比例值和位置参数值, 确定第二长度包括:
当划分线的方向为从左上至右下时, 所述图像块的中心点的坐标为 (N-1,
N), 确定所述参考端点的坐标为: (Ο, Ν - Ν/scalar); 当划分线的方向为从右上至 左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参考端点的坐标为: (0, N-1 + N/scalar);其中 , scalar是所述比例值;其中 ,所述图像块的大小为 2Nx2N, 所述图像块的左上角的点的坐标为 (0, 0 );
根据所述参考端点的坐标和所述位置参数值, 确定所述划分线的端点的位 置;
根据所述划分线的端点的位置, 确定第二长度。
11、 根据权利要求 10所述的方法, 其特征在于,
根据划分线的方向、 第一长度、 第二长度和第二参数值, 确定所述图像块 划分模式包括:
当所述划分线的方向为从右上至左下时, 当 L2乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2乘以 scalar 的值小于 L1 , 所述图 像块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 L1 , 所述图像块的点 位于划分线上;
当所述划分线的方向为从左上至右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像 块的点属于第二子图像块; 当 L2乘以 scalar 的值等于 -L1 ,所述图像块的点位 于划分线上;
其中, 所述划分线属于第一子图像块或者第二子图像块; 其中, 所述第一 子图像块或者第二子图像块为图像块划分成的两个子图像块; 所述 L2为所述划 分线的端点的横坐标减去所述图像块的点在所述图像块的边界上的对应点的横 坐标的差; L2的绝对值为所述第二长度; L1为所述第一长度。
12、 根据权利要求 7所述的方法, 其特征在于,
解析码流, 获得方向参数值包括:
解析码流, 获得第一索引值, 获取所述第一索引值所对应的参数值, 所获 取的参数值为方向参数值;
或者,
解析码流, 获得比例值包括:
解析码流, 获得第二索引值, 获取所述第二索引值所对应的参数值, 所获 取的参数值为比例值;
或者,
解析码流, 获得位置参数值包括:
解析码流, 获得第三索引值, 获取所述第三索引值所对应的参数值, 所获 取的参数值为位置参数值的绝对值;
或者, 解析码流, 获得方向参数值、 比例值和位置参数值包括:
解析码流, 获得第四索引值和第五索引值;
获取所述第四索引值所对应的参数值, 所述第四索引值所对应的参数值包 括所述方向参数值、 比例值、 位置参数值中的两个值;
获取所述第五索引值所对应的参数值, 所述第五索引值所对应的参数值为: 方向参数值、 比例值、 位置参数值中除所述两个值以外的值;
或者,
解析码流, 获得方向参数值、 比例值和位置参数值包括:
解析码流, 获得方向参数值、 比例值和位置参数值中的一个值, 以及第四 索引值;
获取所述第四索引值所对应的参数值, 所述第四索引值所对应的参数值包 括所述方向参数值、 比例值、 位置参数值中除获得的所述一个值以外的两个值; 或者,
解析码流, 获得方向参数值、 比例值和位置参数值包括:
解析码流, 获得第六索引值;
获取所述第六索引值所对应的参数值, 所获取的参数值包括方向参数值、 比例值、 位置参数值。
13、 一种编码设备, 其特征在于, 包括:
长度确定单元, 用于根据划分线的方向、 比例值和位置参数值, 确定第二 长度, 第二长度为图像块的点在图像块的边界上的对应点到划分线的端点的距 离; 所述划分线的端点为所述划分线与所述图像块的边界或者所述图像块的边 界的延长线的交点; 其中, 所述位置参数值表示划分线的端点在参考方向上与 参考端点的相对位置;
划分模式确定单元, 用于根据划分线的方向、 第一长度、 第二长度和所述 比例值, 确定所述图像块的划分模式; 其中, 第一长度为图像块的点到所述图 像块的边界的距离;
编码单元, 用于根据所述图像块的划分模式, 对所述图像块进行编码; 对 方向参数值、 比例值和位置参数值进行编码, 其中, 所述方向参数值表示所述 划分线的方向。
14、 根据权利要求 13所述的编码设备, 其特征在于,
当所述图像块的边界是所述图像块的上边界或者下边界时, 所述图像块的 点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述图 像块的点具有相同横坐标的点; 当所述图像块的边界是所述图像块的左边界或者右边界时, 所述图像块的 点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述图 像块的点具有相同纵坐标的点。
15、 根据权利要求 13所述的编码设备, 其特征在于,
所述参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述图 像块的边界的交点;
所述长度确定单元包括:
参考端点位置确定单元, 用于当划分线的方向为从左上至右下时, 所述图 像块的中心点的坐标为 (N-1, N), 确定所述参考端点的坐标为: (0, N - N/scalar); 当划分线的方向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参考端点的坐标为: (0, N-1 + N/scalar); 其中, scalar是所述比例值; 其中, 所述图像块的大小为 2Nx2N, 所述图像块的左上角的点的坐标为(0, 0 ); 划分线端点位置确定单元, 用于根据所述参考端点的坐标和所述位置参数 值, 确定所述划分线的端点的位置;
确定单元, 用于根据所述划分线的端点的位置, 确定第二长度。
16、 根据权利要求 15所述的编码设备, 其特征在于,
L2 乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2 乘 以 scalar 的值小于 L1 , 所述图像块的点属于第二子图像块; 当 L2 乘以 scalar 的值等于 L1 , 所述图像块的点位于划分线上; 当所述划分线的方向为从左上至 右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像块的点属于第二子图像块; 当 L2乘 以 scalar 的值等于 -L1 , 所述图像块的点位于划分线上; 其中, 所述划分线属于 第一子图像块和第二子图像块; 其中, 所述第一子图像块或者第二子图像块为 图像块划分成的两个子图像块; 所述 L2为所述划分线的端点的横坐标减去所述 图像块的点在所述图像块的边界上的对应点的横坐标的差; L2的绝对值为所述 第二长度; L1为所述第一长度。
17、 根据权利要求 13所述的编码设备, 其特征在于,
所述编码单元, 用于对方向参数值、 比例值和位置参数值中一个值所对应 的索引值进行编码, 对方向参数值、 比例值和位置参数值中除所述一个值以外 的值进行编码;
或者, 所述编码单元, 用于对所述方向参数值、 比例值和位置参数值中的两个值 联合对应的索引值进行编码, 对另一值进行编码或者对所述另一值所对应的索 引值进行编码; 所述另一值是方向 值、 比例值和位置参数值中除所述两个 值以外的值;
或者,
所述编码单元, 用于对所述方向参数值、 比例值和位置参数值三者联合对 应的索引值进行编码。
18、 一种解码设备, 其特征在于, 包括:
解码单元, 用于解析码流, 获得方向参数值、 比例值和位置参数值; 其中, 方向参数值表示划分线的方向; 位置参数值表示划分线的端点在参考方向上与 参考端点的相对位置;
长度确定单元, 用于根据划分线的方向、 比例值和位置参数值, 确定第二 长度; 第二长度为图像块的点在图像块的边界上的对应点到划分线的端点的距 离;
图像块划分模式确定单元, 用于根据划分线的方向、 第一长度、 第二长度 和比例值, 确定所述图像块划分模式, 其中, 第一长度为图像块的点到图像块 的边界的距离。
19、 根据权利要求 18所述的解码设备, 其特征在于,
当所述图像块的边界是所述图像块的上边界或者下边界时, 所述图像块中 的点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述 图像块的点具有相同横坐标的点;
当所述图像块的边界是所述图像块的左边界或者右边界时, 所述图像块中 的点在所述图像块的边界上的对应点是: 位于所述图像块的边界上, 且与所述 图像块的点具有相同纵坐标的点。
20、 根据权利要求 18所述的解码设备, 其特征在于,
所述参考端点是: 与所述划分线平行、 且过所述图像块中心的线与所述图 像块的边界的交点;
所述长度确定单元包括:
参考端点位置确定单元, 用于当划分线的方向为从左上至右下时, 所述图 像块的中心点的坐标为 (N-1, N), 确定所述参考端点的坐标为: (0, N - N/scalar); 当划分线的方向为从右上至左下时, 所述图像块的中心点的坐标为 (N-1, N-1), 确定所述参考端点的坐标为: (0, N-1 + N/scalar); 其中, scalar是所述比例值; 其中, 所述图像块的大小为 2Nx2N, 所述图像块的左上角的点的坐标为(0, 0 ); 划分线端点位置确定单元, 用于根据所述参考端点的坐标和所述位置参数 值, 确定所述划分线的端点的位置;
确定单元, 用于根据所述划分线的端点的位置, 确定第二长度。
21、 根据权利要求 20所述的解码设备, 其特征在于,
L2 乘以 scalar 的值大于 L1 , 所述图像块的点属于子第一子图像块; 当 L2 乘 以 scalar 的值小于 L1 , 所述图像块的点属于第二子图像块; 当 L2 乘以 scalar 的值等于 L1 , 所述图像块的点位于划分线上; 当所述划分线的方向为从左上至 右下时, 当 L2乘以 scalar 的值大于 -L1 , 所述图像块的点属于第一子图像块; 当 L2乘以 scalar 的值小于 -L1 ,所述图像块的点属于第二子图像块; 当 L2乘 以 scalar 的值等于 -L1 , 所述图像块的点位于划分线上; 其中, 所述划分线属于 第一子图像块和第二子图像块; 其中, 所述第一子图像块或者第二子图像块为 图像块划分成的两个子图像块; 所述 L2为所述划分线的端点的横坐标减去所述 图像块的点在所述图像块的边界上的对应点的横坐标的差; L2的绝对值为所述 第二长度; L1为所述第一长度。
22、 根据权利要求 18所述的解码设备, 其特征在于,
解码单元包括:
第一解码单元, 用于解析码流, 获得方向参数值;
第二解码单元, 用于解析码流, 获得比例值;
第三解码单元, 用于解析码流, 获得位置参数值;
其中, 所述第一解码单元, 用于解析码流, 获得第一索引值, 获取所述第 一索引值所对应的参数值, 所获取的参数值为方向参数值;
和 /或, 所述第二解码单元, 用于解析码流, 获得第二索引值, 获取所述第 二索引值所对应的参数值, 所获取的第二索引值所对应的参数值为比例值; 和 /或, 所述第三解码单元, 用于解析码流, 获得第三索引值, 获取所述第 三索引值所对应的参数值, 所获取的第三索引值所对应的参数值为位置参数值 的绝对值。
23、 根据权利要求 18所述的解码设备, 其特征在于,
解码单元, 用于解析码流, 获得第四索引值和第五索引值; 获取所述第四 索弓 I值所对应的参数值, 所述第四索引值所对应的参数值包括所述方向参数值、 比例值、 位置参数值中的两个值; 获取所述第五索引值所对应的参数值, 所述 第五索引值所对应的参数值为: 方向参数值、 比例值、 位置参数值中除所述两 个值以外的值;
或者,
解码单元, 用于解析码流, 获得方向参数值、 比例值和位置参数值中的一 个值, 以及第四索引值; 获取所述第四索引值所对应的参数值, 所述第四索引 值所对应的参数值包括所述方向参数值、 比例值、 位置参数值中除获得的所述 一个值以外的两个值;
或者,
解码单元, 用于解析码流, 获得第六索引值;
获取所述第六索引值所对应的参数值, 所获取的参数值包括方向参数值、 比例值、 位置参数值。
PCT/CN2012/070595 2011-01-19 2012-01-19 图像编解码方法及编解码设备 WO2012097743A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP12736384.4A EP2658256B1 (en) 2011-01-19 2012-01-19 Method and device for image encoding and decoding
US13/945,541 US9521407B2 (en) 2011-01-19 2013-07-18 Method and device for coding and decoding images

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110021897.2 2011-01-19
CN201110021897.2A CN102611884B (zh) 2011-01-19 2011-01-19 图像编解码方法及编解码设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/945,541 Continuation US9521407B2 (en) 2011-01-19 2013-07-18 Method and device for coding and decoding images

Publications (1)

Publication Number Publication Date
WO2012097743A1 true WO2012097743A1 (zh) 2012-07-26

Family

ID=46515165

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/070595 WO2012097743A1 (zh) 2011-01-19 2012-01-19 图像编解码方法及编解码设备

Country Status (4)

Country Link
US (1) US9521407B2 (zh)
EP (1) EP2658256B1 (zh)
CN (1) CN102611884B (zh)
WO (1) WO2012097743A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5732454B2 (ja) * 2009-07-06 2015-06-10 トムソン ライセンシングThomson Licensing 空間変化残差符号化を行う方法および装置
CN111800641B (zh) * 2013-06-13 2023-08-25 上海天荷电子信息有限公司 同模式采用不同种类重构像素的图像编码解码方法和装置
CN103517070B (zh) * 2013-07-19 2017-09-29 清华大学 图像的编解码方法和装置
KR101980349B1 (ko) * 2014-03-05 2019-05-20 엘지전자 주식회사 폴리곤 유닛 기반 영상 인코딩/디코딩 방법 및 이를 위한 장치
CN109005407B (zh) 2015-05-15 2023-09-01 华为技术有限公司 视频图像编码和解码的方法、编码设备和解码设备
CN117176966A (zh) * 2016-10-04 2023-12-05 有限公司B1影像技术研究所 图像编码/解码方法和传输比特流的方法
CA3105474A1 (en) * 2017-07-03 2019-01-10 Industry-University Cooperation Foundation Hanyang University Method and device for decoding image by using partition unit including additional region
CN116708780A (zh) * 2017-08-11 2023-09-05 华为技术有限公司 视频图像编码和解码的方法、装置及设备
CN107888917B (zh) * 2017-11-28 2021-06-22 北京奇艺世纪科技有限公司 一种图像编解码方法及装置
WO2019124191A1 (ja) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019164031A1 (ko) * 2018-02-22 2019-08-29 엘지전자 주식회사 영상 코딩 시스템에서 블록 분할 구조에 따른 영상 디코딩 방법 및 장치
US10542260B1 (en) * 2018-07-02 2020-01-21 Tencent America LLC Method and apparatus for video coding
CN111050184A (zh) * 2018-10-15 2020-04-21 华为技术有限公司 图像块的划分方法和装置
CN112584161B (zh) 2018-12-28 2022-05-31 杭州海康威视数字技术股份有限公司 一种编解码方法及其设备
CN111770337B (zh) * 2019-03-30 2022-08-19 华为技术有限公司 视频编码方法、视频解码方法及相关设备
EP3989551A4 (en) * 2019-06-17 2023-05-31 Electronics and Telecommunications Research Institute METHOD AND APPARATUS FOR SUB-BLOCK DIVISION BASED ENCODING/DECODING OF AN PICTURE
CN114902675A (zh) 2019-11-30 2022-08-12 抖音视界(北京)有限公司 使用几何分割的简化的帧间预测
WO2021129694A1 (en) * 2019-12-24 2021-07-01 Beijing Bytedance Network Technology Co., Ltd. High level syntax for inter prediction with geometric partitioning
WO2021131058A1 (ja) * 2019-12-27 2021-07-01 富士通株式会社 復号装置、符号化装置、復号方法及び復号プログラム
CN114422781B (zh) * 2022-03-29 2022-07-12 深圳传音控股股份有限公司 图像处理方法、智能终端及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10234041A (ja) * 1997-02-19 1998-09-02 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置
CN101005623A (zh) * 2006-01-21 2007-07-25 宇龙计算机通信科技(深圳)有限公司 确定视频块帧内或帧间编码的方法
CN101415121A (zh) * 2007-10-15 2009-04-22 华为技术有限公司 一种自适应的帧预测的方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6711211B1 (en) 2000-05-08 2004-03-23 Nokia Mobile Phones Ltd. Method for encoding and decoding video information, a motion compensated video encoder and a corresponding decoder
JPWO2003026315A1 (ja) 2001-09-14 2005-01-06 株式会社エヌ・ティ・ティ・ドコモ 符号化方法、復号方法、符号化装置、復号装置、画像処理システム、符号化プログラム及び復号プログラム
CN101502119B (zh) 2006-08-02 2012-05-23 汤姆逊许可公司 用于视频编码的自适应几何分割方法和设备
EP2055108B1 (en) 2006-08-25 2011-04-20 Thomson Licensing Methods and apparatus for reduced resolution partitioning
US7756348B2 (en) * 2006-10-30 2010-07-13 Hewlett-Packard Development Company, L.P. Method for decomposing a video sequence frame
KR101366093B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
CN103501440B (zh) 2007-04-12 2017-03-01 汤姆森特许公司 用于视频编码器中的快速几何模式判定的方法和设备
KR101681443B1 (ko) * 2007-10-16 2016-11-30 톰슨 라이센싱 기하학적으로 분할된 수퍼 블록들의 비디오 인코딩 및 디코딩 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10234041A (ja) * 1997-02-19 1998-09-02 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置
CN101005623A (zh) * 2006-01-21 2007-07-25 宇龙计算机通信科技(深圳)有限公司 确定视频块帧内或帧间编码的方法
CN101415121A (zh) * 2007-10-15 2009-04-22 华为技术有限公司 一种自适应的帧预测的方法及装置

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
EP2658256A4 (en) 2014-04-02
EP2658256B1 (en) 2017-04-26
US20130301716A1 (en) 2013-11-14
EP2658256A1 (en) 2013-10-30
CN102611884A (zh) 2012-07-25
CN102611884B (zh) 2014-07-09
US9521407B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
WO2012097743A1 (zh) 图像编解码方法及编解码设备
US9906789B2 (en) Encoding or decoding method and apparatus
CN110290388B (zh) 帧内预测方法、视频编码方法、计算机设备及存储装置
CN110557631B (zh) 图像预测方法和相关设备
WO2016065873A1 (zh) 图像预测方法及相关装置
WO2016155576A1 (zh) 图像编解码方法和相关装置
WO2013113217A1 (zh) 解码方法和装置
WO2014108095A1 (zh) 深度图像的编解码方法和编解码装置
WO2012167539A1 (zh) 帧内预测模式处理的方法和装置
WO2011127819A1 (zh) 图像编解码方法及相关装置
CN102685503B (zh) 变换系数的编码方法、变换系数的解码方法,和装置
TW201631977A (zh) 對影像解碼之方法
WO2014108093A1 (zh) 深度图像的编解码方法和编解码装置
WO2012097740A1 (zh) 标识图像块几何划分模式的编解码方法和设备
WO2009094946A1 (en) Code stream marking method and device, and coding-decoding system
US10027974B2 (en) Image coding/decoding method, device, and system
CN109076234A (zh) 图像预测方法和相关设备
WO2013064120A1 (zh) 一种变换模式的编解码方法和装置
WO2013000437A1 (zh) 一种基于帧内预测的解码方法和解码装置
WO2013159705A1 (zh) 编解码方法、视频序列码流的编解码方法及其对应的装置
WO2012097746A1 (zh) 一种编解码方法和装置
CN114073083A (zh) 用于帧间预测中的合并模式候选的全局运动
KR20120039967A (ko) 차분 움직임벡터 부호화/복호화 장치 및 방법, 및 그것을 이용한 영상 부호화/복호화 장치 및 방법
CN113597757A (zh) 具有区域数自适应的几何划分的形状自适应离散余弦变换
CN114128260A (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: 12736384

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2012736384

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2012736384

Country of ref document: EP