WO2015120818A1 - 图像编码、解码方法及装置 - Google Patents
图像编码、解码方法及装置 Download PDFInfo
- Publication number
- WO2015120818A1 WO2015120818A1 PCT/CN2015/073160 CN2015073160W WO2015120818A1 WO 2015120818 A1 WO2015120818 A1 WO 2015120818A1 CN 2015073160 W CN2015073160 W CN 2015073160W WO 2015120818 A1 WO2015120818 A1 WO 2015120818A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- matching
- mode
- prediction
- decoding
- coding
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Definitions
- the present invention relates to the field of communications, and in particular to an image encoding and decoding method and apparatus.
- the natural form of a digital video signal of an image is a sequence of images.
- a frame of image is usually a rectangular area composed of several pixels, and a digital video signal is a sequence of video images composed of tens of frames to thousands of frames of images, sometimes simply referred to as a video sequence or sequence.
- Encoding a digital video signal encodes one frame and one frame of image in a certain order. At any one time, the frame being encoded is referred to as the current encoded frame.
- decoding a compressed code stream of a digital video signal decodes the compressed code stream of one frame by one frame in the same order. At any one time, the frame being decoded is referred to as the current decoded frame.
- the current encoded frame or the current decoded frame is typically the current frame.
- HEVC High Efficiency Video Coding
- each CU in one frame of image can be different, some are 8x8, some are 64x64, and so on.
- LCUs Large Coding Units
- one frame of image is always first divided into "Largest Coding Units (LCUs)" having the same size and having NxN pixels, and then each LCU is further divided into trees.
- LCU Large Coding Units
- a plurality of CUs of different sizes are not necessarily the same. Therefore, the LCU is also referred to as a "Coding Tree Unit (CTU)".
- CTU Coding Tree Unit
- One of the LCUs is composed of three 32x32 pixel CUs and four 16x16 pixel CUs, so that seven tree-structured CUs form a CTU.
- the other LCU consists of two 32x32 pixel CUs, three 16x16 pixel CUs, and 20 8x8 pixel CUs.
- Such 25 CUs in a tree structure constitute another CTU.
- Encoding one frame of image is to sequentially encode one CU in one CTU. At any one time, the CU being coded is referred to as the current coded CU.
- Decoding a frame of image is also the same
- the sequence sequentially decodes one CU in one CTU.
- the CU being decoded is referred to as the currently decoded CU.
- the current encoded CU or the currently decoded CU is typically the current CU.
- a color pixel consists of three components.
- the two most commonly used pixel color formats are the GBR color format consisting of a green component, a blue component, and a red component, and a generic term called YUV consisting of a luma component and two chroma components.
- Color formats such as YCbCr color format. Therefore, when encoding a CU, a CU can be divided into three component planes (G plane, B plane, R plane or Y plane, U plane, V plane), and the three component planes are respectively coded; The three component bundles of one pixel are combined into one 3-tuple, and the CUs composed of these 3-tuples are encoded as a whole.
- the arrangement of the former pixel and its components is called the planar format of the image (and its CU), and the arrangement of the latter pixel and its components is called the stacked format of the image (and its CU). Format).
- the YUV color format can be subdivided into several seed formats according to whether the chroma component is downsampled: a YUV 4:4:4 pixel color format consisting of 1 Y component, 1 U component, and 1 V component.
- the left and right adjacent pixels are composed of two Y components, one U component, and one V component in a YUV 4:2:2 pixel color format; four pixels arranged in a left and right adjacent position by 2x2 spatial position are composed of four pixels.
- YUV4: 2:0 pixel color format consisting of Y component, 1 U component, and 1 V component.
- a component is generally represented by a number of 8 to 16 bits.
- the YUV4:2:2 pixel color format and the YUV4:2:0 pixel color format are all downsampled for the YUV4:4:4 pixel color format.
- a pixel component is also referred to as a pixel sample or simply as a sample.
- the value of a pixel can also be represented by the index of the palette.
- the palette space stores the value or approximate value of the three components of the pixel that needs to be represented.
- the address of the palette is called the index of the pixel stored in this address.
- An index can represent one component of a pixel, and an index can also represent three components of a pixel.
- the palette can be one or more. In the case of multiple palettes, a complete index is actually composed of the palette number and the index of the numbered palette.
- the index representation format of a pixel is to represent this pixel with an index.
- the index representation format of a pixel is also referred to as an indexed color or a pseudo color representation format of a pixel in the prior art, or is often referred to directly as an indexed pixel or a pseudo pixel (pseudo pixel). ) or pixel index or index. Indexes are sometimes referred to as indices.
- the representation of a pixel in its index representation format is also referred to as indexing or indexing.
- the palette used can be adaptively generated according to the characteristics of the coding region, and the decoder can obtain a palette (color component group and cable) A correspondence table between the sequence numbers), and the necessary information for recovering the video according to the palette is written into the code stream.
- This method of encoding and decoding is called a palette mode.
- a notable feature of computer screen images is that there are often many similar or even identical pixel patterns within the same frame of image.
- Chinese or foreign text that often appears in computer screen images is composed of a few basic strokes, and many similar or identical strokes can be found in the same frame image.
- Menus, icons, etc. which are common in computer screen images, also have many similar or identical patterns.
- the intra prediction method used in the existing image and video compression technology only refers to adjacent pixel samples, and cannot improve the compression efficiency by using the similarity or the similarity in one frame image.
- the intra motion compensation method in the prior art is also called intra block copy mode, and uses several fixed size (8x8, 16x16, 32x32, 64x64 pixels) blocks for intraframe.
- Intra block matching coding does not achieve a finer match with a variety of different sizes and shapes.
- the microblock matching method, the fine division matching method, the string matching method, and the palette method can effectively find various fine matching of different sizes and shapes, but In some image cases, more parameters may be needed to represent fine matching of different sizes and shapes, and there are also problems such as complexity, computational complexity, and large memory read/write bandwidth.
- block matching decoding method and the string matching decoding method may also be referred to as a block copy decoding method and a string copy decoding method, respectively.
- an embodiment of the present invention provides an image encoding and decoding method and apparatus.
- an image encoding method comprising: step 1) according to a pixel sample characteristic of a current coding unit CU and a neighboring CU of the current CU, having different values from a predetermined type A
- the prediction coding mode of the prediction feature and the matching coding mode of the mutually different matching characteristics select one coding mode to perform prediction or matching coding on the current CU, and select the coding mode as the optimal coding mode, where
- the A prediction coding mode and the matching coding mode include: prediction coding mode, matching coding mode 1, matching coding mode 2, ..., matching coding mode A-1, A is an integer greater than or equal to 2; step 2) adopting The optimal coding mode performs predictive coding or matching coding on the current CU.
- the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four coding modes include: predictive coding mode, block matching coding mode, string matching coding mode, and color palette ( Palette) coding mode (also known as palette matching mode); when A is equal to 3, the three coding modes include: predictive coding mode, block matching coding mode, and string matching coding mode.
- the current CU and the neighboring CU are composed of syntax elements, wherein the syntax element includes the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 or matching position 1 , unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N; prediction residual or matching residual, wherein , N is an integer greater than 2.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, ..., A-1, wherein when the prediction and matching mode identification code takes 0, the indication The current CU adopts the predictive coding mode, when the prediction and matching mode identification code takes 1, it indicates that the current CU adopts the matching coding mode 1, and when the prediction and matching mode identification code takes 2, it indicates The current CU adopts the matching coding mode 2, ..., when the prediction and matching mode identification code takes A-1, indicating that the current CU adopts the matching coding mode A-1.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 and/or displacement Vector 1, or index map 1, unmatched pixel sample 1, motion vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ... motion vector N or and/or displacement vector, or Index mapping, unmatched pixel samples N; prediction residuals or matching residuals, where N is an integer greater than two.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, 3, wherein when the prediction and matching mode identification code takes 0, the current CU is used to predict The coding mode, when the prediction and matching mode identification code takes 1, indicates that the current CU adopts a block matching coding mode.
- the prediction and matching mode identification code is 2, it indicates that the current CU adopts a string matching coding mode, and when the prediction and matching mode identification code takes 3, it indicates that the current CU adopts a palette coding mode.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 and/or displacement Vector 1, unmatched pixel sample 1, motion vector 2 and/or displacement vector 2, unmatched pixel sample 2, ..., motion vector N and/or displacement vector, unmatched pixel sample N; prediction residual or Matching residuals, where N is an integer greater than two.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, wherein, when the prediction and matching mode identification code takes 0, indicating that the current CU adopts a predictive coding mode When the prediction and matching mode identification code takes 1, it indicates that the current CU adopts a block matching coding mode, and when the prediction and matching mode identification code takes 2, it indicates that the current CU adopts a string matching coding mode.
- the CU header is fixed in the first place in the order of the syntax elements, and the order of the other syntax elements in the code stream is arranged in a predetermined arrangement order, where
- the other syntax element is a syntax element other than the CU header in the syntax element.
- the syntax element is split into a plurality of parts placed at the same location or at different locations of the code stream.
- the method further includes: step 3) performing a subsequent encoding operation, a reconstruction operation, and an entropy encoding operation on the current CU.
- an image decoding method comprising: step 1) entropy decoding an input code stream, and parsing the entropy decoding to obtain data information, according to one of the following factors: The prediction coding mode of mutually different prediction characteristics and the matching decoding mode of mutually different matching characteristics select a decoding mode to perform prediction or matching decoding on the current coding unit CU: the data information, the data information, and the current CU and The analysis result of the analysis of the pixel sample characteristics of the neighboring CU, wherein A is an integer greater than or equal to 2; and step 2) performing a predictive decoding operation or a matching decoding operation on the current CU according to the selected predictive decoding mode or the matching decoding mode.
- the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four decoding modes include: predictive decoding mode, block copy decoding mode, string copy decoding mode, and palette decoding. Mode; when A is equal to 3, the three decoding modes include: predictive decoding mode, block copy decoding mode, and string copy decoding mode.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 or matching position 1 , unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N; prediction residual or matching residual, wherein , N is an integer greater than 2.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, ..., A-1, wherein when the prediction and matching mode identification code takes 0, the indication The current CU adopts the predictive decoding mode, when the prediction and matching mode identification code takes 1, it indicates that the current CU adopts the matching decoding mode 1, and when the prediction and matching mode identification code takes 2, it indicates The current CU adopts the matching decoding mode 2, . . . , when the prediction and matching mode identification code takes A-1, indicating that the current CU adopts the matching decoding mode A-1.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 and/or displacement Vector 1, or index map 1, unmatched pixel sample 1, motion vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ... motion vector N and/or displacement vector, or index Mapped, unmatched pixel samples N; prediction residuals or matching residuals, where N is an integer greater than two.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, 3, wherein when the prediction and matching mode identification code takes 0, the current CU is used to predict The decoding mode, when the prediction and matching mode identification code is taken as 1, indicates that the current CU adopts a block copy decoding mode, and when the prediction and matching mode identification code takes 2, indicates that the current CU adopts a string copy decoding mode.
- the prediction and matching mode identification code is 3, it indicates that the current CU adopts a palette decoding mode.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 or displacement vector 1 , or position vector 1 and matching length 1, unmatched pixel sample 1, motion vector 2 or displacement vector 2, or position vector 2 and matching length 2, unmatched pixel sample 2, ..., motion vector N and/or Displacement vector, or position vector N and matching length N, unmatched pixel sample N; prediction residual or matching residual, where N is an integer greater than two.
- said syntax elements comprise the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 or displacement vector 1 , or position vector 1 and matching length 1, unmatched pixel sample 1, motion vector 2 or displacement vector 2, or position vector 2 and matching length 2, unmatched pixel sample 2, ..., motion vector N and/or Displacement vector, or position vector N and matching length N, unmatched pixel sample N; prediction residual or matching residual, where N is an integer greater than two.
- the prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, wherein, when the prediction and matching mode identification code takes 0, indicating that the current CU adopts a prediction decoding manner When the prediction and matching mode identification code is taken as 1, it indicates that the current CU adopts a block copy decoding mode, and when the prediction and matching mode identification code takes 2, it indicates that the current CU adopts a string copy decoding mode.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification bits, prediction and matching mode identification codes or prediction and matching mode partial identification Code, or null, prediction mode or matching mode; motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N; prediction residual or matching residual, where N is an integer greater than two.
- the method further includes: when the prediction and matching mode identifier bit is 0, indicating that the syntax element of the CU constituting the code stream includes one of: a prediction and matching mode partial identification code and the prediction And the matching mode part identification code is not empty, the prediction and matching mode part identification code, and the prediction and matching mode part identification code is empty; when the prediction and matching mode identification bit is 1, indicating that the code stream is formed
- the syntax elements of the CU include prediction and matching mode identification codes.
- the method further comprises: when the syntax element of the CU constituting the code stream includes a prediction and matching mode partial identification code and the prediction and matching mode partial identification code is not empty, according to the prediction and matching
- the mode part identification code and the evaluation result of the pixel value feature of the current CU and the neighboring CU determine a decoding mode adopted by the current CU; when the syntax element of the CU constituting the code stream includes a prediction and matching mode part identification code, When the prediction and matching mode part identification code is empty, the decoding mode adopted by the current CU is determined according to the evaluation result of the pixel sample characteristics of the current CU and the neighboring CU.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification bits or null, prediction and matching mode identification codes or prediction and matching methods Partial identification code, or null, prediction or matching mode identification bit, prediction or matching mode identification code or prediction or matching mode part identification code or null; motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or Match position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N; prediction residual or matching residual, where N is an integer greater than 2.
- the prediction and matching mode flag when the prediction and matching mode flag is empty, the prediction and matching mode flag is set to a predetermined fixed value; when the prediction or matching mode flag is 1, the signal stream is formed.
- the syntax element of the CU includes a prediction and matching mode identification code, and the decoding mode of the current CU is determined according to the value corresponding to the prediction and matching mode identification code; when the prediction or matching mode identification bit takes a value of 0, the prediction and matching mode
- the partial identification code and the prediction and matching mode part identification code are not null, the prediction and matching mode part identification code, and the prediction and matching mode part identification code is empty.
- the method further comprises: when the syntax element of the CU constituting the code stream includes a prediction and matching mode part identification code and the prediction and matching mode part identification code is not empty, according to the prediction and matching The mode part identification code and the evaluation result of the pixel sample characteristics of the current CU and the neighboring CU determine the current CU The decoding mode adopted; when the syntax element of the CU constituting the code stream includes the prediction and matching mode part identification code and the prediction and matching mode part identification code is empty, according to the pixel pattern of the current CU and the neighboring CU The evaluation result of the value characteristic determines the decoding mode adopted by the current CU.
- said current CU and said neighboring CU are comprised of syntax elements, wherein said syntax elements comprise the following information: CU header, prediction and matching mode identification bits or null, prediction and matching mode identification codes or prediction and matching methods Partial identification code, or null, prediction or matching mode identification bit or null, prediction or matching mode identification code or prediction or matching mode part identification code or null; motion vector 1 and / or displacement vector 1, or index mapping 1, unmatched Pixel sample 1, motion vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ..., motion vector N or and/or displacement vector, or index map, unmatched pixel sample N a prediction residual or a matching residual, where N is an integer greater than two.
- syntax elements comprise the following information: CU header, prediction and matching mode identification bits or null, prediction and matching mode identification codes or prediction and matching methods Partial identification code, or null, prediction or matching mode identification bit or null, prediction or matching mode identification code or prediction or matching mode part identification code or null; motion vector 1 and / or displacement vector 1, or index mapping 1,
- the prediction and matching mode identifier when the prediction and matching mode identifier is not empty, setting the prediction and matching mode identifier bit to 0 or 1; when the prediction and matching mode flag is empty, setting the prediction And the matching mode identifier bit takes a predetermined fixed value; when the prediction and matching mode flag is not empty, setting the prediction and matching mode flag to 0 or 1; in the prediction and matching mode When the flag is empty, the prediction and matching mode flag is set to a predetermined fixed value.
- an arrangement order of the CU headers in the syntax element is fixedly located at a start of the CU, and other syntax elements are arranged in a code stream according to a predetermined arrangement order.
- Arrangement order wherein the other syntax elements are syntax elements other than the CU header in the syntax element.
- the syntax element is split into a plurality of parts placed at the same location or at different locations of the code stream.
- an image encoding method comprising: analyzing a coded block and a pixel sample characteristic of a neighboring block of the coded block; determining, according to the analysis result, the most suitable for the coded block. An excellent coding mode; encoding the coding block according to the optimal coding mode.
- performing characterization on the coding block and the neighboring block of the coding block comprising: performing characterization on the coding block to obtain a palette parameter of the coding block; and performing the proximity according to the palette parameter
- analyzing part or all of the reconstructed pixel sample characteristics in the neighboring block according to the palette parameter, and obtaining the analysis result comprising: reconstructing the reconstructed pixel according to the palette parameter The sample is converted to obtain the value of the palette index serial number, and the value of the palette index serial number is used as the analysis result.
- performing characterization on the coded block and the neighboring block of the coded block, and obtaining the analysis result includes: acquiring some or all of the reconstructed pixel samples in the neighboring block, and copying the reconstructed pixel sample The value is taken as the result of the analysis.
- determining an optimal coding mode applicable to the coding block according to the analysis result comprising: determining an optimal coding mode applicable to the coding block from multiple coding modes, where the multiple coding modes include the following: At least one of: predictive coding mode, block matching coding mode, string matching coding mode, and palette coding mode.
- the optimal coding mode is the palette coding mode
- encoding the coding block according to the optimal coding mode including: according to the palette parameter and the analysis result pair
- the coded block is encoded.
- the method further includes: writing a palette decoding parameter including the palette parameter to a code corresponding to the coding block In the stream.
- an image decoding method including: parsing a received code stream to obtain a decoding parameter of a decoding block in the code stream; performing characteristic analysis on a neighboring block of the decoding block And decoding the decoded block according to the decoding parameter and a decoding manner determined by an analysis result of the neighboring block.
- performing characteristic analysis on the neighboring block of the decoding block includes: analyzing some or all of the reconstructed pixel sample characteristics in the neighboring block, Obtaining the analysis result, the value of the palette index number obtained by converting the reconstructed sample according to the palette parameter, or the copied value of the reconstructed pixel sample is used as the analysis result.
- decoding the decoding block according to the decoding parameter and the decoding manner determined by the analysis result comprises: decoding, according to the analysis result, a decoding manner indicated by the palette decoding mode parameter The block is decoded.
- the decoding manner includes at least one of the following: a prediction decoding mode, a block copy decoding mode, a string copy decoding mode, and a palette decoding mode.
- an image encoding apparatus comprising: a selecting module, configured to have a predetermined type A according to a pixel sample characteristic of a current encoding unit CU and a neighboring CU of the current CU Selecting one coding mode to predict or match the current CU in the prediction coding mode of the prediction features different from each other and the matching coding modes of the different matching characteristics, and selecting the coding mode as the optimal coding mode
- the A prediction coding mode and the matching coding mode include: a prediction coding mode, Matching coding mode 1, matching coding mode 2, ..., matching coding mode A-1, A is an integer greater than or equal to 2; the coding module is configured to perform predictive coding or matching coding on the current CU by using the optimal coding mode .
- the coding mode selected by the selection module the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four coding modes include: a prediction coding mode, a block matching coding mode, String matching coding mode, palette coding mode; when A is equal to 3, the three coding modes include: predictive coding mode, block matching coding mode, and string matching coding mode.
- an image decoding apparatus comprising: an obtaining module configured to entropy decode an input code stream and parse the entropy decoding to obtain data information; and the selecting module is set according to the following factors For example, selecting a decoding mode from A types of predictive coding modes having mutually different prediction characteristics and mutually different matching characteristics to perform prediction or matching decoding on the current coding unit CU: the data information, the The data information and the analysis result of analyzing the pixel sample characteristics of the current CU and the neighboring CU, wherein A is an integer greater than or equal to 2; and the decoding module is configured to perform the current CU according to the selected predictive decoding mode or the copy decoding mode. Predictive decoding operations or matching decoding operations.
- the decoding mode selected by the selection module the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four decoding modes include: a prediction decoding mode, a block copy decoding mode, String copy decoding mode, palette decoding mode; when A is equal to 3, the three decoding modes include: predictive decoding mode, block copy decoding mode, and string copy decoding mode.
- an image encoding apparatus comprising: an analyzing module configured to perform characteristic analysis on a coded block and pixel samples of adjacent blocks of the coded block; and a determining module configured to be analyzed according to The result determines an optimal coding mode applicable to the coding block; the coding module is arranged to encode the coding block according to the optimal coding mode.
- the analysis module includes: an obtaining unit configured to perform characteristic analysis on the coded block to obtain a palette parameter of the coded block; and an analysis unit configured to perform, according to the palette parameter Some or all of the reconstructed pixel sample characteristics in the neighboring block are analyzed to obtain the analysis result.
- the analyzing unit comprises: a converting subunit, configured to convert the reconstructed pixel sample according to the palette parameter; and obtain a subunit, and set the value of the palette index serial number to be obtained, The value of the palette index number is taken as the analysis result.
- the acquiring unit is further configured to acquire part or all of the reconstructed pixel samples in the neighboring block, and use the copied value of the reconstructed pixel samples as the analysis result.
- the determining module is further configured to determine an optimal coding mode applicable to the coding block from a plurality of coding modes, where the multiple coding modes include at least one of: a prediction coding mode, and a block matching Encoding method, string matching encoding method, palette encoding method.
- the coding module is further configured to encode the coding block according to the palette parameter and the analysis result.
- the apparatus further comprises: a writing module configured to write a palette decoding parameter including the palette parameter into a code stream corresponding to the encoding block.
- an image decoding apparatus comprising: a parsing module configured to parse a received code stream to obtain a decoding parameter of a decoding block in the code stream; and an analysis module configured to Characterizing the neighboring blocks of the decoding block; the decoding module is configured to decode the decoding block according to the decoding mode determined by the decoding parameter and the analysis result.
- the analyzing module is further configured to analyze part or all of the reconstructed pixel sample characteristics in the neighboring block to obtain the analysis result, wherein And taking the value of the palette index number obtained by converting the reconstructed sample value according to the palette parameter, or the copied value of the reconstructed pixel sample as the analysis result.
- the decoding module is further configured to decode the decoding block according to the analysis result, using a decoding manner indicated by the palette decoding mode parameter.
- a technical solution for determining an encoding mode that is most suitable for a current unit to be encoded is determined according to a pixel sample characteristic of a coding unit to be currently encoded and a neighboring unit of the coding unit, and the related art has not been solved.
- FIG. 1 is a flow chart of an image encoding method according to an embodiment of the present invention.
- FIG. 2 is a block diagram showing the structure of an image encoding apparatus according to an embodiment of the present invention.
- FIG. 3 is a flowchart of an image decoding method according to an embodiment of the present invention.
- FIG. 4 is a block diagram showing the structure of an image decoding apparatus according to an embodiment of the present invention.
- FIG. 5 is still another flowchart of an image encoding method according to an embodiment of the present invention.
- FIG. 6 is a block diagram showing still another structure of an image encoding apparatus according to an embodiment of the present invention.
- FIG. 7 is a block diagram showing still another structure of an image encoding apparatus according to an embodiment of the present invention.
- FIG. 8 is still another flowchart of an image decoding method according to an embodiment of the present invention.
- FIG. 9 is a block diagram showing still another structure of an image decoding apparatus according to an embodiment of the present invention.
- FIG. 10 is a schematic flowchart of an encoding method according to an embodiment of the present invention.
- FIG. 11 is a schematic flow chart of a decoding method according to an embodiment of the present invention.
- FIG. 12 is a schematic flow chart of adopting four coding modes according to a preferred embodiment of the present invention.
- FIG. 13 is a schematic flow chart of adopting four decoding modes according to a preferred embodiment 2 of the present invention.
- the prediction coding mode and the matching coding mode (including block matching mode, microblock matching mode, fine division matching mode, string matching mode, and palette mode), the common points of these prediction coding modes and matching coding modes are: Use neighboring or historical pixel samples that have undergone encoding, decoding, and reconstruction (called reference images)
- Several suitable pixel samples (referred to as matching reference samples) in a prime value set or reference pixel sample storage space to approximate or accurately match (ie, represent) pixel samples in the current encoding or decoding (referred to as pixel samples in the current encoding or decoding) Match the current sample) and use several parameters and variables (called matching relationship parameters) to record and transmit the relationship between the matching reference samples and the matching current samples through the code stream, so that the reference pixel sample set is used at the decoding end. Matching the relationship parameters will result in matching the current sample.
- the essential differences between the various predictive coding modes and the matching coding modes are mainly determined by the following four elements: 1) matching the size of the smallest unit, that is, when the matching minimum unit is represented as NxM samples, N and M Range of values; 2) composition and size of the reference pixel sample set; 3) matching the shape of the reference sample and matching the shape of the current sample; 4) matching the distance between the reference sample and the matching current sample or matching reference
- the distance between the sample and the current CU as shown in Table 1 below, lists the characteristics of several predictive coding methods (also known as prediction methods) and matching coding methods on these four elements:
- the size of the matching minimum unit used is the size of the matching minimum unit used.
- the advantage of using a large matching minimum unit is that a CU only needs to be divided into a few matching minimum units (usually 1 to 4) for matching operations, so the number of matching relationship parameters (such as displacement vectors) is small, and the consumed bits are small. It is also rare; but the shortcoming is that the matching accuracy may not be high, the matching residual may be large, and the bits consumed may be more.
- the advantage of using a small matching minimum unit is that the matching precision is high, the matching residual is small, and the bits consumed are few, but the shortcoming is that a CU needs to be divided into a plurality of matching minimum units (possibly as many as a dozen or even Dozens of them are used for matching operations, so the number of matching relationship parameters (such as displacement vectors) may be many, and the number of bits consumed may be large. It can be seen that whether the large matching minimum unit or the small matching minimum unit can obtain a higher compression ratio depends entirely on the nature of the image.
- the highest compression ratio can be achieved by combining CU-level adaptive coding and decoding with different prediction and matching characteristics, especially multiple prediction modes and matching methods with different matching minimum units.
- FIG. 1 is a flowchart of an image encoding method according to an embodiment of the present invention. As shown in FIG. 1, the method includes the following steps:
- Step S102 According to the pixel sample characteristics of the current coding unit CU and the neighboring CU of the current CU, a predictive coding mode having mutually different prediction characteristics from a predetermined type A, and a matching coding manner of mutually different matching characteristics Selecting an encoding mode to perform prediction or matching coding on the current CU, and selecting the selected coding mode as the optimal coding mode, wherein the foregoing A predictive coding modes and matching coding modes include: predictive coding mode and matching coding mode 1. Matching coding mode 2, ..., matching coding mode A-1, A is an integer greater than or equal to 2;
- Step S104 Perform prediction coding or matching coding on the current CU by using the above optimal coding mode.
- the coding mode that is most suitable for the current coding unit is determined according to the pixel sample characteristics of the coding unit currently to be coded and the adjacent unit of the coding unit, and then the current CU is coded according to the determined optimal coding mode.
- the technical solution solves the problem in the related art that there is no technical solution for efficiently coding or efficiently decoding the screen, and then combining multiple encoding methods to encode the coding unit to realize a fast and efficient encoding or decoding process.
- a predictive coding mode and a matching coding mode having mutually different prediction and matching characteristics are determined in advance, and when the current CU is coded, a predetermined analysis and evaluation method and a criterion pair are adopted.
- the characteristics of the current CU and the neighboring CU are analyzed and evaluated.
- one of the A predictive coding modes and the matched coding mode is selected to perform predictive coding or matching coding on the current CU, that is, the combination has different predictions.
- the CU level adaptive coding and decoding are performed by multiple prediction methods and matching methods of the matching characteristics.
- the value of the above A is from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four coding modes include: predictive coding mode, block matching coding mode, string matching coding mode, and palette coding mode; When A is equal to 3, the three coding modes include: predictive coding mode, block matching coding mode, and string matching coding mode.
- the finally determined optimal coding mode may also be a combination of the above coding modes, for example, : A matching method in which the string matching encoding method and the palette encoding method are mixed.
- the optimal coding mode is determined according to the current CU and the pixel sample characteristics of the CU.
- the pixel sample characteristic in the embodiment of the present invention refers to: The correlation between pixels, the complexity of pixels (whether it contains multiple colors, the brightness of each color, the number of different colors in a region, whether it can be clustered into several representative colors and the number of colors represented, The error between each pixel and the representative color and its distribution), the scheme capable of embodying the sample characteristic of the pixel is within the protection range of the "pixel sample characteristic" of the embodiment of the present invention, and further, the following syntax elements constitute The technical solutions that are conceived on the basis of the inventive concept of the embodiments of the present invention are all within the scope of protection of the embodiments of the present invention.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, where the syntax element includes the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode; motion vector 1 or matching position 1, unmatched pixel sample 1. Motion vector 2 or matching position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N; prediction residual or matching residual, where N is greater than 2 Integer.
- the value of the foregoing prediction and matching mode identification code includes at least one of the following: 0, 1, 2, ..., A-1, where the foregoing prediction and matching mode identification code takes 0, indicating that the current CU is adopted.
- the prediction and matching mode identification code when the prediction and matching mode identification code is taken as 1, it indicates that the current CU adopts the above matching coding mode 1, and when the prediction and matching mode identification code is 2, it indicates that the current CU adopts the above matching coding mode 2
- the above prediction and matching mode identification code takes A-1 it indicates that the current CU adopts the above matching coding mode A-1.
- the above current CU and the foregoing neighboring CU are composed of syntax elements, wherein the syntax elements include the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 and/or displacement vector 1, or index mapping 1. Unmatched pixel sample 1, motion vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ... motion vector N or and/or displacement vector, or index map, unmatched pixel Sample N, prediction residual or matching residual, where N is an integer greater than two.
- the foregoing prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, and 3, wherein when the foregoing prediction and matching mode identification code takes 0, it indicates that the current CU adopts a predictive coding mode, where When the foregoing prediction and matching mode identification code is 1, it indicates that the current CU adopts a block matching coding mode. When the prediction and matching mode identification code is 2, it indicates that the current CU adopts a string matching coding mode, and the foregoing prediction and matching mode identifiers are used. When the code is 3, it means that the current CU adopts the palette coding mode.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, wherein the syntax element includes the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 and/or displacement vector 1, unmatched pixel Sample 1, motion vector 2 and/or displacement vector 2, unmatched pixel sample 2, ..., transport Motion vector N and/or displacement vector, unmatched pixel sample N, prediction residual or matching residual, where N is an integer greater than two.
- the foregoing prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, wherein when the foregoing prediction and matching mode identification code takes 0, it indicates that the current CU adopts a predictive coding mode, and the foregoing prediction is performed.
- the matching mode identification code is set to 1, it indicates that the current CU adopts a block matching coding mode.
- the prediction and matching mode identification code is 2, it indicates that the current CU adopts a string matching coding mode.
- the CU header is fixed in the first place in the order of the syntax elements, and the order of the other syntax elements in the code stream is arranged according to a predetermined arrangement order, wherein the other
- the syntax element is a syntax element other than the CU header in the syntax element, and for any of the syntax elements, the syntax element is split into multiple parts, and the multiple parts are placed in the same position of the code stream or different positions.
- step S104 after performing the technical solution of step S104, the following technical solution may also be performed: performing subsequent coding operations, reconstruction operations, and entropy coding operations on the current CU.
- FIG. 2 is a structural block diagram of an image encoding apparatus according to an embodiment of the present invention. As shown in FIG. 2, the method includes:
- the selecting module 20 is configured to, according to the pixel sample characteristics of the current coding unit CU and the neighboring CU of the current CU, from a predetermined type A prediction coding mode having mutually different prediction characteristics, and mutually different matching characteristics.
- the matching coding mode one coding mode is selected to perform prediction or matching coding on the current CU, and the selected coding mode is used as an optimal coding mode, wherein the foregoing A prediction coding mode and the matching coding mode include: a prediction coding mode, Matching coding mode 1, matching coding mode 2, ..., matching coding mode A-1, A is an integer greater than or equal to 2;
- the encoding module 22 is connected to the selecting module 20 and configured to perform predictive encoding or matching encoding on the current CU by using the above optimal encoding manner.
- the coding mode that is most suitable for the current coding unit is determined according to the pixel sample characteristics of the coding unit currently to be coded and the adjacent unit of the coding unit, and then the current optimal mode is determined according to the determined optimal coding mode.
- CU coding technology solution solving the related technology, there is no one on the screen. The problem of the technical scheme of high-efficiency coding or high-efficiency decoding, and then combining a plurality of coding modes to encode the coding unit, and implementing a fast and efficient coding or decoding process.
- the coding mode selected by the selection module 20 the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four coding modes include: predictive coding mode, block matching coding mode, and string matching. Coding mode, palette coding mode; when A is equal to 3, the three coding modes include: predictive coding mode, block matching coding mode, and string matching coding mode.
- FIG. 3 is a flowchart of an image decoding method according to an embodiment of the present invention. As shown in FIG. 3, the method includes the following steps:
- Step S302 Entropy decoding the input code stream, and parsing the entropy decoding to obtain the data information, and according to one of the following factors, the prediction coding mode with different prediction characteristics from A and the matching decoding manner of the matching characteristics different from each other Selecting a decoding mode to perform prediction or matching decoding on the current coding unit CU: the foregoing data information, the foregoing data information, and an analysis result of analyzing pixel pixel characteristics of the current CU and the neighboring CU, where A is greater than or equal to 2. Integer
- Step S304 performing a prediction decoding operation or a matching decoding operation on the current CU according to the selected prediction decoding mode or the matching decoding mode.
- the decoding mode that is most suitable for the current unit to be decoded is determined according to the pixel sample characteristics of the decoding unit currently being decoded and the neighboring unit of the decoding unit, and then the current CU is decoded according to the determined optimal decoding mode.
- the technical solution solves the problem in the related art that there is no technical solution for efficiently coding or efficiently decoding the screen, and then combining multiple decoding methods to decode the decoding unit to realize a fast and efficient encoding or decoding process.
- a (3 ⁇ A ⁇ 5) predictive decoding modes and matching decoding modes having mutually different prediction and matching characteristics are determined in advance, and when the compressed code stream data of the current CU is decoded, Selecting the A prediction decoding mode and the matching decoding mode according to the information read from the compressed code stream data or the information read from the compressed code stream data plus the analysis and evaluation of the characteristics of the current CU and the neighboring CU. One of them performs predictive decoding or matching decoding on the current CU.
- the value of the foregoing A is from the set ⁇ 3, 4, 5 ⁇ , and when A is equal to 4, the four decoding modes include: a prediction decoding mode, a block copy decoding mode, a string copy decoding mode, and a palette decoding mode.
- the three decoding modes include: predictive decoding mode, block copy decoding mode, and string copy decoding mode.
- the optimal decoding mode is determined according to the current CU and the pixel sample characteristics of the CU.
- the following are the following cases. It should be noted that the following syntax elements are merely examples, and any of the present inventions The technical solutions conceived above the inventive concept of the embodiments are all within the scope of protection of the embodiments of the present invention.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, wherein the syntax element includes the following information: a CU header, a prediction and matching mode identification code, a prediction mode or a matching mode, a motion vector 1 or a matching position 1, and an unmatched pixel sample.
- the syntax element includes the following information: a CU header, a prediction and matching mode identification code, a prediction mode or a matching mode, a motion vector 1 or a matching position 1, and an unmatched pixel sample.
- Motion vector 2 or matching position 2 unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N, prediction residual or matching residual, where N is greater than 2 Integer.
- the value of the foregoing prediction and matching mode identification code includes at least one of the following: 0, 1, 2, ..., A-1, where the foregoing prediction and matching mode identification code takes 0, indicating that the current CU is adopted.
- the foregoing predictive decoding mode when the prediction and matching mode identification code is taken as 1, it indicates that the current CU adopts the matching decoding mode 1, and when the prediction and matching mode identification code is 2, it indicates that the current CU adopts the matching decoding mode 2
- the above prediction and matching mode identification code takes A-1, it indicates that the current CU adopts the above matching decoding mode A-1.
- the above current CU and the foregoing neighboring CU are composed of syntax elements, wherein the syntax elements include the following information: CU header, prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 and/or displacement vector 1, or index mapping 1. Unmatched pixel sample 1, motion vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ... motion vector N and/or displacement vector, or index map, unmatched pixel sample A value of N, a prediction residual, or a matching residual, where N is an integer greater than two.
- the value of the foregoing prediction and matching mode identification code includes at least one of the following: 0, 1, 2, and 3, wherein when the foregoing prediction and matching mode identification code takes 0, it indicates that the current CU adopts a prediction decoding mode, where When the foregoing prediction and matching mode identifier code is 1, it indicates that the current CU adopts a block copy decoding mode, and when the prediction and matching mode identification code takes 2, it indicates that the current CU adopts a string copy decoding mode, and the foregoing prediction and matching mode identifiers are used. When the code is 3, it means that the current CU uses the palette decoding mode.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, wherein the syntax element includes the following information: a CU header, a prediction and matching mode identification code, a prediction mode or a matching mode, a motion vector 1 or a displacement vector 1, or a position vector 1 and Match length 1, unmatched pixel sample 1, motion vector 2 or displacement vector 2, or position vector Quantity 2 and matching length 2, unmatched pixel samples 2, ..., motion vector N and/or displacement vector, or position vector N and matching length N, unmatched pixel sample N, prediction residual or matching residual, Where N is an integer greater than 2.
- the foregoing prediction and matching mode identifier code value includes at least one of the following: 0, 1, 2, wherein when the foregoing prediction and matching mode identification code takes 0, it indicates that the current CU adopts a predictive decoding mode, where the foregoing prediction is performed.
- the matching mode identification code is set to 1, it indicates that the current CU adopts the block copy decoding mode.
- the prediction and matching mode identification code is 2, it indicates that the current CU adopts the serial copy decoding mode.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, where the syntax element includes the following information: a CU header, a prediction and matching mode identifier, a prediction and matching mode identifier, or a prediction and matching mode partial identifier, or an empty, prediction Mode or matching mode, motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel A value of N, a prediction residual, or a matching residual, where N is an integer greater than two.
- the method further includes: when the prediction and matching mode identifier bits are 0, indicating that the syntax element of the CU constituting the code stream includes one of the following: a prediction and matching mode partial identification code and the foregoing prediction And the matching mode part identification code is not empty, the prediction and matching mode part identification code, and the foregoing prediction and matching mode part identification code is empty; when the prediction and matching mode identification bit is taken as 1, the gram of the CU constituting the above code stream is represented
- the element includes the prediction and matching method identification code.
- the partial identification code and the current CU and the neighboring according to the foregoing prediction and matching manner are used.
- the evaluation result of the pixel sample characteristic of the CU determines the decoding mode adopted by the current CU; when the syntax element of the CU constituting the code stream includes the prediction and matching mode partial identification code and the prediction and matching mode partial identification code is empty, according to The evaluation result of the pixel sample characteristics of the current CU and the neighboring CU determines the decoding mode adopted by the current CU.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, where the syntax element includes the following information: a CU header, a prediction and matching mode identifier bit or a null, a prediction and matching mode identification code, or a prediction and matching mode partial identification code, or an empty , prediction or matching mode flag, prediction or matching mode identification code or prediction or matching mode part identification code or null, motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or match Position 2, unmatched pixel sample 2, ..., motion vector N or matching position N, unmatched pixel sample N, prediction residual or matching residual, where N is an integer greater than two.
- the prediction and matching mode flag when the prediction and matching mode flag is empty, the prediction and matching mode flag is set to a predetermined fixed value; when the prediction or matching mode flag is 1, the gram of the CU constituting the code stream is represented.
- the prediction and matching mode identification code is included in the element, and the decoding mode of the current CU is determined according to the value corresponding to the prediction and matching mode identification code; when the prediction or matching mode identification bit takes a value of 0, the mode partial identification code is predicted and matched.
- the foregoing prediction and matching mode partial identification code is not null, the prediction and matching mode partial identification code, and the foregoing prediction and matching mode partial identification code is empty.
- the syntax element of the CU constituting the foregoing code stream includes the prediction and matching mode part identification code and the foregoing prediction and matching mode part identification code is not empty
- the result of the evaluation of the pixel sample characteristics of the neighboring CU determines the decoding mode adopted by the current CU; when the syntax element of the CU constituting the code stream includes the prediction and matching mode part identification code and the prediction and matching mode part identification code is empty, The decoding mode adopted by the current CU is determined according to the evaluation result of the pixel sample characteristics of the current CU and the neighboring CU.
- the foregoing current CU and the foregoing neighboring CU are composed of syntax elements, where the syntax element includes the following information: a CU header, a prediction and matching mode identifier bit or a null, a prediction and matching mode identification code, or a prediction and matching mode partial identification code, or an empty , prediction or matching mode flag or null, prediction or matching mode identification code or prediction or matching mode part identification code or null, motion vector 1 and/or displacement vector 1, or index map 1, unmatched pixel sample 1, motion Vector 2 and/or displacement vector 2, or index map 2, unmatched pixel sample 2, ..., motion vector N or and/or displacement vector, or index map, unmatched pixel sample N, prediction residual or match Residual, where N is an integer greater than two.
- the prediction and matching mode flag when the foregoing prediction and matching mode flag is not empty, setting the foregoing prediction and matching mode flag to 0 or 1; when the prediction and matching mode flag is empty, setting the prediction and matching mode flag The value is a predetermined fixed value; when the prediction and matching mode flag is not empty, setting the prediction and matching mode flag to 0 or 1; when the prediction and matching mode flag is empty, setting the above The prediction and matching mode flag bits take a predetermined fixed value.
- the order of the CU headers in the syntax elements is fixedly located at the beginning of the CU, and the order of the other syntax elements in the code stream is arranged according to a predetermined ranking order.
- the other syntax elements described above are among the above syntax elements, except for the CU header A syntax element, and, for any of the above syntax elements, splits the syntax element into a plurality of portions placed at the same location or at different locations of the codestream.
- An image decoding apparatus is also provided in the embodiment to implement the above-mentioned embodiments and preferred embodiments.
- the descriptions of the modules involved in the apparatus will be described below.
- the term "module” may implement a combination of software and/or hardware of a predetermined function.
- the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
- 4 is a structural block diagram of an image decoding apparatus according to an embodiment of the present invention. As shown in FIG. 4, the method includes:
- the obtaining module 40 is configured to perform entropy decoding on the input code stream, and parse the entropy decoding to obtain the data information;
- the selecting module 42 is connected to the obtaining module 40, and is configured to select a decoding mode to decode the current decoding mode according to one of the following factors: a predictive decoding mode with mutually different prediction characteristics and a matching decoding mode with mutually different matching characteristics.
- the unit CU performs prediction or matching decoding: the foregoing data information, the foregoing data information, and an analysis result of analyzing pixel pixel characteristics of the current CU and the neighboring CU, where A is an integer greater than or equal to 2;
- the decoding module 44 is connected to the selection module 42 and configured to perform a prediction decoding operation or a matching decoding operation on the current CU according to the selected prediction decoding method or the matching decoding method.
- each of the above-mentioned modules is used to determine the decoding mode that is most suitable for the current unit to be decoded according to the pixel sample characteristics of the decoding unit currently to be decoded and the neighboring unit of the decoding unit, and then the current CU according to the determined optimal decoding mode.
- the technical solution for decoding solves the problem of the technical solution of efficiently coding or efficiently decoding the screen in the related art, and then combines various decoding methods to decode the decoding unit to realize fast and efficient encoding or decoding. process.
- the decoding mode selected by the selecting module 42 is: the value of A is taken from the set ⁇ 3, 4, 5 ⁇ , wherein when A is equal to 4, the four decoding modes include: predictive decoding mode, block copy decoding mode, and string copying. Decoding mode, palette decoding mode; when A is equal to 3, the three decoding modes include: predictive decoding mode, block copy decoding mode, and string copy decoding mode.
- FIG. 5 is still another flowchart of the image encoding method according to the embodiment of the present invention. As shown in FIG. 5, the method includes the following steps:
- Step S502 analyzing pixel pixel characteristics of the coded block and the neighboring block of the coded block;
- Step S504 determining an optimal coding mode applicable to the coding block according to the analysis result
- Step S506 encoding the coded block according to the optimal coding mode.
- the coding mode that is most suitable for the current coding unit is determined according to the pixel sample characteristics of the coding unit currently to be coded and the adjacent unit of the coding unit, and then the current CU is coded according to the determined optimal coding mode.
- the technical solution solves the problem in the related art that there is no technical solution for efficiently coding or efficiently decoding the screen, and then combining multiple encoding methods to encode the coding unit to realize a fast and efficient encoding or decoding process.
- the foregoing step S502 may have multiple implementation manners.
- the following technical solution may be implemented: performing characteristic analysis on the coding block to obtain a palette parameter of the coding block. And analyzing some or all of the reconstructed pixel sample characteristics in the neighboring block according to the above palette parameter, and obtaining the above analysis result, and the analysis result can be obtained by: reconstructing the above according to the above palette parameter Converting the pixel samples to obtain the value of the palette index number, and taking the value of the palette index number as the analysis result; acquiring some or all of the reconstructed pixel samples in the adjacent block, and reconstructing the pixel The copy value of the sample value is taken as the result of the above analysis.
- step S504 determining an optimal coding mode that is applicable to the foregoing coding block from a plurality of coding modes, where the multiple coding modes include at least one of the following: a prediction coding mode, and a block matching coding mode , string matching encoding, palette encoding.
- step S506 may be implemented by encoding the coding block according to the color palette parameter and the analysis result, where it is necessary to explain that, when the optimal coding mode is the color palette coding mode, After encoding the coding block according to the above palette parameter and the analysis result, the palette decoding parameter including the palette parameter is also written into the code stream corresponding to the coding block.
- FIG. 6 is a block diagram showing still another structure of an image encoding apparatus according to an embodiment of the present invention. As shown in FIG. 6, the method includes:
- the analyzing module 60 is configured to perform characterization on the coded block and the pixel samples of the adjacent blocks of the coded block;
- the determining module 62 is connected to the analyzing module 60, and is configured to determine an optimal encoding mode applicable to the coding block according to the analysis result;
- the encoding module 64 is coupled to the determining module 62 and configured to encode the encoded block according to the optimal encoding method described above.
- the coding mode that is most suitable for the current coding unit is determined according to the pixel sample characteristics of the coding unit currently to be coded and the adjacent unit of the coding unit, and then the current optimal mode is determined according to the determined optimal coding mode.
- the technical solution of coding by the CU solves the problem of the technical solution of efficiently coding or efficiently decoding the screen in the related art, and then combines multiple coding modes to encode the coding unit to realize fast and efficient coding or The decoding process.
- the analysis module 60 may include the following unit: an obtaining unit 600 configured to perform characteristic analysis on the coding block to obtain a palette parameter of the coding block, and an analysis unit 602 and an acquisition unit 600.
- the connection is configured to analyze the partial or total reconstructed pixel sample characteristics of the neighboring blocks according to the foregoing palette parameter, and obtain the foregoing analysis result, wherein the obtaining unit 600 is further configured to acquire a part of the neighboring block or All the pixel samples are reconstructed, and the copied value of the reconstructed pixel samples described above is taken as the analysis result.
- the analyzing unit includes: a converting subunit 6020 configured to convert the reconstructed pixel sample according to the above palette parameter; the obtaining subunit 6022 is set to obtain a palette index number Value, the value of the palette index number is taken as the result of the above analysis.
- the determining module 62 is further configured to determine an optimal encoding mode that is applicable to the foregoing coding block from a plurality of coding modes, where the multiple coding modes include at least one of the following: a prediction coding mode, a block matching coding mode, and a string matching.
- the encoding method and the palette encoding method when the optimal encoding method is the palette encoding method, the encoding module 64 is further configured to encode the encoding block according to the palette parameter and the analysis result.
- the device further includes: a writing module 66, configured to write the palette decoding parameter including the palette parameter into the code stream corresponding to the coding block.
- FIG. 8 is still another flowchart of an image decoding method according to an embodiment of the present invention. As shown in FIG.
- Step S802 parsing the received code stream to obtain decoding parameters of the decoded block in the foregoing code stream
- Step S804 performing characteristic analysis on the neighboring blocks of the decoding block.
- Step S806 decoding the decoded block according to the decoding parameter and the decoding manner determined by the analysis result of the neighboring block.
- the decoding mode that is most suitable for the current unit to be decoded is determined according to the pixel sample characteristics of the decoding unit currently being decoded and the neighboring unit of the decoding unit, and then the current CU is decoded according to the determined optimal decoding mode.
- the technical solution to solve the related technology there is no one that efficiently encodes the screen or The problem of the technical solution of efficient decoding, and then combining multiple decoding methods to decode the decoding unit, to achieve a fast and efficient encoding or decoding process.
- step S804 may be implemented by analyzing some or all of the reconstructed pixel sample characteristics in the adjacent block to obtain the above analysis result, and according to the above coloring
- the parameter of the palette index obtained by converting the reconstructed sample value or the copied value of the reconstructed pixel sample is used as the analysis result, and the palette decoding method parameter is used according to the analysis result.
- the indicated decoding mode decodes the above decoded block.
- the above decoding method includes at least one of the following: a prediction decoding method, a block copy decoding method, a string copy decoding method, and a palette decoding method.
- FIG. 9 is a block diagram showing still another structure of an image decoding apparatus according to an embodiment of the present invention. As shown in FIG. 9, the method includes:
- the parsing module 90 is configured to parse the received code stream to obtain decoding parameters of the decoded block in the code stream;
- the analyzing module 92 is connected to the parsing module 90 and configured to perform characteristic analysis on the neighboring blocks of the decoding block.
- the decoding module 94 is connected to the analysis module 92 and configured to decode the decoded block according to the decoding method determined by the decoding parameter and the analysis result.
- each of the above-mentioned modules is used to determine the decoding mode that is most suitable for the current unit to be decoded according to the pixel sample characteristics of the decoding unit currently to be decoded and the neighboring unit of the decoding unit, and then the current CU according to the determined optimal decoding mode.
- the technical solution for decoding solves the problem of the technical solution of efficiently coding or efficiently decoding the screen in the related art, and then combines various decoding methods to decode the decoding unit to realize fast and efficient encoding or decoding. process.
- the analyzing module 92 is further configured to analyze part or all of the reconstructed pixel sample characteristics in the neighboring block to obtain the foregoing analysis result, wherein the color palette is The parameter takes the value of the palette index number obtained by converting the reconstructed sample value or the copied value of the reconstructed pixel sample as the analysis result.
- the decoding module 94 decodes the decoded block by using the decoding method indicated by the palette decoding method parameter according to the analysis result.
- CU characteristic analysis evaluation, pre-processing and coding mode selection steps analysis and evaluation of pixel sample characteristics of current CU and neighboring CU, including necessary pre-processing of pixel samples, judging predetermined A (3 ⁇ A ⁇ 5) Which of the predictive coding modes and the matching coding modes having mutually different prediction and matching characteristics is most suitable for predicting or matching the current CU, and selecting an encoding method according to the result of the judgment
- the optimal coding mode is called, and the current CU is predicted or matched in the following step 2); the foregoing A prediction coding mode and the matching coding mode are respectively called prediction coding mode, matching coding mode 1, and matching coding mode 2; ..., matching coding mode A-1; example of the above-mentioned method for analyzing and evaluating: calculating the number of pixels of different colors in the current CU according to the method of referring to the coding result of the neighboring CU, using several or all kinds of A
- the coding method first performs a round of precoding and evaluates the precoding
- the above optimal coding mode is a predictive coding mode, a matching coding mode, a matching coding mode 2, ...
- the output of the foregoing prediction coding is a prediction mode, a motion vector of inter prediction, and a prediction residual, that is, an input original pixel sample and a predicted pixel sample of the current CU (referred to as prediction)
- the difference between the current samples) is a matching mode, a matching position, an unmatched sample, and a matching residual; the matching position is used to indicate a matching reference sample that matches the current matching value in the current CU.
- the above unmatched sample is a matching input original pixel sample found in the reference pixel sample storage space according to a predetermined matching criterion, if a match
- the matching method of the encoding method is loose, allowing arbitrarily large matching errors, so that a matching can always be found, then the matching is There is no unmatched sample as the output; the above matching residual is the difference between the input original pixel sample and the above matching reference sample. If a matching matching method of the matching encoding method is an absolutely accurate lossless matching, the above matching The residual is zero, that is, the matching coding method has no matching residual as an output.
- a matching matching criterion of a matching coding method is an approximate lossy matching
- the matching residual may not be zero, and the other
- lossy matching is to first perform sample quantization, color quantization or pre-processing of color-based pixel clustering on the input original pixel samples, and then perform matching encoding, in this case, due to sample quantization, color quantization or Color-based pixel clustering is lossy, even if the matching encoding itself is lossless, the above matching residual (ie, the difference between the input original pixel sample and the above matching reference sample) may not be zero;
- the remaining common coding and reconstruction operation steps complete all the remaining coding and reconstruction operations of the current CU, and perform various common techniques on various parameters and variables of the input, such as transformation, quantization, inverse transformation, inverse quantization, Compensation corresponding to prediction residual and matching residual (ie, inverse operation of residual operation), prediction and residual, DPCM, first-order and high-order difference, mapping, run, index, deblocking filtering, sample Adaptive Adaptive Offset, encoding and reconstruction operations and entropy encoding operations;
- the input to this step is the output and input raw pixels of step 2) above; the output of this step is reconstructed pixels (including fully reconstructed pixels) And different degrees of partially reconstructed pixels) and code streams containing prediction, matching coding results and other coding results; the reconstructed pixels are placed in a reference pixel sample storage space for use in subsequent prediction and matching coding operations, and various other
- the reference pixels required for the common encoding and reconstruction operation steps; the above code stream is the final output of the encoding method
- the entropy decoded output data of the residual and matching residuals (ie, the result of entropy decoding) is output to subsequent various common decoding and reconstruction operations steps; in particular, based on information parsed from the compressed code stream data or based on compression
- the current CU performs a prediction decoding operation or a matching decoding operation;
- the input of the prediction decoding operation is a motion vector of a prediction mode and an inter prediction;
- the input of the matching decoding operation is a matching mode, a matching position, and possibly an unmatched sample;
- the above matching position is used to indicate where in the reference pixel sample storage space the matching reference sample value is copied and pasted to the position of the current CU that matches the current sample; obviously, the current sample is matched.
- the two are numerically equal;
- the unmatched sample is a pixel sample directly parsed and decoded from the compressed code stream data and pasted into the current decoding of the current CU
- the position of the pixel sample, the above unmatched sample is usually not present in the reference pixel sample storage space;
- the output of the A decoding operation is a prediction current sample or the matching current sample (in numerical value and matching reference sample) The values are equal) plus the above unmatched samples (present in some matching decoding modes); the above matching current samples and the above-mentioned unmatched samples that may exist all together constitute the complete matching decoding output of the current CU;
- the remaining common decoding and reconstruction steps complete all the remaining decoding and reconstruction operations of the current CU, and perform various common techniques on various parameters and variables of the input, such as inverse transform, inverse quantization, and corresponding to prediction residuals.
- Compensation for difference and matching residuals ie, inverse operation of residual operation
- prediction and compensation ie inverse operation of residual operation
- DPCM first-order and higher-order difference
- mapping ie, run, index, deblocking Effect filtering, sample adaptive offset (Sampling Adaptive Offset), decoding and reconstruction operations
- the input of this step is the entropy decoded output data of all other syntax elements such as prediction residual and matching residual outputted in step 1) above.
- the output of step 2) is the above predicted current sample or the matching current sample plus the above unmatched samples that may exist; the output of this step is a reconstructed pixel (including fully reconstructed pixels and partially reconstructed pixels of different degrees)
- the reconstructed pixel is placed in the reference pixel sample storage space and used as a reference pixel for subsequent prediction and matching decoding operations, and various other common decoding and reconstruction operations; Full reconstruction pixel is the final output of this decoding method.
- Preferred Embodiment 1 Four coding methods
- the above positive integer A is equal to 4, and the above four coding modes are prediction coding mode, block matching coding mode, string matching coding mode, and palette coding mode, as shown in FIG. 12;
- the block-matching coding method is a block of a certain size (such as 64x64 samples, 32x32 samples, 16x16 samples, 8x8 samples, 8x4 samples, 4x8 samples, 4x4 samples, etc.) (referred to as matching the current block, which is
- the position within one frame of the image may be represented by a 2-dimensional coordinate.
- the matched reference sample forms a matching block in the reference pixel sample storage space, which is called a matching reference block, and is in a frame image.
- the position inside can also be represented by a 2-dimensional coordinate. Therefore, in the block matching coding mode, the matching position can be represented by a difference between a 2-dimensional coordinate of the matching reference block and a 2-dimensional coordinate matching the current block, which is called a displacement vector;
- the string matching coding method performs matching coding in units of variable length pixel sample strings (referred to as matching current strings, whose positions can be represented by either a 2-dimensional coordinate or a linear address), and the matched pixel samples form the above reference.
- a matching string in the pixel sample storage space is called a matching reference string, and its position can also be represented by either a 2-dimensional coordinate or a linear address.
- the matching position is
- the difference between the 2D coordinates of the matching reference string and the 2D coordinates matching the current string can also be represented by the difference between the linear address of the matching reference string and the linear address matching the current string, which is generally referred to as a displacement vector, because of the length of the matching reference string ( Equal to matching the length of the current string) is variable, so another variable called the matching length is required together with the above displacement vector, ie (displacement vector, matching length), to completely represent the above matching position; for the above current CU
- the result of performing string matching coding is I (I ⁇ 1) matching strings and J (J ⁇ 0) unmatched pixel samples, output I pair (displacement vector, matching length) and J unmatched pixel samples;
- the palette encoding uses only a part of the pixels of the reference pixel sample storage space as the reference pixels, and thus selects and timely updates a group of K pixels from the above-mentioned reference pixel sample storage space according to a predetermined method (usually 4 ⁇ K) ⁇ 64), the K pixels form a palette, each pixel in the palette is represented by an index, and the palette coding method uses the pixels of the above palette as reference pixels, and the above matching reference sample
- the matching position of the value is the index of the matching reference sample in the color palette, and the indexes of all the matching reference samples of the current CU are formed into an index array, which is called an index mapping;
- One of the functions of the above various other common coding and reconstruction operation steps is to perform various commonly used transformations, predictions, and calculations on parameters and variables such as matching patterns, displacement vectors, matching lengths, index mappings, unmatched samples, and the like. Residual, DPCM, first-order and high-order difference, mapping, run, index coding;
- the above palette encoding method and the above palette are optional and may be omitted. Therefore, in the above encoding method, the positive integer A is equal to 3, and the three encoding methods are prediction encoding, block matching encoding, In the string matching coding mode, the above-mentioned string matching coding mode is optional and may be omitted. Therefore, in the above coding method, the positive integer A is equal to 3, and the above three coding modes are prediction coding mode, block matching coding mode, and tone adjustment. Swatch encoding.
- the above positive integer A is equal to 4, and the above four decoding modes are prediction decoding mode, block copy decoding mode, string copy decoding mode, and palette decoding mode, as shown in FIG. 13;
- the block copy decoding method is a block of a certain size (such as 64x64 samples, 32x32 samples, 16x16 samples, 8x8 samples, 8x4 samples, 4x8 samples, 4x4 samples, etc.) (referred to as matching the current block, which is Matching decoding is performed in units of a 2-dimensional coordinate.
- the matching reference samples form a matching block in the reference pixel sample storage space, which is called a matching reference block, and is in a frame image.
- the position inside can also be represented by a 2-dimensional coordinate. Therefore, in the block copy decoding mode, the matching position can be represented by a difference between a 2-dimensional coordinate of the matching reference block and a 2-dimensional coordinate matching the current block, which is called a displacement vector;
- the string copy decoding method performs matching decoding in units of variable-length pixel sample strings (referred to as matching current strings, whose positions can be represented by either a 2-dimensional coordinate or a linear address), and the matched pixel samples form the above reference.
- a matching string in the pixel sample storage space is called a matching reference string, and its position can also be represented by either a 2-dimensional coordinate or a linear address. Therefore, in the string copy decoding mode, the matching position can be used to match the reference string.
- the difference between the 2-dimensional coordinates and the 2-dimensional coordinates matching the current string can also be represented by the difference between the linear address matching the reference string and the linear address matching the current string, which is generally referred to as the displacement vector, because the length of the matching reference string is equal to the matching current string.
- the length) is variable, so another variable called the matching length is required together with the above displacement vector, ie (displacement vector, matching length), to completely represent the above matching position; serial matching decoding is performed on the current CU
- the input is the matching pattern obtained from the parsing and decoding of the code stream data, I (I ⁇ 1) pairs (displacement vector, matching length) and J (J ⁇ 0) unmatched pixel samples;
- the palette decoding uses only a part of the pixels of the reference pixel sample storage space as the reference pixels, so that a set of K pixels are selected and updated in a timely manner from the above-mentioned reference pixel sample storage space (usually 4 ⁇ K) ⁇ 64), the K pixels constitute a palette, each pixel in the palette is represented by an index, and the palette decoding method uses the pixels of the above palette as reference pixels, and the above matching reference sample
- the above matching position of the value is the index of the matching reference sample in the palette, and the indexes of all the above matching reference samples of the current CU form an index array, which is called an index mapping; the index mapping is from the code stream data. Parsed and decoded, is one of the input of the palette decoding;
- One of the functions of the above-mentioned code stream data parsing and partial decoding steps is a syntax element of a matching relationship parameter such as a representative matching pattern, a displacement vector, a matching length, an index map, an unmatched sample, etc. obtained by entropy decoding from the above code stream.
- Partially decoded data is subjected to various commonly used transform decoding, prediction and compensation (ie, inverse operation of residual operation), DPCM decoding, first-order and high-order differential decoding, mapping decoding, run-length decoding, and index decoding operations.
- the original matching mode, displacement vector, matching length, index mapping, unmatched sample and other matching relationship parameters are obtained, and are used as a block copy decoding mode, a string copy decoding mode, and an input of a palette decoding mode operation step;
- the above-mentioned palette decoding method and the above palette are optional and may be omitted.
- the positive integer A is equal to 3
- the three decoding modes are a prediction decoding method and a block copy decoding method, respectively.
- the string copy decoding mode the above-mentioned string copy decoding method is optional and can be omitted.
- the positive integer A is equal to 3
- the three decoding modes are prediction decoding mode, block copy decoding mode, and tone modulation. Swatch decoding method.
- Preferred Embodiment 3 Code stream including prediction and matching mode identification code and other coding result
- the coding unit in the above code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- CU header prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ......... ..., more motion vectors or matching positions, more unmatched pixel samples, prediction residuals or matching residuals, other coding results;
- any of the syntax elements may also be split into several parts, Several parts can be placed in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; in addition to the above CU header syntax elements and prediction and matching mode identification code syntax Elements, other syntax elements may also not exist in the code stream data of a certain CU;
- the above prediction and matching mode identification code can take the following code values and have the following semantics:
- the code value of the prediction and matching mode identification code of the current CU is determined according to the following logical relationship: which prediction or matching method is used by the current CU to encode or decode:
- the current CU is encoded or decoded in a prediction manner
- the current CU is encoded or decoded by using the matching mode 1;
- the current CU is encoded or decoded by using the matching method i;
- the current CU is encoded or decoded by using the matching method A-1;
- Preferred Embodiment 4 a code stream including a prediction and matching mode identification code and other coding results, and 4 coding or decoding modes
- the coding unit in the above code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- CU header prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 or displacement vector 1 or (displacement vector 1, matching length 1) or index map 1, unmatched pixel sample 1, motion vector 2 or displacement Vector 2 or (displacement vector 2, match length 2) or index map 2, unmatched pixel sample 2, ..., more motion vectors or displacement vectors or (displacement vector, match length) or index map, more unmatched Pixel samples, prediction residuals or matching residuals, other coding results;
- any of the syntax elements may also be split into several parts, Several parts can be placed in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; in addition to the above CU header syntax elements and prediction and matching mode identification code syntax Elements, other syntax elements may also not exist in the code stream data of a certain CU;
- the above prediction and matching mode identification code can take the following code values and have the following semantics:
- Code value Semantics 0 Current CU uses predictive coding or decoding 1 Current CU uses block matching encoding or decoding 2 Current CU uses string matching encoding or decoding 3 Current CU uses palette encoding or decoding
- the code value of the prediction and matching mode identification code of the current CU is determined according to the following logical relationship: which prediction or matching method is used by the current CU to encode or decode:
- the current CU is encoded or decoded in a prediction manner
- the current CU is encoded or decoded in a palette mode.
- Preferred Embodiment 5 a code stream including a prediction and matching mode identification code and other coding results, and three coding or decoding modes
- the coding unit in the above compressed code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- CU header prediction and matching mode identification code, prediction mode or matching mode, motion vector 1 or displacement vector 1 or (displacement vector 1, matching length 1), unmatched pixel sample 1, motion vector 2 or displacement vector 2 or ( Displacement vector 2, matching length 2), unmatched pixel samples 2, ..., more motion vectors or displacement vectors or (displacement vectors, matching lengths), more unmatched pixel samples, prediction residuals or matching residuals , other coding results;
- any of the syntax elements may also be split into several parts, Several parts can be placed in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; in addition to the above CU header syntax elements and prediction and matching mode identification code syntax Elements, other syntax elements may also not exist in the code stream data of a certain CU;
- the above prediction and matching mode identification code can take the following code values and have the following semantics:
- Code value Semantics 0 Current CU uses predictive coding or decoding 1 Current CU uses block matching encoding or decoding 2 Current CU uses string matching encoding or decoding
- the code value of the prediction and matching mode identification code of the current CU is determined according to the following logical relationship: which prediction or matching method is used by the current CU to encode or decode:
- the current CU is encoded or decoded in a prediction manner
- the current CU is encoded or decoded in a string matching manner.
- Preferred Embodiment 6 Code stream including prediction and matching mode identification bits, prediction and matching mode identification codes and partial identification codes
- the coding unit in the above code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- prediction and matching mode identification bit prediction and matching mode identification code or prediction and matching mode partial identification code or null
- prediction mode or matching mode motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel samples 2, ..., more motion vectors or matching positions, more unmatched pixel samples, prediction residuals or matching residuals, other coding results;
- any of the syntax elements may also be split into several parts, Several parts can be placed centrally in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; in addition to the above CU header syntax elements and prediction and matching mode identification bit syntax Elements, other syntax elements may also not exist in the code stream data of a certain CU;
- the above prediction and matching mode identifiers may take a value of 1 or 0;
- prediction and matching mode identification bits take a value of 1, then there is a syntax element of the prediction and matching mode identification code in the code stream (but there is no syntax element for the prediction and matching mode partial identification code), and the above prediction and matching mode identification code can be taken.
- the following code values have the following semantics:
- the compressed code stream also has a syntax element of the prediction and matching mode partial identification code (but no syntax element of the prediction and matching mode identification code), and the foregoing prediction and matching mode partial identification code B (B ⁇ A) code values may be taken.
- the code values of the prediction and matching mode partial identification codes may not completely determine which decoding mode is used by the current CU, but must analyze the characteristics of the current CU and neighboring CUs. The combination of the results of the evaluation can completely determine which decoding mode is used by the current CU.
- Examples of the characteristics of the current CU and the neighboring CU are: decoding mode of the neighboring CU, prediction or matching mode, motion vector, matching position, using several or all
- the characteristics of the result of the A-type decoding method for the current CU first partial pre-decoding, the decoding reconstructed pixel samples of the neighboring CU and the characteristics of the partial pre-decoded reconstructed pixel samples of the current CU are continuous color content or discontinuous Tone content; the above prediction and matching method part identification code may also Empty, in this case, the result of the analysis and evaluation of the characteristics of the current CU and the neighboring CU is completely determined to determine which decoding mode the current CU uses.
- Preferred Embodiment 7 Compressed code stream including prediction or matching mode identification bit, prediction or matching mode identification code and partial identification code
- the coding unit in the above compressed code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- prediction and matching mode identification bit or null prediction and matching mode identification code or prediction and matching mode partial identification code or null
- prediction or matching mode identification bit prediction or matching mode identification code or prediction or matching mode partial identification code Or null, motion vector 1 or matching position 1, unmatched pixel sample 1, motion vector 2 or matching position 2, unmatched pixel sample 2, ..., more motion vectors or matching positions, more unmatched pixel samples Value, prediction residual or matching residual, other coding results;
- any of the syntax elements may also be split into several parts, Several parts can be placed in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; in addition to the above CU header syntax elements and prediction or matching pattern identifier syntax Elements, other syntax elements may also not exist in the compressed code stream data of a certain CU;
- the foregoing prediction and matching mode flag is empty, the foregoing prediction and matching mode identifier bits are implicitly assumed to have a predetermined fixed value
- the above prediction or matching mode identifier may take a value of 1 or 0;
- the prediction or matching mode identifier bit takes a value of 1, then there is a syntax element of the prediction or matching pattern identification code in the compressed code stream (but there is no syntax element for predicting or matching the pattern part identification code), and the prediction or matching pattern identification code may be Taking C code values and completely determining which prediction or matching mode is used to decode the current CU;
- the compressed code stream also has a syntax element that predicts or matches the mode part identification code (but does not predict or match the syntax element of the pattern identification code), and the above prediction or matching mode part identification code D (D ⁇ C) code values may be taken, and the code value of the above-mentioned prediction or matching mode part identification code itself cannot completely determine which prediction or matching mode is used to decode the current CU, but must be related to the current CU and adjacent
- D D ⁇ C
- Examples of the characteristics of the current CU and the neighboring CU are: decoding mode of the neighboring CU, prediction or matching mode, motion Vector, matching position, using several or all C decoding methods
- the matching mode partial identification code may also be empty. In this case, the result of the analysis and evaluation of the characteristics of the current CU and the neighboring CU is completely determined to determine which prediction or matching mode is used to decode the current CU.
- Preferred Embodiment 8 Compressed code stream containing prediction or matching pattern identification bits, prediction or matching pattern identification codes and partial identification codes in four decoding modes
- the coding unit in the above compressed code stream that is, the CU part, is composed of syntax elements loaded with the following information:
- prediction and match mode flag or null motion vector 1 or displacement vector 1 or (displacement vector 1, matching length 1) or index map 1, unmatched pixel sample 1, motion vector 2 or displacement vector 2 or (displacement vector 2, matching length 2 Or index map 2, unmatched pixel samples 2, ..., more motion vectors or displacement vectors or (displacement vectors, matching lengths) or index maps, more unmatched pixel samples, prediction residuals or matching residuals , other coding results;
- the order in which all other above-mentioned syntax elements are placed in the code stream is not unique, and any predetermined and reasonable order may be employed; any of the syntax elements may also be split into several parts, Several parts can be placed in the same place in the code stream, or they can be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; other syntax elements can be omitted except the above CU header syntax elements.
- the compressed code stream data of a certain CU In the compressed code stream data of a certain CU;
- the above prediction and matching mode identifiers may take a value of 1 or 0;
- the foregoing prediction and matching mode flag is empty, the foregoing prediction and matching mode identifier bits are implicitly assumed to have a predetermined fixed value
- the above prediction or matching mode identifier may take a value of 1 or 0;
- the prediction or matching mode flag is empty, the prediction or matching mode flag is implicitly assumed to be a predetermined fixed value.
- a storage medium is further provided, wherein the software includes the above-mentioned software, including but not limited to: an optical disk, a floppy disk, a hard disk, an erasable memory, and the like.
- the embodiments of the present invention achieve the following technical effects: in the related art, there is no problem of a technical solution for efficiently coding or efficiently decoding a screen, and then combining multiple decoding modes to perform decoding on the decoding unit. Decoding to achieve a fast and efficient encoding or decoding process.
- modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
- the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
- the invention is not limited to any specific combination of hardware and software.
- the foregoing technical solution of the present invention can be applied to an image coding or image decoding process, and adopts a pixel sample characteristic according to a coding unit currently to be coded and a neighboring unit of the coding unit to determine a coding mode that is most suitable for a current unit to be coded.
- the technical solution solves the problem that the related art has no technical solution for efficiently coding or efficiently decoding the screen, and then combines multiple coding modes to encode the coding unit, thereby realizing a fast and efficient coding or decoding process.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
码值 | 语义 |
0 | 当前CU采用预测编码或解码方式 |
1 | 当前CU采用匹配编码或解码方式1 |
2 | 当前CU采用匹配编码或解码方式2 |
… | …………………………………… |
A-1 | 当前CU采用匹配编码或解码方式A-1 |
码值 | 语义 |
0 | 当前CU采用预测编码或解码方式 |
1 | 当前CU采用块匹配编码或解码方式 |
2 | 当前CU采用串匹配编码或解码方式 |
3 | 当前CU采用调色板编码或解码方式 |
码值 | 语义 |
0 | 当前CU采用预测编码或解码方式 |
1 | 当前CU采用块匹配编码或解码方式 |
2 | 当前CU采用串匹配编码或解码方式 |
码值 | 语义 |
0 | 当前CU采用预测解码方式 |
1 | 当前CU采用匹配解码方式1 |
2 | 当前CU采用匹配解码方式2 |
… | …………………………………… |
A-1 | 当前CU采用匹配解码方式A-1 |
Claims (54)
- 一种图像编码方法,包括:步骤1)依据当前编码单元CU和该当前CU的邻近CU的像素样值特性,从预先确定的A种具有互不相同的预测特性的预测编码方式,以及互不相同的匹配特性的匹配编码方式中选择一种编码方式来对当前CU进行预测或匹配编码,并将选择的编码方式,作为最优编码方式,其中,A种预测编码方式和匹配编码方式包括:预测编码方式、匹配编码方式1、匹配编码方式2、……、匹配编码方式A-1,A为大于或等于2的整数;步骤2)采用所述最优编码方式对当前CU进行预测编码或匹配编码。
- 根据权利要求1所述的编码方法,其中,A的取值取自集合{3,4,5},其中,在A等于4时,4种编码方式包括:预测编码方式,块匹配编码方式,串匹配编码方式,调色板编码方式;在A等于3时,3种编码方式包括:预测编码方式,块匹配编码方式,串匹配编码方式。
- 根据权利要求1所述的编码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括以下信息:CU头、预测和匹配方式标识码、预测模式或匹配模式;运动矢量1或匹配位置1、未匹配像素样值1、运动矢量2或匹配位置2、未匹配像素样值2、……、运动矢量N或匹配位置N、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求3所述的编码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,……,A-1,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用所述预测编码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用所述匹配编码方式1,在所述预测和匹配方式标识码取2时,表示所述当前CU采用所述匹配编码方式2,……,在所述预测和匹配方式标识码取A-1时,表示所述当前CU采用所述匹配编码方式A-1。
- 根据权利要求1所述的编码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识码、预测模式或匹配模式;运动矢量1和/或位移矢量1,或索引映射1、未匹配像素样值1、运动矢量2和/或位移矢量2,或索引映射2、未匹配像素样值2、……运动矢量N或和/或位移矢量,或索引映射、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求5所述的编码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,3,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用预测编码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用块匹配编码方式,在所述预测和匹配方式标识码取2时,表示所述当前CU采用串匹配编码方式,在所述预测和匹配方式标识码取3时,表示所述当前CU采用调色板编码方式。
- 根据权利要求1所述的编码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识码、预测模式或匹配模式;运动矢量1和/或位移矢量1、未匹配像素样值1、运动矢量2和/或位移矢量2、未匹配像素样值2、……、运动矢量N和/或位移矢量、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求7所述的编码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用预测编码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用块匹配编码方式,在所述预测和匹配方式标识码取2时,表示所述当前CU采用串匹配编码方式。
- 根据权利要求3至8任一项所述的编码方法,其中,在所述语法元素中,所述CU头在所述语法元素中的排列顺序中固定位于首位,按照预先确定的排列顺序排列其他所述语法元素在码流中的排列顺序,其中,所述其他所述语法元素为所述语法元素中,除所述CU头外的语法元素。
- 根据权利要求3至8任一项所述的编码方法,其中,对于任一所述语法元素,将所述语法元素拆分为多个部分,所述多个部分放置于码流的同一位置或不同位置。
- 根据权利要求1至8任一项所述的编码方法,其中,在步骤2)之后,还包括:步骤3)对所述当前CU进行后续编码运算、重构运算以及熵编码运算。
- 一种图像解码方法,包括:步骤1)对输入的码流进行熵解码,并解析熵解码得到数据信息,根据以下因素之一,从A种有互不相同预测特性的预测编码方式和互不相同的匹配特性的复制解码方式选择一种解码方式对当前编码单元CU进行预测或匹配解码:所述数据信息、所述数据信息和对当前CU以及邻近CU的像素样值特性进行分析的分析结果,其中,A为大于或等于2的整数;步骤2)根据选择的预测解码方式或匹配解码方式对当前CU进行预测解码运算或匹配解码运算。
- 根据权利要求12所述的解码方法,其中,A的取值取自集合{3,4,5},其中,在A等于4时,4种解码方式包括:预测解码方式,块复制解码方式,串复制解码方式,调色板解码方式;在A等于3时,3种解码方式包括:预测解码方式,块复制解码方式,串复制解码方式。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识码、预测模式或匹配模式、运动矢量1或匹配位置1、未匹配像素样值1、运动矢量2或匹配位置2、未匹配像素样值2、……、运动矢量N或匹配位置N、未匹配像素样值N、预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求14所述的解码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,……,A-1,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用所述预测解码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用所述匹配解码方式1,在所述预测和匹配方式标识码取2时,表示所述当前CU采用所述匹配解码方式2,……,在 所述预测和匹配方式标识码取A-1时,表示所述当前CU采用所述匹配解码方式A-1。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识码、预测模式或匹配模式;运动矢量1和/或位移矢量1,或索引映射1、未匹配像素样值1、运动矢量2和/或位移矢量2,或索引映射2、未匹配像素样值2、……运动矢量N和/或位移矢量,或索引映射、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求16所述的解码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,3,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用预测解码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用块复制解码方式,在所述预测和匹配方式标识码取2时,表示所述当前CU采用串复制解码方式,在所述预测和匹配方式标识码取3时,表示所述当前CU采用调色板解码方式。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识码、预测模式或匹配模式;运动矢量1或位移矢量1,或位置矢量1和匹配长度1、未匹配像素样值1、运动矢量2或位移矢量2,或位置矢量2和匹配长度2、未匹配像素样值2、……、运动矢量N和/或位移矢量,或位置矢量N和匹配长度N、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求18所述的解码方法,其中,所述预测和匹配方式标识码取值情况至少包括以下之一:0,1,2,其中,在所述预测和匹配方式标识码取0时,表示所述当前CU采用预测解码方式,在所述预测和匹配方式标识码取1时,表示所述当前CU采用块复制解码方式,在所述预测和匹配方式标识码取2时,表示所述当前CU采用串复制解码方式。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识位、预测和匹配方式标识码或预测和匹配方式部分标识码,或空、预测模式或匹配模式;运动矢量1或匹配位置1、未匹配像素样值1、运动矢量2或匹配位置2、未匹配像素样值2、……、运动矢量N或匹配位置N、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求20所述的解码方法,其中,所述方法还包括:在所述预测和匹配方式标识位取0时,表示构成所述码流的CU的语法元素中包括以下之一:预测和匹配方式部分标识码且所述预测和匹配方式部分标识码不为空、预测和匹配方式部分标识码且所述预测和匹配方式部分标识码为空;在所述预测和匹配方式标识位取1时,表示构成所述码流的CU的语法元素中包括预测和匹配方式标识码。
- 根据权利要求21所述的解码方法,其中,所述方法还包括:当构成所述码流的CU的语法元素中包括预测和匹配方式部分标识码且所述预测和匹配方式部分标识码不为空时,根据所述预测和匹配方式部分标识码以及所述当前CU以及邻近CU的像素样值特性的评估结果确定当前CU采用的解码方式;当构成所述码流的CU的语法元素中包括预测和匹配方式部分标识码且所述预测和匹配方式部分标识码为空时,根据所述当前CU以及邻近CU的像素样值特性的评估结果确定当前CU采用的解码方式。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识位或空、预测和匹配方式标识码或预测和匹配方式部分标识码,或空、预测或匹配模式标识位、预测或匹配模式标识码或预测或匹配模式部分标识码或空;运动矢量1或匹配位置1、未匹配像素样值1、运动矢量2或匹配位置2、未匹配像素样值2、……、运动矢量N或匹配位置N、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求23所述的解码方法,其中,在所述预测和匹配方式标识位为空时,所述预测和匹配方式标识位设置为预先规定的固定值;在预测或匹配模式标识位取值1时,表示构成所述码流的CU的语法元素中包括预测和匹配模式标识码,则根据预测和匹配模式标识码所对应的值确定对当前CU的解码方式;在预测或匹配模式标识位取值0时,预测和匹配模式部分标识码且所述预测和匹配模式部分标识码不为空、预测和匹配模式部分标识码且所述预测和匹配模式部分标识码为空。
- 根据权利要求24所述的解码方法,其中,所述方法还包括:当构成所述码流的CU的语法元素中包括预测和匹配模式部分标识码且所述预测和匹配模式部分标识码不为空时,根据所述预测和匹配模式部分标识码以及所述当前CU以及邻近CU的像素样值特性的评估结果确定当前CU采用的解码方式;当构成所述码流的CU的语法元素中包括预测和匹配模式部分标识码且所述预测和匹配模式部分标识码为空时,根据所述当前CU以及邻近CU的像素样值特性的评估结果确定当前CU采用的解码方式。
- 根据权利要求12所述的解码方法,其中,所述当前CU和所述邻近CU由语法元素构成,其中,所述语法元素包括下列信息:CU头、预测和匹配方式标识位或空、预测和匹配方式标识码或预测和匹配方式部分标识码,或空、预测或匹配模式标识位或空、预测或匹配模式标识码或预测或匹配模式部分标识码或空;运动矢量1和/或位移矢量1,或索引映射1、未匹配像素样值1、运动矢量2和/或位移矢量2,或索引映射2、未匹配像素样值2、……、运动矢量N或和/或位移矢量,或索引映射、未匹配像素样值N;预测残差或匹配残差,其中,N为大于2的整数。
- 根据权利要求26所述的解码方法,其中,在所述预测和匹配方式标识位不为空时,设置所述预测和匹配方式标识位取值为0或1;在所述预测和匹配方式标识位为空时,设置所述预测和匹配方式标识位取值为预先规定的固定值;在所述预测和匹配模式标识位不为空时,设置所述预测和匹配模式标识位取值0或1;在所述预测和匹配模式标识位为空时,设置所述预测和匹配模式标识位取值为预先规定的固定值。
- 根据权利要求14至27任一项所述的解码方法,其中,在所述语法元素中,所述CU头在所述语法元素中的排列顺序是固定位于所述CU的起始处,按照预先确定的排列顺序排列其他所述语法元素在码流中的排列顺序,其中,所述其他所述语法元素为所述语法元素中,除所述CU头外的语法元素。
- 根据权利要求14至27任一项所述的解码方法,其中,对于任一所述语法元素,将语法元素拆分为多个部分,所述多个部分放置于码流的同一位置或不同位置。
- 一种图像编码方法,包括:对编码块以及该编码块的邻近块的像素样值特性进行分析;根据分析结果确定适用于所述编码块的最优编码方式;根据所述最优编码方式对所述编码块进行编码。
- 根据权利要求30所述的编码方法,其中,对编码块以及该编码块的邻近块进行特性分析,包括:对所述编码块进行特性分析,得到所述编码块的调色板参数;依据所述调色板参数对所述邻近块中的部分或全部重构像素样值特性进行分析,得到所述分析结果。
- 根据权利要求31所述的编码方法,其中,依据所述调色板参数对所述邻近块中的部分或全部重构像素样值特性进行分析,得到所述分析结果,包括:根据所述调色板参数将所述重构像素样值进行转换,得到调色板索引序号的取值,将调色板索引序号的取值作为所述分析结果。
- 根据权利要求31所述的编码方法,其中,对编码块以及该编码块的邻近块进行特性分析,得到所述分析结果包括:获取所述邻近块中的部分或全部重构像素样值,将所述重构像素样值的复制值作为所述分析结果。
- 根据权利要求30所述的编码方法,其中,根据分析结果确定适用于所述编码块的最优编码方式,包括:从多个编码方式中确定适用于所述编码块的最优编码方式,其中,所述多个编码方式包括以下至少之一:预测编码方式,块匹配编码方式,串匹配编码方式,调色板编码方式。
- 根据权利要求32所述的编码方法,其中,在所述最优编码方式为调色板编码方式时,根据所述最优编码方式对所述编码块进行编码,包括:根据所述调色板参数以及所述分析结果对所述编码块进行编码。
- 根据权利要求35所述的编码方法,其中,根据所述调色板参数以及所述分析结果对所述编码块进行编码之后,还包括:将包括所述调色板参数的调色板解码参数写入所述编码块对应的码流中。
- 一种图像解码方法,包括:解析码流,得到所述码流中解码块的解码参数;对所述解码块的邻近块进行特性分析;根据所述解码参数以及对所述邻近块的分析结果确定的解码方式对所述解码块进行解码。
- 根据权利要求37所述的解码方法,其中,在所述解码参数包含调色板解码方式参数时,对所述解码块的邻近块进行特性分析,包括:对所述邻近块中的部分或全部重构像素样值特性进行分析,得到所述分析结果,将根据调色板参数将所述重构像素样值转换得到的调色板索引序号的取值,或者所述重构像素样值的复制值作为所述分析结果。
- 根据权利要求38所述的解码方法,其中,根据所述解码参数以及分析结果确定的解码方式,对所述解码块进行解码,包括:根据所述分析结果,使用所述调色板解码方式参数所指示的解码方式对所述解码块进行解码。
- 根据权利要求37至39任一项所述的解码方法,其中,所述解码方式包括以下至少之一:预测解码方式,块复制解码方式,串复制解码方式,调色板解码方式。
- 一种图像编码装置,包括:选择模块,设置为依据当前编码单元CU和该当前CU的邻近CU的像素样值特性,从预先确定的A种具有互不相同的预测特性的预测编码方式,以及互不相同的匹配特性的匹配编码方式中选择一种编码方式来对当前CU进行预测或匹配编码,并将选择的编码方式,作为最优编码方式,其中,所述A种预测编码方式和匹配编码方式包括:预测编码方式、匹配编码方式1、匹配编码方式2、……、匹配编码方式A-1,A为大于或等于2的整数;编码模块,设置为采用所述最优编码方式对当前CU进行预测编码或匹配编码。
- 根据权利要求41所述的编码装置,其中,所述选择模块选择的编码模式:A的取值取自集合{3,4,5},其中,在A等于4时,4种编码方式包括:预测编码方式,块匹配编码方式,串匹配编码方式,调色板编码方式;在A等于3时,3种编码方式包括:预测编码方式,块匹配编码方式,串匹配编码方式。
- 一种图像解码装置,包括:获取模块,设置为对输入的码流进行熵解码,并解析熵解码得到数据信息;选择模块,设置为根据以下因素之一,从A种有互不相同预测特性的预测编码方式和互不相同的匹配特性的匹配解码方式选择一种解码方式对当前编码单元CU进行预测或匹配解码:所述数据信息、所述数据信息和对当前CU以及邻近CU的像素样值特性进行分析的分析结果,其中,A为大于或等于2的整数;解码模块,设置为根据选择的预测解码方式或匹配解码方式对当前CU进行预测解码运算或匹配解码运算。
- 根据权利要求43所述的解码装置,其中,所述选择模块选择的解码方式:A的取值取自集合{3,4,5},其中,在A等于4时,4种解码方式包括:预测解码方式,块复制解码方式,串复制解码方式,调色板解码方式;在A等于3时,3种解码方式包括:预测解码方式,块复制解码方式,串复制解码方式。
- 一种图像编码装置,包括:分析模块,设置为对编码块以及该编码块的邻近块的像素样值进行特性分析;确定模块,设置为根据分析结果确定适用于所述编码块的最优编码方式;编码模块,设置为根据所述最优编码方式对所述编码块进行编码。
- 根据权利要求45所述的编码装置,其中,所述分析模块,包括:获取单元,设置为对所述编码块进行特性分析,得到所述编码块的调色板参数;分析单元,设置为依据所述调色板参数对所述邻近块中的部分或全部重构像素样值特性进行分析,得到所述分析结果。
- 根据权利要求46所述的编码装置,其中,所述分析单元,包括:转换子单元,设置为根据所述调色板参数将所述重构像素样值进行转换;获取子单元,设置为得到调色板索引序号的取值,将调色板索引序号的取值作为所述分析结果。
- 根据权利要求46所述的编码装置,其中,所述获取单元,还设置为获取所述邻近块中的部分或全部重构像素样值,将所述重构像素样值的复制值作为所述分析结果。
- 根据权利要求45所述的编码装置,其中,所述确定模块,还设置为从多个编码方式中确定适用于所述编码块的最优编码方式,其中,所述多个编码方式包括以下至少之一:预测编码方式,块匹配编码方式,串匹配编码方式,调色板编码方式。
- 根据权利要求49所述的编码装置,其中,在所述最优编码方式为所述调色板编码方式时,所述编码模块还设置为根据所述调色板参数以及所述分析结果对所述编码块进行编码。
- 根据权利要求50所述的编码装置,其中,所述装置,还包括:写入模块,设置为将包括所述调色板参数的调色板解码参数写入所述编码块对应的码流中。
- 一种图像解码装置,包括:解析模块,设置为解析码流,得到所述码流中的解码块的解码参数;分析模块,设置为对所述解码块的邻近块进行特性分析;解码模块,设置为根据所述解码参数以及分析结果确定的解码方式,对所述解码块进行解码。
- 根据权利要求52所述的解码装置,其中,在所述解码参数包含调色板解码方式参数时,所述分析模块还设置为对所述邻近块中的部分或全部重构像素样值特性进行分析,得到所述分析结果,其中,将根据调色板参数将所述重构像素样值转换得到的调色板索引序号的取值,或者所述重构像素样值的复制值作为所述分析结果。
- 根据权利要求53所述的解码装置,其中,所述解码模块,还设置为根据所述分析结果,使用所述调色板解码方式参数所指示的解码方式对所述解码块进行解码。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP15749303.2A EP3107289A4 (en) | 2014-02-16 | 2015-02-16 | Picture coding and decoding methods and devices |
JP2016568992A JP6659586B2 (ja) | 2014-02-16 | 2015-02-16 | 画像符号化/復号化方法及び装置 |
KR1020167025685A KR102071764B1 (ko) | 2014-02-16 | 2015-02-16 | 영상 부호화, 복호화 방법 및 장치 |
US15/118,980 US20170054988A1 (en) | 2014-02-16 | 2015-02-16 | Methods and Devices for Coding or Decoding Image |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410051371.2 | 2014-02-16 | ||
CN201410051371 | 2014-02-16 | ||
CN201510047762.1 | 2015-01-29 | ||
CN201510047762.1A CN104853209B (zh) | 2014-02-16 | 2015-01-29 | 图像编码、解码方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015120818A1 true WO2015120818A1 (zh) | 2015-08-20 |
Family
ID=53799608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2015/073160 WO2015120818A1 (zh) | 2014-02-16 | 2015-02-16 | 图像编码、解码方法及装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20170054988A1 (zh) |
EP (1) | EP3107289A4 (zh) |
JP (1) | JP6659586B2 (zh) |
KR (1) | KR102071764B1 (zh) |
CN (1) | CN104853209B (zh) |
WO (1) | WO2015120818A1 (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6164360B2 (ja) * | 2014-03-14 | 2017-07-19 | 富士通株式会社 | 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法 |
CN105704491B (zh) * | 2014-11-28 | 2020-03-13 | 同济大学 | 图像编码方法、解码方法、编码装置和解码装置 |
CN105828080B (zh) | 2015-01-26 | 2020-02-14 | 同济大学 | 图像编解码方法及装置 |
US20160234494A1 (en) * | 2015-02-10 | 2016-08-11 | Qualcomm Incorporated | Restriction on palette block size in video coding |
CN107483942B (zh) * | 2016-06-08 | 2023-07-14 | 同济大学 | 视频数据压缩码流的解码、视频数据的编码方法及装置 |
WO2018179851A1 (en) * | 2017-03-28 | 2018-10-04 | Sharp Kabushiki Kaisha | Systems and methods for determining a level of quantization |
CN109964204B (zh) * | 2017-10-19 | 2020-12-22 | 腾讯科技(深圳)有限公司 | 用于处理图形的方法和系统 |
CN110868613B (zh) * | 2018-08-28 | 2021-10-01 | 华为技术有限公司 | 基于历史候选列表的图像编码方法、图像解码方法及装置 |
EP3797517B1 (en) * | 2018-08-30 | 2023-08-16 | Huawei Technologies Co., Ltd. | An encoder, a decoder and corresponding methods using a palette coding |
JP7197720B2 (ja) | 2019-02-24 | 2022-12-27 | 北京字節跳動網絡技術有限公司 | パレットモードの使用の指示の独立した符号化 |
CN110087075B (zh) * | 2019-04-22 | 2021-07-30 | 浙江大华技术股份有限公司 | 一种图像的编码方法、编码装置以及计算机存储介质 |
CN110248192B (zh) * | 2019-06-12 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 编码器切换、解码器切换、屏幕分享方法和屏幕分享系统 |
KR20220032520A (ko) | 2019-07-20 | 2022-03-15 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 팔레트 모드 사용 지시의 조건 종속적인 코딩 |
CN114145013B (zh) | 2019-07-23 | 2023-11-14 | 北京字节跳动网络技术有限公司 | 调色板模式编解码的模式确定 |
WO2021018166A1 (en) | 2019-07-29 | 2021-02-04 | Beijing Bytedance Network Technology Co., Ltd. | Scanning order improvements for palette mode coding |
CN110572613A (zh) * | 2019-09-09 | 2019-12-13 | 贵州电网有限责任公司 | 一种基于4g的图像监控装置及其数据处理通信方法 |
US11595694B2 (en) * | 2020-04-01 | 2023-02-28 | Tencent America LLC | Method and apparatus for video coding |
CN114827618B (zh) | 2020-06-02 | 2023-03-14 | 腾讯科技(深圳)有限公司 | 视频编码方法、视频解码方法及相关设备 |
US11496731B2 (en) | 2020-06-08 | 2022-11-08 | Tencent America LLC | String matching with single color value |
CN112073719B (zh) * | 2020-08-21 | 2021-09-14 | 浙江大华技术股份有限公司 | 一种串匹配预测方法、装置、系统及计算机可读存储介质 |
CN112532974B (zh) * | 2020-11-24 | 2024-07-12 | 浙江大华技术股份有限公司 | 串编码技术的编码方法、设备及存储介质 |
CN112565749B (zh) * | 2020-12-06 | 2022-08-09 | 浙江大华技术股份有限公司 | 一种视频编码方法、装置、系统及计算机可读存储介质 |
CN115134605B (zh) * | 2022-05-19 | 2024-10-01 | 同济大学 | 使用受限通用串预测编码模式的图像编码解码方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102006481A (zh) * | 2010-12-17 | 2011-04-06 | 武汉大学 | 基于块特征的快速帧内预测模式选择方法 |
CN102098507A (zh) * | 2010-06-08 | 2011-06-15 | 同济大学 | 图像统合压缩方法及装置 |
US20110274169A1 (en) * | 2010-05-05 | 2011-11-10 | Paz Adar | Device, system, and method for spatially encoding video data |
CN102497546A (zh) * | 2011-11-28 | 2012-06-13 | 同济大学 | 一种屏幕图像压缩装置及压缩方法 |
CN102843559A (zh) * | 2012-09-12 | 2012-12-26 | 清华大学 | 基于纹理特性的hevc帧内预测模式的快速选择方法及装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7184603B2 (en) * | 2004-11-15 | 2007-02-27 | Smith Micro Software, Inc. | System and method for lossless compression of digital images |
CN101415122B (zh) * | 2007-10-15 | 2011-11-16 | 华为技术有限公司 | 一种帧间预测编解码方法及装置 |
US10440373B2 (en) * | 2011-07-12 | 2019-10-08 | Texas Instruments Incorporated | Method and apparatus for coding unit partitioning |
JP5518224B2 (ja) * | 2013-03-04 | 2014-06-11 | キヤノン株式会社 | 符号化装置、符号化方法及びプログラム |
US11259020B2 (en) * | 2013-04-05 | 2022-02-22 | Qualcomm Incorporated | Determining palettes in palette-based video coding |
US9558567B2 (en) * | 2013-07-12 | 2017-01-31 | Qualcomm Incorporated | Palette prediction in palette-based video coding |
US20150110181A1 (en) * | 2013-10-18 | 2015-04-23 | Samsung Electronics Co., Ltd. | Methods for palette prediction and intra block copy padding |
EP3425914B1 (en) * | 2013-12-10 | 2021-08-18 | Canon Kabushiki Kaisha | Method and apparatus for encoding or decoding a palette in palette coding mode |
CN105704491B (zh) * | 2014-11-28 | 2020-03-13 | 同济大学 | 图像编码方法、解码方法、编码装置和解码装置 |
-
2015
- 2015-01-29 CN CN201510047762.1A patent/CN104853209B/zh active Active
- 2015-02-16 US US15/118,980 patent/US20170054988A1/en not_active Abandoned
- 2015-02-16 JP JP2016568992A patent/JP6659586B2/ja active Active
- 2015-02-16 EP EP15749303.2A patent/EP3107289A4/en not_active Ceased
- 2015-02-16 WO PCT/CN2015/073160 patent/WO2015120818A1/zh active Application Filing
- 2015-02-16 KR KR1020167025685A patent/KR102071764B1/ko active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110274169A1 (en) * | 2010-05-05 | 2011-11-10 | Paz Adar | Device, system, and method for spatially encoding video data |
CN102098507A (zh) * | 2010-06-08 | 2011-06-15 | 同济大学 | 图像统合压缩方法及装置 |
CN102006481A (zh) * | 2010-12-17 | 2011-04-06 | 武汉大学 | 基于块特征的快速帧内预测模式选择方法 |
CN102497546A (zh) * | 2011-11-28 | 2012-06-13 | 同济大学 | 一种屏幕图像压缩装置及压缩方法 |
CN102843559A (zh) * | 2012-09-12 | 2012-12-26 | 清华大学 | 基于纹理特性的hevc帧内预测模式的快速选择方法及装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3107289A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP3107289A1 (en) | 2016-12-21 |
KR102071764B1 (ko) | 2020-01-30 |
KR20160124190A (ko) | 2016-10-26 |
CN104853209B (zh) | 2020-09-29 |
CN104853209A (zh) | 2015-08-19 |
JP6659586B2 (ja) | 2020-03-04 |
EP3107289A4 (en) | 2017-02-15 |
US20170054988A1 (en) | 2017-02-23 |
JP2017509279A (ja) | 2017-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015120818A1 (zh) | 图像编码、解码方法及装置 | |
US10805644B2 (en) | Device and method for entropy encoding and decoding | |
WO2017071480A1 (zh) | 参考帧编解码的方法与装置 | |
US20170302939A1 (en) | Adaptive screen and video coding scheme | |
WO2015120823A1 (zh) | 使用多种形式的参考像素存储空间的图像压缩方法和装置 | |
CN104244007B (zh) | 一种图像编码方法和装置及解码方法和装置 | |
CN108271024B (zh) | 图像编码、解码方法及装置 | |
US20200280718A1 (en) | Image encoding and decoding method and device | |
TW201545543A (zh) | 基於調色板之視訊寫碼 | |
CN104581177B (zh) | 一种结合块匹配和串匹配的图像压缩方法和装置 | |
CN105100814B (zh) | 图像编码、解码方法及装置 | |
CN104754362B (zh) | 使用精细划分块匹配的图像压缩方法 | |
CN106797468A (zh) | 高效视频编码(hevc)屏幕内容编码(scc)中改进的调色板模式 | |
CN104918050A (zh) | 使用动态排列重组的参考像素样值集的图像压缩方法 | |
TW202147850A (zh) | 用於組合無損和有損寫碼之方法和系統 | |
EP3893191A1 (en) | Method and device for image processing | |
WO2016119666A1 (zh) | 图像编解码方法及装置 | |
CN116389722A (zh) | 一种图像解码方法及装置 | |
CN115914651A (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: 15749303 Country of ref document: EP Kind code of ref document: A1 |
|
REEP | Request for entry into the european phase |
Ref document number: 2015749303 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2015749303 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15118980 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2016568992 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 20167025685 Country of ref document: KR Kind code of ref document: A |