WO2016082699A1 - 图像编码方法、解码方法、编码装置和解码装置 - Google Patents

图像编码方法、解码方法、编码装置和解码装置 Download PDF

Info

Publication number
WO2016082699A1
WO2016082699A1 PCT/CN2015/094817 CN2015094817W WO2016082699A1 WO 2016082699 A1 WO2016082699 A1 WO 2016082699A1 CN 2015094817 W CN2015094817 W CN 2015094817W WO 2016082699 A1 WO2016082699 A1 WO 2016082699A1
Authority
WO
WIPO (PCT)
Prior art keywords
copy
decoding
class
string
mode
Prior art date
Application number
PCT/CN2015/094817
Other languages
English (en)
French (fr)
Inventor
林涛
李明
尚国强
Original Assignee
同济大学
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 同济大学, 中兴通讯股份有限公司 filed Critical 同济大学
Priority to US15/529,998 priority Critical patent/US10341651B2/en
Priority to EP15862330.6A priority patent/EP3211900A4/en
Priority to EP21170107.3A priority patent/EP3876537A1/en
Publication of WO2016082699A1 publication Critical patent/WO2016082699A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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 colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Definitions

  • This document relates to but not limited to the field of digital video compression codec technology, and in particular to an image coding method, an image decoding method, an image coding device and an image decoding device.
  • the natural form of a digital video signal of a screen image is a sequence of images.
  • Encoding a digital video signal encodes a frame by frame image. At any one time, the image of the frame being encoded is referred to as the current encoded image.
  • decoding a compressed video stream of a digital video signal (referred to as a bitstream, also referred to as a bitstream) is decoding a stream of one frame by one image. At any one time, the image of the frame being decoded is referred to as the current decoded image.
  • the current encoded image or the currently decoded image is collectively referred to as the current image.
  • coding unit In almost all international standards for video image coding, such as MPEG-1/2/4, H.264/AVC, and HEVC, when encoding one frame of image, one frame of image is divided into sub-images of several blocks of MxM pixels. It is a "Coding Unit (CU)", and the sub-pictures are coded one by one with CU as the basic coding unit.
  • the size of the commonly used M is 4, 8, 16, 32, 64. Therefore, encoding a video image sequence is to encode one CU for each coding unit of each frame image, that is, CU. At any one time, the CU being coded is referred to as the current coded CU.
  • decoding the code stream of a video image sequence is also decoding one CU for each CU of each frame image, and finally reconstructing the entire video image sequence.
  • the CU being decoded is referred to as the currently decoded CU.
  • the current coding CU or the current decoding CU is collectively referred to as the current CU.
  • each CU in one frame of image can be different, some are 8x8, some are 64x64, and so on.
  • one LCU is composed of three 32x32 pixel CUs and four 16x16 pixel CUs
  • the other LCU is composed of two 32x32 pixel CUs, three 16x16 pixel CUs, and 20 8x8 pixel CUs.
  • each CU in an LCU has a tree structure
  • another name of the LCU is a Coding Tree Unit (CTU).
  • CTU Coding Tree Unit
  • the LCU is synonymous with the CTU.
  • the CU can also be further divided into sub-areas.
  • the sub-region includes a prediction unit (PU), a transform unit (TU), or an asymmetric partition (AMP).
  • PU prediction unit
  • TU transform unit
  • AMP asymmetric partition
  • a coded block or a decoded block refers to an area in which a frame of image is encoded or decoded.
  • a color pixel is usually composed of three components.
  • the two most commonly used pixel representation formats, the pixel color format are the GBR color format consisting of a green component, a blue component, and a red component, and a luminance (luma) component and two chrominances (chroma).
  • the YUV color format consisting of components.
  • the color format commonly known as YUV actually includes multiple color formats, such as the YCbCr color format. Therefore, when encoding a CU, you can divide a CU.
  • the three component planes (G plane, B plane, R plane or Y plane, U plane, V plane) are respectively coded for the three component planes; the three components of one pixel can also be bundled into one 3-tuple.
  • the entire CU consisting of these 3-tuples is encoded.
  • 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 GBR color format and the YUV color format of the pixel are both 3-component representation formats of the pixel.
  • 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 or 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, or is often referred to directly as an indexed pixel or a pseudo pixel or a 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.
  • CMYK representation format CMYK representation format
  • grayscale representation format Other commonly used related art pixel representation formats.
  • 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 most basic element when encoding or decoding can be one pixel, one pixel component, or one pixel index (ie, index pixel).
  • One of the most basic elements of encoding or decoding A pixel or a pixel component or a pixel index (index pixel) is commonly referred to as a pixel sample, sometimes referred to as a pixel value, or simply as a sample.
  • a CU is an area composed of several pixel values.
  • the shape of the CU may be a rectangle, a square, a parallelogram, a trapezoid, a polygon, a circle, an ellipse, and the like.
  • a rectangle also includes a rectangle whose width or height is one pixel value that degenerates into a line (ie, a line segment or a line shape).
  • each CU may have a different shape and size.
  • some or all of the CUs may overlap each other, or all CUs may not overlap each other.
  • a CU may be composed of "pixels", or may be composed of "components of pixels", or may be composed of "index pixels", or may be composed of a mixture of the three, or may be mixed by any two of the three. composition.
  • 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 coding methods commonly used in related image and video compression techniques include:
  • Intra block copy Also known as “intra block matching”, or “intra motion compensation”, or “block copy”, or “block matching”.
  • the basic operation of block copy encoding or decoding is to copy a reference of a predetermined size (such as 64x64 or 32x32 or 16x16 or 8x8 or 4x4 or 64x32 or 16x32 or 16x4 or 8x4 or 4x8 pixel samples) from the reconstructed reference pixel sample set. A block and assigning the value of the reference block to the current block.
  • block copy or “block match”.
  • the basic operation of block copy encoding or decoding is to copy a reference of a predetermined size (such as 64x64 or 32x32 or 16x16 or 8x8 or 4x4 or 64x32 or 16x32 or 16x4 or 8x4 or 4x8 pixel samples) from the reconstructed reference pixel sample set. A block and assigning the value of the reference block to the current block.
  • Intra microblock copy Also known as "intra microblock matching", or “microblock copying” or “microblock matching”.
  • blocks such as 8x8 pixel samples
  • finer microblocks such as 4x2 pixel samples or 8x2 pixel samples or 2x4 pixel samples or 2x8 pixel samples
  • microblock copy encoding or decoding The basic operation is to copy a reference microblock from the reconstructed reference pixel sample set and The value of the reference microblock is assigned to the current microblock.
  • Intra-frame lines (referred to as strips) copy also known as "intra-bar matching", or “bar copying”, or “bar matching”.
  • a bar is a microblock with a height (or width) of 1, such as a 4x1 or 8x1 or 1x4 or 1x8 pixel sample.
  • the basic operation of strip copy encoding or decoding is to copy a reference strip from the reconstructed reference pixel sample set and assign the value of the reference strip to the current strip.
  • strip copying is a special case of microblock copying.
  • Intraframe copy Also known as "intra string matching", or “string copying”, or “string matching”.
  • the string here refers to arranging pixel samples in a two-dimensional area of arbitrary shape into a string having a length much larger than the width (for example, a string having a width of 1 pixel sample and a length of 37 pixel samples, or a width of A string of 2 pixel samples and a length of 111 pixel samples, usually but not limited to length is an independent encoding or decoding parameter and width is a parameter derived from other encoding or decoding parameters).
  • the basic operation of string copy encoding or decoding is to copy a reference string from a set of reconstructed reference pixel samples and assign the value of the reference string to the current string.
  • the string copy can be further divided into the following subtypes according to the path shape of the string:
  • the reference string and the current string are one-dimensional pixel sample strings formed in the order of horizontal scanning in the CTU or CU, and have equal lengths, but the two-dimensional regions formed by the two strings do not necessarily have the same two-dimensional shape.
  • the reference string and the current string are one-dimensional pixel sample strings formed in the CTU or CU in the order of vertical scanning, and have equal lengths, but the two-dimensional regions formed by the two strings do not necessarily have the same two-dimensional shape.
  • the reference string and the current string have equal lengths, all arranged in exactly the same two-dimensional shape in the order of horizontal scanning, and the width of the formed two-dimensional area is equal to the width of the current coding block or the decoding block.
  • the reference string and the current string have equal lengths, all arranged in the order of vertical scanning to complete The same two-dimensional shape, the height of the formed two-dimensional area is equal to the height of the current coding block or decoding block.
  • Two-dimensional horizontal scanning conformal broadening string replication (referred to as two-dimensional horizontal string replication)
  • the reference string and the current string have equal lengths, all arranged in exactly the same two-dimensional shape in the order of horizontal scanning, but the width of the formed two-dimensional area is not necessarily equal to the width of the current coding block or the decoding block, but is not A variable width greater than the width of the current coded block or decoded block.
  • Two-dimensional vertical scanning conformal high-string copy (referred to as two-dimensional vertical string copy)
  • the reference string and the current string have equal lengths, all arranged in exactly the same two-dimensional shape in the order of vertical scanning, but the height of the formed two-dimensional area is not necessarily equal to the height of the current coding block or the decoding block, but is not A variable height that is greater than the height of the current coded block or decoded block.
  • Intra-frame rectangle copy also known as intra-frame rectangle matching or rectangular copy or rectangle matching
  • the rectangle here refers to a two-dimensional area of any size characterized by width and height.
  • the basic operation of rectangular copy encoding or decoding is to copy a reference rectangle from the reconstructed reference pixel sample set and assign the value of the reference rectangle to the current rectangle.
  • the reference rectangle and the current rectangle have equal widths and heights and thus have exactly the same two-dimensional rectangular shape.
  • Such a rectangle is also formed by a string of pixel samples whose length is the product of the height and width of the rectangle, that is, the length of the string is exactly a multiple of the width of the two-dimensional region formed by the string (this multiple is this two-dimensional).
  • the height of the area which is exactly the multiple of the height of the two-dimensional area formed by the string (this multiple is the width of this two-dimensional area).
  • rectangular copying is a special case of 4e) or 4f) above, that is, the length of the string is exactly the special case of the product of the height and width of the rectangle.
  • Another encoding (decoding) method commonly employed in related image and video compression techniques is the palette encoding (decoding) method.
  • the palette encoding (decoding) method a palette is first constructed (acquired), and then some or all of the pixels of the current encoding block (current decoding block) are represented by an index of the palette, and then the index is encoded. (decoding).
  • the manner of encoding (decoding) the index includes run and/or entropy encoding (decoding).
  • screen images usually have regions of various natures, for example, some have similar or identical patterns with relatively large or regular shapes, while others have similar or identical patterns with small or irregular shapes. And any coding method is only applicable to a certain type of coded image area. area.
  • Embodiments of the present invention provide an image coding method, an image decoding method, an image coding device, and an image decoding device, to solve the technical problem of how to fully exploit and utilize the characteristics of each coded image region in an image, and improve the image compression effect.
  • An embodiment of the present invention provides an image encoding method, where the method includes:
  • Performing hybrid coding on the coding block by using multiple coding modes includes: encoding, by using one of the multiple coding modes, the pixel sample segments in the coding block.
  • the method further includes the following features:
  • the encoding method includes one or more of the following encoding methods: palette encoding, block copy encoding, microblock copy encoding, strip copy encoding, string copy encoding, and rectangular copy encoding.
  • the method further includes the following features:
  • the coding block is one coding region of an image, and includes at least one of a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transformation unit TU, and an asymmetric partition AMP.
  • the method further includes the following features:
  • the pixel sample segment is copy-encoded to generate a copy parameter related to the copy code.
  • the method further includes the following features:
  • the coding block is mixed and encoded using multiple coding modes, including:
  • An embodiment of the present invention provides an image decoding method, where the method includes:
  • Parsing code stream data of the decoded block and determining a decoding manner of the pixel sample segment of the decoding block
  • Performing decoding of the plurality of decoding modes on the decoding block includes: decoding the pixel sample segments of the decoding block by using a corresponding decoding manner.
  • the method further includes the following features:
  • the decoding mode includes one or more of the following decoding modes: palette decoding, block copy decoding, microblock copy decoding, strip copy decoding, string copy decoding, and rectangular copy decoding.
  • the method further includes the following features:
  • the decoding block is one decoding region of an image, and includes at least one of a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition AMP.
  • the method further includes the following features:
  • the parameters include a palette parameter and/or a copy parameter.
  • the method further includes the following features:
  • Parsing the code stream data of the decoding block, and determining a decoding manner corresponding to each pixel sample segment of the decoding block including:
  • the method further includes the following features:
  • Decoding the pixel sample segment of the decoding block by using a corresponding decoding manner including:
  • the pixel sample segment is subjected to palette decoding according to the palette parameter;
  • the pixel sample segment is copied and decoded according to the copy parameter.
  • An embodiment of the present invention further provides an image encoding apparatus, the method comprising:
  • An encoding mode determining module configured to determine a coding mode of the coding block
  • the encoding module is configured to perform hybrid encoding on the encoding block by using multiple encoding manners, including: encoding, by using one of the multiple encoding manners, the pixel sample segments in the encoding block.
  • the device further includes the following features:
  • the encoding method includes one or more of the following encoding methods: palette encoding, block copy encoding, microblock copy encoding, strip copy encoding, string copy encoding, and rectangular copy encoding.
  • the device further includes the following features:
  • the coding block is one coding region of an image, and includes at least one of a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transformation unit TU, and an asymmetric partition AMP.
  • the device further includes the following features:
  • the encoding module is configured to perform encoding on one of the plurality of encoding modes for the pixel sample segments in the encoding block by:
  • the pixel sample segment is copy-encoded to generate a copy parameter related to the copy code.
  • the device further includes the following features:
  • the encoding module is configured to perform hybrid encoding on the encoding block by using multiple encoding modes, including:
  • An embodiment of the present invention further provides an image decoding apparatus, including:
  • a parsing module configured to parse the code stream data of the decoding block, and determine a decoding manner of the pixel sample segment of the decoding block
  • the decoding module is configured to perform decoding of the plurality of decoding modes in the decoding block, including: decoding, by using a corresponding decoding manner, the pixel sample segments of the decoding block.
  • the device further includes the following features:
  • the decoding mode includes one or more of the following decoding modes: palette decoding, block copy decoding, microblock copy decoding, strip copy decoding, string copy decoding, and rectangular copy decoding.
  • the device further includes the following features:
  • the decoding block is one decoding region of an image, and includes at least one of a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition AMP.
  • the device further includes the following features:
  • a decoding module configured to perform decoding of a plurality of decoding manners on the decoding block, including: acquiring parameters of a pixel sample segment from code stream data of the decoding block;
  • the parameters include a palette parameter and/or a copy parameter.
  • the device further includes the following features:
  • the parsing module is configured to parse the code stream data of the current decoding block by determining the decoding manner corresponding to each pixel sample segment of the current decoding block:
  • the device further includes the following features:
  • the decoding module is configured to perform decoding on the pixel sample segment of the decoding block by using a corresponding decoding manner:
  • the pixel sample segment is subjected to palette decoding according to the palette parameter;
  • the pixel sample segment is copied and decoded according to the copy parameter.
  • An embodiment of the present invention further provides a computer storage medium, where the computer storage medium is stored Computer executable instructions are stored for performing the methods described above.
  • an image coding method, an image decoding method, an image coding device, and an image decoding device perform hybrid coding by using multiple coding modes on a coding block, and use multiple decodings on the decoding block.
  • the mixed mode decoding can fully exploit and utilize the characteristics of each coded image area in the image to improve the image compression effect.
  • FIG. 1 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • FIG. 2 is a flowchart of an image decoding method according to an embodiment of the present invention.
  • FIG. 3 is a schematic structural diagram of an image coding apparatus according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of an image decoding apparatus according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a coding block (decoding block) for performing hybrid coding according to an embodiment of the present invention.
  • an embodiment of the present invention provides an image coding method, where the method includes:
  • S20 Perform hybrid coding on the coding block by using multiple coding modes, including: encoding, by using one of the multiple coding modes, a pixel sample segment in the coding block.
  • the method may also include the following features:
  • the encoding manner includes one or more of the following encoding modes: palette encoding, block copy encoding, microblock copy encoding, strip copy encoding, string copy encoding, and rectangular copy encoding.
  • block copy coding microblock copy coding, strip copy coding, string copy coding, and rectangular copy coding are all copy coding
  • the pixel sample segment in the coding block is encoded by using one of the multiple coding modes, that is, the multiple coding modes are used for any pixel sample segment in the coding block. Any one of them is encoded;
  • the coding block is an coding region of an image, and includes at least one of: a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition.
  • a maximum coding unit LCU a coding tree unit CTU
  • a coding unit CU a coding unit CU
  • a sub-region of a CU a prediction unit PU
  • a transform unit TU asymmetric partition
  • the pixel sample segment in the coding block is encoded by using one of the multiple coding modes, including:
  • the pixel sample segment is copy-encoded to generate a copy parameter related to the copy code.
  • the coding block is mixed and coded by using multiple coding modes, including:
  • the parameter generated by the coding of the pixel sample segments in the coding block is mixed and written into the code stream of the coding block, and includes:
  • An identification code of a decoding mode in which the pixel segment is written is mixed in a code stream of the coding block.
  • the palette parameter includes at least one of the following parameters: an index of a palette pixel sample and a length of an index run that repeats the index, and a length of an index run of the index above the copy;
  • the copy parameter includes at least one of the following parameters: a copy location, and a copy size.
  • the pixel sample segment in the coding block is encoded by using one of the multiple coding modes, including:
  • the copy path shape pattern of the string copy coding of the coding block is obtained, and the pixel sample segment is matched from the reconstructed reference pixel sample set. Reference pixel sample string.
  • the copy path shape pattern of the string copy encoding includes any one of the following modes:
  • Mode 1 Vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the samples in the column are scanned from top to bottom;
  • Mode 2 Horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal scanning of samples in the row is scanned from left to right;
  • Mode 3 Vertical path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the sample values in the column are vertically scanned from top to bottom. , scanning from left to right between columns;
  • Mode 4 Horizontal path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by line, and the horizontal sample scanning in the line is scanned from left to right. Scanning from top to bottom between lines;
  • Mode 5 Derived vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the sample values in the column are alternately changed between columns. , including: odd-numbered columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 6 Derived horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal sample path in the row alternates between rows and rows. , including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left;
  • Mode 7 Derived vertical path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the columns are scanned from left to right, columns The vertical scan path of the sample value alternates between columns, including: odd columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 8 Derived horizontal path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are arranged in rows, and the rows are scanned from top to bottom.
  • the sample-level horizontal scan path alternates between rows, including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left.
  • the coding block adopts a coding mode in which a palette coding and a string copy coding are mixed
  • the path scan mode of the palette encoding is consistent with the copy path shape pattern of the string copy encoding.
  • the method further includes:
  • the copy path shape pattern information is encoded in the image layer information unit corresponding to the image.
  • the copy path shape pattern information is encoded in the sequence layer information unit of the video sequence.
  • the image layer information unit includes at least one of the following information units: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information; and/or
  • the sequence layer information element includes at least one of the following information elements: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information.
  • the copying and encoding the pixel sample segment includes: obtaining a reference pixel sample segment matching the pixel sample segment from the reconstructed reference pixel sample set;
  • the reconstructed reference pixel sample set includes: a variant of the reconstructed sample and/or the reconstructed sample;
  • the variant of the reconstructed sample includes: a sample generated by processing and/or transforming the reconstructed sample.
  • the method further includes:
  • the coding block mode information includes at least one of the following modes:
  • Mode 1 The image contains four coding block types: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The image contains three coding block types: Class 1, Class 2, Class 3;
  • Mode 3 The image contains three coding block types: Class 1, Class 2, Class 4;
  • Mode 4 The image contains three coding block types: Class 1, Class 3, Class 4;
  • Mode 5 The image contains three coding block types: Class 2, Class 3, Class 4;
  • Modes 6-11 The image contains two coding block types: any two of Type 1, Class 2, Class 3, and Class 4;
  • Patterns 12-15 The image contains a coding block type: Class 1, Class 2, Class 3 And any type of category 4;
  • the coding block type includes:
  • Class 1 The coding block uses palette coding, string copy coding, and rectangular copy coding;
  • Class 2 The coding block uses string copy coding and rectangular copy coding
  • Class 3 The coding block uses palette coding and string copy coding
  • Class 4 The coding block uses palette coding and rectangular copy coding.
  • the method further includes:
  • Coding block mode information is encoded in a sequence layer information unit corresponding to a video sequence in which the coding block is located, where the coding block mode information includes at least one of the following modes:
  • Mode 1 The video sequence includes four coding block types: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The video sequence includes three coding block types: Class 1, Class 2, Class 3;
  • Mode 3 The video sequence includes three coding block types: Class 1, Class 2, Class 4;
  • Mode 4 The video sequence includes three coding block types: Class 1, Class 3, and Class 4;
  • the video sequence includes three coding block types: Class 2, Class 3, and Class 4;
  • the video sequence includes two coding block types: any two of Type 1, Type 2, Class 3, and Type 4;
  • the video sequence includes a coding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the coding block type includes:
  • Class 1 The coding block uses palette coding, string copy coding, and rectangular copy coding;
  • Class 2 The coding block uses string copy coding and rectangular copy coding
  • Class 3 The coding block uses palette coding and string copy coding
  • Class 4 The coding block uses palette coding and rectangular copy coding.
  • the constituent elements of the pixel sample segment include the following: a pixel, a pixel component, and a pixel index.
  • the parameter of the obtained pixel sample segment is composed of a plurality of sub-parameter fields, and the coded bits of the sub-parameter domain of the same type of the parameter are placed in one or more fields connected in the code stream, or Different fields placed in the code stream.
  • the sub-parameter domain of the parameter of the acquired pixel sample segment includes a single-component sub-parameter domain, a two-component sub-parameter domain, or a three-component sub-parameter domain.
  • the sub-parameter domain includes at least one of the following sub-parameter domains:
  • Sub-parameter field 1 encoding mode type; the encoding mode type includes any of the following types: palette encoding, block copy encoding, micro-block copy encoding, strip copy encoding, string copy encoding, rectangular copy encoding, and no reference. Pixel copy encoding;
  • Sub-parameter field 2 index or copy location
  • Sub-parameter field 3 index length or copy size
  • Sub-parameter field 4 No reference pixel samples.
  • the method further includes:
  • An information field of the encoded pixel sample segment is mixed in the code stream of the coding block, where the code stream includes one or more of the following information fields:
  • Information field 1 the coding mode adopted by the coding block
  • Information field 3 pixel sample arrangement
  • Information field 4 a list of parameter encoding methods corresponding to the information field
  • palette encoding header information including the number of pixels in the palette and the value of the pixel or multiplexing rule
  • Information field 6 at least one of the following information: a palette code or a copy code identification code corresponding to the pixel sample segment, a sample subset number corresponding to the pixel sample segment or an empty, an index corresponding to the pixel sample segment or The copy position, the index length or the copy size corresponding to the pixel sample segment, and the non-reference pixel sample corresponding to the pixel sample segment or null;
  • determining a coding mode of the coding block includes:
  • the palette is encoded by the path scan method.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used to execute the above method.
  • an embodiment of the present invention provides an image decoding method, where the method includes:
  • S20 Perform decoding of a plurality of decoding modes on the decoding block, including: decoding, by using a corresponding decoding manner, the pixel sample segments of the decoding block.
  • the method may also include the following features:
  • the decoding mode includes one or more of the following decoding modes: palette decoding, block copy decoding, microblock copy decoding, strip copy decoding, string copy decoding, and rectangular copy decoding.
  • block copy decoding, microblock copy decoding, strip copy decoding, string copy decoding, and rectangular copy decoding are all copy decoding
  • the decoding block is a decoding region of an image, and includes at least one of: a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition.
  • a maximum coding unit LCU a coding tree unit CTU
  • a coding unit CU a coding unit CU
  • a sub-region of a CU a prediction unit PU
  • a transform unit TU asymmetric partition.
  • the decoding block includes one or more pixel sample segments, and each pixel sample segment corresponds to one of a plurality of decoding modes.
  • the decoding of the multiple decoding modes of the decoding block includes: obtaining decoding parameters of the pixel sample segments from the code stream data of the decoding block;
  • the decoding parameters include a palette parameter and/or a copy parameter.
  • the palette parameter is used for palette decoding
  • the copy parameter is used for copy decoding
  • the code stream data of the decoded block is parsed, and the pixel sample segment corresponding to the decoded block is determined to be corresponding to
  • the decoding method includes:
  • the pixel sample segment of the decoding block is decoded by using a corresponding decoding manner, including:
  • the pixel sample segment is subjected to palette decoding according to the palette parameter;
  • the pixel sample segment is copied and decoded according to the copy parameter.
  • the palette parameter includes at least one of the following parameters: an index of a palette pixel sample and a length of an index run that repeats the index, a length of an index run of the index above the copy; and/or
  • the copy parameter includes at least one of the following parameters: a copy location, and a copy size.
  • copying and decoding the pixel sample segment according to the copy parameter includes:
  • the method further includes: directly or indirectly assigning the value of the reference pixel sample string to the Pixel sample segment.
  • the copy path shape pattern of the string copy decoding includes any one of the following modes:
  • Mode 1 Vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the samples in the column are scanned from top to bottom;
  • Mode 2 Horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal scanning of samples in the row is scanned from left to right;
  • Mode 3 Vertical path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the sample values in the column are vertically scanned from top to bottom. , scanning from left to right between columns;
  • Mode 4 Horizontal path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by line, and the horizontal sample scanning in the line is scanned from left to right. Scanning from top to bottom between lines;
  • Mode 5 Derived vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the sample values in the column are alternately changed between columns. , including: odd-numbered columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 6 Derived horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal sample path in the row alternates between rows and rows. , including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left;
  • Mode 7 Derived vertical path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the columns are scanned from left to right, columns The vertical scan path of the sample value alternates between columns, including: odd columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 8 Derived horizontal path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are arranged in rows, and the rows are scanned from top to bottom.
  • the sample-level horizontal scan path alternates between rows, including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left.
  • the path scanning mode of the palette decoding is consistent with the copy path shape mode of the string copy decoding.
  • the reconstructed reference pixel sample set includes: a variant of the reconstructed sample and/or the reconstructed sample;
  • the variant of the reconstructed sample includes: a sample generated by processing and/or transforming the reconstructed sample.
  • the method further includes:
  • the copy path shape pattern information is obtained from a sequence layer information unit of a video sequence indicating that all decoded blocks in the sequence use a specified copy path shape pattern.
  • the image layer information unit includes at least one of the following information units: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information; and/or
  • the sequence layer information element includes at least one of the following information elements: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information.
  • the method further includes:
  • Decoding block mode information is obtained from an image layer information unit corresponding to the image in which the decoding block is located, wherein the decoding block mode information includes at least one of the following modes:
  • Mode 1 The image contains four types of decoding blocks: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The image contains three types of decoding blocks: Class 1, Class 2, Class 3;
  • Mode 3 The image contains three types of decoding blocks: Class 1, Class 2, Class 4;
  • Mode 4 The image contains three types of decoding blocks: Class 1, Class 3, Class 4;
  • Mode 5 The image contains three types of decoding blocks: Class 2, Class 3, Class 4;
  • Modes 6-11 The image contains two types of decoding blocks: any two of Type 1, Class 2, Class 3, and Class 4;
  • the image includes a decoding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the decoding block type includes:
  • Class 1 The decoding block uses palette decoding, string copy decoding, and rectangular copy decoding
  • Class 2 The decoding block uses string copy decoding and rectangular copy decoding
  • Class 3 The decoding block uses palette decoding and string copy decoding
  • Class 4 The decoding block uses palette decoding and rectangular copy decoding.
  • the method further includes:
  • Decoding block mode information is obtained from a sequence layer information unit corresponding to a video sequence in which the decoding block is located, where the decoding block mode information includes at least one of the following modes:
  • Mode 1 The video sequence contains four decoding block types: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The video sequence includes three types of decoding blocks: Class 1, Class 2, Class 3;
  • Mode 3 The video sequence includes three types of decoding blocks: Class 1, Class 2, Class 4;
  • Mode 4 The video sequence includes three types of decoding blocks: Class 1, Class 3, and Class 4;
  • Mode 5 The video sequence includes three types of decoding blocks: Class 2, Class 3, and Class 4;
  • the video sequence includes two types of decoding blocks: any two of Type 1, Class 2, Class 3, and Class 4;
  • the video sequence includes a decoding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the decoding block type includes:
  • Class 1 The decoding block uses palette decoding, string copy decoding, and rectangular copy decoding
  • Class 2 The decoding block uses string copy decoding and rectangular copy decoding
  • Class 3 The decoding block uses palette decoding and string copy decoding
  • Class 4 The decoding block uses palette decoding and rectangular copy decoding.
  • the constituent elements of the pixel sample segment include the following: a pixel, a pixel component, and a pixel index.
  • the parameter of the obtained pixel sample segment is composed of a plurality of sub-parameter fields, and the input bits of the sub-parameter domain of the same type of the decoding parameter are located in one or more fields connected in the code stream, or A different field located in the code stream.
  • the sub-parameter domain of the parameter of the acquired pixel sample segment includes a single-component sub-parameter domain, a two-component sub-parameter domain, or a three-component sub-parameter domain.
  • Decoding mode type includes any of the following types: palette decoding, block copy decoding, micro-block copy decoding, strip copy decoding, string copy decoding, rectangular copy decoding, and no reference. Pixel copy decoding;
  • Sub-parameter field 2 index or copy location
  • Sub-parameter field 3 index length or copy size
  • Sub-parameter field 4 No reference pixel samples.
  • the method for parsing the code stream data of the decoding block and determining the decoding manner of the pixel sample segment of the decoding block includes:
  • an information field of the decoded pixel sample segment is mixed from the code stream of the decoding block, where the code stream includes one or more of the following information fields:
  • Information field 3 pixel sample arrangement
  • Information field 4 a list of parameter decoding modes corresponding to the information field
  • palette decoding header information including the number of pixels in the palette and the value of the pixel or multiplexing rule
  • Information field 6 at least one of the following information: a palette decoding or copy decoding identification code corresponding to the pixel sample segment, a sample subset number corresponding to the pixel sample segment or an empty, an index corresponding to the pixel sample segment or The copy position, the index length or the copy size corresponding to the pixel sample segment, and the non-reference pixel sample corresponding to the pixel sample segment or null;
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores computer executable instructions, and the computer executable instructions are used to execute the above method.
  • an embodiment of the present invention provides an image encoding apparatus, including:
  • An encoding mode determining module configured to determine a coding mode of the coding block
  • the encoding module is configured to perform hybrid encoding on the encoding block by using multiple encoding manners, including: encoding, by using one of the multiple encoding manners, the pixel sample segments in the encoding block.
  • the image encoding device may further include the following features:
  • the encoding method includes one or more of the following encoding modes: palette encoding, Block copy coding, microblock copy coding, strip copy coding, string copy coding, and rectangular copy coding.
  • the coding block is an coding region of an image, and includes at least one of: a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition.
  • a maximum coding unit LCU a coding tree unit CTU
  • a coding unit CU a coding unit CU
  • a sub-region of a CU a prediction unit PU
  • a transform unit TU asymmetric partition
  • the encoding module is configured to perform encoding on one of the plurality of encoding modes for the pixel sample segments in the encoding block by:
  • the pixel sample segment is copy-encoded to generate a copy parameter related to the copy code.
  • the encoding module is configured to perform hybrid encoding on the encoding block by using multiple encoding modes as follows:
  • the encoding module is configured to perform the following steps: mixing the parameters generated by respectively encoding the pixel sample segments in the coding block into the code stream of the coding block:
  • An identification code of a decoding mode in which the pixel segment is written is mixed in a code stream of the coding block.
  • the palette parameter includes at least one of the following parameters: an index of a palette pixel sample and a length of an index run that repeats the index, a length of an index run of the index above the copy; and/or
  • the copy parameter includes at least one of the following parameters: a copy location, and a copy size.
  • the encoding module is configured to perform encoding on one of the plurality of encoding modes for the pixel sample segments in the encoding block by:
  • the copy path shape pattern of the string copy coding of the coding block is obtained, and the pixel sample segment is matched from the reconstructed reference pixel sample set. Reference pixel sample string.
  • the copy path shape pattern of the string copy encoding includes any one of the following modes:
  • Mode 1 Vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the samples in the column are scanned from top to bottom;
  • Mode 2 Horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal scanning of samples in the row is scanned from left to right;
  • Mode 3 Vertical path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the sample values in the column are vertically scanned from top to bottom. , scanning from left to right between columns;
  • Mode 4 Horizontal path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by line, and the horizontal sample scanning in the line is scanned from left to right. Scanning from top to bottom between lines;
  • Mode 5 Derived vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the sample values in the column are alternately changed between columns. , including: odd-numbered columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 6 Derived horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal sample path in the row alternates between rows and rows. , including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left;
  • Mode 7 Derived vertical path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the columns are scanned from left to right, columns The vertical scan path of the sample value alternates between columns, including: odd columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 8 Derived horizontal path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are arranged in rows, and the rows are scanned from top to bottom.
  • the sample-level horizontal scan path alternates between rows, including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left.
  • the path scan mode of the palette coding is consistent with the copy path shape mode of the string copy coding.
  • the encoding module is set to use only one type of copy-coded copy path shape in the image In the mode, encoding the copy path shape mode information in an image layer information unit corresponding to the image; and/or, when only one string copy coded copy path shape mode is used in the video sequence, in the video
  • the copy path shape pattern information is encoded in a sequence layer information unit of the sequence.
  • the image layer information unit includes at least one of the following information units: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information; and/or
  • the sequence layer information element includes at least one of the following information elements: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information.
  • the encoding module is configured to perform copy coding on the pixel sample segment by acquiring a reference pixel sample segment matching the pixel sample segment from the reconstructed reference pixel sample set;
  • the reconstructed reference pixel sample set includes: a variant of the reconstructed sample and/or the reconstructed sample;
  • the variant of the reconstructed sample includes: a sample generated by processing and/or transforming the reconstructed sample.
  • the encoding module is further configured to encode the coding block mode information in the image layer information unit corresponding to the image where the coding block is located, where the coding block mode information includes at least one of the following modes:
  • Mode 1 The image contains four coding block types: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The image contains three coding block types: Class 1, Class 2, Class 3;
  • Mode 3 The image contains three coding block types: Class 1, Class 2, Class 4;
  • Mode 4 The image contains three coding block types: Class 1, Class 3, Class 4;
  • Mode 5 The image contains three coding block types: Class 2, Class 3, Class 4;
  • Modes 6-11 The image contains two coding block types: any two of Type 1, Class 2, Class 3, and Class 4;
  • the image includes a coding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the coding block type includes:
  • Class 1 The coding block uses palette coding, string copy coding, and rectangular copy coding;
  • Class 2 The coding block uses string copy coding and rectangular copy coding
  • Class 3 The coding block uses palette coding and string copy coding
  • Class 4 The coding block uses palette coding and rectangular copy coding.
  • the encoding module is further configured to encode the coding block mode information in a sequence layer information unit corresponding to the video sequence in which the coding block is located, where the coding block mode information includes at least one of the following modes:
  • Mode 1 The video sequence includes four coding block types: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The video sequence includes three coding block types: Class 1, Class 2, Class 3;
  • Mode 3 The video sequence includes three coding block types: Class 1, Class 2, Class 4;
  • Mode 4 The video sequence includes three coding block types: Class 1, Class 3, and Class 4;
  • the video sequence includes three coding block types: Class 2, Class 3, and Class 4;
  • the video sequence includes two coding block types: any two of Type 1, Type 2, Class 3, and Type 4;
  • the video sequence includes a coding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the coding block type includes:
  • Class 1 The coding block uses palette coding, string copy coding, and rectangular copy coding;
  • Class 2 The coding block uses string copy coding and rectangular copy coding
  • Class 3 The coding block uses palette coding and string copy coding
  • Class 4 The coding block uses palette coding and rectangular copy coding.
  • the constituent elements of the pixel sample segment include the following: a pixel, a pixel component, and a pixel index.
  • the parameter of the obtained pixel sample segment is composed of a plurality of sub-parameter fields, and the coded bits of the sub-parameter domain of the same type of the decoding parameter are placed in one or more fields connected in the code stream, or , placed in different fields in the code stream.
  • the sub-parameter domain of the parameter of the acquired pixel sample segment includes a single-component sub-parameter domain, a two-component sub-parameter domain, or a three-component sub-parameter domain.
  • the sub-parameter domain includes at least one of the following sub-parameter domains:
  • Sub-parameter field 1 encoding mode type; the encoding mode type includes any of the following types: palette encoding, block copy encoding, micro-block copy encoding, strip copy encoding, string copy encoding, rectangular copy encoding, and no reference. Pixel copy encoding;
  • Sub-parameter field 2 index or copy location
  • Sub-parameter field 3 copy size
  • Sub-parameter field 4 No reference pixel samples.
  • the encoding module is further configured to mix, in the code stream corresponding to the coding block, an information field of the encoded pixel sample segment, where the code stream includes one or more of the following information fields:
  • Information field 1 the coding mode adopted by the coding block
  • Information field 3 pixel sample arrangement
  • Information field 4 a list of parameter encoding methods corresponding to the information field
  • palette encoding header information including the number of pixels in the palette and the value of the pixel or multiplexing rule
  • Information field 6 at least one of the following information: a palette code or a copy code identification code corresponding to the pixel sample segment, a sample subset number corresponding to the pixel sample segment or an empty, an index corresponding to the pixel sample segment or The copy position, the index length or the copy size corresponding to the pixel sample segment, and the non-reference pixel sample corresponding to the pixel sample segment or null;
  • the encoding mode determining module is configured to implement determining a coding mode of the coding block by constructing or acquiring a color palette, and/or precoding the pixels of the coding block to determine a coding mode of the pixel sample segment, and / or determining the copy path shape pattern of the string copy encoding of the encoded block, and/or determining the path scan mode of the palette encoding of the encoded block.
  • an embodiment of the present invention provides an image decoding apparatus, including:
  • a parsing module configured to parse the code stream data of the decoding block, and determine a decoding manner of the pixel sample segment of the decoding block
  • the decoding module is configured to perform decoding of the plurality of decoding modes in the decoding block, including: decoding, by using a corresponding decoding manner, the pixel sample segments of the decoding block.
  • the image decoding device may further include the following features:
  • the decoding mode includes one or more of the following decoding modes: palette decoding, block copy decoding, microblock copy decoding, strip copy decoding, string copy decoding, and rectangular copy decoding.
  • the decoding block is a decoding region of an image, and includes at least one of: a maximum coding unit LCU, a coding tree unit CTU, a coding unit CU, a sub-region of a CU, a prediction unit PU, a transform unit TU, and an asymmetric partition.
  • a maximum coding unit LCU a coding tree unit CTU
  • a coding unit CU a coding unit CU
  • a sub-region of a CU a prediction unit PU
  • a transform unit TU asymmetric partition.
  • the decoding module is configured to perform decoding of multiple decoding modes of the decoding block by acquiring parameters of the pixel sample segment from the code stream data of the decoding block;
  • the parameters of the acquired pixel sample segment include a palette parameter and/or a copy parameter.
  • the parsing module is configured to parse the code stream data of the current decoding block by using the following manner, and determine a decoding manner corresponding to the pixel sample segment of the current decoding block:
  • the decoding module is configured to perform decoding on the pixel sample segment of the decoding block by using a corresponding decoding manner:
  • the pixel sample segment is subjected to palette decoding according to the palette parameter;
  • the pixel sample segment is copied and decoded according to the copy parameter.
  • the palette parameter includes at least one of the following parameters: an index of a palette pixel sample and a length of an index run that repeats the index, a length of an index run of the index above the copy; and/or
  • the copy parameter includes at least one of the following parameters: a copy location, and a copy size.
  • the decoding module is configured to: when the copy decoding mode is used in the pixel sample segment, copy and decode the pixel sample segment according to the copy parameter:
  • the decoding module is further configured to directly or indirectly assign the value of the reference pixel sample string after acquiring the reference pixel sample string from the reconstructed reference pixel sample set according to the copy path shape mode and the copy parameter.
  • the pixel sample segment is given.
  • the copy path shape pattern of the string copy decoding includes any one of the following modes:
  • Mode 1 Vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the samples in the column are scanned from top to bottom;
  • Mode 2 Horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal scanning of samples in the row is scanned from left to right;
  • Mode 3 Vertical path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by columns, and the sample values in the column are vertically scanned from top to bottom. , scanning from left to right between columns;
  • Mode 4 Horizontal path two-dimensional conformal copy mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are scanned by line, and the horizontal sample scanning in the line is scanned from left to right. Scanning from top to bottom between lines;
  • Mode 5 Derived vertical path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned by columns, and the vertical values of the sample values in the column are alternately changed between columns. , including: odd-numbered columns are scanned from top to bottom and even columns are scanned from bottom to top, or even columns are scanned from top to bottom and odd columns are scanned from bottom to top;
  • Mode 6 Derived horizontal path one-dimensional string replication mode, the reference pixel sample string and the current pixel sample string are one-dimensional sample strings, the sample values are scanned in rows, and the horizontal sample path in the row alternates between rows and rows. , including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left;
  • Mode 7 Derived vertical path 2D conformal copy mode, reference pixel sample string and current image
  • the sample-like value string is a two-dimensional sample string with the same shape.
  • the sample value is scanned by column, and the columns are scanned from left to right.
  • the vertical value of the sample in the column alternates between the columns, including: odd-numbered columns are scanned from top to bottom.
  • the even columns are scanned from bottom to top, or the even columns are scanned from top to bottom and the odd columns are scanned from bottom to top;
  • Mode 8 Derived horizontal path two-dimensional conformal replication mode, the reference pixel sample string and the current pixel sample string are two-dimensional sample strings of the same shape, the sample values are arranged in rows, and the rows are scanned from top to bottom.
  • the sample-level horizontal scan path alternates between rows, including: odd rows are scanned from left to right and even rows are scanned from right to left, or even rows are scanned from left to right and odd rows are scanned from right to left.
  • the path scanning mode of the palette decoding is consistent with the copy path shape mode of the string copy decoding.
  • the reconstructed reference pixel sample set includes: a variant of the reconstructed sample and/or the reconstructed sample;
  • the variant of the reconstructed sample includes: a sample generated by processing and/or transforming the reconstructed sample.
  • the parsing module is configured to acquire the copy path shape pattern information from the image layer information unit of the image, the information indicating that all decoded blocks in the image use a specified copy path shape pattern; and/or, from the video sequence
  • the copy path shape pattern information is obtained in a sequence layer information unit, the information indicating that all decoded blocks in the sequence use a specified copy path shape pattern.
  • the image layer information unit includes at least one of the following information units: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information; and/or
  • the sequence layer information element includes at least one of the following information elements: a video parameter set VPS, a sequence parameter set SPS, an image parameter set PPS, and slice header information.
  • the parsing module is further configured to obtain the decoded block mode information from the image layer information unit corresponding to the image where the decoding block is located, where the decoded block mode information includes at least one of the following modes:
  • Mode 1 The image contains four types of decoding blocks: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The image contains three types of decoding blocks: Class 1, Class 2, Class 3;
  • Mode 3 The image contains three types of decoding blocks: Class 1, Class 2, Class 4;
  • Mode 4 The image contains three types of decoding blocks: Class 1, Class 3, Class 4;
  • Mode 5 The image contains three types of decoding blocks: Class 2, Class 3, Class 4;
  • Modes 6-11 The image contains two types of decoding blocks: any two of Type 1, Class 2, Class 3, and Class 4;
  • the image includes a decoding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the decoding block type includes:
  • Class 1 The decoding block uses palette decoding, string copy decoding, and rectangular copy decoding
  • Class 2 The decoding block uses string copy decoding and rectangular copy decoding
  • Class 3 The decoding block uses palette decoding and string copy decoding
  • Class 4 The decoding block uses palette decoding and rectangular copy decoding.
  • the parsing module is further configured to obtain the decoded block mode information from the sequence layer information unit corresponding to the video sequence in which the decoding block is located, where the decoded block mode information includes at least one of the following modes:
  • Mode 1 The video sequence includes four types of decoding blocks: Class 1, Class 2, Class 3, Class 4;
  • Mode 2 The video sequence includes three types of decoding blocks: Class 1, Class 2, Class 3;
  • Mode 3 The video sequence includes three types of decoding blocks: Class 1, Class 2, Class 4;
  • Mode 4 The video sequence includes three types of decoding blocks: Class 1, Class 3, and Class 4;
  • Mode 5 The video sequence includes three types of decoding blocks: Class 2, Class 3, and Class 4;
  • the video sequence includes two types of decoding blocks: any two of Type 1, Class 2, Class 3, and Class 4;
  • the video sequence includes a decoding block type: any one of the first class, the second class, the third class, and the fourth class;
  • the decoding block type includes:
  • Class 1 The decoding block uses palette decoding, string copy decoding, and rectangular copy decoding
  • Class 2 The decoding block uses string copy decoding and rectangular copy decoding
  • Class 3 The decoding block uses palette decoding and string copy decoding
  • Class 4 The decoding block uses palette decoding and rectangular copy decoding.
  • the constituent elements of the pixel sample segment include the following: a pixel, a pixel component, and a pixel index.
  • the parameter of the obtained pixel sample segment is composed of a plurality of sub-parameter fields, and the input bit of the sub-parameter domain of the same type of the parameter of the obtained pixel sample segment is located in front of or adjacent to the code stream. Multiple fields, or different fields located in the stream.
  • the sub-parameter domain of the parameter of the acquired pixel sample segment includes a single-component sub-parameter domain, a two-component sub-parameter domain, or a three-component sub-parameter domain.
  • Decoding mode type includes any of the following types: palette decoding, block copy decoding, micro-block copy decoding, strip copy decoding, string copy decoding, rectangular copy decoding, and no reference. Pixel copy decoding;
  • Sub-parameter field 2 index or copy location
  • Sub-parameter field 3 index length or copy size
  • Sub-parameter field 4 No reference pixel samples.
  • the parsing module is configured to implement parsing of the code stream data of the decoding block by determining the decoding manner of the pixel sample segment of the decoding block:
  • an information field of the decoded pixel sample segment is mixed from the decoded block code stream, where the code stream includes one or more of the following information fields:
  • Information field 3 pixel sample arrangement
  • Information field 4 a list of parameter decoding modes corresponding to the information field
  • palette decoding header information including the number of pixels in the palette and the pixels Numerical or multiplexing rules
  • Information field 6 at least one of the following information: a palette decoding or copy decoding identification code corresponding to the pixel sample segment, a sample subset number corresponding to the pixel sample segment or an empty, an index corresponding to the pixel sample segment or The copy position, the copy size corresponding to the pixel sample segment, and the non-reference pixel sample corresponding to the pixel sample segment or null;
  • a palette coding (or corresponding decoding) mode and a copy coding (or corresponding decoding) manner are mixed in one coding block or a decoding block, that is, one coding block (decoding block)
  • Some of the pixels are encoded or decoded using a palette and indexing method, while another portion of the pixels are encoded or decoded using pixel copying.
  • the encoder mixes the syntax elements required for the palette decoding generated by the palette encoding and the syntax elements required for the copy encoding generated by the copy encoding into a stream segment of a CU to generate a stream data of the CU.
  • the decoder obtains the syntax elements of the palette decoding and the syntax elements of each of the palette decoding parameters and the copy decoding and each of the copy decoding parameters from the code stream data of one CU, according to the palette decoding parameters and the copy decoding parameters respectively Palette decoding and copy decoding are performed to generate all reconstructed pixels of the currently decoded CU of the palette mode reconstructed pixel and the copy mode reconstructed pixel blend.
  • the encoding method and apparatus of the embodiment of the present invention first construct a palette when encoding the current coding block, and then represent some or all of the pixels of the current coding block by an index of the palette, an index. Usually occupying fewer bits than one pixel; using a palette and indexing method for a portion of the pixels of the current coded block to perform encoding operations including run-length encoding and/or entropy encoding; for another portion of the current encoded block, the original is Within a predetermined search window within the input image or reconstructed reference pixel sample set, the search results in one or more optimal copy reference strings (referred to as reference strings) and/or copy reference rectangles (referred to as reference rectangles) and/or Or copy reference microblocks (referred to as reference microblocks) and/or copy reference strips (referred to as reference strips).
  • reference strings optimal copy reference strings
  • reference rectangles referred to as reference rectangles
  • reference microblocks copy reference strips
  • the result of the palette encoding is represented by one or more palette parameters associated with palette decoding.
  • the reference string, the reference rectangle, the reference microblock, and the reference strip are represented by one or more copy parameters (or matching parameters) related to string copy decoding, rectangular copy decoding, microblock copy decoding, and strip copy decoding. Including some or all of the palette
  • the parameters required for decoding such as prime, palette parameters, and copy parameters are mixed into the code stream.
  • the decoding method and apparatus of the embodiment of the present invention acquires part or all of the pixels of the palette from the code stream when decoding the current decoded block, and acquires palette parameters and copy decoding related to the palette decoding. Relevant copy parameters.
  • decoding including index run decoding, obtains an index of a partial pixel of the current decoded block, and obtains a corresponding pixel sample from the palette using an index, and the value of the pixel sample is obtained. Assigned directly or indirectly to the currently decoded pixel.
  • the palette parameters include: an index, the length of the index run (ie, the index string) of the left index, and the length of the index run (ie, the index string) of the index above.
  • the copy parameters include the copy location and/or the copy size.
  • the copy size includes the copy length.
  • the copy size includes two copy parameter components of copy width and copy length or two copy parameter components of copy height and copy length or two copy parameter components of copy width and copy height.
  • the copy position is the first pixel sample of the reference string and/or reference rectangle and/or reference microblock and/or reference strip within the reconstructed reference pixel sample set and the current string and/or current rectangle in the current CU / Linear (1D) distance or plane (2D) distance between the current microblock and/or the first pixel sample of the current strip, the unit of which is a sample or a number of samples.
  • the copy position is sometimes referred to as an intra motion vector.
  • the copy size is the size of the reference string and/or reference rectangle, the unit of which is also a sample or a number of samples. Obviously, the size of the reference string and/or reference rectangle is also the size of the current string and/or the current rectangle.
  • An optional decoding process that mixes palette decoding with copy decoding is to perform or repeat the decoding of the following statements or equivalent statements:
  • the value of the non-reference pixel obtained from the code stream is directly or indirectly assigned to the current decoded pixel
  • the pixel samples of the reconstructed reference pixel sample set may be equivalent to the reconstructed samples, or may be various variants of the reconstructed samples, such as pixel clustering, color quantization, numerical quantization, vector quantization, denoising, Samples processed by filtering, feature extraction, etc., or samples subjected to color format conversion, permutation conversion, frequency domain conversion, spatial domain mapping, DPCM, first-order or higher-order difference operation, indexing, etc., or subjected to multiple processing and transformation
  • the pixel value variant when the reference sample value is not equal to the reconstructed sample value, the reference sample value can be generated once and then temporarily stored for later use when needed, or can be generated immediately when needed, or it can be A combination of two production methods.
  • reconstructed samples and “reference samples” are sometimes collectively referred to as “reconstructed reference pixel samples.”
  • reconstructed reference pixel samples means either "reconstructed samples” or “reference samples” or both.
  • the "reconstructed reference sample set” and the “reconstructed reference pixel sample set” are synonymous, and are sometimes simply referred to as “sample set” without causing confusion.
  • the reconstructed reference pixel sample set may be a two-dimensional area that is connected to one piece containing at least one CTU area, or may be composed of a plurality of unrelated partial areas or pixels selected according to a predetermined rule.
  • the string copy encoding or decoding For a reconstructed reference pixel sample set containing at least one CTU region and/or a current CU, from the path shape of the reference string and/or the current string, the string copy encoding or decoding has at least four basic copy path shape patterns. .
  • the basic copy path shape mode 1 is a copy path shape pattern of the vertical path 1-dimensional string copy.
  • the reconstructed reference pixel sample set and/or the current CU are first arranged in the order of the CTU sequence number or the CU sequence number, and in one CTU or CU, the sample values are arranged column by column, and the samples in each column are sampled. Vertical scans are arranged from top to bottom.
  • the reconstructed reference pixel sample set is also arranged into a one-dimensional sample string.
  • the basic copy path shape mode 2 is a copy path shape pattern of the horizontal path one-dimensional string copy.
  • the basic copy path shape mode 2 is the dual mode of the above-described basic copy path shape mode 1. Replace “vertical” in the basic copy path shape pattern 1 with “horizontal”, “column” with “row”, and “top-down” with “left to right”, which is the basic copy path shape pattern 2.
  • the basic copy path shape pattern 3 is a copy path shape pattern of the two-dimensional conformal copy of the vertical path.
  • the reconstructed reference pixel sample set retains the two-dimensional arrangement inherent to the original image plane, and in the current CU, the samples are arranged column by column in a vertical scan manner and are in the first column. Arranged below.
  • searching or copying a reference string among the reconstructed reference pixel sample sets in the current CU, the current sample moves from top to bottom in a vertical scanning manner, after one column of scanning and copying is completed, then scanning and copying the adjacent right side a row.
  • the reference string found in the reconstructed reference pixel sample set must be exactly the same as the current string in the current CU in the 2-dimensional shape and the path of the scan mode.
  • the height of the two-dimensional area formed by the reference string and the current string is equal to the height of the current coded block or decoded block.
  • the basic copy path shape pattern 4 is a copy path shape pattern of the horizontal path 2-dimensional conformal copy.
  • the basic copy path shape pattern 4 is the dual mode of the above-described basic copy path shape pattern 3.
  • the reconstructed reference pixel sample set retains the 2-dimensional arrangement inherent to the original image plane, while in the current CU, the samples are arranged horizontally by horizontal scanning and from left to right within 1 line. arrangement.
  • searching or copying a reference string among the reconstructed reference pixel sample sets in the current CU, the current sample is moved from left to right in a horizontal scanning manner, after one line of scanning and copying is completed, and then scanning and copying adjacent to the lower side One line.
  • the reference string found in the reconstructed reference pixel sample set must be exactly the same as the current string in the current CU in the 2-dimensional shape and the path of the scan mode.
  • the width of the two-dimensional area formed by the reference string and the current string is equal to the width of the current coding block or the decoded block.
  • the widths of the reference string and the current string are 1, 2, 3, ..., W samples.
  • the index or index run of the palette encoded or decoded with it also uses the same horizontal or vertical scan path shape.
  • the decoding method and apparatus of the embodiment of the present invention first parses the sequence or the copy path shape pattern adopted by the image or the CU from the code stream data when decoding the code stream data of the current decoding block (as described above).
  • One of the path shape patterns is copied, and then one index and/or index run and/or reference string and/or reference rectangle and/or reference microblock and/or reference strip copy parameters are retrieved from the code stream data.
  • the decoding work is based on calculating an index of one or more consecutive positions according to the palette parameter, and using an index to obtain a corresponding pixel sample from the palette, and The value of the pixel sample value is directly or indirectly assigned to the current decoded pixel of one or more consecutive positions, or the reconstructed reference pixel sample set is calculated from the position of the current decoded sample and the copy parameter according to the copy path shape pattern.
  • all CUs can use the same copy path shape mode.
  • the decoder only needs to parse out the copy path shape pattern of the image from the corresponding image parameter set or header information of one frame of image, without requiring each CU to parse which copy path the CU uses.
  • Shape mode The encoder also only needs to write the copy path shape mode directly or indirectly in the corresponding image parameter set or header information of one frame of image. In a video sequence, the same copy path shape mode can be used for all images and all CUs.
  • the decoder only needs to parse out the copy sequence shape pattern of the sequence from the corresponding sequence parameter set or header information of a sequence, without requiring each image and each CU to parse the image, the CU.
  • the encoder also only needs to write the copy path shape pattern directly or indirectly in the corresponding sequence parameter set or header information of a sequence.
  • Some CUs can also be subdivided into several sub-areas (such as PU), and each sub-area (such as PU) adopts different copy path shape patterns.
  • a palette parameter and a plurality of copy parameters are mixed, collectively referred to as a palette/copy parameter: a palette parameter, a copy parameter of a reference string, a reference rectangle Copy parameters, copy parameters of reference microblocks, copy parameters of reference strips; one or more palette/copy parameters in the stream data have a direct (including in the stream) or indirectly (including from the encoding) Or the pattern identification code obtained by other information in the decoding process, used to directly or indirectly indicate whether the subsequent palette/copy parameter is a palette parameter or a copy parameter of a reference string or a copy parameter of a reference rectangle or a reference
  • the copy parameter of the microblock is also the copy parameter of the reference strip.
  • palette/copy parameters mixed in the code stream data of a sub-area of a CU or a CU, there are three kinds of palette/copy parameters mixed: palette parameter, copy parameter of reference string, copy of reference rectangle Parameter; one or more palette/copy parameters in the stream data are preceded by a pattern identifier that is directly (including in the stream) or indirectly (including from other information in the encoding or decoding process). Used to directly or indirectly indicate whether the subsequent palette/copy parameter is a palette parameter or a copy parameter of a reference string or a copy parameter of a reference rectangle.
  • palette/copy parameters mixed in the code stream data of a sub-area of a CU or a CU.
  • a palette parameter a copy parameter of a reference string
  • a code stream data a code stream data.
  • One or more of the palette/copy parameters are preceded by a direct (including in the stream) or between
  • the pattern identification code (including the information obtained from other information in the encoding or decoding process) is used to directly or indirectly indicate whether the subsequent palette/copy parameter is a palette parameter or a copy parameter of the reference string.
  • palette/copy parameters in the code stream data of a sub-area of a CU or a CU, there are two kinds of palette/copy parameters: a palette parameter, a copy parameter of a reference rectangle, and a code stream data.
  • One or more palette/copy parameters are preceded by a pattern identifier directly (including in the stream) or indirectly (including from other information in the encoding or decoding process) for direct or indirect Indicates whether the palette/copy parameter that follows is the palette parameter or the copy parameter of the reference rectangle.
  • the first category mixed with three palettes / copy parameters: palette parameters, copy parameters of the reference string, sub-regions of the CU or CU of the copy parameters of the reference rectangle;
  • the second category mixed with two palette / copy parameters: the copy parameters of the reference string, the sub-region of the CU or CU of the copy parameter of the reference rectangle;
  • the third category mixed with two palette / copy parameters: palette parameters, copy parameters of the reference string CU or sub-region of CU;
  • the fourth category mixed with two palette / copy parameters: palette parameters, reference to the rectangular copy parameters of the CU or sub-region of the CU;
  • a direct or indirect pattern identification code is used to directly or indirectly indicate one of the following situations:
  • Case 1 The sub-areas of the above four types of CUs or CUs exist in the current picture and its code stream data: sub-areas of the first class, the second class, the third class, the fourth class CU or the CU;
  • Case 2 There are sub-areas of three types of CUs or CUs in the above four categories in the current image and its code stream data: sub-areas of class 1, class 2, class 3 CU or CU;
  • Case 3 There are three sub-areas of the above four types of CUs or CUs in the current image and its code stream data: Class 1, Class 2, Class 4 CU or sub-region of CU;
  • Case 4 There are sub-areas of three types of CUs or CUs in the above four categories in the current image and its code stream data: sub-areas of the CU or CU of the first class, the third class, the fourth class;
  • Case 5 There are sub-areas of three types of CUs or CUs in the above four categories in the current image and its code stream data: sub-areas of the CU or CU of the second class, the third class, the fourth class;
  • Case 6 There are sub-areas of two types of CUs or CUs in the above four categories in the current image and its code stream data, such as sub-areas of CUs or CUs of Class 1 and Class 3, such as Class 2 and Class 3 a sub-region of a CU or CU of the class;
  • Case 7 There are sub-regions of a certain type of CU or CU of the above four classes in the current image and its code stream data, such as a sub-region of a CU or CU of the first class, such as a sub-region of a CU or CU of the second class , for example, a sub-area of a CU or CU of class 3, such as a sub-area of a CU or CU of class 4;
  • a direct or indirect pattern identification code is used to directly or indirectly indicate one of the following situations:
  • Case 8 The sub-areas of the above four types of CUs or CUs exist in the sequence and its code stream data: sub-areas of the first class, the second class, the third class, the fourth class CU or CU;
  • Scenario 9 There are sub-areas of three types of CUs or CUs in the above four categories in the sequence and its code stream data: sub-areas of Class 1, Class 2, Class 3 CU or CU;
  • Case 10 There are sub-areas of three types of CUs or CUs in the above four categories in the sequence and its code stream data: sub-areas of the CU or CU of the first class, the second class, the fourth class;
  • Scenario 11 There are sub-areas of three types of CUs or CUs in the above four categories in the sequence and its code stream data: sub-areas of Class 1, Class 3, Class 4 CU or CU;
  • Case 12 There are sub-regions of the three types of CUs or CUs in the above four classes in the sequence and its code stream data: sub-regions of the CU or CU of the second class, the third class, the fourth class;
  • Scenario 13 There are sub-areas of two types of CUs or CUs in the above four categories in the sequence and its code stream data, such as sub-areas of CUs or CUs of Class 1 and Class 3, such as Class 2 and Class 3 Sub-area of the CU or CU;
  • a sub-area of a certain type of CU or CU of the above four types exists in the sequence and its code stream data, for example, a sub-area of the CU or CU of the first type, for example, a sub-area of the CU or CU of the second type, For example, a sub-area of a CU or CU of class 3, such as a sub-area of a CU or CU of class 4;
  • the terms used in the embodiments of the present invention may also be represented by other terms derived from physics or mathematics.
  • the copy position may also use one of the following aliases: matching position, position, distance, relative distance, displacement amount, displacement vector, movement Volume, motion vector, offset, offset vector, block vector, string vector, compensation amount, compensation, linear address, address, 2D coordinates, 1D coordinates, coordinates, index, index, and so on.
  • the copy length can also be referred to as one of the following aliases: copy stroke, copy number, copy count, copy run, match stroke, match number, match count, match run, length, stroke, number, count, run, etc. Wait.
  • String copying is also known as string matching
  • rectangular copying is also called rectangular matching
  • point copying is also called point matching.
  • a search and encoding module for palette and/or string copy and/or rectangle copy mixing palette and copy encoding for input pixel samples and/or string copy and/or rectangle copy mixing, Performing run-length encoding on the index, searching for the optimal reference string and/or the optimal reference rectangle among the reconstructed reference pixel sample sets, and generating copy parameters and/or references of the palette parameters and/or reference strings Rectangular copy parameters and/or no reference pixel samples;
  • Reconstructing reference pixel sample set module used to temporarily store reconstructed pixel samples and reference pixel samples for subsequent encoding methods, including block copy encoding, microblock copy encoding, strip copy encoding, and string copying. Coding, rectangular copy coding, copy coding of multiple types of copy modes, prediction coding, reference pixel samples for reconstruction, reconstruction; the input of the reconstructed reference pixel sample set is reconstructed samples The output is a reference sample, and the reference sample can be equivalent to the reconstructed sample, or can be various variants of the reconstructed sample, such as pixel clustering, color quantization, numerical quantization, vector quantization, denoising, filtering, Samples processed by feature extraction or such as color format conversion, permutation conversion, frequency domain conversion, spatial domain mapping, DPCM, first-order or higher-order difference operation, indexing, etc., or multi-processed and transformed pixels Value variant, when the reference sample value is not equal to the reconstructed sample value, the reference sample value can be generated once and then temporarily stored for later use
  • Palette module temporarily store a number of pixels, that is, palette pixels
  • the remaining modules for encoding, reconstructing, and generating video stream data performing the remaining encoding and reconstruction operations, and performing various common techniques on input pixels, various parameters, and variables, such as intra prediction, inter prediction, and block. Copy, microblock copy, strip copy, transform, quantization, inverse transform, inverse quantization, compensation corresponding to prediction residual and replica residual (ie, inverse operation of residual operation), prediction and residual, DPCM, one Order and higher order difference, mapping, run, index, deblocking filtering, sample adaptive offset, coded and reconstructed operations, and entropy encoding operations; the output of this step is reconstructed pixels (including Fully reconstructed pixels and partially reconstructed pixels of different stages) and encoded results with palette and/or string copy and/or rectangular copy, encoding results of various other copy encoding methods and video codes of other encoding results Stream; the video stream is the output of the present encoding method, including all the syntax elements required for decoding and reconstruction of the corresponding decoding method, including palette and/or string
  • Palette/string copy/rectangular copy mixed copy decoding module The function of this module is to copy the palette parameters and/or reference string copy parameters and/or reference rectangle copy parameters obtained from the code stream. And/or without reference pixel samples, performing a palette and/or string copy and/or rectangle copy mixing decoding operation, ie in accordance with known copy path shape patterns, in the case of reference strings and/or reference rectangles, Reconstructing a reference string and/or a reference rectangle at a position specified by a copy parameter of the reference string and/or a copy parameter of the reference rectangle (including a copy position) among the reference pixel sample sets, the size of which is also determined by the copy parameter of the reference string And/or the value of the pixel sample specified by the copy parameter (including the copy size) of the reference rectangle is directly or indirectly assigned to the current string and/or the current rectangle, and in the case of the palette, the operation including the run length decoding is performed. , get one or several indexes, and straighten the values of the pixels of the palette according to the index
  • Reconstructing reference pixel sample set module used to temporarily store reconstructed pixel samples and reference pixel samples for subsequent various decoding methods, including block copy decoding, microblock copy decoding, strip copy decoding, and string copy Reference pixel samples for decoding, rectangular copy decoding, multiple types of copy mode hybrid copy decoding, predictive decoding, decoding and reconstruction; the input of the reconstructed reference pixel sample set is a reconstructed sample and the output is
  • the reference sample may be equivalent to the reconstructed sample, or may be various variants of the reconstructed sample, such as pixel clustering, color quantization, numerical quantization, vector quantization, denoising, filtering, feature extraction.
  • sample values processed or processed by color format conversion, permutation conversion, frequency domain conversion, spatial domain mapping, DPCM, first-order or higher-order difference operation, indexing, or the like, or pixel values of multiple processing and transformation Body when the reference sample value is not equal to the reconstructed sample value, the reference sample value can be generated once and then temporarily stored for later use when needed, or can be generated immediately when needed, or it can be Combination generating methods;
  • Palette module temporarily store a number of pixels, that is, palette pixels.
  • Embodiments of the present invention are applicable to encoding and decoding of overlay format images.
  • the pixels of the current CU and the pixels of the reconstructed reference pixel sample set are arranged in a stacked format.
  • Reference block, reference microblock, reference strip, reference string, reference rectangle, reference point and current block, current microblock, current strip, current string, current rectangle, current point are arranged in a stack format. That is, in a single pixel formed by a single cross-stacking of three component samples, a sample set of three component samples and a single cross-arrangement is formed. Search or copy reference blocks among such reconstructed reference pixel sample sets, reference microblocks, reference strips, reference strings, reference rectangles, and the like.
  • Embodiments of the present invention are equally applicable to encoding and decoding of component plane format images.
  • the pixels of the current CU and the pixels of the reconstructed reference pixel sample set are all decomposed into three component planes, one component of all pixels forming a plane.
  • Reference block, reference microblock, reference strip, reference string, reference rectangle, reference point and current block, current microblock, current strip, current string, current rectangle, current point are all decomposed into 3 component planes, one component of all pixels Form a plane.
  • a reference block, reference microblock, Reference strip, reference string, reference rectangle, reference point and current block, current microblock, current strip, current string, current rectangle, current point contain only samples of one component.
  • Block copying, microblock copying, strip copying, string copying, rectangular copying, and point copying are all performed in three planes. However, in order to reduce the copy parameters, and because the three planes have great correlation, the same copy parameters can be shared by the three planes.
  • Copy coding and decoding of a component plane format image if applied to a case where the chrominance components U and V are downsampled, such as a YUV 4:2:2 pixel color format and a YUV 4:2:0 pixel color format, then
  • the copy parameters of the Y plane are applied to the U plane and the V plane, the copy parameters are transformed and adjusted according to the proportion of the downsampling.
  • the reconstructed reference pixel sample set can be divided into several subsets, and the subset of pixels can have mutually different component arrangement formats, color formats, and pixel sample arrangement.
  • the reconstructed reference pixel sample set can be divided into several subsets, and the pixels of the subset can also be completely reconstructed pixels or phased reconstructed pixels of respective unique reconstruction stages of mutually different degrees.
  • Example 1 Optional implementation of a mixture of palette and copy mode 1
  • a coded block or a decoded block or a code stream data of a PU or CU or a CTU or LCU there are three kinds of palette/copy parameters mixed: a palette parameter, a copy parameter of a reference string, a copy parameter of a reference rectangle; Perform encoding or decoding of three palette/copy modes: palette, string copy, rectangle copy.
  • palette/copy parameters mixed a palette parameter, a copy parameter of a reference string; a mixture of two palettes / Coding or decoding of copy mode: palette, string copy.
  • Palette/Copy Parameter 1 Palette/Copy Parameter 2
  • Palette/Copy Parameter 3 Palette/Copy Parameter 3
  • Palette/Copy Parameter i Complex Palette/System Parameters i+1, ...
  • the palette/copy parameters consist of fields of several palette/replication sub-parameters, and the palette/replication sub-parameter fields include:
  • Palette/Replicate sub-parameter field 1 palette/copy type, indicates whether the palette/copy mode is a palette or a string copy or a rectangle copy or a micro block copy or a bar copy or no reference pixel;
  • Palette/Replication sub-parameter field 2 Index or copy position, indicating the position of the index or reference pixel of the palette within the reconstructed reference pixel sample set;
  • Palette/Replicate sub-parameter field 3 Copy size, indicating the length of the index run or the number of pixels of the current string or the current rectangle;
  • Palette/Replicate sub-parameter field 4 No reference pixels, indicating the value of no reference pixels;
  • palette/copy parameter some palette/replication sub-parameter fields can be null.
  • the code stream data includes a direct representation or an indirect representation (an example of an indirect representation: after first or higher order differential coding and/or predictive coding and/or matching coding and/or mapping coding and/or transform coding and/or quantization coding and/or Or the index code and / or run length coding and / or binarization coding and / or entropy coding and then expressed) the following palette / copy sub-parameter domain syntax elements:
  • Ti, Pi, Si, Ni are the palette/copy type of the palette/copy parameter i, the index or copy position, the copy size, and no reference pixels, respectively; the syntax of the palette/copy subparameter field
  • the order in which the elements are placed in the code stream is not unique, and any predetermined and reasonable order may be employed; a syntax element may also be split into several parts, which may be placed in the same place in the code stream. , can also be placed in different places in the code stream; several syntax elements can also Merged into a syntax element; some syntax elements may not exist in the code stream data of a certain palette/copy parameter; a syntax element may not exist directly in the code stream data but from other encoding or decoding. Exported in a parameter or variable; multiple syntax elements that represent the same palette/replica sub-parameter domain can be placed in the same place in the code stream, such as:
  • T1, T2 Ti..., P1, P2, ..., ..., S1, S2, ..., Si..., N1, N2, ... Ni...
  • the replica sub-parameter domain includes a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain
  • the copy position Pi or its variant comprises a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain;
  • the syntax elements in the code stream corresponding to the copy location Pi or its variant comprise one of the following forms:
  • the syntax element of the copy position Pi of a reference string or its variant: d (a component, such as a positional linear address)
  • the copy position Pi or its variant comprises a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain;
  • the syntax elements in the code stream corresponding to the copy location Pi or its variant comprise one of the following forms:
  • the copy size Si or its variant comprises a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain;
  • the syntax elements in the code stream corresponding to the replica size Si or its variants comprise one of the following forms:
  • the copy size of a reference string Si or its variant corresponds to the syntax element: r (one component)
  • the copy size of a reference string Si or its variant corresponds to the syntax element: r[0], r[1] (two components)
  • the copy size of a reference string or its variant corresponds to the syntax elements: r[0], r[1], r[2] (three components)
  • the copy size Si or its variant comprises a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain;
  • the syntax elements in the code stream corresponding to the replica size Si or its variants comprise one of the following forms:
  • the copy size of a reference rectangle or its variant corresponds to the syntax element: r (one component)
  • the copy size of a reference rectangle or its variant corresponds to the syntax element: r[0], r[1] (two components)
  • the copy size of a reference rectangle or its variant corresponds to the syntax elements: r[0], r[1], r[2] (three components)
  • the non-reference pixel Ni or its variant includes a single-component sub-parameter domain or a two-component sub-parameter domain or a three-component sub-parameter domain;
  • the syntax element in the code stream corresponding to the non-reference pixel Ni or its variant includes one of the following forms :
  • a coded block or decoded block of a codestream or a PU or CU or CTU or LCU partial stream segment includes all or part of a syntax element loaded with the following parameters or variants thereof:
  • the first type of mode (such as codec mode)
  • the second type of mode (such as copy path shape mode)
  • the third type of mode (such as pixel sample arrangement),
  • the fourth type of mode (such as 2-4 different parameter coding modes, different parameter binarization and/or entropy coding modes),
  • Palette header information (eg, the number of pixels in the palette and the value of the pixel or the multiplexing rule),
  • Palette/copy mark bit 1 sample subset number 1 or empty, (index or copy position 1, copy Size 1) or no reference value 1 or empty,
  • Palette/copy mark bit 2 sample subset number 2 or empty, (index or copy position 2, copy size 2) or no reference value 2 or empty,
  • More palette/copy mark bits sample subset number or null, (index or copy position, copy size) or no reference or empty,
  • Palette/copy mark bit N sample subset number N or empty, (index or copy position N, copy size N) or no reference value N or empty,
  • any one of the syntax elements may also be split into several parts, and the parts may be placed in a centralized manner.
  • the same place in the code stream can also be placed in different places in the code stream; any number of syntax elements can also be combined into one syntax element; any syntax element may not exist in a coding block or decoding block or PU or CU or In the code stream segment of the CTU or LCU;
  • the parameters of the palette/copy mark bit, index or copy position, copy size, and no reference pixel sample in the stream segment may be the parameters themselves, or may be predicted, matched, and encoded.
  • Quantization coding, DPCM, first-order and high-order differential coding, mapping coding, run-length coding, index coding, and other common techniques are encoded variants;
  • the copy position, the copy size, and the no reference pixels may have only one component, or two components, or may be further divided into three components or even more components.
  • the sample subset number can be part of the copy location, or there is only one subset of samples, in which case the sample subset number is empty.
  • the reconstructed reference pixel samples include the following component arrangement formats, color formats, and pixel sample values:
  • Stack format YUV or GBR color format, vertical scanning 1D string arrangement in LCU or CU, or
  • Stack format YUV or GBR color format, LCU or CU horizontal scanning 1D string arrangement, or
  • Stacking format YUV or GBR color format, 2D arrangement inherent to the image, or
  • the reference string and the current string may have mutually overlapping sample positions, that is, the copy position D and the copy length L of the reference string satisfy the following relationship: D ⁇ L; at this time, the L samples of the current string are the first of the reference strings.
  • the repetition of the D samples between the sample and the first sample of the current string that is, the D samples before the first sample of the current string, that is:
  • the sample P before the current string is the first sample of the current string (ie, the current sample) is repeated L times: PPP...PP, that is, the L samples of the current string are all P; this case is equivalent to repeating L+1 times with the sample P before the current sample; if P is in the second reference buffer, its copy position in the second reference buffer is D2, then this P can be
  • the current string is the two samples P1P2 before the current sample repeat L/2 times: P1P2P1P2...P1P2, that is, the L samples of the current string are all repetitions of P1P2;
  • the current string is the same as the two samples P1P2 before the current sample. (L-1)/2 times and then add P1: P1P2P1P2...P1P2P1, that is, the L samples of the current string are all P1P2 repetitions, and finally P1;
  • the current string is the repetition of the three samples P1P2P3 before the current sample until the length reaches L;
  • the current string is the repetition of the four samples P1P2P3P4 before the current sample until the length reaches L;
  • the matching current string is the D samples P1P2...PD-1PD before the current sample until the length reaches L;
  • Reference pixel samples are examples of variants of reconstructed pixel samples
  • the reference pixel sample is a sample of the reconstructed pixel sample subjected to numerical quantization and inverse quantization; or
  • the reference pixel sample is a sample of the reconstructed pixel sample subjected to numerical quantization and inverse quantization operation, and is not changed after being calculated once; or
  • the reference pixel sample is a sample of the reconstructed pixel sample subjected to numerical quantization and inverse quantization operations, which are calculated using encoded or decoded quantization parameters; or
  • the reference pixel samples are samples of the reconstructed pixel samples subjected to numerical quantization and inverse quantization operations, which are calculated using the encoded or decoded quantization parameters of the CU in which the reference pixel samples are located; or
  • the reference pixel sample is a sample of the reconstructed pixel sample subjected to numerical quantization and inverse quantization operations,
  • the numerical quantization and inverse quantization operations are calculated using the encoding or decoding quantization parameters of the CU in which the reference pixel samples are located, and are not changed after the calculation once; or
  • the reference pixel samples are samples of the reconstructed pixel samples subjected to numerical quantization and inverse quantization operations, which are calculated using the encoding or decoding quantization parameters of the current CU; or
  • the reference pixel sample is a sample of the reconstructed pixel sample subjected to numerical quantization and inverse quantization operations, which are calculated using the encoding or decoding quantization parameter of the current CU, and each encoding or decoding of a CU is to be re Calculated once; or
  • the reference pixel sample is a color quantized sample of the reconstructed pixel sample
  • the reference pixel sample is a color quantized sample of the reconstructed pixel sample, the color quantization being calculated using a palette obtained by color-based pixel clustering; or
  • the reference pixel sample is a color quantized sample of the reconstructed pixel sample, the color quantization using a color-based pixel cluster associated with the coded block or decoded block or PU or CU or CTU or LCU of the reference pixel sample. Get the palette to calculate; or
  • the reference pixel sample is a color quantized sample of the reconstructed pixel sample, the color quantization using a color-based pixel cluster associated with the coded block or decoded block or PU or CU or CTU or LCU of the reference pixel sample. Obtain the palette to calculate, no longer change after calculating once; or
  • the reference pixel sample is a color quantized sample of the reconstructed pixel sample, the color quantization using a color-based pixel cluster associated with the coded block or decoded block or PU or CU or CTU or LCU of the reference pixel sample.
  • the obtained dynamic update part of the content of the palette is calculated, after calculation once, no longer changes; or
  • the reference pixel samples are color-quantized samples of reconstructed pixel samples that are color-coded using a color-based pixel cluster associated with the current coded block or decoded block or PU or CU or CTU or LCU. Board to calculate; or
  • the reference pixel samples are color-quantized samples of reconstructed pixel samples that are color-coded using a color-based pixel cluster associated with the current coded block or decoded block or PU or CU or CTU or LCU.
  • the board calculates, each encoding or decoding a code block or decoding block or PU or CU or CTU or LCU, to be recalculated; or
  • the reference pixel sample is a color-quantized sample of the reconstructed pixel sample, and the color quantization is performed.
  • a global color-based pixel clustering is obtained from the palette to calculate.
  • the sample of the reconstructed reference pixel sample set and the current CU sample are arranged into a one-dimensional array according to a predetermined manner, and each sample in the array has a linear address, and the copy position of the current string is a corresponding reference.
  • the linear address of the first sample of the string minus the linear address of the first sample of the current string; the corresponding syntax element of the copy position in the compressed data bitstream is the entropy encoded syntax of the copy position Element; the copy position is usually a univariate parameter, ie only 1 component; or
  • the sample of the reconstructed reference pixel sample set and the current CU sample are arranged into a one-dimensional array according to a predetermined manner, and each sample in the array has a linear address, and the copy position of the current string is a corresponding reference.
  • the linear address of the first sample of the string minus the linear address of the first sample of the current string;
  • the corresponding syntax element in the compressed data bitstream is the copy location and other copy locations Arithmetic conversion and/or mapping operation and/or string matching coding and/or first-order or higher-order prediction and difference operations followed by entropy-encoded syntax elements;
  • the copy position is usually a univariate parameter, ie only 1 component ;or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are arranged into a 2-dimensional array according to a predetermined manner, and each sample in the array has a plane coordinate, and the copy position of the current string is a corresponding reference.
  • the plane coordinate of the first sample of the string minus the plane coordinate of the first sample of the current string; the corresponding syntax element of the copy position in the compressed data bitstream is the entropy encoded syntax of the copy position Element; the copy position is usually a two-variable parameter that has 2 components; or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are arranged into a 2-dimensional array according to a predetermined manner, and each sample in the array has a plane coordinate, and the copy position of the current string is a corresponding reference.
  • the corresponding syntax element in the compressed data bitstream is the copy location and other copy locations Entropy-encoded syntax elements after permutation conversion and/or mapping operations and/or string matching encoding and/or first-order or higher-order prediction and difference operations;
  • the copy location is usually one Two bivariate parameters have 2 components; or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are first divided into several regions according to a predetermined manner, and the samples in each region are arranged into a 2-dimensional array, each of the regions and the array.
  • the value has an area number and a plane coordinate.
  • the copy position of the current string is the area number and the plane coordinate of the first sample of the corresponding reference string minus the area number and plane of the first sample of the current string. Coordinates; the corresponding syntax element in the compressed data bitstream is an entropy encoded syntax element of the copy location; the copy location is typically a three variable parameter having 3 components; or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are first divided into several regions according to a predetermined manner, and the samples in each region are arranged into a 2-dimensional array, each of the regions and the array.
  • the value has an area number and a plane coordinate.
  • the copy position of the current string is the area number and the plane coordinate of the first sample of the corresponding reference string minus the area number and plane of the first sample of the current string. Coordinates; the corresponding syntax element in the compressed data bitstream is an arrangement conversion and/or mapping operation and/or string matching coding and/or first or higher order prediction sum of the copy position and other copy positions.
  • An entropy-encoded syntax element after the difference operation; the copy position is usually a three-variable parameter having three components; or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are first divided into several regions according to a predetermined manner, and the samples in each region are arranged into a one-dimensional array, each of the regions and the array.
  • the value has an area number and a linear address.
  • the copy position of the current string is the area number and linear address of the first sample of the corresponding reference string minus the area number and linearity of the first sample of the current string.
  • An address; the corresponding syntax element in the compressed data bitstream is a syntax element entropy encoded by the copy location; the copy location is typically a bivariate parameter having 2 components; or
  • the sample of the reconstructed reference pixel sample set and the sample of the current CU are first divided into several regions according to a predetermined manner, and the samples in each region are arranged into a one-dimensional array, each of the regions and the array.
  • the value has an area number and a linear address.
  • the copy position of the current string is the area number and linear address of the first sample of the corresponding reference string minus the area number and linearity of the first sample of the current string.
  • the corresponding syntax element of the copy location in the compressed data bitstream is an arrangement conversion and/or mapping operation and/or string matching of the copy location and other copy locations Encoding and/or first-order or higher-order prediction and difference operations followed by entropy-encoded syntax elements;
  • the copy position is usually a bivariate parameter with 2 components.
  • the copy length L of the current string is a univariate parameter; the corresponding syntax element in the compressed data bitstream is a syntax element of the copy length univariate parameter entropy encoded; or
  • the copy length L of the current string is a univariate parameter; the corresponding syntax element in the compressed data bit stream is a univariate parameter of the copy length and a univariate parameter of other copy lengths are arranged and/or converted Entropy encoded syntax elements after mapping operations and/or string matching encoding and/or first or higher order prediction and difference operations; or
  • the variable parameters are entropy encoded syntax elements after permutation and/or mapping operations and/or string matching encoding and/or first or higher order prediction and difference operations; or
  • the bivariate parameters of the copy length and the bivariate parameters of other copy lengths are entropy-encoded syntax elements after permutation conversion and/or mapping operations and/or string matching encoding and/or first-order or higher-order prediction and difference operations.
  • the corresponding syntax element in the compressed data bitstream is the syntax element of the non-reference pixel entropy encoded
  • the corresponding syntax elements in the compressed data bitstream are the non-reference pixels and the other non-reference pixels are subjected to permutation and/or mapping operations and/or string matching encoding and/or first or higher order prediction and difference.
  • the corresponding syntax element in the compressed data bitstream is a syntax element that is entropy encoded after the non-reference pixel is quantized;
  • the corresponding syntax elements in the compressed data bitstream are the non-reference pixels and the other non-reference pixels are subjected to permutation and/or mapping operations and/or string matching encoding and/or first or higher order prediction and difference.
  • the quantized operation is followed by the entropy-encoded syntax element.
  • the image processing method and apparatus provided by the above embodiments can fully exploit and utilize the characteristics of each coded image area in the image to improve the image compression effect.
  • each module/unit in the above embodiment may be implemented in the form of hardware, for example, by implementing an integrated circuit to implement its corresponding function, or may be implemented in the form of a software function module, for example, executing a program stored in the memory by a processor. / instruction to achieve its corresponding function.
  • the invention is not limited to any specific form of combination of hardware and software.
  • the above technical solution can fully exploit and utilize the characteristics of each coded image region in the image to improve the image compression effect.

Landscapes

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

Abstract

一种图像编码方法,该方法包括:确定编码块的编码方式;对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用多种编码方式中的一种进行编码。还公开了一种图像解码方法,该方法包括:解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。上述技术方案能够充分发掘和利用图像中各编码图像区域的特点,提高图像压缩效果。

Description

图像编码方法、解码方法、编码装置和解码装置 技术领域
本文涉及但不限于数字视频压缩编解码技术领域,尤其涉及的是一种图像编码方法、图像解码方法、图像编码装置和图像解码装置。
背景技术
随着以远程桌面为典型表现形式的新一代云计算与信息处理模式及平台的发展和普及,多台计算机之间、计算机主机与智能电视、智能手机、平板电脑等其他数字设备之间及各种各类数字设备之间的互联已经成为现实并日趋成为一种主流趋势。这使得服务器端(云)到用户端的实时屏幕传输成为当前的迫切需求。由于需要传输的屏幕视频数据量很大,以平板电脑2048x1536像素分辨率且60帧/秒刷新率的24位真彩色屏幕图像为例,需要传输的数据达每秒2048x1536x60x24=4320兆比特,如此多的数据要想在现实的网络条件下实现实时传输是不可能的,因此对于计算机屏幕图像的有效的数据压缩必不可少。
充分利用计算机屏幕图像的特点,对计算机屏幕图像进行超高效率的压缩,也是正在制定中的最新国际视频压缩标准HEVC(High Efficiency Video Coding)和其他若干国际标准、国内标准、行业标准的一个主要目标。
屏幕图像的数字视频信号的自然形式是图像的序列。一帧图像通常是由若干像素组成的矩形区域,如果一个数字视频信号每秒有50帧图像,那么一段30分钟的数字视频信号就是一个由30x60x50=90000帧图像组成的视频图像序列,有时也简称为视频序列或序列。对数字视频信号进行编码就是对一帧一帧图像进行编码。在任一时刻,正在编码中的那一帧图像称为当前编码图像。同样,对数字视频信号的压缩后的视频码流(简称码流也称为比特流)进行解码就是对一帧一帧图像的码流进行解码。在任一时刻,正在解码中的那一帧图像称为当前解码图像。当前编码图像或当前解码图像都统称为当前图像。
在几乎所有视频图像编码的国际标准如MPEG-1/2/4,H.264/AVC以及HEVC中,对一帧图像进行编码时,把一帧图像划分成若干块MxM像素的子图像,称为“编码单元(Coding Unit简称CU)”,以CU为基本编码单位,对子图像一块一块进行编码。常用的M的大小是4,8,16,32,64。因此,对一个视频图像序列进行编码就是对各帧图像的各个编码单元即CU依次一个一个CU进行编码。在任一时刻,正在编码中的CU称为当前编码CU。同样,对一个视频图像序列的码流进行解码也是对各帧图像的各个CU依次一个一个CU进行解码,最终重构出整个视频图像序列。在任一时刻,正在解码中的CU称为当前解码CU。当前编码CU或当前解码CU统称为当前CU。
为适应一帧图像内各部分图像内容与性质的不同,有针对性地进行最有效的编码,一帧图像内各CU的大小可以是不同的,有的是8x8,有的是64x64,等等。为了使不同大小的CU能够无缝拼接起来,一帧图像通常先划分成大小完全相同具有NxN像素的“最大编码单元(Largest Coding Unit简称LCU)”,然后每个LCU再进一步划分成多个大小不一定相同的CU。例如,一帧图像先划分成大小完全相同的64x64像素的LCU(N=64)。其中,某个LCU由3个32x32像素的CU和4个16x16像素的CU构成,而另一个LCU由2个32x32像素的CU、3个16x16像素的CU和20个8x8像素的CU构成。由于一个LCU内的各个CU呈树状结构,LCU的另一个名称是编码树单元(Coding Tree Unit简称CTU)”。在HEVC国际标准中,LCU与CTU是同义词。
CU也可以再进一步被划分成若干子区域。子区域包括预测单元(PU)、变换单元(TU)、或不对称划分(AMP)。
编码块或解码块是指一帧图像中对其施行编码或解码的一个区域。
一个彩色像素通常由3个分量(component)组成。最常用的两种像素表现格式,也即像素色彩格式(pixel color format)是由绿色分量、蓝色分量、红色分量组成的GBR色彩格式和由一个亮度(luma)分量及两个色度(chroma)分量组成的YUV色彩格式。通称为YUV的色彩格式实际包括多种色彩格式,如YCbCr色彩格式。因此,对一个CU进行编码时,可以把一个CU分 成3个分量平面(G平面、B平面、R平面或Y平面、U平面、V平面),对3个分量平面分别进行编码;也可以把一个像素的3个分量捆绑组合成一个3元组,对由这些3元组组成的CU整体进行编码。前一种像素及其分量的排列方式称为图像(及其CU)的平面格式(planar format),而后一种像素及其分量的排列方式称为图像(及其CU)的叠包格式(packed format)。像素的GBR色彩格式和YUV色彩格式都是像素的3分量表现格式。
除了像素的3分量表现格式,像素的另一种常用的表现格式是调色板索引表现格式。在调色板索引表现格式中,一个像素的数值也可以用调色板的索引来表现。调色板空间中存储了需要被表现的像素的3个分量的数值或近似数值,调色板的地址被称为这个地址中存储的像素的索引。一个索引可以表现像素的一个分量或3个分量。调色板可以是一个或多个。在多个调色板的情形,一个完整的索引实际上由调色板编号和该编号的调色板的索引两部分组成。像素的索引表现格式就是用索引来表现这个像素。像素的索引表现格式也被称为像素的索引颜色(indexed color)或仿颜色(pseudo color)表现格式,或者常常被直接称为索引像素(indexed pixel)或仿像素(pseudo pixel)或像素索引或索引。索引有时也被称为指数。把像素用其索引表现格式来表现也称为索引化或指数化。
其他的常用的相关技术的像素表现格式包括CMYK表现格式和灰度表现格式。
YUV色彩格式又可根据是否对色度分量进行下采样再细分成若干种子格式:1个像素由1个Y分量、1个U分量、1个V分量组成的YUV4:4:4像素色彩格式;左右相邻的2个像素由2个Y分量、1个U分量、1个V分量组成的YUV4:2:2像素色彩格式;左右上下相邻按2x2空间位置排列的4个像素由4个Y分量、1个U分量、1个V分量组成的YUV4:2:0像素色彩格式。一个分量一般用1个8~16比特的数字来表示。YUV4:2:2像素色彩格式和YUV4:2:0像素色彩格式都是对YUV4:4:4像素色彩格式施行色度分量的下采样得到。一个像素分量也称为一个像素样值或简单地称为一个样值。
编码或解码时的最基本元素可以是一个像素,也可以是一个像素分量,也可以是一个像素索引(即索引像素)。作为编码或解码的最基本元素的一 个像素或一个像素分量或一个像素索引(索引像素)通称为一个像素样值,有时也通称为一个像素值,或简单地称为一个样值。
CU是由若干像素值组成的一个区域。CU的形状可以是矩形、正方形、平行四边形、梯形、多边形、圆形、椭圆形及其他各种形状。矩形也包括宽度或高度为一个像素值的退化为线(即线段或线形)的矩形。一帧图像中,各个CU可以具有各不相同的形状和大小。一帧图像中,某些或全部CU可以有互相重叠部分,也可以所有CU都互不重叠。一个CU,可以由“像素”组成,也可以由“像素的分量”组成,也可以由“索引像素”组成,也可以由这3者混合组成,也可以由这3者中之任意2种混合组成。
计算机屏幕图像的一个显著特点是同一帧图像内通常会有很多相似甚至完全相同的像素图样(pixel pattern)。例如,计算机屏幕图像中常出现的中文或外文文字,都是由少数几种基本笔划所构成,同一帧图像内可以找到很多相似或相同的笔划。计算机屏幕图像中常见的菜单、图标等,也具有很多相似或相同的图样。
相关的图像和视频压缩技术中通常采用的编码方式包括:
1)帧内块复制:又称为“帧内块匹配”、或“帧内运动补偿”、或“块复制”、或“块匹配”。块复制编码或解码的基本运算是:从重构参考像素样值集内复制一个预定大小(如64x64或32x32或16x16或8x8或4x4或64x32或16x32或16x4或8x4或4x8像素样值)的参考块,并将所述参考块的数值赋值予当前块。
或“块复制”、或“块匹配”。块复制编码或解码的基本运算是:从重构参考像素样值集内复制一个预定大小(如64x64或32x32或16x16或8x8或4x4或64x32或16x32或16x4或8x4或4x8像素样值)的参考块,并将所述参考块的数值赋值予当前块。
2)帧内微块复制:又称为“帧内微块匹配”、或“微块复制”或“微块匹配”。在微块复制中,把块(如8x8像素样值)分成更精细的微块(如4x2像素样值或8x2像素样值或2x4像素样值或2x8像素样值),微块复制编码或解码的基本运算是:从重构参考像素样值集内复制一个参考微块,并将所 述参考微块的数值赋值予当前微块。
3)帧内线条(简称条)复制:又称为“帧内条匹配”、或“条复制”、或“条匹配”。条是指高度(或宽度)为1的微块,如4x1或8x1或1x4或1x8像素样值的微块。条复制编码或解码的基本运算是:从重构参考像素样值集内复制一个参考条,并将所述参考条的数值赋值予当前条。显然,条复制是微块复制的一种特殊情况。
4)帧内串复制:又称为“帧内串匹配”、或“串复制”、或“串匹配”。这里的串是指把一个任意形状的二维区域内的像素样值排列成一个长度远大于宽度的串(如宽度为1个像素样值而长度为37个像素样值的串,或宽度为2个像素样值而长度为111个像素样值的串,通常但不限于长度是一个独立编码或解码参数而宽度是一个由其他编码或解码参数导出的参数)。串复制编码或解码的基本运算是:从重构参考像素样值集内复制一个参考串,并将所述参考串的数值赋值予当前串。其中,串复制根据串的路径形状又可分为下列子类型:
4a)一维水平扫描串复制
参考串和当前串都是在CTU或CU内按照水平扫描的顺序排列形成的一维像素样值串,具有相等的长度,但这两个串各自形成的二维区域不一定有相同的二维形状。
4b)一维垂直扫描串复制
参考串和当前串都是在CTU或CU内按照垂直扫描的顺序排列形成的一维像素样值串,具有相等的长度,但这两个串各自形成的二维区域不一定有相同的二维形状。
4c)仿二维水平扫描保形等宽串复制(简称仿二维水平串复制)
参考串和当前串具有相等的长度,都是按照水平扫描的顺序排列成完全相同的二维形状,形成的二维区域的宽度与当前编码块或解码块的宽度相等。
4d)仿二维垂直扫描保形等高串复制(简称仿二维垂直串复制)
参考串和当前串具有相等的长度,都是按照垂直扫描的顺序排列成完全 相同的二维形状,形成的二维区域的高度与当前编码块或解码块的高度相等。
4e)二维水平扫描保形变宽串复制(简称二维水平串复制)
参考串和当前串具有相等的长度,都是按照水平扫描的顺序排列成完全相同的二维形状,但形成的二维区域的宽度不一定与当前编码块或解码块的宽度相等,而是不大于当前编码块或解码块的宽度的可变宽度。
4f)二维垂直扫描保形变高串复制(简称二维垂直串复制)
参考串和当前串具有相等的长度,都是按照垂直扫描的顺序排列成完全相同的二维形状,但形成的二维区域的高度不一定与当前编码块或解码块的高度相等,而是不大于当前编码块或解码块的高度的可变高度。
5)帧内矩形复制(又称帧内矩形匹配或矩形复制或矩形匹配)
这里的矩形是指一个用宽度和高度来表征的任意大小的二维区域。矩形复制编码或解码的基本运算是:从重构参考像素样值集内复制一个参考矩形,并将所述参考矩形的数值赋值予当前矩形。参考矩形和当前矩形具有相等的宽度和高度,因而具有完全相同的二维矩形形状。这样的矩形也是一个像素样值串形成的,这个串的长度是矩形的高与宽的乘积,也就是串的长度正好是串所形成的二维区域的宽度的倍数(这个倍数就是这个二维区域的高度),又正好是串所形成的二维区域的高度的倍数(这个倍数就是这个二维区域的宽度)。显然,矩形复制是以上4e)或4f)的一种特殊情况,即串的长度正好是矩形的高与宽的乘积的特殊情况。
相关的图像和视频压缩技术中通常采用的另一种编码(解码)方式是调色板编码(解码)方式。在调色板编码(解码)方式中,首先构造(获取)一个调色板,然后将当前编码块(当前解码块)的部分或全部像素用调色板的索引来表示,再对索引进行编码(解码)。其中,对索引进行编码(解码)的方式包括游程和/或熵编码(解码)。
由于屏幕图像通常有各种不同性质的区域,比如,有的具有比较大的或形状较规则的相似或相同的图样,而有的则具有很小的或形状不规则的相似或相同的图样。而任意一种编码方式都仅适用于某一类性质的编码图像区 域。
对于多种性质的编码图像区域混合的屏幕图像,难以找到一种统一的匹配方式。因此,必须寻求新的编码工具来充分发掘和利用计算机屏幕图像中的编码图像区域特点,提高压缩效果。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供一种图像编码方法、图像解码方法、图像编码装置和图像解码装置,以解决如何能够充分发掘和利用图像中各编码图像区域的特点,提高图像压缩效果的技术问题。
本发明实施例提供了一种图像编码方法,该方法包括:
确定编码块的编码方式;
对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
可选地,该方法还包括下述特点:
所述编码方式包括以下编码方式中的一种或多种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
可选地,该方法还包括下述特点:
所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
可选地,该方法还包括下述特点:
对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,包括:
构造或获取调色板,对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
可选地,该方法还包括下述特点:
对所述编码块使用多种编码方式进行混合编码,包括:
将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
本发明实施例提供了一种图像解码方法,该方法包括:
解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
可选地,该方法还包括下述特点:
所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
可选地,该方法还包括下述特点:
所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
可选地,该方法还包括下述特点:
对所述解码块进行多种解码方式混合的解码,包括:从所述解码块的码流数据中获取像素样值段的参数;
其中,所述参数包括调色板参数和/或复制参数。
可选地,该方法还包括下述特点:
解析所述解码块的码流数据,确定所述解码块的各像素样值段对应的解码方式,包括:
从所述解码块的码流数据中获取像素样值段对应的解码方式的标识码。
可选地,该方法还包括下述特点:
对所述解码块的所述像素样值段采用对应的解码方式进行解码,包括:
在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码。
本发明实施例还提供了一种图像编码装置,该方法包括:
编码方式确定模块,设置为确定编码块的编码方式;
编码模块,设置为对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
可选地,该装置还包括下述特点:
所述编码方式包括以下编码方式中的一种或多种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
可选地,该装置还包括下述特点:
所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
可选地,该装置还包括下述特点:
编码模块,是设置为通过如下方式实现对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码:
对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
可选地,该装置还包括下述特点:
编码模块,设置为对所述编码块使用多种编码方式进行混合编码,包括:
将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
本发明实施例还提供了一种图像解码装置,包括:
解析模块,设置为解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
解码模块,设置为对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
可选地,该装置还包括下述特点:
所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
可选地,该装置还包括下述特点:
所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
可选地,该装置还包括下述特点:
解码模块,设置为对所述解码块进行多种解码方式混合的解码,包括:从所述解码块的码流数据中获取像素样值段的参数;
其中,所述参数包括调色板参数和/或复制参数。
可选地,该装置还包括下述特点:
解析模块,是设置为通过如下方式实现解析当前解码块的码流数据,确定当前解码块的各像素样值段对应的解码方式:
从当前解码块的码流数据中获取像素样值段对应的解码方式的标识码。
可选地,该装置还包括下述特点:
解码模块,是设置为通过如下方式实现对所述解码块的所述像素样值段采用对应的解码方式进行解码:
在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存 储有计算机可执行指令,所述计算机可执行指令用于执行上述的方法。
与相关技术相比,本发明实施例提供的一种图像编码方法、图像解码方法、图像编码装置和图像解码装置,通过对编码块使用多种编码方式进行混合编码,对解码块使用多种解码方式混合的解码,能够充分发掘和利用图像中各编码图像区域的特点,提高图像压缩效果。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图概述
图1为本发明实施例的一种图像编码方法的流程图。
图2为本发明实施例的一种图像解码方法的流程图。
图3为本发明实施例的一种图像编码装置的结构示意图。
图4为本发明实施例的一种图像解码装置的结构示意图。
图5为本发明实施例的一种进行混合编码的编码块(解码块)的示意图。
本发明的实施方式
下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
如图1所示,本发明实施例提供了一种图像编码方法,该方法包括:
S10,确定编码块的编码方式;
S20,对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
所述方法还可以包括下述特点:
其中,所述编码方式包括以下编码方式中的一种或多种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
其中,块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码均属于复制编码;
其中,对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,也即,对所述编码块中的任一像素样值段采用所述多种编码方式中的任意一种进行编码;
其中,所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
其中,对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,包括:
构造或获取调色板,对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
其中,对所述编码块使用多种编码方式进行混合编码,包括:
将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
其中,将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中,包括:
在所述编码块的码流中混合写入所述像素段的解码方式的标识码。
其中,所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;
所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
其中,对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,包括:
在对所述编码块中的像素样值段采用串复制编码时,根据所述编码块的串复制编码的复制路径形状模式从重构参考像素样值集内获取与所述像素样值段匹配的参考像素样值串。
其中,所述串复制编码的复制路径形状模式包括以下模式的任意一种:
模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
其中,在所述编码块采用了调色板编码和串复制编码混合的编码方式时, 所述调色板编码的路径扫描方式与所述串复制编码的复制路径形状模式一致。
其中,所述方法还包括:
图像中只使用一种串复制编码的复制路径形状模式时,在所述图像对应的图像层信息单元中编码所述复制路径形状模式信息;和/或
视频序列中只使用一种串复制编码的复制路径形状模式时,在所述视频序列的序列层信息单元中编码所述复制路径形状模式信息。
其中,所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
其中,对所述像素样值段进行复制编码,包括:从重构参考像素样值集中获取与所述像素样值段匹配的参考像素样值段;
其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
其中,所述方法还包括:
在所述编码块所在图像对应的图像层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
模式1:所述图像包含四种编码块类型:第1类、第2类、第3类、第4类;
模式2:所述图像包含三种编码块类型:第1类、第2类、第3类;
模式3:所述图像包含三种编码块类型:第1类、第2类、第4类;
模式4:所述图像包含三种编码块类型:第1类、第3类、第4类;
模式5:所述图像包含三种编码块类型:第2类、第3类、第4类;
模式6~11:所述图像包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述图像包含一种编码块类型:第1类、第2类、第3类 和第4类中的任意一种类型;
其中,所述编码块类型包括:
第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
第2类:编码块采用了串复制编码和矩形复制编码;
第3类:编码块采用了调色板编码和串复制编码;
第4类:编码块采用了调色板编码和矩形复制编码。
其中,所述方法还包括:
在所述编码块所在视频序列对应的序列层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
模式1:所述视频序列包含四种编码块类型:第1类、第2类、第3类、第4类;
模式2:所述视频序列包含三种编码块类型:第1类、第2类、第3类;
模式3:所述视频序列包含三种编码块类型:第1类、第2类、第4类;
模式4:所述视频序列包含三种编码块类型:第1类、第3类、第4类;
模式5:所述视频序列包含三种编码块类型:第2类、第3类、第4类;
模式6~11:所述视频序列包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述视频序列包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述编码块类型包括:
第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
第2类:编码块采用了串复制编码和矩形复制编码;
第3类:编码块采用了调色板编码和串复制编码;
第4类:编码块采用了调色板编码和矩形复制编码。
其中,所述像素样值段的组成元素包括以下一种:像素、像素分量、像素索引。
其中,所述获取的像素样值段的参数由多个子参数域组成,所述参数的同种类型的子参数域的编码比特放置在码流中的前后相连的一个或多个字段,或者,放置在码流中的不同字段。
其中,所述获取的像素样值段的参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
其中,所述子参数域包括以下子参数域的至少一种:
子参数域1:编码方式类型;所述编码方式类型包括以下类型的任意一种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码、矩形复制编码和无参考像素复制编码;
子参数域2:索引或复制位置;
子参数域3:索引长度或复制大小;
子参数域4:无参考像素样值。
其中,所述方法还包括:
在所述编码块的码流中混合编码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
信息字段1:编码块采用的编码模式;
信息字段2:复制路径形状模式;
信息字段3:像素样值排列方式;
信息字段4:信息字段对应的参数编码方式列表;
信息字段5:调色板编码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
信息字段6:包含以下信息的至少一种:像素样值段对应的调色板编码或复制编码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
信息字段7:复制残差或空。
其中,确定编码块的编码方式,包括:
构造或获取调色板,和/或对编码块的像素进行预编码以确定像素样值段的编码方式,和/或确定编码块的串复制编码的复制路径形状模式、和/或确定编码块的调色板编码的路径扫描方式。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述的方法。
如图2所示,本发明实施例提供了一种图像解码方法,该方法包括:
S10,解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
S20,对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
所述方法还可以包括下述特点:
其中,所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
其中,块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码均属于复制解码;
其中,所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
其中,所述解码块包含一个或多个像素样值段,每一个像素样值段对应于多种解码方式中的一种解码方式。
其中,对所述解码块进行多种解码方式混合的解码,包括:从所述解码块的码流数据中获取像素样值段的解码参数;
其中,所述解码参数包括调色板参数和/或复制参数。
其中,所述调色板参数用于调色板解码,复制参数用于复制解码;
其中,解析所述解码块的码流数据,确定所述解码块的像素样值段对应 的解码方式,包括:
从所述解码块的码流数据中获取像素样值段对应的解码方式的标识码。
其中,对所述解码块的所述像素样值段采用对应的解码方式进行解码,包括:
在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码。
其中,所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
其中,在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码,包括:
在所述像素样值段采用串复制解码时,确定所述解码块的串复制解码的复制路径形状模式,根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串。
其中,在根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串后,还包括:将所述参考像素样值串的值直接或间接赋值予所述像素样值段。
其中,所述串复制解码的复制路径形状模式包括以下模式的任意一种:
模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
其中,所述解码块使用调色板解码和串复制解码混合的解码方式时,调色板解码的路径扫描方式与串复制解码的复制路径形状模式一致。
其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
其中,所述方法还包括:
从图像的图像层信息单元中获取所述复制路径形状模式信息,所述信息指示所述图像中所有解码块使用指定的复制路径形状模式;和/或
从视频序列的序列层信息单元中获取所述复制路径形状模式信息,所述信息指示所述序列中所有解码块使用指定的复制路径形状模式。
其中,所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
其中,所述方法还包括:
从所述解码块所在图像对应的图像层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
模式1:所述图像包含四种解码块类型:第1类、第2类、第3类、第4类;
模式2:所述图像包含三种解码块类型:第1类、第2类、第3类;
模式3:所述图像包含三种解码块类型:第1类、第2类、第4类;
模式4:所述图像包含三种解码块类型:第1类、第3类、第4类;
模式5:所述图像包含三种解码块类型:第2类、第3类、第4类;
模式6~11:所述图像包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述图像包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述解码块类型包括:
第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
第2类:解码块采用了串复制解码和矩形复制解码;
第3类:解码块采用了调色板解码和串复制解码;
第4类:解码块采用了调色板解码和矩形复制解码。
其中,所述方法还包括:
从所述解码块所在视频序列对应的序列层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
模式1:所述视频序列包含四种解码块类型:第1类、第2类、第3类、 第4类;
模式2:所述视频序列包含三种解码块类型:第1类、第2类、第3类;
模式3:所述视频序列包含三种解码块类型:第1类、第2类、第4类;
模式4:所述视频序列包含三种解码块类型:第1类、第3类、第4类;
模式5:所述视频序列包含三种解码块类型:第2类、第3类、第4类;
模式6~11:所述视频序列包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述视频序列包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述解码块类型包括:
第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
第2类:解码块采用了串复制解码和矩形复制解码;
第3类:解码块采用了调色板解码和串复制解码;
第4类:解码块采用了调色板解码和矩形复制解码。
其中,所述像素样值段的组成元素包括以下一种:像素、像素分量、像素索引。
其中,所述获取的像素样值段的参数由多个子参数域组成,所述解码参数的同种类型的子参数域的输入比特位于码流中的前后相连的一个或多个字段,或者,位于码流中的不同字段。
其中,所述获取的像素样值段的参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
其中,所述解码参数的子参数域包括以下子参数域的至少一种:
子参数域1:解码方式类型;所述解码方式类型包括以下类型的任意一种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码、矩形复制解码和无参考像素复制解码;
子参数域2:索引或复制位置;
子参数域3:索引长度或复制大小;
子参数域4:无参考像素样值。
其中,解析解码块的码流数据,确定所述解码块的像素样值段的解码方式,包括:
从所述解码块的码流中混合解码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
信息字段1:解码块采用的解码模式;
信息字段2:复制路径形状模式;
信息字段3:像素样值排列方式;
信息字段4:信息字段对应的参数解码方式列表;
信息字段5:调色板解码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
信息字段6:包含以下信息的至少一种:像素样值段对应的调色板解码或复制解码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
信息字段7:复制残差或空。
本发明实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行上述的方法。
如图3所示,本发明实施例提供了一种图像编码装置,包括:
编码方式确定模块,设置为确定编码块的编码方式;
编码模块,设置为对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
所述图像编码装置还可以包括下述特点:
其中,所述编码方式包括以下编码方式中的一种或多种:调色板编码、 块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
其中,所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
其中,编码模块,是设置为通过如下方式实现对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码:
对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
其中,编码模块,是设置为通过如下方式实现对所述编码块使用多种编码方式进行混合编码:
将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
其中,编码模块,是设置为通过如下方式实现将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中:
在所述编码块的码流中混合写入所述像素段的解码方式的标识码。
其中,所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
其中,编码模块,是设置为通过如下方式实现对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码:
在对所述编码块中的像素样值段采用串复制编码时,根据所述编码块的串复制编码的复制路径形状模式从重构参考像素样值集内获取与所述像素样值段匹配的参考像素样值串。
其中,所述串复制编码的复制路径形状模式包括以下模式的任意一种:
模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
其中,在所述编码块采用了调色板编码和串复制编码混合的编码方式时,所述调色板编码的路径扫描方式与所述串复制编码的复制路径形状模式一致。
其中,编码模块,设置为在图像中只使用一种串复制编码的复制路径形 状模式时,在所述图像对应的图像层信息单元中编码所述复制路径形状模式信息;和/或,在视频序列中只使用一种串复制编码的复制路径形状模式时,在所述视频序列的序列层信息单元中编码所述复制路径形状模式信息。
其中,所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
其中,编码模块,是设置为通过如下方式实现对所述像素样值段进行复制编码:从重构参考像素样值集中获取与所述像素样值段匹配的参考像素样值段;
其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
其中,编码模块,还设置为在所述编码块所在图像对应的图像层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
模式1:所述图像包含四种编码块类型:第1类、第2类、第3类、第4类;
模式2:所述图像包含三种编码块类型:第1类、第2类、第3类;
模式3:所述图像包含三种编码块类型:第1类、第2类、第4类;
模式4:所述图像包含三种编码块类型:第1类、第3类、第4类;
模式5:所述图像包含三种编码块类型:第2类、第3类、第4类;
模式6~11:所述图像包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述图像包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述编码块类型包括:
第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
第2类:编码块采用了串复制编码和矩形复制编码;
第3类:编码块采用了调色板编码和串复制编码;
第4类:编码块采用了调色板编码和矩形复制编码。
其中,编码模块,还设置为在所述编码块所在视频序列对应的序列层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
模式1:所述视频序列包含四种编码块类型:第1类、第2类、第3类、第4类;
模式2:所述视频序列包含三种编码块类型:第1类、第2类、第3类;
模式3:所述视频序列包含三种编码块类型:第1类、第2类、第4类;
模式4:所述视频序列包含三种编码块类型:第1类、第3类、第4类;
模式5:所述视频序列包含三种编码块类型:第2类、第3类、第4类;
模式6~11:所述视频序列包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述视频序列包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述编码块类型包括:
第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
第2类:编码块采用了串复制编码和矩形复制编码;
第3类:编码块采用了调色板编码和串复制编码;
第4类:编码块采用了调色板编码和矩形复制编码。
其中,所述像素样值段的组成元素包括以下一种:像素、像素分量、像素索引。
其中,所述获取的像素样值段的参数由多个子参数域组成,所述解码参数的同种类型的子参数域的编码比特放置在码流中的前后相连的一个或多个字段,或者,放置在码流中的不同字段。
其中,所述获取的像素样值段的参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
其中,所述子参数域包括以下子参数域的至少一种:
子参数域1:编码方式类型;所述编码方式类型包括以下类型的任意一种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码、矩形复制编码和无参考像素复制编码;
子参数域2:索引或复制位置;
子参数域3:复制大小;
子参数域4:无参考像素样值。
其中,编码模块,还设置为在所述编码块对应的码流中混合编码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
信息字段1:编码块采用的编码模式;
信息字段2:复制路径形状模式;
信息字段3:像素样值排列方式;
信息字段4:信息字段对应的参数编码方式列表;
信息字段5:调色板编码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
信息字段6:包含以下信息的至少一种:像素样值段对应的调色板编码或复制编码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
信息字段7:复制残差或空。
其中,编码方式确定模块,是设置为通过如下方式实现确定编码块的编码方式:构造或获取调色板,和/或对编码块的像素进行预编码以确定像素样值段的编码方式,和/或确定编码块的串复制编码的复制路径形状模式、和/或确定编码块的调色板编码的路径扫描方式。
如图4所示,本发明实施例提供了一种图像解码装置,包括:
解析模块,设置为解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
解码模块,设置为对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
所述图像解码装置还可以包括下述特点:
其中,所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
其中,所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
其中,解码模块,是设置为通过如下方式实现对所述解码块进行多种解码方式混合的解码:从所述解码块的码流数据中获取像素样值段的参数;
其中,所述获取的像素样值段的参数包括调色板参数和/或复制参数。
其中,解析模块,是设置为通过如下方式实现解析当前解码块的码流数据,确定当前解码块的像素样值段对应的解码方式:
从当前解码块的码流数据中获取像素样值段对应的解码方式的标识码。
其中,解码模块,是设置为通过如下方式实现对所述解码块的所述像素样值段采用对应的解码方式进行解码:
在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码。
其中,所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
其中,解码模块,是设置为通过如下方式实现在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码:
在所述像素样值段采用串复制解码时,确定所述解码块的串复制解码的复制路径形状模式,根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串。
其中,解码模块,还设置为在根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串后,将所述参考像素样值串的值直接或间接赋值予所述像素样值段。
其中,所述串复制解码的复制路径形状模式包括以下模式的任意一种:
模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像 素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
其中,所述解码块使用调色板解码和串复制解码混合的解码方式时,调色板解码的路径扫描方式与串复制解码的复制路径形状模式一致。
其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
其中,解析模块,设置为从图像的图像层信息单元中获取所述复制路径形状模式信息,所述信息指示所述图像中所有解码块使用指定的复制路径形状模式;和/或,从视频序列的序列层信息单元中获取所述复制路径形状模式信息,所述信息指示所述序列中所有解码块使用指定的复制路径形状模式。
其中,所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
其中,解析模块,还设置为从所述解码块所在图像对应的图像层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
模式1:所述图像包含四种解码块类型:第1类、第2类、第3类、第4类;
模式2:所述图像包含三种解码块类型:第1类、第2类、第3类;
模式3:所述图像包含三种解码块类型:第1类、第2类、第4类;
模式4:所述图像包含三种解码块类型:第1类、第3类、第4类;
模式5:所述图像包含三种解码块类型:第2类、第3类、第4类;
模式6~11:所述图像包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述图像包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述解码块类型包括:
第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
第2类:解码块采用了串复制解码和矩形复制解码;
第3类:解码块采用了调色板解码和串复制解码;
第4类:解码块采用了调色板解码和矩形复制解码。
其中,解析模块,还设置为从所述解码块所在视频序列对应的序列层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
模式1:所述视频序列包含四种解码块类型:第1类、第2类、第3类、第4类;
模式2:所述视频序列包含三种解码块类型:第1类、第2类、第3类;
模式3:所述视频序列包含三种解码块类型:第1类、第2类、第4类;
模式4:所述视频序列包含三种解码块类型:第1类、第3类、第4类;
模式5:所述视频序列包含三种解码块类型:第2类、第3类、第4类;
模式6~11:所述视频序列包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
模式12~15:所述视频序列包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
其中,所述解码块类型包括:
第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
第2类:解码块采用了串复制解码和矩形复制解码;
第3类:解码块采用了调色板解码和串复制解码;
第4类:解码块采用了调色板解码和矩形复制解码。
其中,所述像素样值段的组成元素包括以下一种:像素、像素分量、像素索引。
其中,所述获取的像素样值段的参数由多个子参数域组成,所述获取的像素样值段的参数的同种类型的子参数域的输入比特位于码流中的前后相连的一个或多个字段,或者,位于码流中的不同字段。
其中,所述获取的像素样值段的参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
其中,所述获取的像素样值段的参数的子参数域包括以下子参数域的至少一种:
子参数域1:解码方式类型;所述解码方式类型包括以下类型的任意一种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码、矩形复制解码和无参考像素复制解码;
子参数域2:索引或复制位置;
子参数域3:索引长度或复制大小;
子参数域4:无参考像素样值。
其中,解析模块,是设置为通过如下方式实现解析解码块的码流数据,确定所述解码块的像素样值段的解码方式:
从所述解码块码流中混合解码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
信息字段1:解码块采用的解码模式;
信息字段2:复制路径形状模式;
信息字段3:像素样值排列方式;
信息字段4:信息字段对应的参数解码方式列表;
信息字段5:调色板解码头信息,包括调色板中像素的个数以及像素的 数值或者复用规则;
信息字段6:包含以下信息的至少一种:像素样值段对应的调色板解码或复制解码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的复制大小、和像素样值段对应的无参考像素样值或空;
信息字段7:复制残差或空。
如图5所示,本发明实施例是在一个编码块或解码块中混合调色板编码(或对应的解码)方式与复制编码(或对应的解码)方式,也就是一个编码块(解码块)中一部分像素使用调色板和索引方式进行编码或解码,而另一部分像素则使用像素复制方式进行编码或解码。
编码器将调色板编码产生的调色板解码所需要的语法元素和复制编码产生的复制编码所需要的语法元素混合写入一个CU的码流段,产生一个CU的码流数据。解码器从一个CU的码流数据中获取调色板解码的语法元素及每种调色板解码参数和复制解码的语法元素及每种复制解码参数,根据调色板解码参数和复制解码参数分别进行调色板解码和复制解码,产生调色板方式重构像素和复制方式重构像素混合的当前解码CU的全部重构像素。
本发明实施例的编码方法和装置是在对当前编码块进行编码时,首先构造出一个调色板,然后把当前编码块的部分或全部像素用所述调色板的索引来表示,一个索引通常比一个像素占用更少的比特数;对当前编码块的一部分像素使用调色板和索引方式进行包括游程编码和/或熵编码的编码运算;对当前编码块的另一部分像素,则在原始输入图像或重构参考像素样值集内一个预先规定的搜索窗口范围内,搜索得到一个或多个最优的复制参考串(简称参考串)和/或复制参考矩形(简称参考矩形)和/或复制参考微块(简称参考微块)和/或复制参考条(简称参考条)。调色板编码的结果用一个或多个与调色板解码有关的调色板参数来表示。而参考串、参考矩形、参考微块、参考条用一个或多个与串复制解码、矩形复制解码、微块复制解码、条复制解码有关的复制参数(或称匹配参数)来表示。包括调色板的部分或全部像 素、调色板参数和复制参数等解码所需要的参数被混合放入码流。
本发明实施例的解码方法和装置是在对当前解码块进行解码时,从码流中获取调色板的部分或全部像素,并且获取与调色板解码有关的调色板参数和与复制解码有关的复制参数。根据调色板参数的部分或全部,解码,包括索引游程解码,得到当前解码块的部分像素的索引,并使用索引从调色板中得到对应的像素样值,将所述像素样值的数值直接或间接赋值予当前解码像素。根据复制参数的部分或全部,从重构参考像素样值集内获取参考串和/或参考矩形和/或参考微块和/或参考条,并将其数值直接或间接赋值予当前解码串(简称当前串)和/或当前解码矩形(简称当前矩形)和/或当前解码微块(简称当前微块)和/或当前解码条(简称当前条)。
调色板参数包括:索引,复制左边索引的索引游程(即索引串)的长度,复制上方索引的索引游程(即索引串)的长度。
复制参数包括复制位置和/或复制大小。对参考串,复制大小包括复制长度。对参考矩形,复制大小包括复制宽度和复制长度这两个复制参数分量或者复制高度和复制长度这两个复制参数分量或者复制宽度和复制高度这两个复制参数分量。
复制位置是在重构参考像素样值集内的参考串和/或参考矩形和/或参考微块和/或参考条的第一个像素样值与当前CU中当前串和/或当前矩形和/或当前微块和/或当前条的第一个像素样值之间的线性(1维)距离或平面(2维)距离,其单位是样值或若干样值。复制位置有时也称为帧内运动矢量。
对参考串和/或参考矩形,复制大小是参考串和/或参考矩形的大小,其单位也是样值或若干样值。显然,参考串和/或参考矩形的大小也是当前串和/或当前矩形的大小。
调色板解码与复制解码混合的一种可选解码过程是执行或重复下列语句或等价的语句的解码过程:
获取调色板/复制类型(即解码方式)的模式标识码;
如果调色板/复制类型是调色板,则
{
解码得到一个索引游程的一个或多个索引
使用索引将调色板中对应的像素的数值直接或间接赋值予一个或多个当前解码像素
}
,如果调色板/复制类型是串复制,则
{
解码得到一个参考串的复制位置和复制大小
将由复制位置和复制大小指定的重构参考像素样值集内的参考串的数值直接或间接赋值予当前解码串
}
如果调色板/复制类型是矩形复制,则
{
解码得到一个参考矩形的复制位置和复制大小
将由复制位置和复制大小指定的重构参考像素样值集内的参考矩形的数值直接或间接赋值予当前解码矩形
}
如果调色板/复制类型是无参考像素,则
{
将从码流中获取的无参考像素的数值直接或间接赋值予当前解码像素
}
除上述情况外,
{
进行其他解码运算
}
重构参考像素样值集的像素样值可以等同于重构样值,也可以是重构样值的各种变体,如经过像素聚类、颜色量化、数值量化、向量量化、去噪音、滤波、特征抽取等处理的样值或经过色彩格式转换、排列方式转换、频率域转换、空间域映射、DPCM、一阶或高阶差分运算、索引化等变换的样值或经过多重处理与变换的像素值变体,当参考样值不等同于重构样值时,参考样值可以一次性产生后暂存供以后需要时多次使用,也可以每次需要时即时产生,也可以是这两种产生方法的组合。
在本发明实施例中,“重构样值”和“参考样值”有时被统称为“重构参考像素样值”。根据上下文,可以明确“重构参考像素样值”是表示“重构样值”还是“参考样值”还是同时表示两者之任一。
在本发明实施例中,“重构参考样值集”和“重构参考像素样值集”是同义词,在不引起混淆的情况下,有时也被简称为“样值集”。
重构参考像素样值集可以是含有至少一个CTU区域的连成一片的二维区域,也可以是由按照预先规定的规则选择的若干互不关联的部分区域或像素组成。
对含有至少一个CTU区域的重构参考像素样值集和/或当前CU来说,从参考串和/或当前串的路径形状来分,串复制编码或解码至少有4种基本复制路径形状模式。
基本复制路径形状模式1是垂直路径1维串形复制的复制路径形状模式。在本复制路径形状模式中,重构参考像素样值集和/或当前CU先以CTU序号或CU序号的顺序排列,而在一个CTU或CU内,样值逐列排列,每列中样值垂直扫描自上而下排列。这样,重构参考像素样值集也被排列成一个一维的样值串。
基本复制路径形状模式2是水平路径1维串形复制的复制路径形状模式。基本复制路径形状模式2是上述基本复制路径形状模式1的对偶模式。把基本复制路径形状模式1中的“垂直”置换成“水平”,“列”置换成“行”,“自上而下”置换成“从左向右”,就是基本复制路径形状模式2。
基本复制路径形状模式3是垂直路径2维保形复制的复制路径形状模式。在本复制路径形状模式中,重构参考像素样值集保留原始图像平面固有的2维排列方式,而在当前CU内,样值则以垂直扫描方式逐列排列并且在1列内自上而下排列。在重构参考像素样值集之中搜索或复制参考串时,在当前CU内,当前样值以垂直扫描方式自上而下移动,一列扫描和复制完了之后,接着扫描和复制右边相邻的一列。在重构参考像素样值集之中找到的参考串必须与当前CU中的当前串保持完全一致的2维形状和扫描方式的路径走向。参考串和当前串各自形成的二维区域的高度与当前编码块或解码块的高度相等。
基本复制路径形状模式4是水平路径2维保形复制的复制路径形状模式。基本复制路径形状模式4是上述基本复制路径形状模式3的对偶模式。在本复制路径形状模式中,重构参考像素样值集保留原始图像平面固有的2维排列方式,而在当前CU内,样值则以水平扫描方式逐行排列并且在1行内从左向右排列。在重构参考像素样值集之中搜索或复制参考串时,在当前CU内,当前样值以水平扫描方式从左向右移动,一行扫描和复制完了之后,接着扫描和复制下边相邻的一行。在重构参考像素样值集之中找到的参考串必须与当前CU中的当前串保持完全一致的2维形状和扫描方式的路径走向。参考串和当前串各自形成的二维区域的宽度与当前编码块或解码块的宽度相等。
从以上4种基本复制路径形状模式还可以衍生出其他各种复制路径形状模式,包括:
1)与基本复制路径形状模式1基本相同但扫描路径走向交替变换,即扫描方式是奇数列自上而下移动而偶数列自下而上移动;
2)与基本复制路径形状模式1基本相同但扫描路径走向交替变换,即扫描方式是偶数列自上而下移动而奇数列自下而上移动;
3)与基本复制路径形状模式2基本相同但扫描路径走向交替变换,即扫描方式是奇数行从左向右移动而偶数行从右向左移动;
4)与基本复制路径形状模式2基本相同但扫描路径走向交替变换,即扫 描方式是偶数行从左向右移动而奇数行从右向左移动;
5)与基本复制路径形状模式3基本相同但扫描路径走向交替变换,即扫描方式是奇数列自上而下移动而偶数列自下而上移动;
6)与基本复制路径形状模式3基本相同但扫描路径走向交替变换,即扫描方式是偶数列自上而下移动而奇数列自下而上移动;
7)与基本复制路径形状模式4基本相同但扫描路径走向交替变换,即扫描方式是奇数行从左向右移动而偶数行从右向左移动;
8)与基本复制路径形状模式4基本相同但扫描路径走向交替变换,即扫描方式是偶数行从左向右移动而奇数行从右向左移动;
其中,参考串和当前串的宽度为1、2、3、…、W个样值。
当复制编码或解码采用一种水平或垂直扫描的路径形状模式时,与之混合的调色板编码或解码的索引或索引游程也采用同样的水平或垂直扫描的路径形状。
本发明实施例的解码方法和装置是在对当前解码块的码流数据进行解码时,首先从码流数据中解析出该序列或该图像或该CU采用的复制路径形状模式(如以上所述复制路径形状模式之一),然后从码流数据中依次获取一个一个索引和/或索引游程和/或参考串和/或参考矩形和/或参考微块和/或参考条的复制参数。在得到了一个调色板参数或一个复制参数之后,解码工作就是根据根据调色板参数计算得到一个或多个连续位置的索引,并使用索引从调色板中得到对应的像素样值,并将所述像素样值的数值直接或间接赋值予一个或多个连续位置的当前解码像素,或者根据复制路径形状模式,从当前解码样值的位置和复制参数计算出重构参考像素样值集之中的参考串和/或参考矩形和/或参考微块和/或参考条的第一个样值的位置,然后,再根据复制路径形状模式和复制参数,就可以从重构参考像素样值集之中复制参考串和/或参考矩形和/或参考微块和/或参考条的部分或全部样值,并将所述样值的数值直接或间接赋值予当前串和/或当前矩形和/或参考微块和/或参考条,复原出当前串和/或当前矩形和/或参考微块和/或参考条。
一帧图像中,可以所有CU都使用同一种复制路径形状模式。这样解码器就仅需要从一帧图像的对应的图像参数集或头信息中解析出该图像采用哪一种复制路径形状模式,而不需要每个CU都解析出该CU采用哪一种复制路径形状模式。编码器也仅需要在一帧图像的对应的图像参数集或头信息中直接或间接写入复制路径形状模式。一个视频序列中,可以所有图像和所有CU都使用同一种复制路径形状模式。这样解码器就仅需要从一个序列的对应的序列参数集或头信息中解析出该序列采用哪一种复制路径形状模式,而不需要每个图像、每个CU都解析出该图像、该CU采用哪一种复制路径形状模式。编码器也仅需要在一个序列的对应的序列参数集或头信息中直接或间接写入复制路径形状模式。有些CU也可以再划分成若干个子区域(如PU),每个子区域(如PU)采用不同的复制路径形状模式。
在一个CU或一个CU的子区域的码流数据中,混合存在调色板参数和多种复制参数,统称为调色板/复制参数:调色板参数、参考串的复制参数、参考矩形的复制参数、参考微块的复制参数、参考条的复制参数;码流数据中的一个或多个调色板/复制参数前都有一个直接(包括存在于码流中)或间接(包括从编码或解码过程中的其他信息获取)的模式标识码,用来直接或间接地载明后面跟着的调色板/复制参数是调色板参数还是参考串的复制参数还是参考矩形的复制参数还是参考微块的复制参数还是参考条的复制参数。
在一种可选的方案中,在一个CU或一个CU的子区域的码流数据中,混合存在三种调色板/复制参数:调色板参数、参考串的复制参数、参考矩形的复制参数;码流数据中的一个或多个调色板/复制参数前都有一个直接(包括存在于码流中)或间接(包括从编码或解码过程中的其他信息获取)的模式标识码,用来直接或间接地载明后面跟着的调色板/复制参数是调色板参数还是参考串的复制参数还是参考矩形的复制参数。
在一种可选的方案中,在一个CU或一个CU的子区域的码流数据中,混合存在两种调色板/复制参数:调色板参数、参考串的复制参数;码流数据中的一个或多个调色板/复制参数前都有一个直接(包括存在于码流中)或间 接(包括从编码或解码过程中的其他信息获取)的模式标识码,用来直接或间接地载明后面跟着的调色板/复制参数是调色板参数还是参考串的复制参数。
在一种可选的方案中,在一个CU或一个CU的子区域的码流数据中,混合存在两种调色板/复制参数:调色板参数、参考矩形的复制参数;码流数据中的一个或多个调色板/复制参数前都有一个直接(包括存在于码流中)或间接(包括从编码或解码过程中的其他信息获取)的模式标识码,用来直接或间接地载明后面跟着的调色板/复制参数是调色板参数还是参考矩形的复制参数。
在一帧图像的码流数据中,存在着包括下列4类CU或CU的子区域的某一类或某两类或某三类或全部四类:
第一类:混有三种调色板/复制参数:调色板参数、参考串的复制参数、参考矩形的复制参数的CU或CU的子区域;
第二类:混有两种调色板/复制参数:参考串的复制参数、参考矩形的复制参数的CU或CU的子区域;
第三类:混有两种调色板/复制参数:调色板参数、参考串的复制参数的CU或CU的子区域;
第四类:混有两种调色板/复制参数:调色板参数、参考矩形的复制参数的CU或CU的子区域;
在一帧图像及其码流数据的对应的图像参数集或图像头信息中,使用直接或间接的模式标识码来直接或间接地载明包括下列情形之一:
情形1:当前图像及其码流数据中存在着以上4类CU或CU的子区域:第1类,第2类,第3类,第4类的CU或CU的子区域;
情形2:当前图像及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第2类,第3类的CU或CU的子区域;
情形3:当前图像及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第2类,第4类的CU或CU的子区域;
情形4:当前图像及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第3类,第4类的CU或CU的子区域;
情形5:当前图像及其码流数据中存在着以上4类中三类CU或CU的子区域:第2类,第3类,第4类的CU或CU的子区域;
情形6:当前图像及其码流数据中存在着以上4类中某两类CU或CU的子区域,例如第1类和第3类的CU或CU的子区域,例如第2类和第3类的CU或CU的子区域;
情形7:当前图像及其码流数据中存在着以上4类中某一类CU或CU的子区域,例如第1类的CU或CU的子区域,例如第2类的CU或CU的子区域,例如第3类的CU或CU的子区域,例如第4类的CU或CU的子区域;
在一个序列及其码流数据的对应的序列参数集或序列头信息中,使用直接或间接的模式标识码来直接或间接地载明包括下列情形之一:
情形8:序列及其码流数据中存在着以上4类CU或CU的子区域:第1类,第2类,第3类,第4类的CU或CU的子区域;
情形9:序列及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第2类,第3类的CU或CU的子区域;
情形10:序列及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第2类,第4类的CU或CU的子区域;
情形11:序列及其码流数据中存在着以上4类中三类CU或CU的子区域:第1类,第3类,第4类的CU或CU的子区域;
情形12:序列及其码流数据中存在着以上4类中三类CU或CU的子区域:第2类,第3类,第4类的CU或CU的子区域;
情形13:序列及其码流数据中存在着以上4类中某两类CU或CU的子区域,例如第1类和第3类的CU或CU的子区域,例如第2类和第3类的CU或CU的子区域;
情形14:序列及其码流数据中存在着以上4类中某一类CU或CU的子区域,例如第1类的CU或CU的子区域,例如第2类的CU或CU的子区域, 例如第3类的CU或CU的子区域,例如第4类的CU或CU的子区域;
以上通过若干特定的具体实例说明本发明实施例的技术特征。本领域技术人员可由本说明书所揭示的内容轻易地了解本发明实施例的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的每项细节也可以基于不同观点与应用,在不背离本发明的精神下进行各种修饰或改变。
本发明实施例中使用的术语也可以用其他来自物理学或数学的名词来表示,如复制位置也可以使用以下别名之一:匹配位置,位置,距离,相对距离,位移量,位移矢量,移动量,移动矢量,偏移量,偏移矢量,块矢量,串矢量,补偿量,补偿,线性地址,地址,2维坐标,1维坐标,坐标,索引,指数,等等。复制长度也可以被称为以下别名之一:复制行程,复制个数,复制计数,复制游程,匹配行程,匹配个数,匹配计数,匹配游程,长度,行程,个数,计数,游程,等等。串复制也称为串匹配,矩形复制也称为矩形匹配,点复制也称为点匹配等等。
本发明实施例的一种可选编码方法包括如下步骤的全部或部分:
1)对一个编码块的像素进行调色板和/或串复制和/或矩形复制的混合编码,产生出调色板参数和/或参考串的复制参数和/或参考矩形的复制参数和/或无参考像素样值;
2)其余编码、重构及产生视频码流数据的步骤,进行编码块的其余编码和重构运算,对输入的像素、各种参数和变量进行各种常用技术,如帧内预测、帧间预测、块复制、微块复制、条复制、变换、量化、逆变换、反量化、对应于预测残差和复制残差的补偿(即取残差运算的逆运算)、预测并求残差、DPCM、一阶和高阶差分、映射、游程、索引、去块效应滤波、样值自适应补偿(Sample Adaptive Offset),的编码和重构运算以及熵编码运算;本步骤的输出是已重构像素(包括完全重构像素和不同阶段程度的部分重构像素)和含调色板和/或串复制和/或矩形复制混合的编码结果和其他编码结果的视频码流;所述视频码流是本编码方法的输出,包含了对应的解码方法进行解码和重构所需要的全部语法元素,包括调色板和/或串复制和/或矩形复制混合 的编码的调色板参数和/或参考串的复制参数和/或参考矩形的复制参数的语法元素和/或无参考像素样值的语法元素。
本发明实施例的一种可选解码方法包括如下步骤的全部或部分:
1)解析码流,获取包括调色板参数和/或参考串的复制参数和/或参考矩形的复制参数和/或无参考像素样值的解码参数和变量;
2)使用获取的调色板参数和/或参考串的复制参数和/或参考矩形的复制参数和/或无参考像素样值,进行调色板和/或串复制和/或矩形复制混合的解码;
本发明实施例的一种可选编码装置由以下模块的全部或部分组成:
1)调色板和/或串复制和/或矩形复制混合的搜索和编码模块:对输入像素样值施行调色板和/或串复制和/或矩形复制混合的调色板兼复制编码,对索引进行游程编码,对像素在重构参考像素样值集之中搜索最优参考串和/或最优参考矩形,并产生出调色板参数和/或参考串的复制参数和/或参考矩形的复制参数和/或无参考像素样值;
2)重构参考像素样值集模块:用来暂存重构像素样值和参考像素样值,用作后续各种编码方式,包括块复制编码、微块复制编码、条复制编码、串复制编码、矩形复制编码、多种类型复制方式混合的复制编码、预测编码,的搜索、编码、重构时的参考像素样值;所述重构参考像素样值集的输入是重构样值而输出是参考样值,参考样值可以等同于重构样值,也可以是重构样值的各种变体,如经过像素聚类、颜色量化、数值量化、向量量化、去噪音、滤波、特征抽取等处理的样值或经过色彩格式转换、排列方式转换、频率域转换、空间域映射、DPCM、一阶或高阶差分运算、索引化等变换的样值或经过多重处理与变换的像素值变体,当参考样值不等同于重构样值时,参考样值可以一次性产生后暂存供以后需要时多次使用,也可以每次需要时即时产生,也可以是这两种产生方法的组合;
3)调色板模块:暂存若干像素,即调色板像素;
4)其余编码、重构及产生视频码流数据的模块:施行其余编码和重构运算,对输入的像素、各种参数和变量进行各种常用技术,如帧内预测、帧间预测、块复制、微块复制、条复制、变换、量化、逆变换、反量化、对应于预测残差和复制残差的补偿(即取残差运算的逆运算)、预测并求残差、DPCM、一阶和高阶差分、映射、游程、索引、去块效应滤波、样值自适应补偿(Sample Adaptive Offset),的编码和重构运算以及熵编码运算;本步骤的输出是已重构像素(包括完全重构像素和不同阶段程度的部分重构像素)和含调色板和/或串复制和/或矩形复制混合的编码结果、各种其他复制编码方式的编码结果和其他编码结果的视频码流;所述视频码流是本编码方法的输出,包含了对应的解码方法进行解码和重构所需要的全部语法元素,包括调色板和/或串复制和/或矩形复制混合的编码的调色板参数和/或参考串的复制参数和/或参考矩形的复制参数的语法元素和/或无参考像素样值的语法元素和/或其他复制参数的语法元素和/或其他编码参数的语法元素。
本发明实施例的一种可选解码装置由以下模块的全部或部分组成:
1)解析码流,获取调色板参数、复制参数、无参考像素样值等的模块:对输入码流数据施行码流解析,获取解码参数和变量,包括:调色板参数和/或参考串的复制参数和/或参考矩形的复制参数,和/或无参考像素样值,和/或其他复制解码方式的复制参数,和/或其他解码参数和变量;
2)调色板/串复制/矩形复制混合的复制解码模块:本模块的功能是对从码流中获取的调色板参数和/或参考串的复制参数和/或参考矩形的复制参数,和/或无参考像素样值,施行调色板和/或串复制和/或矩形复制混合的解码运算,即按照已知的复制路径形状模式,在参考串和/或参考矩形的情形,将重构参考像素样值集之中由参考串的复制参数和/或参考矩形的复制参数(包括复制位置)指定的位置上的参考串和/或参考矩形,其大小也由参考串的复制参数和/或参考矩形的复制参数(包括复制大小)所指定,的像素样值的数值直接或间接赋值予当前串和/或当前矩形,而在调色板的情形,则施行包括游程解码的运算,得到一个或若干索引,并根据索引将调色板的像素的数值直 接或间接赋值予一个或若干当前解码像素;
3)重构参考像素样值集模块:用来暂存重构像素样值和参考像素样值,用作后续各种解码方式,包括块复制解码、微块复制解码、条复制解码、串复制解码、矩形复制解码、多种类型复制方式混合的复制解码、预测解码,的解码和重构时的参考像素样值;所述重构参考像素样值集的输入是重构样值而输出是参考样值,参考样值可以等同于重构样值,也可以是重构样值的各种变体,如经过像素聚类、颜色量化、数值量化、向量量化、去噪音、滤波、特征抽取等处理的样值或经过色彩格式转换、排列方式转换、频率域转换、空间域映射、DPCM、一阶或高阶差分运算、索引化等变换的样值或经过多重处理与变换的像素值变体,当参考样值不等同于重构样值时,参考样值可以一次性产生后暂存供以后需要时多次使用,也可以每次需要时即时产生,也可以是这两种产生方法的组合;
4)调色板模块:暂存若干像素,即调色板像素。
以下是本发明实施例的更多的实施细节和变体。
本发明实施例适用于叠包格式图像的编码和解码。当前CU的像素和重构参考像素样值集的像素都以叠包格式排列。参考块,参考微块,参考条,参考串,参考矩形,参考点和当前块,当前微块,当前条,当前串,当前矩形,当前点都以叠包格式排列。即以由3个分量样值单个交叉叠在一起形成的单个像素为单位排列,形成3个分量样值单个交叉排列的样值集。在这样的重构参考像素样值集之中搜索或复制参考块,参考微块,参考条,参考串,参考矩形等。
本发明实施例也同样适用于分量平面格式图像的编码和解码。当前CU的像素和重构参考像素样值集的像素都分解成3个分量平面,所有像素的一个分量形成一个平面。参考块,参考微块,参考条,参考串,参考矩形,参考点和当前块,当前微块,当前条,当前串,当前矩形,当前点都分解成3个分量平面,所有像素的一个分量形成一个平面。一个参考块,参考微块, 参考条,参考串,参考矩形,参考点和当前块,当前微块,当前条,当前串,当前矩形,当前点都仅包含一个分量的样值。块复制,微块复制,条复制,串复制,矩形复制,点复制都在3个平面内分别进行。但为了减少复制参数,同时由于3个平面有很大相关性,故也可以3个平面共享同样的复制参数。
本发明实施例的分量平面格式图像的复制编码和解码,如果应用于YUV4:2:2像素色彩格式和YUV4:2:0像素色彩格式等对色度分量U和V进行下采样的情形,那么Y平面的复制参数应用到U平面和V平面时,要根据下采样的比例对复制参数进行相应的变换和调整。
重构参考像素样值集可以分成若干子集,子集的像素可以具有互不相同的分量排列格式、色彩格式和像素样值排列方式。
重构参考像素样值集可以分成若干子集,子集的像素也可以处于互不相同程度的各自特有的重构阶段的完全重构像素或阶段性重构像素。
1)实施和变体例1:调色板和复制方式混合的可选实施方式1
在一个编码块或解码块或PU或CU或CTU或LCU的码流数据中,混合存在三种调色板/复制参数:调色板参数、参考串的复制参数、参考矩形的复制参数;混合进行三种调色板/复制方式的编码或解码:调色板、串复制、矩形复制。
2)实施和变体例2:调色板和复制方式混合的可选实施方式2
在一个编码块或解码块或PU或CU或CTU或LCU的码流数据中,混合存在两种调色板/复制参数:调色板参数、参考串的复制参数;混合进行两种调色板/复制方式的编码或解码:调色板、串复制。
3)实施和变体例3:调色板参数和复制参数,统称为调色板/复制参数的语法元素在码流中的放置顺序的一种可选实施方式
记述调色板/复制参数的语法元素(语法元素用粗体字表示)在码流中的 放置顺序是:
调色板/复制参数1,调色板/复制参数2,调色板/复制参数3,……,调色板/复制参数i,复调色板/制参数i+1,……
4)实施和变体例4:调色板/复制参数的组成域的一种可选实施方式
调色板/复制参数由若干调色板/复制子参数的域组成,调色板/复制子参数域包括:
调色板/复制子参数域1:调色板/复制类型,表示调色板/复制方式是调色板还是串复制还是矩形复制还是微块复制还是条复制还是无参考像素;
调色板/复制子参数域2:索引或复制位置,表示调色板的索引或参考像素在重构参考像素样值集内的位置;
调色板/复制子参数域3:复制大小,表示索引游程的长度或当前串或当前矩形的像素数目;
调色板/复制子参数域4:无参考像素,表示无参考像素的数值;
在一个调色板/复制参数中,某些调色板/复制子参数域可以取值为空。
5)实施和变体例5:调色板/复制参数的组成域在码流中的语法元素的表述格式的一种可选方案
码流数据包括直接表述或间接表述(间接表述的例:经过一阶或高阶差分编码和/或预测编码和/或匹配编码和/或映射编码和/或变换编码和/或量化编码和/或索引编码和/或游程编码和/或二值化编码和/或熵编码后再表述)下列调色板/复制子参数域的语法元素:
T1,P1,S1,N1,T2,P2,S2,N2,……,Ti,Pi,Si,Ni,……
其中Ti,Pi,Si,Ni,分别是调色板/复制参数i的调色板/复制类型,索引或复制位置,复制大小,无参考像素;所述调色板/复制子参数域的语法元素在码流中的放置排列顺序并不是唯一的,可采用任意一种预先确定的合理的顺序;一个语法元素也可以被拆成几部分,所述几部分可以集中放置在码流中同一地方,也可以分别放置在码流中不同的地方;若干语法元素也可以 合并成一个语法元素;某些语法元素也可以不存在于某个调色板/复制参数的码流数据中;某个语法元素也可以不直接存在于码流数据中而是从其他编码或解码参数或者变量中导出;表述同一种调色板/复制子参数域的多个语法元素可以集中放置在码流中同一地方,如:
T1,T2……Ti……,P1,P2……Pi……,S1,S2……Si……,N1,N2……Ni……
也可以分别放置在码流中不同的地方,如:
T1,P1,S1,N1,T2,P2,S2,N2,……,Ti,Pi,Si,Ni,……
也可以是这两种放置方式的组合,如
T1,S1,T2,S2……Ti,Si……,P1,P2……Pi……,N1,N2……,Ni……
也可以是以上各种放置方式的混合。
6)实施和变体例5:复制子参数域包括单分量子参数域或双分量子参数域或三分量子参数域
复制位置Pi或其变体包括单分量子参数域或双分量子参数域或三分量子参数域;所述复制位置Pi或其变体对应的码流中的语法元素包括下列形式之一:
一个参考串的复制位置Pi或其变体对应的语法元素:d(一个分量,如位置线性地址)
或者
一个参考串的复制位置Pi或其变体对应的语法元素:d[0],d[1](两个分量,如位置水平分量,位置垂直分量或重构参考像素样值集的CTU序号,位置线性地址)
或者
一个参考串的复制位置Pi或其变体对应的语法元素:d[0],d[1],d[2](三个分量,如重构参考像素样值集的CTU序号,位置水平分量,位置垂直分量)
复制位置Pi或其变体包括单分量子参数域或双分量子参数域或三分量子参数域;所述复制位置Pi或其变体对应的码流中的语法元素包括下列形式之一:
一个参考矩形的复制位置Pi或其变体对应的语法元素:d(一个分量,如位置线性地址)
或者
一个参考矩形的复制位置Pi或其变体对应的语法元素:d[0],d[1](两个分量,如位置水平分量,位置垂直分量或重构参考像素样值集的CTU序号,位置线性地址)
或者
一个参考矩形的复制位置Pi或其变体对应的语法元素:d[0],d[1],d[2](三个分量,如重构参考像素样值集的CTU序号,位置水平分量,位置垂直分量)
复制大小Si或其变体包括单分量子参数域或双分量子参数域或三分量子参数域;所述复制大小Si或其变体对应的码流中的语法元素包括下列形式之一:
一个参考串的复制大小Si或其变体对应的语法元素:r(一个分量)
或者
一个参考串的复制大小Si或其变体对应的语法元素:r[0],r[1](两个分量)
或者
一个参考串的复制大小Si或其变体对应的语法元素:r[0],r[1],r[2](三个分量)
复制大小Si或其变体包括单分量子参数域或双分量子参数域或三分量子参数域;所述复制大小Si或其变体对应的码流中的语法元素包括下列形式之一:
一个参考矩形的复制大小Si或其变体对应的语法元素:r(一个分量)
或者
一个参考矩形的复制大小Si或其变体对应的语法元素:r[0],r[1](两个分量)
或者
一个参考矩形的复制大小Si或其变体对应的语法元素:r[0],r[1],r[2](三个分量)
无参考像素Ni或其变体包括单分量子参数域或双分量子参数域或三分量子参数域;所述无参考像素Ni或其变体对应的码流中的语法元素包括下列形式之一:
无参考像素Ni或其变体对应的语法元素:p(一个分量)
或者
无参考像素Ni或其变体对应的语法元素:p[0],p[1](两个分量)
或者
无参考像素Ni或其变体对应的语法元素:p[0],p[1],p[2](三个分量)。
7)实施和变体例7:码流含有的语法元素
码流的编码块或解码块或PU或CU或CTU或LCU部分码流段包括载入了下列参数或其变体的语法元素的全部或部分:
第一类模式(如编解码模式),
第二类模式(如复制路径形状模式),
第三类模式(如像素样值排列方式),
第四类模式(如2-4种不同的参数编码模式,不同的参数2值化和/或熵编码模式),
调色板头信息(如,调色板中像素的个数以及像素的数值或者复用规则),
调色板/复制标记位1,样值子集编号1或空,(索引或复制位置1,复制 大小1)或无参考样值1或空,
调色板/复制标记位2,样值子集编号2或空,(索引或复制位置2,复制大小2)或无参考样值2或空,
…………
更多的调色板/复制标记位,样值子集编号或空,(索引或复制位置,复制大小)或无参考样值或空,
…………
调色板/复制标记位N,样值子集编号N或空,(索引或复制位置N,复制大小N)或无参考样值N或空,
复制残差或空;
所有所述语法元素在码流中的放置排列顺序并不是唯一的,可采用任意一种预先确定的合理的顺序;任何一个语法元素也可以被拆成几部分,所述几部分可以集中放置在码流中同一地方,也可以分别放置在码流中不同的地方;任何若干语法元素也可以合并成一个语法元素;任何语法元素也可以不存在于某个编码块或解码块或PU或CU或CTU或LCU的码流段中;
码流段中的调色板/复制标记位,索引或复制位置,复制大小,无参考像素样值等参数,可以是这些参数本身,也可以是这些参数经过预测编码、匹配编码、变换编码、量化编码、DPCM、一阶和高阶差分编码、映射编码、游程编码、索引编码等各种常用技术编码后的变体;
所述复制位置,复制大小,无参考像素分别可以仅有一个分量,也可以有两个分量,或者进一步划分成三个分量甚至更多分量
所述样值子集编号可以是复制位置的一部分,或者只有一个样值子集,这时,样值子集编号为空。
8)实施和变体例8:重构参考像素样值集的分量排列格式、色彩格式和像素样值排列方式
重构参考像素样值包括下列分量排列格式、色彩格式、像素样值排列方式:
叠包格式、YUV或GBR色彩格式、LCU或CU内垂直扫描1维串形排列方式,或者
叠包格式、YUV或GBR色彩格式、LCU或CU内水平扫描1维串形排列方式,或者
叠包格式、YUV或GBR色彩格式、图像固有的2维排列方式,或者
平面格式、YUV或GBR色彩格式、LCU或CU内垂直扫描1维串形排列方式,或者
平面格式、YUV或GBR色彩格式、LCU或CU内水平扫描1维串形排列方式,或者
平面格式、YUV或GBR色彩格式、图像固有的2维排列方式,或者
空集。
9)实施和变体例9:参考串和其复制位置及复制长度的例(复制左边,复制上边)
参考串和当前串可以有互相重叠的样值位置,即参考串的复制位置D和复制长度L满足下列关系:D<L;这时,当前串的L个样值是参考串的第一个样值与当前串的第一个样值之间的D个样值(即当前串的第一个样值之前的D个样值)的重复,也就是:
当D=1<L时,当前串是当前串的第一个样值(即当前样值)之前的那个样值P重复L次:PPP……PP,即当前串的L个样值都是P;这种情况等同与当前样值之前的那个样值P重复L+1次;如果P在第二参考缓存中,其在第二参考缓存中的复制位置是D2,那么这个P就可以与当前串合并,用复制位置=D2,复制大小=L+1的点复制的参考点来表示;
当D=2<L而L是偶数时,当前串是当前样值之前的两个样值P1P2重复L/2次:P1P2P1P2……P1P2,即当前串的L个样值都是P1P2的重复;
当D=2<L而L是奇数时,当前串是当前样值之前的两个样值P1P2重复 (L-1)/2次后再加上P1:P1P2P1P2……P1P2P1,即当前串的L个样值都是P1P2的重复,最后再加上P1;
当D=3<L时,当前串是当前样值之前的三个样值P1P2P3的重复一直到长度达到L为止;
当D=4<L时,当前串是当前样值之前的四个样值P1P2P3P4的重复一直到长度达到L为止;
当D<L时,匹配当前串是当前样值之前的D个样值P1P2……PD-1PD的重复一直到长度达到L为止;
或者
在一个水平(或垂直)方向的总样值数为X的CU内,参考串在当前串的相邻正上方(或正左边),即参考串的复制位置D=X;当这种情况出现的频度很高时,D=X用一个特殊的较短的码放入码流;
或者
在一个水平(或垂直)方向的总样值数为X的CU内,匹配参考串在匹配当前串的正上方(或正左边)但并不一定相邻,即匹配串的复制位置D满足下列关系:D=nX;当这种情况出现的频度很高时,D=nX用若干特殊的较短的码来表示n并放入码流。
10)实施和变体例10:参考像素样值是重构像素样值的变体的例
参考像素样值是重构像素样值经过数值量化和反量化运算的样值;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,计算一次之后,不再变动;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,所述数值量化和反量化运算使用编码或解码量化参数来计算;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,所述数值量化和反量化运算使用参考像素样值所在CU的编码或解码量化参数来计算;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,所述 数值量化和反量化运算使用参考像素样值所在CU的编码或解码量化参数来计算,计算一次之后,不再变动;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,所述数值量化和反量化运算使用当前CU的编码或解码量化参数来计算;或者
参考像素样值是重构像素样值经过数值量化和反量化运算的样值,所述数值量化和反量化运算使用当前CU的编码或解码量化参数来计算,每编码或解码一个CU,要重新计算一次;或者
参考像素样值是重构像素样值经过颜色量化的样值;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用基于颜色的像素聚类获得的一个调色板来计算;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用一个与参考像素样值所在编码块或解码块或PU或CU或CTU或LCU关联的基于颜色的像素聚类获得的调色板来计算;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用一个与参考像素样值所在编码块或解码块或PU或CU或CTU或LCU关联的基于颜色的像素聚类获得的调色板来计算,计算一次之后,不再变动;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用一个与参考像素样值所在编码块或解码块或PU或CU或CTU或LCU关联的基于颜色的像素聚类获得的动态更新部分内容的调色板来计算,计算一次之后,不再变动;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用一个与当前编码块或解码块或PU或CU或CTU或LCU关联的基于颜色的像素聚类获得的调色板来计算;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用一个与当前编码块或解码块或PU或CU或CTU或LCU关联的基于颜色的像素聚类获得的调色板来计算,每编码或解码一个编码块或解码块或PU或CU或CTU或LCU,要重新计算一次;或者
参考像素样值是重构像素样值经过颜色量化的样值,所述颜色量化采用 一个全局的基于颜色的像素聚类获得的调色板来计算。
11)实施和变体例11:复制位置的变体(差分等)和格式(1维或2维等)
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式排列成一个1维的数组,数组中每个样值都有一个线性地址,当前串的复制位置是对应的参考串的第一个样值的线性地址减去所述当前串的第一个样值的线性地址;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置经过熵编码的语法元素;所述复制位置通常是一个单变量参数即只有1个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式排列成一个1维的数组,数组中每个样值都有一个线性地址,当前串的复制位置是对应的参考串的第一个样值的线性地址减去所述当前串的第一个样值的线性地址;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置与其他复制位置经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;所述复制位置通常是一个单变量参数即只有1个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式排列成一个2维的数组,数组中每个样值都有一个平面坐标,当前串的复制位置是对应的参考串的第一个样值的平面坐标减去所述当前串的第一个样值的平面坐标;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置经过熵编码的语法元素;所述复制位置通常是一个双变量参数即有2个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式排列成一个2维的数组,数组中每个样值都有一个平面坐标,当前串的复制位置是对应的参考串的第一个样值的平面坐标减去所述当前串的第一个样值的平面坐标;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置与其他复制位置经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;所述复制位置通常是一 个双变量参数即有2个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式先划分成若干区域,每个区域内的样值再排列成一个2维的数组,区域和数组中每个样值都有一个区域编号和一个平面坐标,当前串的复制位置是对应的参考串的第一个样值的区域编号和平面坐标减去所述当前串的第一个样值的区域编号和平面坐标;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置经过熵编码的语法元素;所述复制位置通常是一个三变量参数即有3个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式先划分成若干区域,每个区域内的样值再排列成一个2维的数组,区域和数组中每个样值都有一个区域编号和一个平面坐标,当前串的复制位置是对应的参考串的第一个样值的区域编号和平面坐标减去所述当前串的第一个样值的区域编号和平面坐标;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置与其他复制位置经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;所述复制位置通常是一个三变量参数即有3个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式先划分成若干区域,每个区域内的样值再排列成一个1维的数组,区域和数组中每个样值都有一个区域编号和一个线性地址,当前串的复制位置是对应的参考串的第一个样值的区域编号和线性地址减去所述当前串的第一个样值的区域编号和线性地址;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置经过熵编码的语法元素;所述复制位置通常是一个双变量参数即有2个分量;或者
重构参考像素样值集的样值和当前CU的样值按照预先规定的方式先划分成若干区域,每个区域内的样值再排列成一个1维的数组,区域和数组中每个样值都有一个区域编号和一个线性地址,当前串的复制位置是对应的参考串的第一个样值的区域编号和线性地址减去所述当前串的第一个样值的区域编号和线性地址;所述复制位置在压缩数据比特流中对应的语法元素是所述复制位置与其他复制位置经过排列方式转换和/或映射运算和/或串匹配编 码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;所述复制位置通常是一个双变量参数即有2个分量。
12)实施和变体例12:复制长度的变体(差分等)和格式(单变量或双变量等)
当前串的复制长度L是一个单变量参数;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的单变量参数经过熵编码的语法元素;或者
当前串的复制长度L是一个单变量参数;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的单变量参数与其他复制长度的单变量参数经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;或者
在一个水平(或垂直)方向的总样值数为X的CU内,当前串的复制长度L被分解成一对双变量参数(k,LL),其中k是满足(k-1)X+1≤L≤kX的一个正整数,而LL=L-(k-1)X;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的双变量参数经过熵编码的语法元素;或者
在一个水平(或垂直)方向的总样值数为X的CU内,当前串的复制长度L被分解成一对双变量参数(k,LL),其中k是满足(k-1)X+1≤L≤kX的一个正整数,而LL=L-(k-1)X;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的双变量参数与其他复制长度的双变量参数经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;或者
其第一个像素样值与当前CU的右边界(或下边界)之间的水平(或垂直)距离为X的当前串的复制长度L被分解成一对双变量参数(k,LL),其中k是满足(k-1)X+1≤L≤kX的一个正整数,而LL=L-(k-1)X;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的双变量参数经过熵编码的语法元素;或者
其第一个像素样值与当前CU的右边界(或下边界)之间的水平(或垂直)距离为X的当前串的复制长度L被分解成一对双变量参数(k,LL),其 中k是满足(k-1)X+1≤L≤kX的一个正整数,而LL=L-(k-1)X;所述复制长度在压缩数据比特流中对应的语法元素是所述复制长度的双变量参数与其他复制长度的双变量参数经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素。
13)实施和变体例13:无参考像素的变体(差分等)
无参考像素在压缩数据比特流中对应的语法元素是所述无参考像素经过熵编码的语法元素;或者
无参考像素在压缩数据比特流中对应的语法元素是所述无参考像素与其他无参考像素经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过熵编码的语法元素;或者
无参考像素在压缩数据比特流中对应的语法元素是所述无参考像素经过量化运算后再经过熵编码的语法元素;或者
无参考像素在压缩数据比特流中对应的语法元素是所述无参考像素与其他无参考像素经过排列方式转换和/或映射运算和/或串匹配编码和/或一阶或高阶预测和差分运算后再经过量化运算后再经过熵编码的语法元素。
上述实施例提供的图像处理的方法和装置,能够充分发掘和利用图像中各编码图像区域的特点,提高图像压缩效果。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,本发明还可有其他多种实施例,在不背离本发明精神及 其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
工业实用性
上述技术方案能够充分发掘和利用图像中各编码图像区域的特点,提高图像压缩效果。

Claims (86)

  1. 一种图像编码方法,该方法包括:
    确定编码块的编码方式;
    对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
  2. 如权利要求1所述的方法,其中:
    所述编码方式包括以下编码方式中的一种或多种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
  3. 如权利要求1所述的方法,其中:
    所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
  4. 如权利要求2或3所述的方法,其中:
    对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,包括:
    构造或获取调色板,对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
    对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
  5. 如权利要求4所述的方法,对所述编码块使用多种编码方式进行混合编码,还包括:
    将所述编码块中的像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
  6. 如权利要求5所述的方法,其中:
    将所述编码块中的像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中,包括:
    在所述编码块的码流中混合写入所述像素段的解码方式的标识码。
  7. 如权利要求4所述的方法,其中:
    所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;
    所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
  8. 如权利要求2所述的方法,其中:
    对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码,包括:
    在对所述编码块中的像素样值段采用串复制编码时,根据所述编码块的串复制编码的复制路径形状模式从重构参考像素样值集内获取与所述像素样值段匹配的参考像素样值串。
  9. 如权利要求8所述的方法,其中:
    所述串复制编码的复制路径形状模式包括以下模式的任意一种:
    模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
    模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
    模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
    模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
    模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自 上而下扫描而奇数列自下而上扫描;
    模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
    模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
  10. 如权利要求8所述的方法,其中:
    在所述编码块采用了调色板编码和串复制编码混合的编码方式时,所述调色板编码的路径扫描方式与所述串复制编码的复制路径形状模式一致。
  11. 如权利要求8所述的方法,还包括:
    图像中只使用一种串复制编码的复制路径形状模式时,在所述图像对应的图像层信息单元中编码所述复制路径形状模式信息;和/或
    视频序列中只使用一种串复制编码的复制路径形状模式时,在所述视频序列的序列层信息单元中编码所述复制路径形状模式信息。
  12. 如权利要求11所述的方法,其中:
    所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
    所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
  13. 如权利要求4所述的方法,其中:
    对所述像素样值段进行复制编码,包括:从重构参考像素样值集中获取与所述像素样值段匹配的参考像素样值段;
    其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
    其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
  14. 如权利要求5所述的方法,还包括:
    在所述编码块所在图像对应的图像层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
    模式1:所述图像包含四种编码块类型:第1类、第2类、第3类、第4类;
    模式2:所述图像包含三种编码块类型:第1类、第2类、第3类;
    模式3:所述图像包含三种编码块类型:第1类、第2类、第4类;
    模式4:所述图像包含三种编码块类型:第1类、第3类、第4类;
    模式5:所述图像包含三种编码块类型:第2类、第3类、第4类;
    模式6~11:所述图像包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述图像包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述编码块类型包括:
    第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
    第2类:编码块采用了串复制编码和矩形复制编码;
    第3类:编码块采用了调色板编码和串复制编码;
    第4类:编码块采用了调色板编码和矩形复制编码。
  15. 如权利要求5所述的方法,还包括:
    在所述编码块所在视频序列对应的序列层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
    模式1:所述视频序列包含四种编码块类型:第1类、第2类、第3类、第4类;
    模式2:所述视频序列包含三种编码块类型:第1类、第2类、第3类;
    模式3:所述视频序列包含三种编码块类型:第1类、第2类、第4类;
    模式4:所述视频序列包含三种编码块类型:第1类、第3类、第4类;
    模式5:所述视频序列包含三种编码块类型:第2类、第3类、第4类;
    模式6~11:所述视频序列包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述视频序列包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述编码块类型包括:
    第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
    第2类:编码块采用了串复制编码和矩形复制编码;
    第3类:编码块采用了调色板编码和串复制编码;
    第4类:编码块采用了调色板编码和矩形复制编码。
  16. 如权利要求1-3中任一项所述的方法,其中:
    所述像素样值段的组成元素包括以下任意一种:像素、像素分量、像素索引。
  17. 如权利要求5所述的方法,其中:
    所述参数由多个子参数域组成,所述参数的同种类型的子参数域的编码比特放置在码流中的前后相连的一个或多个字段,或者,放置在码流中的不同字段。
  18. 如权利要求17所述的方法,其中:
    所述参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
  19. 如权利要求17或18所述的方法,其中:
    所述子参数域包括以下子参数域的至少一种:
    子参数域1:编码方式类型;所述编码方式类型包括以下类型的任意一种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码、矩形复制编码和无参考像素复制编码;
    子参数域2:索引或复制位置;
    子参数域3:索引长度或复制大小;
    子参数域4:无参考像素样值。
  20. 如权利要求17或18所述的方法,还包括:
    在所述编码块的码流中混合编码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
    信息字段1:编码块采用的编码模式;
    信息字段2:复制路径形状模式;
    信息字段3:像素样值排列方式;
    信息字段4:信息字段对应的参数编码方式列表;
    信息字段5:调色板编码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
    信息字段6:包含以下信息的至少一种:像素样值段对应的调色板编码或复制编码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
    信息字段7:复制残差或空。
  21. 如权利要求2或3所述的方法,其中:确定编码块的编码方式,包括:
    构造或获取调色板,和/或对编码块的像素进行预编码以确定像素样值段的编码方式,和/或确定编码块的串复制编码的复制路径形状模式、和/或确定 编码块的调色板编码的路径扫描方式。
  22. 一种图像解码方法,该方法包括:
    解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
    对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
  23. 如权利要求22所述的方法,其中:
    所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
  24. 如权利要求22所述的方法,其中:
    所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
  25. 如权利要求23或24所述的方法,其中:对所述解码块进行多种解码方式混合的解码,包括:
    从所述解码块的码流数据中获取像素样值段的参数;
    其中,所述参数包括调色板参数和/或复制参数。
  26. 如权利要求25所述的方法,其中:解析解码块的码流数据,确定所述解码块的像素样值段的解码方式,包括:
    从所述解码块的码流数据中获取像素样值段对应的解码方式的标识码。
  27. 如权利要求25所述的方法,其中:对所述解码块的所述像素样值段采用对应的解码方式进行解码,包括:
    在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
    在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码。
  28. 如权利要求25所述的方法,其中:
    所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
    所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
  29. 如权利要求27所述的方法,其中:
    在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码,包括:
    在所述像素样值段采用串复制解码时,确定所述解码块的串复制解码的复制路径形状模式,根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串。
  30. 如权利要求29所述的方法,还包括:
    在根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串后,将所述参考像素样值串的值直接或间接赋值予所述像素样值段。
  31. 如权利要求29所述的方法,其中:
    所述串复制解码的复制路径形状模式包括以下模式的任意一种:
    模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
    模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
    模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
    模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
    模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
    模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
  32. 如权利要求29所述的方法,其中:
    所述解码块使用调色板解码和串复制解码混合的解码方式时,调色板解码的路径扫描方式与串复制解码的复制路径形状模式一致。
  33. 如权利要求29所述的方法,其中:
    所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
    其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
  34. 如权利要求29所述的方法,还包括:
    从图像的图像层信息单元中获取所述复制路径形状模式信息,所述信息指示所述图像中所有解码块使用指定的复制路径形状模式;和/或
    从视频序列的序列层信息单元中获取所述复制路径形状模式信息,所述信息指示所述序列中所有解码块使用指定的复制路径形状模式。
  35. 如权利要求34所述的方法,其中:
    所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
    所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
  36. 如权利要求26所述的方法,还包括:
    从所述解码块所在图像对应的图像层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
    模式1:所述图像包含四种解码块类型:第1类、第2类、第3类、第4类;
    模式2:所述图像包含三种解码块类型:第1类、第2类、第3类;
    模式3:所述图像包含三种解码块类型:第1类、第2类、第4类;
    模式4:所述图像包含三种解码块类型:第1类、第3类、第4类;
    模式5:所述图像包含三种解码块类型:第2类、第3类、第4类;
    模式6~11:所述图像包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述图像包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述解码块类型包括:
    第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
    第2类:解码块采用了串复制解码和矩形复制解码;
    第3类:解码块采用了调色板解码和串复制解码;
    第4类:解码块采用了调色板解码和矩形复制解码。
  37. 如权利要求26所述的方法,还包括:
    从所述解码块所在视频序列对应的序列层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
    模式1:所述视频序列包含四种解码块类型:第1类、第2类、第3类、第4类;
    模式2:所述视频序列包含三种解码块类型:第1类、第2类、第3类;
    模式3:所述视频序列包含三种解码块类型:第1类、第2类、第4类;
    模式4:所述视频序列包含三种解码块类型:第1类、第3类、第4类;
    模式5:所述视频序列包含三种解码块类型:第2类、第3类、第4类;
    模式6~11:所述视频序列包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述视频序列包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述解码块类型包括:
    第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
    第2类:解码块采用了串复制解码和矩形复制解码;
    第3类:解码块采用了调色板解码和串复制解码;
    第4类:解码块采用了调色板解码和矩形复制解码。
  38. 如权利要求22-24中任一项所述的方法,其中:
    所述像素样值段的组成元素包括以下任意一种:像素、像素分量、像素索引。
  39. 如权利要求25所述的方法,其中:
    所述参数由多个子参数域组成,所述参数的同种类型的子参数域的输入比特位于码流中的前后相连的一个或多个字段,或者,位于码流中的不同字段。
  40. 如权利要求39所述的方法,其中:
    所述参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
  41. 如权利要求39或40所述的方法,其中:
    所述参数的子参数域包括以下子参数域的至少一种:
    子参数域1:解码方式类型;所述解码方式类型包括以下类型的任意一种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码、矩形复制解码和无参考像素复制解码;
    子参数域2:索引或复制位置;
    子参数域3:索引长度或复制大小;
    子参数域4:无参考像素样值。
  42. 如权利要求23或24所述的方法,其中:
    解析解码块的码流数据,确定所述解码块的像素样值段的解码方式,包括:
    从所述解码块的码流中混合解码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
    信息字段1:解码块采用的解码模式;
    信息字段2:复制路径形状模式;
    信息字段3:像素样值排列方式;
    信息字段4:信息字段对应的参数解码方式列表;
    信息字段5:调色板解码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
    信息字段6:包含以下信息的至少一种:像素样值段对应的调色板解码或复制解码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
    信息字段7:复制残差或空。
  43. 一种图像编码装置,包括:
    编码方式确定模块,设置为确定编码块的编码方式;
    编码模块,设置为对所述编码块使用多种编码方式进行混合编码,包括:对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码。
  44. 如权利要求43所述的装置,其中:
    所述编码方式包括以下编码方式中的一种或多种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码和矩形复制编码。
  45. 如权利要求43所述的装置,其中:
    所述编码块是图像的一个编码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
  46. 如权利要求44或45所述的装置,其中:
    编码模块,是设置为通过如下方式实现对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码:
    对所述像素样值段进行调色板编码,生成与调色板解码有关的调色板参数;或者
    对所述像素样值段进行复制编码,生成与复制编码有关的复制参数。
  47. 如权利要求46所述的装置,
    编码模块,还设置为通过如下方式对所述编码块使用多种编码方式进行混合编码:
    将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中。
  48. 如权利要求47所述的装置,其中:
    编码模块,是设置为通过如下方式实现将所述编码块中的所述像素样值段分别进行编码后生成的参数混合写入所述编码块的码流中:
    在所述编码块的码流中混合写入所述像素段的解码方式的标识码。
  49. 如权利要求46所述的装置,其中:
    所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
    所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
  50. 如权利要求44所述的装置,其中:
    编码模块,是设置为通过如下方式实现对所述编码块中的像素样值段采用所述多种编码方式中的一种进行编码:
    在对所述编码块中的像素样值段采用串复制编码时,根据所述编码块的串复制编码的复制路径形状模式从重构参考像素样值集内获取与所述像素样值段匹配的参考像素样值串。
  51. 如权利要求50所述的装置,其中:
    所述串复制编码的复制路径形状模式包括以下模式的任意一种:
    模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
    模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
    模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
    模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫描,行间从上至下扫描;
    模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交 替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
    模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
  52. 如权利要求50所述的装置,其中:
    在所述编码块采用了调色板编码和串复制编码混合的编码方式时,所述调色板编码的路径扫描方式与所述串复制编码的复制路径形状模式一致。
  53. 如权利要求50所述的装置,
    编码模块,还设置为在图像中只使用一种串复制编码的复制路径形状模式时,在所述图像对应的图像层信息单元中编码所述复制路径形状模式信息;和/或,在视频序列中只使用一种串复制编码的复制路径形状模式时,在所述视频序列的序列层信息单元中编码所述复制路径形状模式信息。
  54. 如权利要求53所述的装置,其中,
    所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
    所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
  55. 如权利要求46所述的装置,其中:
    编码模块,是设置为通过如下方式实现对所述像素样值段进行复制编码:从重构参考像素样值集中获取与所述像素样值段匹配的参考像素样值段;
    其中,所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
    其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
  56. 如权利要求47所述的装置,
    编码模块,还设置为在所述编码块所在图像对应的图像层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
    模式1:所述图像包含四种编码块类型:第1类、第2类、第3类、第4类;
    模式2:所述图像包含三种编码块类型:第1类、第2类、第3类;
    模式3:所述图像包含三种编码块类型:第1类、第2类、第4类;
    模式4:所述图像包含三种编码块类型:第1类、第3类、第4类;
    模式5:所述图像包含三种编码块类型:第2类、第3类、第4类;
    模式6~11:所述图像包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述图像包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述编码块类型包括:
    第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
    第2类:编码块采用了串复制编码和矩形复制编码;
    第3类:编码块采用了调色板编码和串复制编码;
    第4类:编码块采用了调色板编码和矩形复制编码。
  57. 如权利要求47所述的装置,
    编码模块,还设置为在所述编码块所在视频序列对应的序列层信息单元中编码编码块模式信息,其中,所述编码块模式信息包括以下模式的至少一种:
    模式1:所述视频序列包含四种编码块类型:第1类、第2类、第3类、第4类;
    模式2:所述视频序列包含三种编码块类型:第1类、第2类、第3类;
    模式3:所述视频序列包含三种编码块类型:第1类、第2类、第4类;
    模式4:所述视频序列包含三种编码块类型:第1类、第3类、第4类;
    模式5:所述视频序列包含三种编码块类型:第2类、第3类、第4类;
    模式6~11:所述视频序列包含两种编码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述视频序列包含一种编码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述编码块类型包括:
    第1类:编码块采用了调色板编码、串复制编码和矩形复制编码;
    第2类:编码块采用了串复制编码和矩形复制编码;
    第3类:编码块采用了调色板编码和串复制编码;
    第4类:编码块采用了调色板编码和矩形复制编码。
  58. 如权利要求43-45中任一项所述的装置,其中:
    所述像素样值段的组成元素包括以下任意一种:像素、像素分量、像素索引。
  59. 如权利要求47所述的装置,其中:
    所述参数由多个子参数域组成,所述解码参数的同种类型的子参数域的编码比特放置在码流中的前后相连的一个或多个字段,或者,放置在码流中的不同字段。
  60. 如权利要求59所述的装置,其中:
    所述参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
  61. 如权利要求59或60所述的装置,其中:
    所述子参数域包括以下子参数域的至少一种:
    子参数域1:编码方式类型;所述编码方式类型包括以下类型的任意一种:调色板编码、块复制编码、微块复制编码、条复制编码、串复制编码、矩形复制编码和无参考像素复制编码;
    子参数域2:索引或复制位置;
    子参数域3:复制大小;
    子参数域4:无参考像素样值。
  62. 如权利要求59或60所述的装置,
    编码模块,还设置为在所述编码块对应的码流中混合编码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
    信息字段1:编码块采用的编码模式;
    信息字段2:复制路径形状模式;
    信息字段3:像素样值排列方式;
    信息字段4:信息字段对应的参数编码方式列表;
    信息字段5:调色板编码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
    信息字段6:包含以下信息的至少一种:像素样值段对应的调色板编码或复制编码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的索引长度或复制大小、和像素样值段对应的无参考像素样值或空;
    信息字段7:复制残差或空。
  63. 如权利要求45或46所述的装置,其中:
    编码方式确定模块,是设置为通过如下方式实现确定编码块的编码方式:构造或获取调色板,和/或对编码块的像素进行预编码以确定像素样值段的编码方式,和/或确定编码块的串复制编码的复制路径形状模式、和/或确定编码块的调色板编码的路径扫描方式。
  64. 一种图像解码装置,包括:
    解析模块,设置为解析解码块的码流数据,确定所述解码块的像素样值段的解码方式;
    解码模块,设置为对所述解码块进行多种解码方式混合的解码,包括:对所述解码块的所述像素样值段采用对应的解码方式进行解码。
  65. 如权利要求64所述的装置,其中:
    所述解码方式包括以下解码方式的一种或多种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码和矩形复制解码。
  66. 如权利要求64所述的装置,其中:
    所述解码块是图像的一个解码区域,包括以下至少一种:最大编码单元LCU、编码树单元CTU、编码单元CU、CU的子区域、预测单元PU、变换单元TU、和不对称划分AMP。
  67. 如权利要求65或66所述的装置,其中:
    解码模块,是设置为通过如下方式实现对所述解码块进行多种解码方式混合的解码:从所述解码块的码流数据中获取像素样值段的参数;
    其中,所述参数包括调色板参数和/或复制参数。
  68. 如权利要求67所述的装置,其中:
    解析模块,是设置为通过如下方式实现解析当前解码块的码流数据,确定当前解码块的像素样值段对应的解码方式:
    从当前解码块的码流数据中获取像素样值段对应的解码方式的标识码。
  69. 如权利要求67所述的装置,其中:
    解码模块,是设置为通过如下方式实现对所述解码块的所述像素样值段采用对应的解码方式进行解码:
    在所述像素样值段使用调色板解码方式时,根据调色板参数对所述像素样值段进行调色板解码;和/或
    在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值 段进行复制解码。
  70. 如权利要求67所述的装置,其中:
    所述调色板参数包括以下参数的至少一种:调色板像素样值的索引和重复该索引的索引游程的长度、复制上方索引的索引游程的长度;和/或
    所述复制参数包括以下参数的至少一种:复制位置、和复制大小。
  71. 如权利要求69所述的装置,其中:
    解码模块,是设置为通过如下方式实现在所述像素样值段使用复制解码方式时,根据复制参数对所述像素样值段进行复制解码:
    在所述像素样值段采用串复制解码时,确定所述解码块的串复制解码的复制路径形状模式,根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串。
  72. 如权利要求71所述的装置,
    解码模块,还设置为在根据所述复制路径形状模式和复制参数从重构参考像素样值集内获取参考像素样值串后,将所述参考像素样值串的值直接或间接赋值予所述像素样值段。
  73. 如权利要求71所述的装置,其中:
    所述串复制解码的复制路径形状模式包括以下模式的任意一种:
    模式1:垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描;
    模式2:水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描从左向右扫描;
    模式3:垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列中样值垂直扫描自上而下扫描,列间从左至右扫描;
    模式4:水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行扫描,行中样值水平扫描从左向右扫 描,行间从上至下扫描;
    模式5:衍生的垂直路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按列扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式6:衍生的水平路径一维串形复制模式,参考像素样值串和当前像素样值串为一维样值串,样值按行扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描;
    模式7:衍生的垂直路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按列扫描,列间从左至右扫描,列中样值垂直扫描路径走向列间交替变化,包括:奇数列自上而下扫描而偶数列自下而上扫描,或者偶数列自上而下扫描而奇数列自下而上扫描;
    模式8:衍生的水平路径二维保形复制模式,参考像素样值串和当前像素样值串为形状相同的二维样值串,样值按行排列,行间从上至下扫描,行中样值水平扫描路径走向行间交替变化,包括:奇数行从左向右扫描而偶数行从右向左扫描,或者偶数行从左向右扫描而奇数行从右向左扫描。
  74. 如权利要求71所述的装置,其中:
    所述解码块使用调色板解码和串复制解码混合的解码方式时,调色板解码的路径扫描方式与串复制解码的复制路径形状模式一致。
  75. 如权利要求71所述的装置,其中:
    所述重构参考像素样值集包括:重构样值和/或重构样值的变体;
    其中,重构样值的变体包括:对重构样值进行处理和/或变换生成的样值。
  76. 如权利要求68所述的装置,
    解析模块,还设置为从图像的图像层信息单元中获取所述复制路径形状模式信息,所述信息指示所述图像中所有解码块使用指定的复制路径形状模式;和/或,从视频序列的序列层信息单元中获取所述复制路径形状模式信 息,所述信息指示所述序列中所有解码块使用指定的复制路径形状模式。
  77. 如权利要求76所述的装置,其中:
    所述图像层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息;和/或
    所述序列层信息单元包括以下信息单元中的至少一种:视频参数集VPS、序列参数集SPS、图像参数集PPS、和分片头信息。
  78. 如权利要求68所述的装置,
    解析模块,还设置为从所述解码块所在图像对应的图像层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
    模式1:所述图像包含四种解码块类型:第1类、第2类、第3类、第4类;
    模式2:所述图像包含三种解码块类型:第1类、第2类、第3类;
    模式3:所述图像包含三种解码块类型:第1类、第2类、第4类;
    模式4:所述图像包含三种解码块类型:第1类、第3类、第4类;
    模式5:所述图像包含三种解码块类型:第2类、第3类、第4类;
    模式6~11:所述图像包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述图像包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述解码块类型包括:
    第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
    第2类:解码块采用了串复制解码和矩形复制解码;
    第3类:解码块采用了调色板解码和串复制解码;
    第4类:解码块采用了调色板解码和矩形复制解码。
  79. 如权利要求68所述的装置,
    解析模块,还设置为从所述解码块所在视频序列对应的序列层信息单元中获取解码块模式信息,其中,所述解码块模式信息包括以下模式的至少一种:
    模式1:所述视频序列包含四种解码块类型:第1类、第2类、第3类、第4类;
    模式2:所述视频序列包含三种解码块类型:第1类、第2类、第3类;
    模式3:所述视频序列包含三种解码块类型:第1类、第2类、第4类;
    模式4:所述视频序列包含三种解码块类型:第1类、第3类、第4类;
    模式5:所述视频序列包含三种解码块类型:第2类、第3类、第4类;
    模式6~11:所述视频序列包含两种解码块类型:第1类、第2类、第3类和第4类中的任意两种类型;
    模式12~15:所述视频序列包含一种解码块类型:第1类、第2类、第3类和第4类中的任意一种类型;
    其中,所述解码块类型包括:
    第1类:解码块采用了调色板解码、串复制解码和矩形复制解码;
    第2类:解码块采用了串复制解码和矩形复制解码;
    第3类:解码块采用了调色板解码和串复制解码;
    第4类:解码块采用了调色板解码和矩形复制解码。
  80. 如权利要求64-66中任一项所述的装置,其中:
    所述像素样值段的组成元素包括以下任意一种:像素、像素分量、像素索引。
  81. 如权利要求67所述的装置,其中:
    所述参数由多个子参数域组成,所述参数的同种类型的子参数域的输入比特位于码流中的前后相连的一个或多个字段,或者,位于码流中的不同字段。
  82. 如权利要求81所述的装置,其中:
    所述参数的子参数域包括单分量子参数域、双分量子参数域、或三分量子参数域。
  83. 如权利要求81或82所述的装置,其中:
    所述参数的子参数域包括以下子参数域的至少一种:
    子参数域1:解码方式类型;所述解码方式类型包括以下类型的任意一种:调色板解码、块复制解码、微块复制解码、条复制解码、串复制解码、矩形复制解码和无参考像素复制解码;
    子参数域2:索引或复制位置;
    子参数域3:索引长度或复制大小;
    子参数域4:无参考像素样值。
  84. 如权利要求65或66所述的装置,其中:
    解析模块,是设置为通过如下方式实现解析解码块的码流数据,确定所述解码块的像素样值段的解码方式:
    从所述解码块码流中混合解码像素样值段的信息字段,所述码流中包含以下一种或多种信息字段:
    信息字段1:解码块采用的解码模式;
    信息字段2:复制路径形状模式;
    信息字段3:像素样值排列方式;
    信息字段4:信息字段对应的参数解码方式列表;
    信息字段5:调色板解码头信息,包括调色板中像素的个数以及像素的数值或者复用规则;
    信息字段6:包含以下信息的至少一种:像素样值段对应的调色板解码或复制解码标识码、像素样值段对应的样值子集编号或空、像素样值段对应的索引或复制位置、像素样值段对应的复制大小、和像素样值段对应的无参考像素样值或空;
    信息字段7:复制残差或空。
  85. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1~21中任一项所述的方法。
  86. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求22~42中任一项所述的方法。
PCT/CN2015/094817 2014-11-28 2015-11-17 图像编码方法、解码方法、编码装置和解码装置 WO2016082699A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/529,998 US10341651B2 (en) 2014-11-28 2015-11-17 Image coding method, decoding method, coding device and decoding device
EP15862330.6A EP3211900A4 (en) 2014-11-28 2015-11-17 Image coding method, decoding method, coding device and decoding device
EP21170107.3A EP3876537A1 (en) 2014-11-28 2015-11-17 Image coding method, decoding method, coding device and decoding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410709902.2 2014-11-28
CN201410709902.2A CN105704491B (zh) 2014-11-28 2014-11-28 图像编码方法、解码方法、编码装置和解码装置

Publications (1)

Publication Number Publication Date
WO2016082699A1 true WO2016082699A1 (zh) 2016-06-02

Family

ID=56073592

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/094817 WO2016082699A1 (zh) 2014-11-28 2015-11-17 图像编码方法、解码方法、编码装置和解码装置

Country Status (4)

Country Link
US (1) US10341651B2 (zh)
EP (2) EP3211900A4 (zh)
CN (1) CN105704491B (zh)
WO (1) WO2016082699A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106385585A (zh) * 2016-09-14 2017-02-08 苏睿 帧编解码的方法、装置和系统
CN107770544A (zh) * 2016-08-21 2018-03-06 上海天荷电子信息有限公司 采用多类匹配参数及前参数缓冲区的数据压缩方法和装置
WO2020169105A1 (en) * 2019-02-24 2020-08-27 Beijing Bytedance Network Technology Co., Ltd. Condition dependent coding of palette mode usage indication
US20220159241A1 (en) 2019-07-29 2022-05-19 Beijing Bytedance Network Technology Co., Ltd. Palette mode coding in prediction process
US11611753B2 (en) 2019-07-20 2023-03-21 Beijing Bytedance Network Technology Co., Ltd. Quantization process for palette mode
US11677935B2 (en) 2019-07-23 2023-06-13 Beijing Bytedance Network Technology Co., Ltd Mode determination for palette mode coding

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104853209B (zh) * 2014-02-16 2020-09-29 同济大学 图像编码、解码方法及装置
JP6164360B2 (ja) * 2014-03-14 2017-07-19 富士通株式会社 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法
CN105828080B (zh) 2015-01-26 2020-02-14 同济大学 图像编解码方法及装置
EP3243330B1 (en) * 2015-02-13 2021-10-27 MediaTek Inc. Method for palette syntax coding in video and image compression
GB2547047B (en) * 2016-02-08 2018-07-18 Canon Kk Encoder optimizations for palette lossless encoding of content with subsampled colour component
CN106157988B (zh) * 2016-07-25 2019-09-17 合一网络技术(北京)有限公司 播放多媒体文件的方法及装置
EP3586510A4 (en) * 2017-02-24 2020-08-12 RealNetworks, Inc. MOTION VECTOR SELECTION AND PREDICTION IN VIDEO ENCODING SYSTEMS AND METHODS
CN117241032A (zh) * 2017-03-12 2023-12-15 上海天荷电子信息有限公司 采用多种采样格式的图像及其序列、视频压缩方法和装置
US10742975B2 (en) 2017-05-09 2020-08-11 Futurewei Technologies, Inc. Intra-prediction with multiple reference lines
CN108989820B (zh) * 2017-06-03 2022-07-05 上海天荷电子信息有限公司 各阶段采用各自相应色度采样格式的数据压缩方法和装置
FR3075540A1 (fr) * 2017-12-15 2019-06-21 Orange Procedes et dispositifs de codage et de decodage d'une sequence video multi-vues representative d'une video omnidirectionnelle.
CN113615188A (zh) * 2019-03-08 2021-11-05 北京字节跳动网络技术有限公司 调色板模式使用指示的联合编解码
EP4325863A3 (en) * 2019-03-22 2024-04-03 LG Electronics Inc. Image decoding method and device and image encoding method and device in image coding system
CN113196764A (zh) 2019-04-23 2021-07-30 Oppo广东移动通信有限公司 图像解码方法、解码器以及存储介质
CN110087090B (zh) * 2019-05-20 2021-04-06 绍兴文理学院 采用混合串匹配和帧内预测的数据编码、解码方法
US11330306B2 (en) * 2019-08-07 2022-05-10 Tencent America LLC Method and apparatus for video coding
CN113727108B (zh) * 2020-05-26 2024-03-01 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法及相关设备
CN114827618B (zh) * 2020-06-02 2023-03-14 腾讯科技(深圳)有限公司 视频编码方法、视频解码方法及相关设备
US11503336B2 (en) * 2020-12-07 2022-11-15 Tencent America LLC Method and apparatus for video coding
CN112637600B (zh) * 2020-12-14 2024-04-05 绍兴文理学院 对数据进行有损或无损压缩的编码、解码的方法或装置
CN113452995A (zh) * 2021-03-31 2021-09-28 同济大学 当前串与参考串有不同扫描方向的数据编解码方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070116370A1 (en) * 2002-06-28 2007-05-24 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
CN101217668A (zh) * 2008-01-14 2008-07-09 浙江大学 基于块分类的混合图像压缩方法
CN102098507A (zh) * 2010-06-08 2011-06-15 同济大学 图像统合压缩方法及装置
CN102497546A (zh) * 2011-11-28 2012-06-13 同济大学 一种屏幕图像压缩装置及压缩方法
CN104853209A (zh) * 2014-02-16 2015-08-19 同济大学 图像编码、解码方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101583036B (zh) * 2009-06-22 2010-11-17 浙江大学 像素域视频转码中确定运动特征和高效编码模式关系的方法
CN105874795B (zh) * 2014-09-30 2019-11-29 微软技术许可有限责任公司 在波前并行处理被启用时对图片内预测模式的规则
TW201626798A (zh) * 2014-10-06 2016-07-16 Vid Scale Inc 用於螢幕內容編碼之改良調色編碼

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070116370A1 (en) * 2002-06-28 2007-05-24 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
CN101217668A (zh) * 2008-01-14 2008-07-09 浙江大学 基于块分类的混合图像压缩方法
CN102098507A (zh) * 2010-06-08 2011-06-15 同济大学 图像统合压缩方法及装置
CN102497546A (zh) * 2011-11-28 2012-06-13 同济大学 一种屏幕图像压缩装置及压缩方法
CN104853209A (zh) * 2014-02-16 2015-08-19 同济大学 图像编码、解码方法及装置

Non-Patent Citations (1)

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

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107770544A (zh) * 2016-08-21 2018-03-06 上海天荷电子信息有限公司 采用多类匹配参数及前参数缓冲区的数据压缩方法和装置
CN107770544B (zh) * 2016-08-21 2023-12-08 上海天荷电子信息有限公司 采用多类匹配参数及前参数缓冲区的数据压缩方法和装置
CN106385585A (zh) * 2016-09-14 2017-02-08 苏睿 帧编解码的方法、装置和系统
CN106385585B (zh) * 2016-09-14 2019-10-11 西安万像电子科技有限公司 帧编解码的方法、装置、系统、存储介质
WO2020169105A1 (en) * 2019-02-24 2020-08-27 Beijing Bytedance Network Technology Co., Ltd. Condition dependent coding of palette mode usage indication
US11677953B2 (en) 2019-02-24 2023-06-13 Beijing Bytedance Network Technology Co., Ltd. Independent coding of palette mode usage indication
US11611753B2 (en) 2019-07-20 2023-03-21 Beijing Bytedance Network Technology Co., Ltd. Quantization process for palette mode
US11924432B2 (en) 2019-07-20 2024-03-05 Beijing Bytedance Network Technology Co., Ltd Condition dependent coding of palette mode usage indication
US11677935B2 (en) 2019-07-23 2023-06-13 Beijing Bytedance Network Technology Co., Ltd Mode determination for palette mode coding
US11683503B2 (en) 2019-07-23 2023-06-20 Beijing Bytedance Network Technology Co., Ltd. Mode determining for palette mode in prediction process
US20220159241A1 (en) 2019-07-29 2022-05-19 Beijing Bytedance Network Technology Co., Ltd. Palette mode coding in prediction process

Also Published As

Publication number Publication date
EP3876537A1 (en) 2021-09-08
US10341651B2 (en) 2019-07-02
EP3211900A4 (en) 2017-09-06
CN105704491B (zh) 2020-03-13
CN105704491A (zh) 2016-06-22
US20170332073A1 (en) 2017-11-16
EP3211900A1 (en) 2017-08-30

Similar Documents

Publication Publication Date Title
WO2016082699A1 (zh) 图像编码方法、解码方法、编码装置和解码装置
WO2016054985A1 (zh) 图像编码、解码方法及装置
CN112383781B (zh) 参考块的位置决定其重构阶段的块匹配编解码方法和装置
KR101946598B1 (ko) 이미지 코딩, 디코딩 방법 및 장치
WO2015032350A1 (zh) 一种使用块匹配的图像压缩方法和装置
WO2015120823A1 (zh) 使用多种形式的参考像素存储空间的图像压缩方法和装置
CN105847842B (zh) 图像编码方法及装置、图像解码方法及装置
CN104754362B (zh) 使用精细划分块匹配的图像压缩方法
US10575022B2 (en) Image encoding and decoding method, image processing device and computer storage medium
US11917168B2 (en) Image encoding and decoding methods, image processing device, and computer storage medium
US11653019B2 (en) Image coding and decoding methods, image processing device and computer storage medium
WO2016202189A1 (zh) 图像编码及解码方法、图像处理设备、计算机存储介质
CN105992003B (zh) 依据排序或频度对调色板颜色编号的图像压缩方法和装置
CN106303534B (zh) 多种索引串与像素串融合复制方式的图像压缩方法和装置
CN106303535B (zh) 参考像素取自不同程度重构像素的图像压缩方法和装置
WO2016119746A1 (zh) 图像编码方法及装置、图像解码方法及装置
WO2016197893A1 (zh) 图像编码及解码方法、图像处理设备、计算机存储介质
EP3893191A1 (en) Method and device for image processing

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

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2015862330

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 15529998

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE