WO2018223353A1 - Video coding method, video decoding method, and related device - Google Patents

Video coding method, video decoding method, and related device Download PDF

Info

Publication number
WO2018223353A1
WO2018223353A1 PCT/CN2017/087633 CN2017087633W WO2018223353A1 WO 2018223353 A1 WO2018223353 A1 WO 2018223353A1 CN 2017087633 W CN2017087633 W CN 2017087633W WO 2018223353 A1 WO2018223353 A1 WO 2018223353A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
block
encoded
decoded
current
Prior art date
Application number
PCT/CN2017/087633
Other languages
French (fr)
Chinese (zh)
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 CN201780084713.2A priority Critical patent/CN110235446B/en
Priority to PCT/CN2017/087633 priority patent/WO2018223353A1/en
Publication of WO2018223353A1 publication Critical patent/WO2018223353A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction

Definitions

  • the present invention relates to the field of image processing, and more particularly to a video encoding method and apparatus, a video decoding method and apparatus.
  • the encoding compression process includes prediction, transform, quantization, and entropy encoding processes.
  • the prediction includes two types of intra prediction and inter prediction, and the purpose is to use the prediction block information to remove redundant information of the current image block to be encoded.
  • Intra prediction uses the information of the current frame image to obtain prediction block data.
  • Inter prediction uses the information of the reference frame to obtain prediction block data, the process comprising searching for a block that best matches the current image block or the sub-image block in the reference image in units of sub-image blocks obtained by image block or image block division. A prediction block; thereafter, the image block or sub-image block is subtracted from the corresponding pixel value of the prediction block to obtain a residual.
  • the object can be achieved by constructing a specific reference frame.
  • video content there is usually a specific type of coding scene in which the background does not change substantially, only the foreground in the video changes or moves.
  • video surveillance belongs to this type of scenario. In a video surveillance scene, it is usually monitored that the camera is stationary or only slow movement occurs. At this time, the background is considered to be substantially unchanged.
  • a particular reference frame can be constructed that contains only high quality background information
  • the background portion of the current encoded frame can be referenced by reference to the high quality specifics described when inter prediction is performed.
  • the reference frame is used to reduce the residual information of the inter prediction, thereby improving coding efficiency.
  • Constructing the specific reference frame may refresh the reconstructed pixel information of the image block considered to belong to the background into the same image block as the image block position in the specific reference frame by analyzing the encoded content of the encoded frame during the encoding process, Perform the above update operation every time one frame of image is encoded, and one frame of image The reconstructed pixel information of several of the image blocks is refreshed into the particular reference frame, and a particular configuration of the particular reference frame can be completed after encoding the plurality of images.
  • an image that is not used as a reference frame does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference frame may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played.
  • the prior art uses the reconstructed pixel information of the image block to refresh a specific reference frame without considering whether the image block is located in an image that is not used as a reference frame, the image that is not used as a reference frame is caused. It cannot be directly discarded during the decoding process, and the above functions cannot be implemented.
  • Embodiments of the present invention provide a video encoding method and apparatus, and a video decoding method and apparatus.
  • a video encoding method including:
  • a video decoding method including:
  • a video decoding apparatus including:
  • At least one memory for storing computer executable instructions
  • At least one processor singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
  • a device readable storage medium for a terminal, the machine readable storage medium having a plurality of computer instructions stored thereon, the computer encoding instructions being processed as described in the first aspect.
  • a fifth aspect provides a video decoding apparatus, including:
  • At least one memory for storing computer executable instructions
  • At least one processor singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
  • a machine readable storage medium which is applicable to a terminal, wherein the machine readable storage medium stores a plurality of computer instructions, and when the computer instructions are executed, processing the second aspect of the video decoding method.
  • a method for video encoding including:
  • a video decoding method including:
  • a ninth aspect provides a video encoding apparatus, including:
  • At least one memory for storing computer executable instructions
  • At least one processor singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
  • a video decoding apparatus including:
  • At least one memory for storing computer executable instructions
  • At least one processor singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
  • a machine readable storage medium for a terminal, the machine readable storage medium having a plurality of computer instructions stored thereon, the computer encoding instructions being processed to perform the video encoding method of the seventh aspect.
  • a machine readable storage medium for a terminal, the machine readable A plurality of computer instructions are stored on the storage medium, and when the computer instructions are executed, the video decoding method of the eighth aspect is processed.
  • FIG. 1 is a schematic diagram of an embodiment of a video encoding method of the present invention
  • FIG. 2 illustrates a relationship between an image block in an image to be currently encoded and an image block in a specific reference image
  • FIG. 3 is a schematic diagram showing the relationship between a plurality of images and a specific reference image in a video
  • FIG. 4 is a schematic diagram of still another embodiment of a method for video encoding according to the present invention.
  • FIG. 5 is a schematic diagram of a video decoding method according to another embodiment of the present invention.
  • FIG. 6 is a schematic flowchart diagram of still another embodiment of a video decoding method according to the present invention.
  • FIG. 7 is a schematic block diagram of a video encoding apparatus according to an embodiment of the present invention.
  • FIG. 8 is another schematic block diagram of a video encoding apparatus according to an embodiment of the present invention.
  • FIG. 9 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention.
  • FIG. 10 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention.
  • the methods, apparatus, and terminals described herein provide a variety of ways to update a particular reference image.
  • a video is made up of multiple images.
  • different images in the video can be predicted differently.
  • the image may be classified into an intra predicted image and an inter predicted image according to a prediction manner employed by the image, wherein the inter predicted image includes a forward predicted image and a bidirectional predicted image.
  • the I image is an intra prediction image, also referred to as a key frame;
  • the P image is a forward predicted image, that is, a P image or an I image that has been previously encoded is used as a reference image;
  • the B image is a bidirectional predicted image, that is, before and after The image is used as a reference image.
  • the encoding end encodes a plurality of images to generate a segment of a group of pictures (GOP), the GOP.
  • GOP group of pictures
  • the decoding end plays, it reads a segment of the GOP for decoding and then reads the picture and then renders the display.
  • the image can be initially divided into multiple image blocks.
  • an image may be divided into a plurality of image blocks, which are referred to as macroblocks or Largest Coding Units (LCUs) in some coding standards.
  • the image block may or may not have any overlapping portions.
  • the image can be divided into any number of image blocks.
  • the image can be divided into an array of m x n image blocks.
  • the image block may have a rectangular shape, a square shape, a circular shape, or any other shape.
  • the image block can have any size, such as p x q pixels.
  • images of different resolutions can be encoded by first dividing the image into small pieces.
  • an image block is referred to as a macroblock, which may be 16 x 16 pixels in size, and for HEVC, an image block is referred to as a maximum coding unit, which may be 64 x 64 in size.
  • a macroblock which may be 16 x 16 pixels in size
  • a maximum coding unit which may be 64 x 64 in size.
  • Each image block can have the same size and/or shape. Alternatively, two or more image blocks may have different sizes and/or shapes.
  • an image block may also be not a macroblock or a maximum coding unit, but a portion containing one macroblock or maximum coding unit, or at least two complete macroblocks (or maximum coding units), or A portion including at least one complete macroblock (or maximum coding unit) and one macroblock (or maximum coding unit), or at least two complete macroblocks (or maximum coding units) and some macroblocks (or maximum coding units) )part.
  • the image blocks in the image data can be separately encoded.
  • the content of the specific reference image is updated by using each image in the video to construct a specific reference image containing the background content of the scene, which is currently to be encoded when performing inter prediction.
  • the image or the background portion of the current image to be decoded may be used to reduce the residual information of the inter prediction by referring to the high quality specific reference image, thereby improving coding efficiency.
  • the specific reference image is a reference image as inter prediction.
  • the specific reference image may be a long term reference in a standard such as H.264/AVC or H.265/HEVC, or may be a standard such as AVS1-P2, AVS2-P2, IEEE 1857.9-P4, or the like.
  • the background picture in the background may also be a golden frame in the standards such as VP8 and VP9.
  • FIG. 1 is a schematic flowchart of an embodiment of a video encoding method according to the present invention.
  • the method is performed by an image processing apparatus, which may be various types of chips, image processors, and the like for image processing.
  • the method includes:
  • determining that the current image to be encoded is available as a reference image may occur prior to encoding the image to be encoded. In this way, each image block in the image to be encoded may be encoded according to the result of the determination or after encoding, and each image block is judged to satisfy the condition for updating the specific reference image.
  • it may be determined that the current image to be encoded may be used as a reference image, or may be generated when encoding each image block in the image to be encoded or after encoding, that is, when encoding each image block or after encoding, first determining the image block.
  • the current image can be used as a reference image, and when it is determined that it can be used as a reference image, it is determined that the image block can be used to update a specific reference image.
  • the I picture and the P picture can be used as reference pictures for inter prediction of other pictures
  • the current image to be encoded is determined as a reference image.
  • the partial B image (or bi-predictive image) can also be used as a reference image for inter-prediction of other images. For example, in Hierarchical B technology, a lower-level B image can be used as a reference. The frame is used. Therefore, when it is determined that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as the reference image.
  • the encoding end is also in a video parameter set (VPS), a sequence parameter set (SPS), a sequence header. a parameter or flag bit in at least one of a picture header, a slice header, a reference picture set (RPS), and a reference configuration set (RCS). To indicate that the current image to be encoded can be used as a reference image.
  • VPS video parameter set
  • SPS sequence parameter set
  • RCS reference picture set
  • RCS reference configuration set
  • the decision image block can be used to update a particular reference image, which can be determined by the pixel information of the image block. For example, when determining the same bit in the image block and the previously encoded image When the content difference of the placed block is small, the image block is considered to contain background content, which can be used to update a specific reference image. Of course, there are other methods that can be used to determine that an image block can be used to update a particular reference image.
  • the location of a particular image block in a particular reference image is the same as the location of the image block in the current image to be encoded.
  • FIG. 2 illustrates the relationship between an image block in an image to be currently encoded and an image block in a specific reference image.
  • the image blocks 210, 220 in the current image to be encoded shown in FIG. 2 are image blocks satisfying a preset condition, wherein the position of the image block 210 in the current image to be encoded is the same as the position of the image block 110 in the specific reference image.
  • the position of the image block 220 in the current image to be encoded and the image 120 in the specific reference image are the same.
  • the position in the particular reference image is offset from the position of the image block in the current image to be encoded by a preset offset value.
  • the particular image block in the particular reference image is updated according to the image block, specifically replacing the current content of the particular reference block with the pixel values of the image block.
  • the specific image block in the specific reference image is updated according to the image block, and the current pixel value of the specific reference block may be replaced after processing with the pixel value of the image block, and the processing may be based on the pixel of the image block.
  • the value is averaged with the pixel value of one image block in the specific reference image, or is weighted average according to the pixel value of the image block and the pixel value of the image block in the specific reference image, wherein the weighted average coefficient is a preset value or Analyzed in the code stream. Wherein, when the pixel value of the image block is used, the original pixel value of the image block may be used, or the reconstructed pixel value of the image block may be used.
  • image information that is not used as a reference image is not used for encoding and decoding processes of other images during encoding and decoding.
  • the image block in the current image to be encoded is considered to be used to update the specific reference image, thereby avoiding the construction process of the specific reference image and not being used as the reference image.
  • the definition of the image is contrary to the situation.
  • an image that is not used as a reference image does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference image may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played.
  • the image block in the current image to be encoded is used to update the specific reference image, thereby avoiding the use of the image block pair in the image that is not the reference image.
  • a specific reference image is updated, it is impossible to implement the discarding part. As a case of a reference image.
  • the current image to be encoded is not an image that is available as a reference image, it is determined that the image block is not used to update a particular reference image.
  • the image block can be determined to be used to update a particular reference image based on the pixel values of the image block and the pixel values of the encoded block, wherein the encoded block refers to an image at a particular location in the encoded image that precedes the current image to be encoded.
  • the coded block refers to the coded image of the previous frame (or the first two frames) of the current image to be encoded.
  • the specific location may be the same as the position of the image block in the current image to be encoded, or the position of the image block in the current image to be encoded plus a preset offset value.
  • the image block when it is determined that the image block is available for updating the specific reference image according to the pixel information of the image block and the pixel information of the encoded block, the image block may be used to update the specific reference image according to at least one of the following:
  • the total number of pixels of the luminance component of the image block and/or the encoded block is the total number of pixels of the luminance component of the image block and/or the encoded block
  • the total number of pixels of the chrominance component of the image block and/or the encoded block is the total number of pixels of the chrominance component of the image block and/or the encoded block.
  • the pixel value difference value of the luminance component between the image block and the coded block may be a distribution of the difference between the pixel values of the image block and the second coding block respectively at the same position, and may be an image block and The sum of the differences between the pixel values of the luminance components of the second coding block at the respective same positions, or the difference between the average value of the luminance components of the image block and the luminance component of the coded block at the average value of each pixel. value.
  • the pixel value difference value of the chrominance component between the image block and the coded block may be a distribution of the difference between the pixel values of the chrominance component of the image block and the second code block at the same position, and may be an image.
  • the sum of the difference between the pixel values of the block and the second coded block at each of the same positions, or the average of the chrominance components of the image block at each pixel and the chrominance component of the coded block at each pixel The difference between the averages.
  • the image block may be used to update the specific reference image according to the pixel value difference value of the luminance component between the image block and the coded block, and may specifically be the pixel value difference according to the luminance component between the image block and the second coded block.
  • the sum of the absolute values of the judgment image block can be used to update a specific reference image.
  • the image block is determined according to the pixel value difference of the chroma component between the image block and the coded block
  • the image block may be used to update a specific reference image according to a sum of absolute values of pixel value differences of chroma components between the image block and the second coded block.
  • the condition that the image block needs to satisfy includes that the number of specific pixels in the image block is less than the first threshold.
  • the specific pixel is a pixel whose difference between the pixel values of the pixels at the same position in the encoded block is not less than a second threshold.
  • the image is stored in three components, namely Y (brightness), U (chroma 1), and V (chroma 2).
  • the first color channel is a Y channel.
  • the coded block is an image block located in the encoded image of the previous frame (or the first two frames) of the current image to be encoded, the position is the same as the position of the image block, or the position of the image block is in the current image to be encoded.
  • the pixel difference of the Y component of the coded block and the Y component of the image block at any one of the same positions is Dist y.
  • the pixels in the image block corresponding to the Dist y are specific pixels.
  • the first threshold may be a preset value, or may be the total number of pixels of the Y component of the image block and a preset. The product of the ratio is not limited here.
  • the condition that the image block needs to satisfy includes that the pixel value difference of the luminance component between the image block and the encoded block is less than a third threshold.
  • the third threshold may be a preset value, or may be an image block.
  • the product of the total number of pixels of the Y component and a predetermined ratio is not limited herein.
  • the condition that the image block needs to satisfy includes that the pixel value difference of the chroma component between the image block and the encoded block is less than a fourth threshold.
  • the pixel value difference of the chroma component between the image block and the encoded block is less than a fourth threshold, and may be that the pixel value difference of the U component between the image block and the encoded block is less than a fourth threshold, or an image.
  • the pixel value difference of the V component between the block and the second coded block is less than a fourth threshold, or is an image.
  • the pixel value difference of the U component between the block and the coded block is less than a preset value, and the pixel value difference of the V component between the image block and the coded block is smaller than another preset value.
  • the fourth threshold when it is determined that the image block satisfies the condition that the pixel value difference of the chrominance component between the image block and the coded block is smaller than the fourth threshold, the fourth threshold may be a preset value, or may be an image block.
  • the product of the total number of pixels of the luminance component (or chrominance component) and a predetermined ratio is not limited herein.
  • the current image to be encoded is an I image or a random access point (RAP), or the current image to be encoded is both an I image and a random access point, according to the current image to be encoded.
  • the graphics block updates all of the image blocks of the particular reference image.
  • all image blocks of the image to be encoded may refer to all image blocks after the coded reconstruction of the current image to be encoded, and may also refer to all original image blocks of the current image to be encoded.
  • all image blocks in a particular reference image may be replaced with all image blocks of the current image to be encoded.
  • all the image blocks in the specific reference image are replaced by all the image blocks of the current image to be encoded, wherein the processing may be to average or perform weighted average on the pixel values of all the image blocks of the current image to be encoded.
  • the number of image blocks available for updating a particular reference image in the current image to be encoded may be one or more than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be encoded may be unlimited, that is, all image blocks in the current image to be encoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
  • the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be encoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
  • the specific reference image is updated according to each of the determined image blocks.
  • the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
  • the value of M corresponding to the current image to be encoded is determined based on the type of the image to be currently encoded.
  • the values of M corresponding to the current image to be encoded are different.
  • the current image to be encoded is an I image
  • the current image to be encoded has at most a first preset number of image blocks for updating the specific reference image
  • the current image to be encoded is a P image (or a forward predicted image).
  • the current image to be encoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be encoded is a B image (or a bidirectional predicted image), the current image to be encoded has at most a third
  • the preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
  • the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type of the image to be encoded currently. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image).
  • One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
  • the cost (cost) selected from all the image blocks that can be used to update the specific reference image determined from the current image to be encoded is less than the preset value.
  • the least cost M image blocks are used to update a specific reference image.
  • the cost of the image block is the sum of the pixel differences of the image blocks in the color channels; the pixel difference of the image block in each color channel is, each pixel of the image block and the third encoded block respectively The sum of the differences of the pixel values of the pixels having the same position in the color channel; the third coded block refers to the image block at a specific position in the encoded image before the image to be encoded currently.
  • the third encoded block refers to the encoded image in the previous frame (or the first two frames) of the current image to be encoded.
  • the particular location may be the same location as the image block in the current image to be encoded.
  • the image is stored in three components divided into YUV.
  • the pixel value difference between the image block and the third coding block on the three components of YUV is Dist Y, Dist U, and Dist V, and the total number of pixels of the image block on the luminance component is PixCount.
  • the cost of the image block (cost) (Dist Y+Dist U+Dist V)/PixCount.
  • the current reference image can be used to update the specific reference image
  • the current reference image from determining that the image block in the current image to be encoded is less than the preset value, if the determined number of image blocks is not greater than M, then all the image blocks Both can be used to update a specific reference image; if the determined number of image blocks is greater than M, it is determined that the M pieces of the least cost in the current image to be encoded can be used to update the specific reference image.
  • a flag bit of the image block is also encoded, the flag bit being used to identify whether the image block is used to update the particular reference image.
  • the code stream sent by the encoding end to the decoding end further includes flag bits of each image, wherein the flag bits of each image are used to indicate whether each image block in the image is used to update a specific reference image.
  • FIG. 3 is a schematic diagram showing the relationship between a plurality of images and a specific reference image in a video.
  • an image in which four of the videos are sequentially encoded is taken as an example, wherein the first three images are encoded images, and the fourth image is the current image to be encoded.
  • the first and third encoded images can be used as reference images, and the second encoded image is not available as a reference image.
  • the image block 11 and the image block 12 in the first encoded image are used to update a specific reference image.
  • the image block 31, the image block 32, the image block 33, and the image block 34 in the third encoded image are used to update a specific reference image.
  • pixel values in image blocks 11, 12, 31, 32, 33, 34 are used to replace pixel values of image blocks at the same location in a particular reference image, respectively.
  • the video encoding method when encoding the current image to be encoded is exemplified below.
  • determining that the current image to be encoded is available as a reference image according to the type of the image to be currently encoded. For example, since the current image to be encoded is an I image, it is determined that the current image to be encoded can be used as a reference image. Therefore, when each image block in the current image to be encoded is separately encoded, for each image block, it is determined whether the image block is available for updating a specific reference image.
  • the image is stored in three components, which are three components of Y, U, and V. It is said that any one of the current image to be encoded is image block 1, and the previous frame of the current image to be encoded is said to be encoded.
  • An image block having the same position as the image block 1 in the image is the image block 2.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist Y.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist U.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist V.
  • the total luminance component of the image block 1 is PixCount, and the large error point count between the image block 1 and the image block 2 is LargeDist1.
  • the initial value of the LargeDist1 is set to 0, and when a pixel value difference value at the same position as the luminance component of the image block 2 in the luminance component of the image block 1 is larger than a pixel of a preset value (for example, 20), LargeDist1 is incremented by 1.
  • the image block 1 is considered to be an alternative block for updating a specific reference image.
  • Dist Y is less than a preset multiple of PixCount (eg 4 times);
  • Dist U is less than a preset multiple of PixCount (eg 0.5 times);
  • DistV is less than a preset multiple of PixCount (eg 0.5 times).
  • M candidate blocks with the lowest cost are selected for updating the specific reference image.
  • the image is stored in three components, which are three components of Y, U, and V. It is said that any one of the current image to be encoded is the image block 1, and the image block of the previous frame encoded image of the current image to be encoded is said to have the same position as the image block 1 as the image 2, and the current image to be encoded is called
  • the image block having the same position as the image block 1 in the first two frames of the encoded image is the image 3.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist Y.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist U.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist V.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist Y'.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist U'.
  • the sum of the differences of the pixel values of the pixels at the same position is Dist V'.
  • the total luminance component of the image block 1 is PixCount
  • the large error point count between the image block 1 and the image block 2 is LargeDist1
  • the large error point count between the image block 1 and the image block 3 is LargeDist2. Setting the initial values of LargeDist1 and LargeDist2 to 0, when the pixel value difference between the luminance component of the image block 1 and the luminance component of the image block 2 is larger than the preset value (for example, 20), the LargeDist1 is accumulated. 1.
  • LargeDist2 is incremented by one.
  • the image block 1 is an alternative block for updating a specific background block.
  • both Dist Y and Dist Y' are less than a preset multiple of PixCount (eg, 6 times);
  • M candidate blocks with the lowest cost are selected for updating the specific reference image.
  • all of the image block pairs that can be used to update the specific reference image are used for the specific reference image. Update. For example, as shown in FIG. 3, pixel values in image blocks 41, 42, 43, and 44, respectively, are used to replace pixel values of image blocks at the same position in a particular reference image.
  • FIG. 4 is a schematic flowchart diagram of still another embodiment of a video encoding method according to the present invention. As shown in Figure 4, the method includes:
  • the current image to be encoded when the current image to be encoded is available for inter prediction, it is determined that the current image to be encoded can be used to update the particular reference image. For example, when it is determined that the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image. For example, since the I picture and the P picture (or the forward prediction picture) can be used as the reference picture for inter prediction of other pictures, when determining that the current picture to be encoded is an I picture or a P picture (or a forward prediction picture) , determining the current image to be encoded as a reference image.
  • the partial B image (or bi-predictive image) can also be used as a reference image for inter-prediction of other images.
  • a lower-level B image can be used as a reference. The frame is used. Therefore, when it is determined that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as the reference image.
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  • the image in the video when the image in the video can be used as a reference image (also used for inter prediction), it is not distinguished whether it is a long-term reference image or a short-term reference image, as long as the current image to be encoded can be framed as another image.
  • the inter-predicted reference image determines that the current image to be encoded can be used as a reference image, and the image block in the image to be encoded can be used to update a specific image block.
  • the long-term reference image and the short-term reference image are distinguished.
  • the short-term reference image is a concept corresponding to a long-term reference image.
  • the short-term reference image refers to a time period that can only exist in the reference image buffer for a period of time. After the number of moving in and out operations of the encoded reference image after the short-term reference image in the reference image buffer, the short-term reference image is removed. Reference image buffer.
  • the long-term reference image (or a portion of the data of the long-term reference image) is always present in the reference image buffer, and the long-term reference image (or a portion of the data of the long-term reference image) is not subject to the encoded or decoded reference image in the reference image.
  • the effect of the move in and out operations in the buffer is only the long-term reference image of the long-term reference image (or part of the long-term reference image) when the encoder performs the update command operation.
  • the data will be removed from the reference image buffer.
  • the short-term reference image and the long-term reference image may be called differently in different standards.
  • the short-term reference image is called a short-term reference frame (short- Term reference)
  • the long-term reference image is called a long-term reference
  • the long-term reference image is called a background frame.
  • the long-term reference image is called For gold frames.
  • the current image to be encoded when the current image to be encoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be encoded is not available for updating a particular image block in the particular reference image.
  • the current image to be encoded when available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the particular reference image.
  • the current image to be encoded when the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
  • the current image to be encoded when available as a short-term reference image but not as a long-term reference image, it is determined that the image to be encoded is not available to update the specific reference image, that is, in the image to be encoded.
  • Image blocks are not used to update a particular image block in a particular reference image.
  • the current image to be encoded when available as a short-term reference image but not as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
  • the current image to be encoded when available as a short-term reference image and can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
  • a flag bit is also added in at least one of the following to identify whether an image that is not available as a short-term reference image is available for updating the particular reference image:
  • the flag bit is a time domain scalable flag bit.
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for updating the particular reference image when having a time domain scalability requirement; and/or when there is no time domain scalability
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
  • an image block in an image that cannot be used as a short-term reference image is not used to update a specific reference image, which affects the update speed of a specific reference frame, thereby affecting the effect of a particular reference frame on improving the encoding quality
  • the image block in the current image to be encoded can still be used to update a specific reference frame, such an effect can be reduced.
  • the meaning of the scheme “cannot be used as a short-term reference image but can be used as a long-term reference frame in which the image block in the current image to be encoded can still be used to update a specific reference image" is that when the encoding system does not care for parallelism as a short-term reference image
  • the scheme can ensure the effect of the specific reference frame on improving the coding quality, and can not be used as a reference in the concept of the short-term reference image.
  • At least one of a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set, and a reference configuration set may be added with a flag, where the flag is used to identify Whether the image block information in the image of the short-term reference image is available for updating a particular reference frame.
  • the flag bit can also be a time domain scalable flag bit.
  • the value of the flag bit is set to indicate that an image block in an image that is not a short-term reference image is available for updating of a particular reference frame when the encoding system has a time domain scalability requirement; and/or, when the encoding system does not have When the time domain is scalable, the value of the flag is set to indicate that an image block in an image that is not a short-term reference image is available for updating of a particular reference frame.
  • the number of image blocks available for updating a particular reference image in the current image to be encoded may be one or more than one. In some embodiments, the current image to be encoded The number of image blocks that can be used to update a particular reference image may be unlimited, that is, all of the image blocks in the current image to be encoded that satisfy the conditions available for updating the particular reference image are used to update the particular reference image.
  • the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be encoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
  • the specific reference image is updated according to each of the determined image blocks.
  • the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
  • the value of M corresponding to the current image to be encoded is determined based on the type of the image to be currently encoded.
  • the values of M corresponding to the current image to be encoded are different.
  • the current image to be encoded is an I image
  • the current image to be encoded has at most a first preset number of image blocks for updating the specific reference image
  • the current image to be encoded is a P image (or a forward predicted image).
  • the current image to be encoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be encoded is a B image (or a bidirectional predicted image), the current image to be encoded has at most a third
  • the preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
  • the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type of the image to be encoded currently. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image).
  • One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
  • image information that is not used as a reference image is not used in the encoding and decoding process of other images during encoding and decoding, that is, when part of the image is not available for updating a specific reference image, Used to update a specific reference image.
  • the image block in the current image to be encoded is considered to be used to update the specific reference image, thereby avoiding that part of the image is not available for updating the specific reference image. It is also used in the case of updating a specific reference image, for example, a case where the construction process of a specific reference image is avoided from being violated by the definition of an image as a reference image.
  • an image that is not used as a reference image does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference image may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played.
  • it is considered to use the image block in the current image to be encoded to update the specific reference image, thereby avoiding adopting an image that is not a reference image.
  • the image block in the update is updated for a specific reference image, the case where the discarded portion is not available as the reference image cannot be realized.
  • the particular image block in the particular reference image is updated without the image block in the current image to be encoded.
  • the current image to be encoded is not available for inter prediction, it is determined that the current image to be encoded is not available for updating a specific reference image.
  • the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image.
  • the current image to be encoded is not available as a short-term reference image or as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image.
  • the encoding end is also in a video parameter set (VPS), a sequence parameter set (SPS), a sequence header (sequence).
  • VPS video parameter set
  • SPS sequence parameter set
  • sequence header sequence header
  • RCS reference configuration set
  • the flag bit of the image block in the current image to be encoded is also encoded, the flag bit is used to identify the current Whether an image block in the image to be encoded is used to update the specific reference image.
  • FIG. 5 illustrates a video decoding method according to another embodiment of the present invention, which may be performed by an image processing apparatus, which may be various types of chips, image processors, and the like for image processing.
  • the video decoding method includes:
  • determining that the current image to be decoded is available as a reference image may occur prior to decoding the image to be decoded. As such, it is possible to determine, based on the result of the determination, that each image block in the image to be decoded is decoded or after decoding, that each image block satisfies a condition for updating a specific reference image. Alternatively, it may be determined that the current image to be decoded may be used as a reference image, or may be generated when decoding each image block in the image to be decoded or after decoding, that is, when decoding or decoding each image block, first determining the image block.
  • the current image is an image that can be used as a reference image, and when it is determined to be a reference image, it can be judged that the image block can be used to update a specific reference image.
  • determining that the current image to be decoded is a reference image may be obtained by acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded, and determining, according to the parameter or the flag bit, whether the current image to be decoded is An image as a reference image.
  • the parameter or the flag bit for indicating the reference relationship of the current image to be decoded can be obtained through various ways. For example, from a video parameter set (VPS), a sequence parameter set (SPS), a sequence header, a picture header, a slice header, a reference picture set. At least one of (RPS, reference picture set) and a reference configuration set (RCS, reference configuration set) to obtain a parameter or a flag bit for indicating a reference relationship of the current image to be decoded.
  • VPS video parameter set
  • SPS sequence parameter set
  • RCS reference configuration set
  • the I picture and the P picture can be used as reference pictures for inter prediction of other pictures, when determining that the current picture to be decoded is an I picture or a P picture (or forward direction) When predicting an image), it is determined that the current image to be decoded is available as a reference image Image.
  • the partial B image (or bi-predictive image) may also serve as a reference image for inter prediction, as in Hierarchical B technology, a lower-level B image may be used as a reference frame.
  • a lower-level B image may be used as a reference frame.
  • a method of judging that an image block can be used to update a specific reference image can be referred to the above description to determine a method in which an image block in an image to be encoded can be used to update a specific reference image.
  • the decoding end further parses the flag bits of each image from the code stream, wherein the flag bits of each image are used to indicate whether each image block in the image is used to update a specific reference image. .
  • the decoding end can obtain the flag bit of the image block from the decoding end, and judge whether the image block is used to update the specific reference image according to the flag bit.
  • the position of the specific image block in the specific reference image is specifically determined by the position of the image block in the current image to be decoded, and reference may be made to how the position of the specific image block in the specific reference image in step 101 is specifically determined by the image. The position of the block in the current image to be encoded is determined and will not be described here.
  • the number of image blocks that can be used to update a specific reference image in the current image to be decoded may be one, or may be greater than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be decoded may be unlimited, that is, all image blocks in the current image to be decoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
  • the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be decoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
  • the specific reference image is updated according to each of the determined image blocks.
  • the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
  • the value of M corresponding to the current image to be decoded may be based on multiple determination methods. For example, the value of M corresponding to the current image to be decoded is determined based on the type of the image to be decoded currently. In some embodiments, when the image types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different. For example, when the current image to be decoded is an I image, the current image to be decoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be decoded is a P image (or a forward predicted image).
  • the current image to be decoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be decoded is a B image (or a bidirectional predicted image), the current image to be decoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
  • the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the image to be decoded currently belongs. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image).
  • One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
  • At least one of the following carries the number of image blocks available for updating the specific reference image in the current image to be decoded: an image header of the current image to be decoded, an image parameter set of the current decoded image, and a current waiting
  • the sequence header corresponding to the decoded image, the sequence parameter set corresponding to the current image to be decoded, and the video parameter set corresponding to the current image to be decoded can parse out the number of image blocks in the current image to be decoded that can be used to update the particular reference image.
  • the value of M corresponding to the current image to be decoded is only used to inform the decoding end how many image blocks of the current image are available for the update of the specific reference frame, which can facilitate the design of the decoding end, thereby reducing the complexity of the decoding end. degree.
  • FIG. 6 is a schematic flowchart diagram of still another embodiment of a video decoding method according to the present invention. As shown in Figure 6, the method includes:
  • the current image to be decoded when the current image to be decoded is available for inter prediction, it is determined that the current image to be decoded is available for updating the particular reference image. For example, since an I picture and a P picture (or a forward prediction picture) can be used as reference pictures for inter prediction of other pictures, when determining that the current picture to be decoded is an I picture or a P picture (or a forward prediction picture) And determining that the current image to be decoded is an image that can be used as a reference image.
  • the partial B image (or bi-predictive image) may also serve as a reference image for inter prediction, as in Hierarchical B technology, a lower-level B image may be used as a reference frame. When using, therefore, when determining that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as a reference image.
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  • Determining that the current image to be decoded can be used as a reference image (that is, for inter prediction), by obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded, and determining an image to be decoded according to the parameter or the flag bit. Whether it is an image that can be used as a reference image.
  • the reference relationship of the current image to be decoded may refer to that the current band decoded image is a short-term reference image or a long-term reference image.
  • the parameter or the flag bit for indicating the reference relationship of the current image to be decoded can be obtained through various ways.
  • a sequence parameter set For example, from a video parameter set (VPS), a sequence parameter set (SPS), a sequence header, a picture header, a slice header, a reference picture set. At least one of (RPS, reference picture set) and a reference configuration set (RCS, reference configuration set) to obtain a parameter or a flag bit for indicating a reference relationship of the current image to be decoded.
  • VPS video parameter set
  • SPS sequence parameter set
  • RCS reference configuration set
  • the image in the video when it is a long-term reference image or a short-term reference image, as long as the current image to be decoded can be used as a reference image for inter prediction of other images, it can be determined.
  • the current image to be decoded can be used as a reference image, and the current image to be encoded can be used to update a specific reference image.
  • the long-term reference image and the short-term reference image are distinguished.
  • the short-term reference image is a one corresponding to the long-term reference image Concepts.
  • the short-term reference image refers to a time period that can only exist in the reference image buffer for a period of time. After a number of move-in and move-out operations of the decoded reference image after the short-term reference image in the reference image buffer, the short-term reference image is removed. Reference image buffer.
  • the long-term reference image (or a part of the data in the long-term reference image) is always present in the reference image buffer, and the long-term reference image (or a part of the data in the long-term reference image) is not buffered by the reference image in the reference image.
  • the effect of the move-in and move-out operations in the zone is that the long-term reference image (or a portion of the data in the long-term reference image) is removed from the reference image buffer only when the decoder issues an update command operation.
  • the short-term reference image and the long-term reference image may be called differently in different standards.
  • the short-term reference image is called a short-term reference frame (short- Term reference)
  • the long-term reference image is called a long-term reference
  • the long-term reference image is called a background frame.
  • the long-term reference image is called For gold frames.
  • the current image to be decoded when the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image to be decoded is not available to update the specific reference image, that is, in the image to be decoded.
  • Image blocks are not used to update a particular image block in a particular reference image.
  • the current image to be decoded when available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the particular reference image.
  • the current image to be decoded when the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
  • the current image to be decoded when the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image to be decoded is not available to update the specific reference image, that is, in the image to be decoded.
  • Image blocks are not used to update a particular image block in a particular reference image.
  • the current image to be decoded when available as a short-term reference image but not as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
  • the current image to be decoded when available as a short-term reference image and can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
  • determining which image is currently decoded such as in a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set,
  • the reference configuration is analyzed to obtain whether the current image is a short-term reference image or a long-term reference image.
  • the flag bit may be parsed by at least one of a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set, and a reference configuration set. It is used to identify whether the image to be decoded is available for updating the specific reference image.
  • the flag bit can also be a time domain scalable flag bit.
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for update of a particular reference frame; and/or, when the decoding end does not have a time domain
  • the value of this flag is used to indicate that an image block in an image that is not a short-term reference image is available for update of a particular reference frame.
  • the flag bit of the image block of the current image to be decoded is also obtained, wherein the flag bit is used to identify whether the image block in the current image to be decoded is used to update the specific reference image.
  • An image block that can be used to update a particular reference image is determined based on the flag bit.
  • the number of image blocks that can be used to update a specific reference image in the current image to be decoded may be one, or may be greater than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be decoded may be unlimited, that is, all image blocks in the current image to be decoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
  • the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be decoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
  • the specific reference image is updated according to each of the determined image blocks. Updating a specific reference image according to each image block For the method, reference may be made to the above description, and details are not described herein again. If the determined number of image blocks is greater than M, the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
  • the value of M corresponding to the current image to be decoded may be based on multiple determination methods. For example, the value of M corresponding to the current image to be decoded is determined based on the type of the image to be decoded currently. In some embodiments, when the image types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different. For example, when the current image to be decoded is an I image, the current image to be decoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be decoded is a P image (or a forward predicted image).
  • the current image to be decoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be decoded is a B image (or a bidirectional predicted image), the current image to be decoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
  • the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the image to be decoded currently belongs. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image).
  • One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
  • At least one of the following carries the number of image blocks available for updating the specific reference image in the current image to be decoded: an image header of the current image to be decoded, an image parameter set of the current decoded image, and a current waiting
  • the sequence header corresponding to the decoded image, the sequence parameter set corresponding to the current image to be decoded, and the video parameter set corresponding to the current image to be decoded can parse out the number of image blocks in the current image to be decoded that can be used to update the particular reference image.
  • the value of M corresponding to the current image to be decoded is only used to inform the decoding end how many image blocks of the current image are available for the update of the specific reference frame, which can facilitate the design of the decoding end, thereby reducing the complexity of the decoding end. degree.
  • when the current image to be decoded can be used as a short-term reference image but not as long
  • the image it is determined that the image block in the image to be decoded is not used to update the specific reference image.
  • the current image to be decoded when the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be decoded is not available for updating the particular reference image.
  • FIG. 7 is a schematic block diagram of a video encoding apparatus according to an embodiment of the present invention. As shown in FIG. 7, the video encoding apparatus 70 includes:
  • At least one memory 701 for storing computer executable instructions
  • At least one processor 702 is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
  • the processor is further configured to:
  • the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  • the processor is further configured to:
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  • the number of image blocks in the current image to be encoded that can be used to update the specific reference image is not greater than M, and M is an integer not less than one.
  • the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  • the values of M corresponding to the current image to be encoded are different.
  • the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type to which the current image to be encoded belongs.
  • the image block includes pixels of a preset number of color channels
  • the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
  • the cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
  • the pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
  • the encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  • the processor is further configured to:
  • a flag bit encoding the image block the flag bit being used to identify whether the image block is used to update the particular reference image.
  • a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, including:
  • a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
  • the position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  • the processor is further configured to:
  • the particular reference image is a reference image as inter prediction.
  • the particular reference image is a long-term reference frame, either a background frame or a golden frame.
  • the determining image block is operable to update a device of a particular reference image, comprising:
  • Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  • the determining, according to the image block and the encoded block, that an image block is available for updating a specific reference image comprises:
  • the image block can be used to update a particular reference image according to at least one of the following:
  • a pixel value difference value of a luminance component between the image block and the encoded block a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block.
  • FIG. 8 is another schematic block diagram of a video encoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding apparatus 80 includes:
  • At least one memory 801 for storing computer executable instructions
  • At least one processor 802 singly or collectively, is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
  • the processor is further configured to:
  • the specific image block in the specific reference image is updated without using the image block in the current image to be encoded.
  • the processor is further configured to:
  • the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  • the processor is further configured to:
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  • the number of image blocks in the current image to be encoded that can be used to update the specific reference image is not greater than M, and M is an integer not less than one.
  • the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  • the values of M corresponding to the current image to be encoded are different.
  • the value of M corresponding to the current image to be encoded is based on the The total number of images of the type to which the pre-coded image belongs is determined.
  • the image block includes pixels of a preset number of color channels
  • the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value
  • the cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
  • the pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
  • the encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  • the processor is further configured to:
  • a flag bit encoding the image block the flag bit being used to identify whether the image block is used to update the particular reference image.
  • a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, including:
  • a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
  • the position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  • the processor is further configured to:
  • the processor is further configured to:
  • the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a particular image block in the particular reference image.
  • the processor is further configured to:
  • the current image to be encoded is not available as a short-term reference image or as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image.
  • the processor is further configured to:
  • the processor is further configured to:
  • the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image.
  • the processor is further configured to:
  • the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the specific reference image.
  • the processor is further configured to:
  • the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  • the processor is further configured to:
  • the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  • a flag bit is added in at least one of the following to identify whether an image that is not available as a short-term reference image is available for updating the particular reference image:
  • the flag bit is a time domain scalable flag bit.
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for updating the particular reference image when having a time domain scalability requirement; and/or,
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image when there is no time domain scalability requirement.
  • the particular reference image is an image that is available for inter prediction.
  • the particular reference image is a long-term reference frame, either a background frame or a golden frame.
  • the determining image block is operable to update a device of a particular reference image, comprising:
  • Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  • the determining, according to the image block and the encoded block, that an image block is available for updating a specific reference image comprises:
  • the image block can be used to update a particular reference image according to at least one of the following:
  • a pixel value difference value of a luminance component between the image block and the encoded block a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block.
  • FIG. 9 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding device 90 includes:
  • At least one memory 901 for storing computer executable instructions
  • At least one processor 902 is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
  • the processor is further configured to:
  • Determining, based on the flag bit, the image block can be used to update a particular reference image.
  • the processor is further configured to:
  • the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded can be used as a reference image.
  • the processor is further configured to:
  • the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded includes:
  • the processor is further configured to:
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  • the number of image blocks available to update the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
  • the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  • the values of M corresponding to the current image to be decoded are different.
  • the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  • At least one of the following includes the number of image blocks in the current image to be decoded that are usable to update the particular reference image:
  • the processor is further configured to:
  • the particular reference image is a reference image as inter prediction.
  • the particular reference image is a long-term reference frame, either a background frame or a golden frame.
  • FIG. 10 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding apparatus 100 includes:
  • At least one processor 1002 used alone or in common, to: access the at least one memory, And executing the computer executable instructions to perform the following operations:
  • the processor is further configured to:
  • the specific image block in the specific reference image is updated without using the image block in the current image to be decoded.
  • the processor is further configured to:
  • Determining, based on the flag bit, the image block can be used to update a particular reference image.
  • the processor is further configured to:
  • Determining that the current image to be decoded is available for updating a particular reference image based on the parameter or flag.
  • the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded includes:
  • the processor is further configured to:
  • all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  • the number of image blocks available to update the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
  • the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  • the current to be decoded when the types of the currently to be decoded images are different, the current to be decoded The value of M corresponding to the image is different.
  • the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  • At least one of the following includes the number of image blocks in the current image to be decoded that are usable to update the particular reference image:
  • the processor is further configured to:
  • the processor is further configured to:
  • the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be decoded is not used to update a particular image block in the particular reference image.
  • the processor is further configured to:
  • the processor is further configured to:
  • the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded is available for updating the specific reference image.
  • the processor is further configured to:
  • the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the specific reference image.
  • the processor is further configured to:
  • the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the specific reference image.
  • the reference relationship of the current image to be decoded is: the current band decoded image is a short-term reference image or a long-term reference image.
  • the processor is further configured to:
  • the processor is further configured to: obtain a flag bit from at least one of the following, the flag bit being used to identify whether the image to be decoded is available for updating the specific reference image:
  • the flag bit is a time domain scalable flag bit.
  • the flag bit or the scalable flag bit is the first value
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is unavailable for updating the specific reference image. ;and / or,
  • the flag bit or the scalable flag bit is the second value
  • the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
  • the particular reference image is an image that is available for inter prediction.
  • the particular reference image is a long-term reference frame, either a background frame or a golden frame.
  • the processor in this embodiment may be a central processing unit (Central Processing Unit, abbreviated as "CPU"), a network processor (Network Processor, abbreviated as "NP”), or a combination of a CPU and an NP.
  • the processor may further include a hardware chip.
  • the hardware chip may be an Application-Specific Integrated Circuit ("ASIC"), a Programmable Logic Device (PLD), or a combination thereof.
  • the PLD may be a Complex Programmable Logic Device (CPLD), a Field-Programmable Gate Array (FPGA), and a Generic Array Logic (Generic Array Logic). Referred to as "GAL” or any combination thereof.
  • the memory in the embodiment of the present invention may include a read only memory and a random access memory, and provides instructions and data to the processor.
  • a portion of the memory may also include a non-volatile random access memory.
  • the memory can also store information of the device type.
  • the size of the sequence numbers of the processes does not imply a sequence of executions, and the order of execution of the processes should be determined by their function and intrinsic logic, and should not be directed to the implementation of the embodiments of the present invention. Form any limit.
  • modules of the various examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods for implementing the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules is only a logical function division.
  • multiple modules may be combined or integrated. Go to another module, or some features can be ignored or not executed.
  • each functional module in the device embodiment may be integrated into one processing unit, or each functional module may be physically present in the respective processing unit, or two or more functional modules may be integrated into one processing unit. in.

Landscapes

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

Abstract

Provided are a video coding method, video decoding method, and related device. The video coding method comprises: if a current image to be coded can serve as a reference image, and an image block can be employed to update a specific reference image, then updating, according to the image block, a specific image block in the specific reference image, wherein the image block is an image block in the current image to be coded, and a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be coded.

Description

视频编码方法、视频解码方法及相关装置Video coding method, video decoding method and related device 技术领域Technical field
本发明涉及图像处理领域,并且更具体地,涉及一种视频编码方法及装置、视频解码方法及装置。The present invention relates to the field of image processing, and more particularly to a video encoding method and apparatus, a video decoding method and apparatus.
背景技术Background technique
为了减少视频存储和传输所占用的带宽,需要对视频数据进行编码压缩处理。编码压缩处理过程包括预测、变换、量化和熵编码过程。其中预测包括帧内预测和帧间预测两种类型,其目的在于利用预测块信息去除当前待编码图像块的冗余信息。帧内预测利用本帧图像的信息获得预测块数据。帧间预测利用参考帧的信息获得预测块数据,其过程包括将以图像块或经图像块划分得到的子图像块为单位在参考图像中搜索与当前图像块或子图像块最匹配的块作为预测块;其后,将该图像块或子图像块与预测块的相应像素值相减得到残差。In order to reduce the bandwidth occupied by video storage and transmission, it is necessary to encode and compress the video data. The encoding compression process includes prediction, transform, quantization, and entropy encoding processes. The prediction includes two types of intra prediction and inter prediction, and the purpose is to use the prediction block information to remove redundant information of the current image block to be encoded. Intra prediction uses the information of the current frame image to obtain prediction block data. Inter prediction uses the information of the reference frame to obtain prediction block data, the process comprising searching for a block that best matches the current image block or the sub-image block in the reference image in units of sub-image blocks obtained by image block or image block division. A prediction block; thereafter, the image block or sub-image block is subtracted from the corresponding pixel value of the prediction block to obtain a residual.
在进行帧间预测时,当参考帧与当前待编码图像越相似,则帧间预测产生的残差则越小,从而帧间预测的编码效率可以提升。为了提高参考帧与当前待编码图像的相似度,可通过构造特定参考帧的方式来实现该目的。在视频内容中,通常存在一类特定的编码场景,在该场景中背景基本不发生改变,只有视频中的前景发生改变或者运动。例如,视频监控就属于该类场景。在视频监控场景中通常监控摄像头固定不动或者只发生缓慢的移动,此时可认为背景基本不发生变化。与此相对,在视频监控镜头中所拍摄到的人或车等物体则经常发生移动或改变,此时可认为前景是经常变化的。在这类场景中,若能够构造出一个特定参考帧,该特定参考帧只包含高质量的背景信息,则在进行帧间预测时当前编码帧的背景部分可通过参考所述的高质量的特定参考帧用于减少帧间预测的残差信息,从而提高编码效率。When performing inter prediction, when the reference frame is similar to the current image to be encoded, the residual generated by the inter prediction is smaller, so that the coding efficiency of the inter prediction can be improved. In order to improve the similarity between the reference frame and the current image to be encoded, the object can be achieved by constructing a specific reference frame. In video content, there is usually a specific type of coding scene in which the background does not change substantially, only the foreground in the video changes or moves. For example, video surveillance belongs to this type of scenario. In a video surveillance scene, it is usually monitored that the camera is stationary or only slow movement occurs. At this time, the background is considered to be substantially unchanged. In contrast, objects such as people or cars photographed in a video surveillance lens often move or change, and the foreground can be considered to change frequently. In such a scenario, if a particular reference frame can be constructed that contains only high quality background information, then the background portion of the current encoded frame can be referenced by reference to the high quality specifics described when inter prediction is performed. The reference frame is used to reduce the residual information of the inter prediction, thereby improving coding efficiency.
构造所述的特定参考帧可通过在编码过程中分析编码帧的编码内容,将认为属于背景的图像块的重建像素信息刷新到在特定参考帧中与所述图像块位置相同的图像块中,每编码一帧图像就执行上述更新操作,将一帧图像 中的若干图像块的重建像素信息刷新到所述的特定的参考帧中,在编码若干图像之后既能完成一幅所述的特定的参考帧的构造。Constructing the specific reference frame may refresh the reconstructed pixel information of the image block considered to belong to the background into the same image block as the image block position in the specific reference frame by analyzing the encoded content of the encoded frame during the encoding process, Perform the above update operation every time one frame of image is encoded, and one frame of image The reconstructed pixel information of several of the image blocks is refreshed into the particular reference frame, and a particular configuration of the particular reference frame can be completed after encoding the plurality of images.
现有技术中在利用图像块的重建像素信息对特定参考帧进行刷新时没有考虑该图像块是否位于不被作为参考帧的图像中。在视频技术中,图像可被分为可作为参考帧的图像和不被作为参考帧的图像。对于不被作为参考帧的图像,其在编码和解码过程中自身的图像的信息不会用于其它图像的编码和解码过程。而由于现有技术中在利用图像块的重建像素信息对特定的参考帧进行刷新时没有考虑所述图像块是否位于不被作为参考帧的图像,导致了所述的特定的参考帧的构造过程与所述的不被作为参考帧的图像的定义相违背。In the prior art, when a specific reference frame is refreshed using the reconstructed pixel information of the image block, it is not considered whether the image block is located in an image that is not used as a reference frame. In video technology, an image can be divided into an image that can be used as a reference frame and an image that is not used as a reference frame. For an image that is not used as a reference frame, its own image information during encoding and decoding is not used for encoding and decoding processes of other images. However, since the prior art uses the reconstructed pixel information of the image block to refresh a specific reference frame without considering whether the image block is located in an image that is not used as a reference frame, the construction process of the specific reference frame is caused. It is contrary to the definition of the image that is not used as a reference frame.
此外,不被作为参考帧的图像在解码时由于不用做其它图像的解码过程,因此所述不被作为参考帧的图像在解码时可以不被解码,从而能加快视频码流的解码速度,实现视频内容的变帧率播放。而由于现有技术中在利用图像块的重建像素信息对特定的参考帧进行刷新时没有考虑所述图像块是否位于不被作为参考帧的图像,导致了所述的不被作为参考帧的图像在解码过程中不能被直接丢弃,没法实现上述的功能。In addition, an image that is not used as a reference frame does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference frame may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played. However, since the prior art uses the reconstructed pixel information of the image block to refresh a specific reference frame without considering whether the image block is located in an image that is not used as a reference frame, the image that is not used as a reference frame is caused. It cannot be directly discarded during the decoding process, and the above functions cannot be implemented.
发明内容Summary of the invention
本发明实施例提供一种视频编码方法及装置、视频解码方法及装置。Embodiments of the present invention provide a video encoding method and apparatus, and a video decoding method and apparatus.
第一方面,提供一种视频编码方法,包括:In a first aspect, a video encoding method is provided, including:
当当前待编码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be encoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be encoded.
第二方面,提供一种视频解码方法,包括:In a second aspect, a video decoding method is provided, including:
当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中, 所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a specific image block in the specific reference image according to the image block, wherein The image block is one image block in the current image to be decoded, and a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be decoded.
第三方面,提供一种视频解码装置,包括:In a third aspect, a video decoding apparatus is provided, including:
至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
第四方面,提供一种器可读存储介质,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理第一方面所述的视频编码方法。In a fourth aspect, a device readable storage medium is provided for a terminal, the machine readable storage medium having a plurality of computer instructions stored thereon, the computer encoding instructions being processed as described in the first aspect.
第五方面,提供一种一种视频解码装置,包括:A fifth aspect provides a video decoding apparatus, including:
至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
第六方面,提供一种机器可读存储介质,其特征在于,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理第二方面的视频解码方法。In a sixth aspect, a machine readable storage medium is provided, which is applicable to a terminal, wherein the machine readable storage medium stores a plurality of computer instructions, and when the computer instructions are executed, processing the second aspect of the video decoding method.
第七方面,提供一种视频编码的方法,包括:In a seventh aspect, a method for video encoding is provided, including:
当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中 的位置决定。When a current image to be encoded is available for updating a particular reference image, and when the image block is available to update a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is Depicting one image block in the current image to be encoded, the position of the specific image block in the specific reference image being used by the image block in the current image to be encoded The location is decided.
第八方面,提供一种视频解码方法,包括:In an eighth aspect, a video decoding method is provided, including:
当当前待解码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available for updating a particular reference image, and when the image block is available for updating a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
第九方面,提供一种视频编码装置,包括:A ninth aspect provides a video encoding apparatus, including:
至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available for updating a particular reference image, and when the image block is available to update a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be encoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be encoded.
第十方面,提供一种视频解码装置,包括:In a tenth aspect, a video decoding apparatus is provided, including:
至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
当当前待解码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available for updating a particular reference image, and when the image block is available for updating a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
第十一方面,提供一种机器可读存储介质,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理第七方面的视频编码方法。In an eleventh aspect, a machine readable storage medium is provided for a terminal, the machine readable storage medium having a plurality of computer instructions stored thereon, the computer encoding instructions being processed to perform the video encoding method of the seventh aspect.
第十二方面,提供一种机器可读存储介质,适用于终端,所述机器可读 存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理第八方面的视频解码方法。According to a twelfth aspect, a machine readable storage medium is provided for a terminal, the machine readable A plurality of computer instructions are stored on the storage medium, and when the computer instructions are executed, the video decoding method of the eighth aspect is processed.
附图说明DRAWINGS
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the embodiments or the prior art description will be briefly described below. Obviously, the drawings in the following description are only some of the present invention. For the embodiments, other drawings may be obtained from those skilled in the art without any inventive labor.
图1为本发明的视频编码方法的一个实施例的示意图;1 is a schematic diagram of an embodiment of a video encoding method of the present invention;
图2展示了将当前待编码图像中的图像块与特定参考图像中的图像块的关系;2 illustrates a relationship between an image block in an image to be currently encoded and an image block in a specific reference image;
图3为视频中的多个图像和特定参考图像的关系示意图;3 is a schematic diagram showing the relationship between a plurality of images and a specific reference image in a video;
图4为本发明的视频编码的方法的又一个实施例的示意图;4 is a schematic diagram of still another embodiment of a method for video encoding according to the present invention;
图5为本发明另一实施例的视频解码方法的示意图;FIG. 5 is a schematic diagram of a video decoding method according to another embodiment of the present invention; FIG.
图6为本发明的视频解码的方法的又一个实施例的流程示意图;6 is a schematic flowchart diagram of still another embodiment of a video decoding method according to the present invention;
图7是根据本发明实施例的视频编码装置的示意性框图;FIG. 7 is a schematic block diagram of a video encoding apparatus according to an embodiment of the present invention; FIG.
图8是根据本发明实施例的视频编码装置的另一示意性框图;FIG. 8 is another schematic block diagram of a video encoding apparatus according to an embodiment of the present invention; FIG.
图9是根据本发明实施例的视频解码装置的示意性框图;FIG. 9 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention; FIG.
图10是根据本发明实施例的视频解码装置的示意性框图。FIG. 10 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention.
具体实施方式detailed description
本文中所描述的这些方法、装置和终端提供了多种对特定参考图像进行更新的方式。The methods, apparatus, and terminals described herein provide a variety of ways to update a particular reference image.
视频是由多个图像构成的。对视频进行编码时,视频中不同的图像可采用不同的预测方式。根据图像所采用的预测方式,可以将图像区分为帧内预测图像和帧间预测图像,其中帧间预测图像包括前向预测图像和双向预测图像。I图像是帧内预测图像,也称为关键帧;P图像是前向预测图像,也即采用之前已编码的一个P图像或者I图像作为参考图像;B图像是双向预测图像,也即采用前后的图像作为参考图像。一种实现方式是编码端将多张图像进行编码后产生一段一段的图像组(group of picture,GOP),该GOP 是由一张I图像,以及多张B图像(或双向预测图像)和/或P图像(或前向预测图像)构成的图像组。解码端在播放时则是读取一段一段的GOP进行解码后读取画面再渲染显示。A video is made up of multiple images. When encoding a video, different images in the video can be predicted differently. The image may be classified into an intra predicted image and an inter predicted image according to a prediction manner employed by the image, wherein the inter predicted image includes a forward predicted image and a bidirectional predicted image. The I image is an intra prediction image, also referred to as a key frame; the P image is a forward predicted image, that is, a P image or an I image that has been previously encoded is used as a reference image; the B image is a bidirectional predicted image, that is, before and after The image is used as a reference image. One implementation is that the encoding end encodes a plurality of images to generate a segment of a group of pictures (GOP), the GOP. It is an image group composed of one I picture, and multiple B pictures (or bidirectional predicted pictures) and/or P pictures (or forward predicted pictures). When the decoding end plays, it reads a segment of the GOP for decoding and then reads the picture and then renders the display.
在对每个图像进行编码时,图像可以最初被分成多个图像块。在一些实施例中,图像可以被分成多个图像块,所述图像块在一些编码准中被称为宏块或最大编码单元(LCU,Largest Coding Unit)。图像块可以具有或者可以不具有任何重叠部分。该图像可以被分成任何数量的图像块。举例而言,该图像可以被分成一个m×n图像块阵列。图像块可以具有矩形形状、正方形形状、圆形形状或任何其他形状。图像块可以具有任何尺寸,如p×q像素。在现代视频编码标准中,可以通过首先将该图像分成多个小块来对不同分辨率的图像进行编码。对于H.264,图像块被称为宏块,其大小可以是16×16像素,并且对于HEVC,图像块被称为最大编码单元,其大小可以是64×64。每个图像块都可以具有相同尺寸和/或形状。替代地,两个或更多图像块可以具有不同的尺寸和/或形状。在一些实施例中,一个图像块也可以不是一个宏块或最大编码单元,而是包含一个宏块或最大编码单元的部分,或者包含至少两个完整的宏块(或最大编码单元),或者包含至少一个完整的宏块(或最大编码单元)和一个宏块(或最大编码单元)的部分,或者包含至少两个完整的宏块(或最大编码单元)和一些宏块(或最大编码单元)的部分。如此,在图像被分成多个图像块之后,可以分别对图像数据中的这些图像块进行编码。When encoding each image, the image can be initially divided into multiple image blocks. In some embodiments, an image may be divided into a plurality of image blocks, which are referred to as macroblocks or Largest Coding Units (LCUs) in some coding standards. The image block may or may not have any overlapping portions. The image can be divided into any number of image blocks. For example, the image can be divided into an array of m x n image blocks. The image block may have a rectangular shape, a square shape, a circular shape, or any other shape. The image block can have any size, such as p x q pixels. In modern video coding standards, images of different resolutions can be encoded by first dividing the image into small pieces. For H.264, an image block is referred to as a macroblock, which may be 16 x 16 pixels in size, and for HEVC, an image block is referred to as a maximum coding unit, which may be 64 x 64 in size. Each image block can have the same size and/or shape. Alternatively, two or more image blocks may have different sizes and/or shapes. In some embodiments, an image block may also be not a macroblock or a maximum coding unit, but a portion containing one macroblock or maximum coding unit, or at least two complete macroblocks (or maximum coding units), or A portion including at least one complete macroblock (or maximum coding unit) and one macroblock (or maximum coding unit), or at least two complete macroblocks (or maximum coding units) and some macroblocks (or maximum coding units) )part. As such, after the image is divided into a plurality of image blocks, the image blocks in the image data can be separately encoded.
在对视频进行编码和解码的过程中,同时利用视频中的各图像对特定参考图像的内容进行更新,以构建一个包含场景的背景内容的特定参考图像,则在进行帧间预测时当前待编码图像或当前待解码图像的背景部分可通过参考所述的高质量的特定参考图像用于减少帧间预测的残差信息,从而提高编码效率。也即,该特定参考图像是作为帧间预测的参考图像。具体的,该特定参考图像可以是H.264/AVC或者H.265/HEVC等标准中的长期参考帧(long term reference),也可以是AVS1-P2、AVS2-P2、IEEE 1857.9-P4等标准中的背景帧(background picture),也可以是VP8、VP9等标准中的黄金帧(golden frame)。 In the process of encoding and decoding the video, the content of the specific reference image is updated by using each image in the video to construct a specific reference image containing the background content of the scene, which is currently to be encoded when performing inter prediction. The image or the background portion of the current image to be decoded may be used to reduce the residual information of the inter prediction by referring to the high quality specific reference image, thereby improving coding efficiency. That is, the specific reference image is a reference image as inter prediction. Specifically, the specific reference image may be a long term reference in a standard such as H.264/AVC or H.265/HEVC, or may be a standard such as AVS1-P2, AVS2-P2, IEEE 1857.9-P4, or the like. The background picture in the background may also be a golden frame in the standards such as VP8 and VP9.
下面结合图1对图像中的一个图像块用于更新特定参考图像的方法进行解释说明。如图1所示,图1为本发明的视频编码方法的一个实施例的流程示意图。该方法由图像处理装置执行,该图像处理装置可以是各种类型的用于图像处理的芯片、图像处理器等。如图1所示,方法包括:A method for updating a specific reference image by one image block in an image will be explained below with reference to FIG. As shown in FIG. 1, FIG. 1 is a schematic flowchart of an embodiment of a video encoding method according to the present invention. The method is performed by an image processing apparatus, which may be various types of chips, image processors, and the like for image processing. As shown in Figure 1, the method includes:
101、当当前待编码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据图像块对特定参考图像中的特定图像块进行更新,其中,图像块为所述当前待编码图像中的一个图像块,特定图像块在特定参考图像中的位置由图像块在当前待编码图像中的位置决定。101. When a current image to be encoded is available as a reference image, and when the image block is available to update a specific reference image, updating a specific image block in the specific reference image according to the image block, wherein the image block is the current to be encoded One image block in an image, the position of a particular image block in a particular reference image is determined by the position of the image block in the current image to be encoded.
在一些实施例中,确定当前待编码图像可作为参考图像,可以发生在对该待编码图像进行编码之前。如此,可以根据该确定的结果在对待编码图像中的各图像块进行编码时或者编码后判断各图像块满足用于更新特定参考图像的条件。或者,确定当前待编码图像可作为参考图像,也可以发生在对待编码图像中的各图像块进行编码时或者编码后,也即在对每一个图像块编码时或者编码后,首先确定该图像块当前所在图像可作为参考图像,当确定可作为参考图像时,再确定该图像块可用于更新特定参考图像。In some embodiments, determining that the current image to be encoded is available as a reference image may occur prior to encoding the image to be encoded. In this way, each image block in the image to be encoded may be encoded according to the result of the determination or after encoding, and each image block is judged to satisfy the condition for updating the specific reference image. Alternatively, it may be determined that the current image to be encoded may be used as a reference image, or may be generated when encoding each image block in the image to be encoded or after encoding, that is, when encoding each image block or after encoding, first determining the image block. The current image can be used as a reference image, and when it is determined that it can be used as a reference image, it is determined that the image block can be used to update a specific reference image.
在一些实施例中,由于I图像和P图像(或前向预测图像)可以作为其他图像进行帧间预测的参考图像,因此,当确定当前待编码图像为I图像或者为P图像(或前向预测图像)时,确定当前待编码图像作为参考图像。在一些实施例中,部分B图像(或双向预测图像)也可作为其他图像进行帧间预测的参考图像,如在分层B(Hierarchical B)技术中,位于层次较低的B图像可作为参考帧使用,因此,确定当前待编码图像是这一部分B图像时,也可以确定当前待编码图像可作为参考图像。In some embodiments, since the I picture and the P picture (or the forward prediction picture) can be used as reference pictures for inter prediction of other pictures, when determining that the current picture to be encoded is an I picture or a P picture (or forward direction) When the image is predicted, the current image to be encoded is determined as a reference image. In some embodiments, the partial B image (or bi-predictive image) can also be used as a reference image for inter-prediction of other images. For example, in Hierarchical B technology, a lower-level B image can be used as a reference. The frame is used. Therefore, when it is determined that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as the reference image.
在一些实施例中,在确定当前待编码图像可作为参考图像之后,编码端还在视频参数集(VPS,video parameter set)、序列参数集(SPS,sequence parameter set)、序列头(sequence header)、图像头(picture header)、条带头(slice header)、参考图像集(RPS,reference picture set)和参考图像配置集(RCS,reference configuration set)中的至少一项中写入参数或者标志位,以指示该当前待编码图像可作为参考图像。In some embodiments, after determining that the current image to be encoded is available as a reference image, the encoding end is also in a video parameter set (VPS), a sequence parameter set (SPS), a sequence header. a parameter or flag bit in at least one of a picture header, a slice header, a reference picture set (RPS), and a reference configuration set (RCS). To indicate that the current image to be encoded can be used as a reference image.
在一些实施例中,判断图像块可用于更新特定参考图像,可通过该图像块的像素信息来进行判断。例如,当确定图像块和之前已编码图像中相同位 置处的块的内容差别较小时,则认为该图像块包含背景内容,可用于更新特定参考图像。当然,还有其他可用于确定图像块可用于更新特定参考图像的方法。In some embodiments, the decision image block can be used to update a particular reference image, which can be determined by the pixel information of the image block. For example, when determining the same bit in the image block and the previously encoded image When the content difference of the placed block is small, the image block is considered to contain background content, which can be used to update a specific reference image. Of course, there are other methods that can be used to determine that an image block can be used to update a particular reference image.
在一些实施例中,特定图像块在特定参考图像中的位置和图像块在当前待编码图像中的位置相同。如图2所示,图2展示了将当前待编码图像中的图像块与特定参考图像中的图像块的关系。图2所示中的当前待编码图像中的图像块210、220为满足预设条件的图像块,其中当前待编码图像中的图像块210的位置和特定参考图像中的图像块110的位置相同,当前待编码图像中的图像块220和特定参考图像中的图像120的位置相同。In some embodiments, the location of a particular image block in a particular reference image is the same as the location of the image block in the current image to be encoded. As shown in FIG. 2, FIG. 2 illustrates the relationship between an image block in an image to be currently encoded and an image block in a specific reference image. The image blocks 210, 220 in the current image to be encoded shown in FIG. 2 are image blocks satisfying a preset condition, wherein the position of the image block 210 in the current image to be encoded is the same as the position of the image block 110 in the specific reference image. The position of the image block 220 in the current image to be encoded and the image 120 in the specific reference image are the same.
在一些实施例中,特定参考图像中的位置相比图像块在当前待编码图像中的位置偏移了预设偏移值。In some embodiments, the position in the particular reference image is offset from the position of the image block in the current image to be encoded by a preset offset value.
在一些实施例中,根据图像块对特定参考图像中的特定图像块进行更新,具体为采用图像块的像素值替换特定参考块的当前内容。在一些实施例中,根据图像块对特定参考图像中的特定图像块进行更新,可以是采用图像块的像素值进行处理后替换特定参考块的当前像素值,该处理可以是根据图像块的像素值与特定参考图像中的一个图像块的像素值取平均值,或者根据图像块的像素值与特定参考图像中图像块的像素值做加权平均,其中该加权平均的系数为预设值或者从码流中解析得到。其中,在采用图像块的像素值时,可以是采用图像块的原始像素值,也可以是采用图像块的重建像素值。In some embodiments, the particular image block in the particular reference image is updated according to the image block, specifically replacing the current content of the particular reference block with the pixel values of the image block. In some embodiments, the specific image block in the specific reference image is updated according to the image block, and the current pixel value of the specific reference block may be replaced after processing with the pixel value of the image block, and the processing may be based on the pixel of the image block. The value is averaged with the pixel value of one image block in the specific reference image, or is weighted average according to the pixel value of the image block and the pixel value of the image block in the specific reference image, wherein the weighted average coefficient is a preset value or Analyzed in the code stream. Wherein, when the pixel value of the image block is used, the original pixel value of the image block may be used, or the reconstructed pixel value of the image block may be used.
在视频技术中,不被作为参考图像的图像在编码和解码过程中自身的图像信息不会用于其它图像的编码和解码过程。本实施例中在确定当前待编码图像可作为参考图像时,才考虑采用该当前待编码图像中的图像块来对特定参考图像进行更新,避免了特定参考图像的构造过程与不被作为参考图像的图像的定义相违背的情况。此外,不被作为参考图像的图像在解码时由于不用做其它图像的解码过程,因此所述不被作为参考图像的图像在解码时可以不被解码,从而能加快视频码流的解码速度,实现视频内容的变帧率播放。本实施例中在确定当前待编码图像可作为参考图像时,才考虑采用该当前待编码图像中的图像块来对特定参考图像进行更新,避免了采用不可作为参考图像的图像中的图像块对特定参考图像进行更新时无法实现丢弃部分不可 作为参考图像的情况。In video technology, image information that is not used as a reference image is not used for encoding and decoding processes of other images during encoding and decoding. In this embodiment, when it is determined that the current image to be encoded can be used as a reference image, the image block in the current image to be encoded is considered to be used to update the specific reference image, thereby avoiding the construction process of the specific reference image and not being used as the reference image. The definition of the image is contrary to the situation. In addition, an image that is not used as a reference image does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference image may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played. In the embodiment, when determining that the current image to be encoded can be used as the reference image, the image block in the current image to be encoded is used to update the specific reference image, thereby avoiding the use of the image block pair in the image that is not the reference image. When a specific reference image is updated, it is impossible to implement the discarding part. As a case of a reference image.
在一些实施例中,当当前待编码图像不是可作为参考图像的图像时,确定该图像块不用于更新特定参考图像。In some embodiments, when the current image to be encoded is not an image that is available as a reference image, it is determined that the image block is not used to update a particular reference image.
确定图像块可用于更新特定参考图像的方法有多种。例如,可以根据图像块的像素值和已编码块的像素值判断图像块可用于更新特定参考图像,其中,已编码块指的是位于当前待编码图像之前的已编码图像中特定位置处的图像块。例如,该已编码块指的是位于当前待编码图像的前一帧(或者前两帧)已编码图像中。例如,该特定位置可以是和图像块在当前待编码图像中位置相同,或者是图像块在当前待编码图像中位置加上预设偏移值。There are several ways to determine which image blocks can be used to update a particular reference image. For example, the image block can be determined to be used to update a particular reference image based on the pixel values of the image block and the pixel values of the encoded block, wherein the encoded block refers to an image at a particular location in the encoded image that precedes the current image to be encoded. Piece. For example, the coded block refers to the coded image of the previous frame (or the first two frames) of the current image to be encoded. For example, the specific location may be the same as the position of the image block in the current image to be encoded, or the position of the image block in the current image to be encoded plus a preset offset value.
在一些实施例中,在根据图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像时,具体根据以下至少一项判断图像块可用于更新特定参考图像:In some embodiments, when it is determined that the image block is available for updating the specific reference image according to the pixel information of the image block and the pixel information of the encoded block, the image block may be used to update the specific reference image according to at least one of the following:
图像块和已编码块之间的亮度分量的像素值差值;a pixel value difference of a luminance component between the image block and the encoded block;
图像块和/或已编码块的亮度分量的像素总数;The total number of pixels of the luminance component of the image block and/or the encoded block;
图像块和已编码块之间的色度分量的像素值差值;a pixel value difference of a chroma component between the image block and the encoded block;
图像块和/或已编码块的色度分量的像素总数。The total number of pixels of the chrominance component of the image block and/or the encoded block.
其中,图像块和已编码块之间的亮度分量的像素值差值,可以是图像块和第二编码块的亮度分量分别在各相同位置处的像素值之差的分布,可以是图像块和第二编码块的亮度分量分别在各相同位置处的像素值之差的总和,也可以是图像块的亮度分量在各像素的平均值和已编码块的亮度分量在各像素的平均值的差值。The pixel value difference value of the luminance component between the image block and the coded block may be a distribution of the difference between the pixel values of the image block and the second coding block respectively at the same position, and may be an image block and The sum of the differences between the pixel values of the luminance components of the second coding block at the respective same positions, or the difference between the average value of the luminance components of the image block and the luminance component of the coded block at the average value of each pixel. value.
其中,图像块和已编码块之间的色度分量的像素值差值,可以是图像块和第二编码块的色度分量分别在各相同位置处的像素值之差的分布,可以是图像块和第二编码块的色度分量分别在各相同位置处的像素值之差的总和,也可以是图像块的色度分量在各像素的平均值和已编码块的色度分量在各像素的平均值的差值。The pixel value difference value of the chrominance component between the image block and the coded block may be a distribution of the difference between the pixel values of the chrominance component of the image block and the second code block at the same position, and may be an image. The sum of the difference between the pixel values of the block and the second coded block at each of the same positions, or the average of the chrominance components of the image block at each pixel and the chrominance component of the coded block at each pixel The difference between the averages.
其中,根据图像块和已编码块之间的亮度分量的像素值差值判断图像块可用于更新特定参考图像,具体可以是根据图像块和第二编码块之间的亮度分量的像素值差值的绝对值之和判断图像块可用于更新特定参考图像。Wherein, the image block may be used to update the specific reference image according to the pixel value difference value of the luminance component between the image block and the coded block, and may specifically be the pixel value difference according to the luminance component between the image block and the second coded block. The sum of the absolute values of the judgment image block can be used to update a specific reference image.
其中,根据图像块和已编码块之间的色度分量的像素值差值判断图像块 可用于更新特定参考图像,具体可以是根据图像块和第二编码块之间的色度分量的像素值差值的绝对值之和判断图像块可用于更新特定参考图像。Wherein, the image block is determined according to the pixel value difference of the chroma component between the image block and the coded block The image block may be used to update a specific reference image according to a sum of absolute values of pixel value differences of chroma components between the image block and the second coded block.
其中,在根据图像块和已编码块之间的亮度分量的像素值差值判断图像块可用于更新特定参考图像的实施例中,可选的,当确定图像块可用于更新特定参考图像时,图像块需要满足的条件包括:图像块中特定像素的个数小于第一阈值。其中,该特定像素是,与已编码块中相同位置处的像素在第一颜色通道的像素值之差不小于第二阈值的像素。Wherein, in an embodiment in which it is determined that an image block is available for updating a specific reference image based on a pixel value difference of a luminance component between the image block and the encoded block, optionally, when it is determined that the image block is available for updating a specific reference image, The condition that the image block needs to satisfy includes that the number of specific pixels in the image block is less than the first threshold. Wherein, the specific pixel is a pixel whose difference between the pixel values of the pixels at the same position in the encoded block is not less than a second threshold.
具体举例来说,图像按照三个分量来存储,分别为Y(亮度)、U(色度1)、V(色度2)。该第一颜色通道为Y通道。已编码块为位于当前待编码图像的前一帧(或者前两帧)的已编码图像中,位置和所述图像块的位置相同的图像块,或者位置相比图像块在当前待编码图像中偏移了预设值的图像块。已编码块的Y分量和图像块的Y分量在任意一个相同位置处的像素差值为Dist y。其中,当Dist y不小于第二阈值时,该Dist y对应的图像块中的像素为特定像素。在判断图像块满足“图像块的特定像素的个数不小于第一阈值”该条件时,该第一阈值可以是一个预设值,也可以是图像块的Y分量的像素总数与一个预设比例的乘积,在此不做限制。For example, the image is stored in three components, namely Y (brightness), U (chroma 1), and V (chroma 2). The first color channel is a Y channel. The coded block is an image block located in the encoded image of the previous frame (or the first two frames) of the current image to be encoded, the position is the same as the position of the image block, or the position of the image block is in the current image to be encoded. An image block that is offset by a preset value. The pixel difference of the Y component of the coded block and the Y component of the image block at any one of the same positions is Dist y. Wherein, when Dist y is not less than the second threshold, the pixels in the image block corresponding to the Dist y are specific pixels. When it is determined that the image block satisfies the condition that the number of the specific pixels of the image block is not less than the first threshold, the first threshold may be a preset value, or may be the total number of pixels of the Y component of the image block and a preset. The product of the ratio is not limited here.
其中,在根据图像块和已编码块之间的亮度分量的像素值差值判断图像块可用于更新特定参考图像的实施例中,可选的,当确定图像块可用于更新特定参考图像时,图像块需要满足的条件包括:图像块和已编码块之间的亮度分量的像素值差值小于第三阈值。Wherein, in an embodiment in which it is determined that an image block is available for updating a specific reference image based on a pixel value difference of a luminance component between the image block and the encoded block, optionally, when it is determined that the image block is available for updating a specific reference image, The condition that the image block needs to satisfy includes that the pixel value difference of the luminance component between the image block and the encoded block is less than a third threshold.
其中,在判断图像块满足“图像块和已编码块之间的亮度分量的像素值差值小于第三阈值”该条件时,该第三阈值可以是一个预设值,也可以是图像块的Y分量的像素总数与一个预设比例的乘积,在此不做限制。Wherein, when it is determined that the image block satisfies the condition that the pixel value difference of the luminance component between the image block and the encoded block is smaller than the third threshold, the third threshold may be a preset value, or may be an image block. The product of the total number of pixels of the Y component and a predetermined ratio is not limited herein.
其中,在根据图像块和已编码块之间的色度分量的像素值差值判断图像块可用于更新特定参考图像的实施例中,可选的,当确定图像块可用于更新特定参考图像时,图像块需要满足的条件包括:图像块和已编码块之间的色度分量的像素值差值小于第四阈值。Wherein, in an embodiment in which it is determined that an image block is available for updating a particular reference image based on a pixel value difference of a chroma component between the image block and the encoded block, optionally, when it is determined that the image block is available for updating a particular reference image The condition that the image block needs to satisfy includes that the pixel value difference of the chroma component between the image block and the encoded block is less than a fourth threshold.
其中,图像块和已编码块之间的色度分量的像素值差值小于第四阈值,可以是图像块和已编码块之间的U分量的像素值差值小于第四阈值,或者是图像块和第二编码块之间的V分量的像素值差值小于第四阈值,或者是图像 块和已编码块之间的U分量的像素值差值小于一个预置数值,且图像块和已编码块之间的V分量的像素值差值小于另一个预置数值。The pixel value difference of the chroma component between the image block and the encoded block is less than a fourth threshold, and may be that the pixel value difference of the U component between the image block and the encoded block is less than a fourth threshold, or an image. The pixel value difference of the V component between the block and the second coded block is less than a fourth threshold, or is an image The pixel value difference of the U component between the block and the coded block is less than a preset value, and the pixel value difference of the V component between the image block and the coded block is smaller than another preset value.
其中,在判断图像块满足“图像块和已编码块之间的色度分量的像素值差值小于第四阈值”该条件时,该第四阈值可以是一个预设值,也可以是图像块的亮度分量(或者色度分量)的像素总数与一个预设比例的乘积,在此不做限制。Wherein, when it is determined that the image block satisfies the condition that the pixel value difference of the chrominance component between the image block and the coded block is smaller than the fourth threshold, the fourth threshold may be a preset value, or may be an image block. The product of the total number of pixels of the luminance component (or chrominance component) and a predetermined ratio is not limited herein.
上面描述了一些可用于更新特定参考图像的图像块需要满足的条件。在一些实施例中,当当前待编码图像为I图像或者为随机访问点(RAP,random access point)时,或者当前待编码图像同时为I图像和随机访问点时,根据当前待编码图像的全部图形块对所述特定参考图像的全部图像块进行更新。其中,待编码图像的全部图像块,可以指的是当前待编码图像的编码重建之后的全部图像块,也可以指的是的当前待编码图像的原始的全部图像块。例如,可以采用当前待编码图像的全部图像块替换特定参考图像中的全部图像块。或者,采用当前待编码图像的全部图像块进行一定处理后替换特定参考图像中的全部图像块,其中,该处理可以是对当前待编码图像的全部图像块的像素值进行平均或者进行加权平均,在此不做限制。The conditions described above for some image blocks that can be used to update a particular reference image are described above. In some embodiments, when the current image to be encoded is an I image or a random access point (RAP), or the current image to be encoded is both an I image and a random access point, according to the current image to be encoded. The graphics block updates all of the image blocks of the particular reference image. Wherein, all image blocks of the image to be encoded may refer to all image blocks after the coded reconstruction of the current image to be encoded, and may also refer to all original image blocks of the current image to be encoded. For example, all image blocks in a particular reference image may be replaced with all image blocks of the current image to be encoded. Alternatively, all the image blocks in the specific reference image are replaced by all the image blocks of the current image to be encoded, wherein the processing may be to average or perform weighted average on the pixel values of all the image blocks of the current image to be encoded. There are no restrictions here.
在一些实施例中,当前待编码图像中可用于更新特定参考图像的图像块的数量可以是1个,也可以是大于1个。在一些实施例中,当前待编码图像中可用于更新特定参考图像的图像块的数量可以是没有限制的,也即当前待编码图像中所有满足可用于更新特定参考图像的条件的图像块都用于对特定参考图像进行更新。In some embodiments, the number of image blocks available for updating a particular reference image in the current image to be encoded may be one or more than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be encoded may be unlimited, that is, all image blocks in the current image to be encoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
在一些实施例中,可用于更新特定参考图像的图像块的数量较多,从编解码***实现复杂度考虑,可将当前待编码图像中可用于更新特定参考图像的图像块的数量限制为不大于M,该M为不小于1的整数。In some embodiments, the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be encoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
如此,在确定当前待编码图像中所有可用于更新特定参考图像的图像块之后,若确定出的图像块的数量不大于M,则分别根据确定出的每一个图像块对特定参考图像进行更新。根据每一个图像块对特定参考图像进行更新的方法可参考上述描述,在此不再赘述。若确定出的图像块的数量大于M,则从该确定出的图像块中挑选出其中的M个图像块,并根据该M个图像块对特定参考图像进行更新。 In this way, after determining all the image blocks in the current image to be encoded that can be used to update the specific reference image, if the determined number of image blocks is not greater than M, the specific reference image is updated according to each of the determined image blocks. For the method of updating a specific reference image according to each image block, reference may be made to the above description, and details are not described herein again. If the determined number of image blocks is greater than M, the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
当前待编码图像对应的M的取值有多种确定方法。例如,当前待编码图像对应的M的取值是基于当前待编码图像的类型确定的。There are various determination methods for the value of M corresponding to the current image to be encoded. For example, the value of M corresponding to the current image to be encoded is determined based on the type of the image to be currently encoded.
在一些实施例中,当前待编码图像的类型不同时,该当前待编码图像对应的M的取值不同。具体举例来说,当前待编码图像为I图像时,该当前待编码图像最多有第一预设数值个图像块用于特定参考图像的更新;当前待编码图像为P图像(或前向预测图像)时,该当前待编码图像最多有第二预设数值个图像块用于特定参考图像的更新;当前待编码图像为B图像(或双向预测图像)时,该当前待编码图像最多有第三预设数值个图像块用于特定参考图像的更新,其中,该第一预设数值、第二预设数值和第三预设数值不同。In some embodiments, when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different. For example, when the current image to be encoded is an I image, the current image to be encoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be encoded is a P image (or a forward predicted image). When the current image to be encoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be encoded is a B image (or a bidirectional predicted image), the current image to be encoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
在一些实施例中,当前待编码图像对应的M的取值是基于当前待编码图像所属类型的图像总数确定的。具体举例来说,如I图像对应的M值为视频中I图像的图像总数的一半;P图像(或前向预测图像)对应的M值为P图像(或前向预测图像)的图像总数的四分之一;可作为参考图像使用的B图像(或双向预测图像)对应的M值为B图像(或双向预测图像)的图像总数的八分之一。In some embodiments, the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type of the image to be encoded currently. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image). One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
从当前待编码图像中确定出的所有可用于更新特定参考图像的图像块中挑选出其中的M个图像块的方法有多种。例如,在图像是按照不同颜色通道的分量来存储的情况中,从当前待编码图像中确定出的所有可用于更新特定参考图像的图像块中挑选出其中的代价(cost)小于预置数值,且代价最小的M个图像块来用于更新特定参考图像。There are various methods for selecting M image blocks among all the image blocks that can be used to update a specific reference image determined from the current image to be encoded. For example, in the case where the image is stored according to components of different color channels, the cost (cost) selected from all the image blocks that can be used to update the specific reference image determined from the current image to be encoded is less than the preset value. And the least cost M image blocks are used to update a specific reference image.
其中,图像块的代价(cost)为所述图像块在所述各颜色通道的像素差异的总和;图像块在每个颜色通道的像素差异为,图像块的各像素分别和第三已编码块中具有相同位置的像素在颜色通道的像素值之差的总和;第三已编码块指的是位于当前待编码图像之前的已编码图像中特定位置处的图像块。例如,该第三已编码块指的是位于当前待编码图像的前一帧(或者前两帧)已编码图像中。例如,该特定位置可以是和图像块在当前待编码图像中位置相同。The cost of the image block is the sum of the pixel differences of the image blocks in the color channels; the pixel difference of the image block in each color channel is, each pixel of the image block and the third encoded block respectively The sum of the differences of the pixel values of the pixels having the same position in the color channel; the third coded block refers to the image block at a specific position in the encoded image before the image to be encoded currently. For example, the third encoded block refers to the encoded image in the previous frame (or the first two frames) of the current image to be encoded. For example, the particular location may be the same location as the image block in the current image to be encoded.
具体举例来说,图像是分为YUV三个分量来存储的。图像块与第三编码块分别在YUV三个分量上的像素值差值为Dist Y、Dist U、Dist V,图像块在亮度分量上的像素总数为PixCount。那么图像块的代价(cost)=(Dist  Y+Dist U+Dist V)/PixCount。在确定当前待编码图像中可用于更新特定参考图像时,从确定出当前待编码图像中所有代价小于预置数值的图像块,若确定出的图像块的数量不大于M,则所有的图像块均可以用于更新特定参考图像;若确定出的图像块的数量大于M,则确定当前待编码图像中代价最小的M个图像块可以用于更新特定参考图像。For example, the image is stored in three components divided into YUV. The pixel value difference between the image block and the third coding block on the three components of YUV is Dist Y, Dist U, and Dist V, and the total number of pixels of the image block on the luminance component is PixCount. Then the cost of the image block (cost) = (Dist Y+Dist U+Dist V)/PixCount. When it is determined that the current reference image can be used to update the specific reference image, from determining that the image block in the current image to be encoded is less than the preset value, if the determined number of image blocks is not greater than M, then all the image blocks Both can be used to update a specific reference image; if the determined number of image blocks is greater than M, it is determined that the M pieces of the least cost in the current image to be encoded can be used to update the specific reference image.
在一些实施例中,还编码该图像块的标志位,该标志位用于标识该图像块是否用于对所述特定参考图像进行更新。编码端发送至解码端的码流中还包括各图像的标志位,其中,每个图像的标志位用于指示该图像中的各图像块是否用于对特定参考图像进行更新。In some embodiments, a flag bit of the image block is also encoded, the flag bit being used to identify whether the image block is used to update the particular reference image. The code stream sent by the encoding end to the decoding end further includes flag bits of each image, wherein the flag bits of each image are used to indicate whether each image block in the image is used to update a specific reference image.
下面结合具体示例对视频编码的方法进行举例说明。The method of video encoding is exemplified below in conjunction with a specific example.
如图3所示,图3为视频中的多个图像和特定参考图像的关系示意图。图3中以视频中其中的4个依次进行编码的图像为例,其中前三个图像为已编码图像,第4个图为当前待编码图像。在前三个图像中,第一个和第三个已编码图像可作为参考图像,第二个已编码图像不可作为参考图像。其中,第一个已编码图像中的图像块11和图像块12被用于对特定参考图像进行更新。第三个已编码图像中的图像块31、图像块32、图像块33和图像块34被用于对特定参考图像进行更新。例如,图像块11、12、31、32、33、34中的像素值分别用于替换特定参考图像中的相同位置处的图像块的像素值。As shown in FIG. 3, FIG. 3 is a schematic diagram showing the relationship between a plurality of images and a specific reference image in a video. In FIG. 3, an image in which four of the videos are sequentially encoded is taken as an example, wherein the first three images are encoded images, and the fourth image is the current image to be encoded. In the first three images, the first and third encoded images can be used as reference images, and the second encoded image is not available as a reference image. Among them, the image block 11 and the image block 12 in the first encoded image are used to update a specific reference image. The image block 31, the image block 32, the image block 33, and the image block 34 in the third encoded image are used to update a specific reference image. For example, pixel values in image blocks 11, 12, 31, 32, 33, 34 are used to replace pixel values of image blocks at the same location in a particular reference image, respectively.
下面以对当前待编码图像进行编码时的视频编码方法进行举例说明。在对当前待编码图像进行编码之前,根据当前待编码图像的类型确定当前待编码图像可作为参考图像。例如,由于当前待编码图像为I图像,因此确定当前待编码图像可作为参考图像。因此,在对当前待编码图像中的各图像块分别进行编码时,对于每一个图像块,确定该图像块是否可用于更新特定参考图像。The video encoding method when encoding the current image to be encoded is exemplified below. Before encoding the current image to be encoded, determining that the current image to be encoded is available as a reference image according to the type of the image to be currently encoded. For example, since the current image to be encoded is an I image, it is determined that the current image to be encoded can be used as a reference image. Therefore, when each image block in the current image to be encoded is separately encoded, for each image block, it is determined whether the image block is available for updating a specific reference image.
下面结合两个示例对确定图像块可用于更新特定参考图像的方法进行说明。A method of determining that an image block can be used to update a particular reference image is described below in conjunction with two examples.
示例一Example one
图像按照三个分量来存储,分别是Y、U、V三个分量。称当前待编码图像中的任意一个图像块为图像块1,称该当前待编码图像的前一帧已编码 图像中与图像块1具有相同位置的图像块为图像块2。The image is stored in three components, which are three components of Y, U, and V. It is said that any one of the current image to be encoded is image block 1, and the previous frame of the current image to be encoded is said to be encoded. An image block having the same position as the image block 1 in the image is the image block 2.
图像块1和图像块2的Y分量中,各相同位置处的像素的像素值之差的总和为Dist Y。图像块1和图像块2的U分量中,各相同位置处的像素的像素值之差的总和为Dist U。图像块1和图像块2的V分量中,各相同位置处的像素的像素值之差的总和为Dist V。In the Y component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist Y. In the U component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist U. In the V components of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist V.
图像块1的亮度分量总像素为PixCount,图像块1和图像块2之间的大误差点计数为LargeDist1。设置LargeDist1的初始值为0,当图像块1的亮度分量中出现一个和图像块2的亮度分量的相同位置处的像素值差值大于预设值(例如20)的像素时,LargeDist1累加1。The total luminance component of the image block 1 is PixCount, and the large error point count between the image block 1 and the image block 2 is LargeDist1. The initial value of the LargeDist1 is set to 0, and when a pixel value difference value at the same position as the luminance component of the image block 2 in the luminance component of the image block 1 is larger than a pixel of a preset value (for example, 20), LargeDist1 is incremented by 1.
当同时满足以下4个条件时,认为图像块1是更新特定参考图像的备选块。When the following four conditions are satisfied at the same time, the image block 1 is considered to be an alternative block for updating a specific reference image.
a)LargeDist1小于PixCount的预设比例(例如1%);a) LargeDist1 is less than the preset ratio of PixCount (for example, 1%);
b)Dist Y小于PixCount的预设倍数(例如4倍);b) Dist Y is less than a preset multiple of PixCount (eg 4 times);
c)Dist U小于PixCount的预设倍数(例如0.5倍);c) Dist U is less than a preset multiple of PixCount (eg 0.5 times);
d)DistV小于PixCount的预设倍数(例如0.5倍)。d) DistV is less than a preset multiple of PixCount (eg 0.5 times).
在当前待编码图像中符合更新特定参考图像的备选块中,当该备选块的数量不大于M时,采用所有的备选块用作更新特定参考图像。In the candidate block in the current image to be encoded that matches the update of the specific reference image, when the number of the candidate blocks is not greater than M, all of the candidate blocks are used as the update specific reference image.
在当前待编码图像中符合更新特定参考图像的备选块中,当该备选块的数量大于M时,记每个图像块的代价cost为:Cost=(Dist Y+Dist U+DistV)/PixCount。当前待编码图像中选出cost最小的M个备选块用于更新所述的特定的参考图像。In the candidate block in the current image to be encoded that matches the update of the specific reference image, when the number of the candidate blocks is greater than M, the cost cost of each image block is: Cost=(Dist Y+Dist U+DistV)/ PixCount. Among the currently to-coded images, M candidate blocks with the lowest cost are selected for updating the specific reference image.
示例二Example two
图像按照三个分量来存储,分别是Y、U、V三个分量。称当前待编码图像中的任意一个图像块为图像块1,称该当前待编码图像的前一帧已编码图像中与图像块1具有相同位置的图像块为图像2,称该当前待编码图像的前两帧已编码图像中与图像块1具有相同位置的图像块为图像3。The image is stored in three components, which are three components of Y, U, and V. It is said that any one of the current image to be encoded is the image block 1, and the image block of the previous frame encoded image of the current image to be encoded is said to have the same position as the image block 1 as the image 2, and the current image to be encoded is called The image block having the same position as the image block 1 in the first two frames of the encoded image is the image 3.
图像块1和图像块2的Y分量中,各相同位置处的像素的像素值之差的总和为Dist Y。图像块1和图像块2的U分量中,各相同位置处的像素的像素值之差的总和为Dist U。图像块1和图像块2的V分量中,各相同位置处的像素的像素值之差的总和为Dist V。 In the Y component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist Y. In the U component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist U. In the V components of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist V.
图像块1和图像块3的Y分量中,各相同位置处的像素的像素值之差的总和为Dist Y’。图像块1和图像块2的U分量中,各相同位置处的像素的像素值之差的总和为Dist U’。图像块1和图像块2的V分量中,各相同位置处的像素的像素值之差的总和为Dist V’。In the Y component of the image block 1 and the image block 3, the sum of the differences of the pixel values of the pixels at the same position is Dist Y'. In the U component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist U'. In the V component of the image block 1 and the image block 2, the sum of the differences of the pixel values of the pixels at the same position is Dist V'.
图像块1的亮度分量总像素为PixCount,图像块1和图像块2之间的大误差点计数为LargeDist1,图像块1和图像块3之间的大误差点计数为LargeDist2。设置LargeDist1和LargeDist2的初始值为0,当图像块1的亮度分量中出现一个和图像块2的亮度分量的相同位置处的像素值差值大于预设值(例如20)的像素时,LargeDist1累加1。当图像块1的亮度分量中出现一个和图像块3的亮度分量的相同位置处的像素值差值大于预设值(例如20)的像素时,LargeDist2累加1。The total luminance component of the image block 1 is PixCount, the large error point count between the image block 1 and the image block 2 is LargeDist1, and the large error point count between the image block 1 and the image block 3 is LargeDist2. Setting the initial values of LargeDist1 and LargeDist2 to 0, when the pixel value difference between the luminance component of the image block 1 and the luminance component of the image block 2 is larger than the preset value (for example, 20), the LargeDist1 is accumulated. 1. When a pixel value difference value at the same position as the luminance component of the image block 3 in the luminance component of the image block 1 is larger than a pixel of a preset value (for example, 20), LargeDist2 is incremented by one.
当同时满足以下4个条件时,认为图像块1是更新特定背景块的备选块。When the following four conditions are satisfied at the same time, it is considered that the image block 1 is an alternative block for updating a specific background block.
a)LargeDist1和LargeDist2均小于PixCount的预设比例(例如2%);a) Both LargeDist1 and LargeDist2 are smaller than the preset ratio of PixCount (for example, 2%);
b)Dist Y和Dist Y’均小于PixCount的预设倍数(例如6倍);b) both Dist Y and Dist Y' are less than a preset multiple of PixCount (eg, 6 times);
c)Dist U和Dist U’均小于PixCount的预设倍数(例如0.5倍)c) Both Dist U and Dist U' are less than the preset multiple of PixCount (eg 0.5 times)
d)DistV和Dist V’均小于PixCount的预设倍数(例如0.5倍)d) Both DistV and Dist V' are less than the preset multiple of PixCount (eg 0.5 times)
在当前待编码图像中符合更新特定参考图像的备选块中,当该备选块的数量不大于M时,采用所有的备选块用作更新特定参考图像。In the candidate block in the current image to be encoded that matches the update of the specific reference image, when the number of the candidate blocks is not greater than M, all of the candidate blocks are used as the update specific reference image.
在当前待编码图像中符合更新特定参考图像的备选块中,当该备选块的数量大于M时,记每个图像块的代价cost为:Cost=(Dist Y+Dist U+DistV)/PixCount。当前待编码图像中选出cost最小的M个备选块用于更新所述的特定的参考图像。In the candidate block in the current image to be encoded that matches the update of the specific reference image, when the number of the candidate blocks is greater than M, the cost cost of each image block is: Cost=(Dist Y+Dist U+DistV)/ PixCount. Among the currently to-coded images, M candidate blocks with the lowest cost are selected for updating the specific reference image.
确定当前待编码图像中所有可用于更新特定参考图像的图像块(图3中具体为图像块41、42、43和44)之后,采用该所有可用于更新特定参考图像的图像块对特定参考图像进行更新。例如,如图3所示,图像块41、42、43和44中的像素值分别用于替换特定参考图像中的相同位置处的图像块的像素值。After determining all the image blocks in the current image to be encoded that can be used to update the specific reference image (specifically, image blocks 41, 42, 43, and 44 in FIG. 3), all of the image block pairs that can be used to update the specific reference image are used for the specific reference image. Update. For example, as shown in FIG. 3, pixel values in image blocks 41, 42, 43, and 44, respectively, are used to replace pixel values of image blocks at the same position in a particular reference image.
如图4所示,图4为本发明的视频编码的方法的又一个实施例的流程示意图。如图4所示,方法包括:As shown in FIG. 4, FIG. 4 is a schematic flowchart diagram of still another embodiment of a video encoding method according to the present invention. As shown in Figure 4, the method includes:
401、当当前待编码图像可用于更新特定参考图像时,且当图像块可用 于更新特定参考图像时,根据该图像块对特定参考图像中的特定图像块进行更新,其中,该图像块为当前待编码图像中的一个图像块,特定图像块在特定参考图像中的位置由图像块在当前待编码图像中的位置决定。401. When the current image to be encoded is available for updating a specific reference image, and when the image block is available When updating a specific reference image, updating a specific image block in a specific reference image according to the image block, wherein the image block is one image block in the current image to be encoded, and the position of the specific image block in the specific reference image is The position of the image block in the current image to be encoded is determined.
其中,确定当前待编码图像可用于更新特定参考图像的方法有多种。There are various methods for determining that the current image to be encoded can be used to update a specific reference image.
在一些实施例中,当当前待编码图像可用于帧间预测时,确定当前待编码图像可用于更新该特定参考图像。例如,当确定当前待编码码图像为帧内预测图像或者为前向预测图像时,确定当前待编码图像可用于更新所述特定参考图像。例如,由于I图像和P图像(或前向预测图像)可以作为其他图像进行帧间预测的参考图像,因此,当确定当前待编码图像为I图像或者为P图像(或前向预测图像)时,确定当前待编码图像作为参考图像。在一些实施例中,部分B图像(或双向预测图像)也可作为其他图像进行帧间预测的参考图像,如在分层B(Hierarchical B)技术中,位于层次较低的B图像可作为参考帧使用,因此,确定当前待编码图像是这一部分B图像时,也可以确定当前待编码图像可作为参考图像。In some embodiments, when the current image to be encoded is available for inter prediction, it is determined that the current image to be encoded can be used to update the particular reference image. For example, when it is determined that the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image. For example, since the I picture and the P picture (or the forward prediction picture) can be used as the reference picture for inter prediction of other pictures, when determining that the current picture to be encoded is an I picture or a P picture (or a forward prediction picture) , determining the current image to be encoded as a reference image. In some embodiments, the partial B image (or bi-predictive image) can also be used as a reference image for inter-prediction of other images. For example, in Hierarchical B technology, a lower-level B image can be used as a reference. The frame is used. Therefore, when it is determined that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as the reference image.
在一些实施例中,当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。In some embodiments, when the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
在一些实施例中,视频中的图像可作为参考图像(也即可用于帧间预测)时,是不区分作为长期参考图像还是作为短期参考图像的,只要当前待编码图像可以作为其他图像进行帧间预测的参考图像,即可确定当前待编码图像可作为参考图像,此时所述待编码图像中的图像块可用于更新特定图像块。In some embodiments, when the image in the video can be used as a reference image (also used for inter prediction), it is not distinguished whether it is a long-term reference image or a short-term reference image, as long as the current image to be encoded can be framed as another image. The inter-predicted reference image determines that the current image to be encoded can be used as a reference image, and the image block in the image to be encoded can be used to update a specific image block.
在一些实施例中,视频中的图像可作为参考图像时,是区分长期参考图像和短期参考图像的。其中,该短期参考图像是与长期参考图像相对应的一个概念。短期参考图像指的是只能存在于参考图像缓冲区中一段时间,经过该短期参考图像之后的已编码的参考图像在参考图像缓冲区中的若干移入和移出操作之后,短期参考图像会被移出参考图像缓冲区。相应的,长期参考图像(或者长期参考图像的一部分数据)一直存在于参考图像缓冲区中,该长期参考图像(或者长期参考图像的一部分数据)不受已编码或已解码的参考图像在参考图像缓冲区中的移入和移出操作的影响,只有在编码端发出更新指令操作时该长期参考图像长期参考图像(或者长期参考图像的一部分 数据)才会被移出参考图像缓冲区。需要注意的是短期参考图像和长期参考图像在不同的标准中的叫法可能不同,如在H.264/AVC或H.265/HEVC标准中,短期参考图像被称为短期参考帧(short-term reference),长期参考图像被称为长期参考帧(long-term reference),又如在AVS1视频和AVS2视频标准中长期参考图像被称为背景帧,在VP8、VP9标准中长期参考图像被称为黄金帧。In some embodiments, when the image in the video is available as a reference image, the long-term reference image and the short-term reference image are distinguished. Wherein, the short-term reference image is a concept corresponding to a long-term reference image. The short-term reference image refers to a time period that can only exist in the reference image buffer for a period of time. After the number of moving in and out operations of the encoded reference image after the short-term reference image in the reference image buffer, the short-term reference image is removed. Reference image buffer. Correspondingly, the long-term reference image (or a portion of the data of the long-term reference image) is always present in the reference image buffer, and the long-term reference image (or a portion of the data of the long-term reference image) is not subject to the encoded or decoded reference image in the reference image. The effect of the move in and out operations in the buffer is only the long-term reference image of the long-term reference image (or part of the long-term reference image) when the encoder performs the update command operation. The data) will be removed from the reference image buffer. It should be noted that the short-term reference image and the long-term reference image may be called differently in different standards. For example, in the H.264/AVC or H.265/HEVC standard, the short-term reference image is called a short-term reference frame (short- Term reference), the long-term reference image is called a long-term reference, and as in the AVS1 video and AVS2 video standards, the long-term reference image is called a background frame. In the VP8 and VP9 standards, the long-term reference image is called For gold frames.
在一些实施例中,当当前待编码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待编码图像中的图像块不可用于更新所述特定参考图像中的特定图像块。In some embodiments, when the current image to be encoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be encoded is not available for updating a particular image block in the particular reference image.
在一些实施例中,当当前待编码图像可作为短期参考图像且可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。In some embodiments, when the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the particular reference image.
在一些实施例中,当当前待编码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
在一些实施例中,当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像不可用于更新所述特定参考图像,也即确定所述待编码图像中的图像块不用于更新特定参考图像中的特定图像块。In some embodiments, when the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image to be encoded is not available to update the specific reference image, that is, in the image to be encoded. Image blocks are not used to update a particular image block in a particular reference image.
在一些实施例中,当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
在一些实施例中,当当前待编码图像可作为短期参考图像且可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the particular reference image.
在一些实施例中,还在以下至少一项中加入标志位,该标志位用于标识不可作为短期参考图像的图像是否可用于更新所述特定参考图像:In some embodiments, a flag bit is also added in at least one of the following to identify whether an image that is not available as a short-term reference image is available for updating the particular reference image:
视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
可选的,该标志位为时域可伸缩标志位。当具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,当不具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。 Optionally, the flag bit is a time domain scalable flag bit. The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for updating the particular reference image when having a time domain scalability requirement; and/or when there is no time domain scalability When required, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
考虑到不可作为短期参考图像的图像中的图像块不用于更新特定参考图像会影响特定参考帧的更新速度,从而会影响特定参考帧对提升编码质量的作用,采用“不可作为短期参考图像但可作为长期参考图像的当前待编码图像中的图像块仍可用于更新特定参考帧”这样的方案,可以降低产生这样影响。Considering that an image block in an image that cannot be used as a short-term reference image is not used to update a specific reference image, which affects the update speed of a specific reference frame, thereby affecting the effect of a particular reference frame on improving the encoding quality, "cannot be used as a short-term reference image but can be used. As an aspect of the long-term reference image, the image block in the current image to be encoded can still be used to update a specific reference frame, such an effect can be reduced.
而且,“不可作为短期参考图像但可作为长期参考帧的当前待编码图像中的图像块仍可用于更新特定参考图像”这样的方案的意义在于,当编码***不在意不作为短期参考图像的并行编码特性或不在意解码时直接丢弃不作为短期参考图像加快解码速度的特性时,采用该方案即能保证特定参考帧对提升编码质量的作用,又能兼顾在短期参考图像的概念中不可作为参考图像的图像的定义;当编码***在意不作为短期参考图像的并行编码特性或在意解码时直接丢弃不作为短期参考图像加快编码速度的特性时,则仍可以规定不可作为短期参考图像的图像中的图像块不能用于对特定参考帧的更新。Moreover, the meaning of the scheme "cannot be used as a short-term reference image but can be used as a long-term reference frame in which the image block in the current image to be encoded can still be used to update a specific reference image" is that when the encoding system does not care for parallelism as a short-term reference image When the coding feature or the non-intentional decoding directly discards the feature that does not serve as a short-term reference image to speed up the decoding speed, the scheme can ensure the effect of the specific reference frame on improving the coding quality, and can not be used as a reference in the concept of the short-term reference image. The definition of the image of the image; when the encoding system cares not to use the parallel encoding feature of the short-term reference image or directly discards the characteristics of not accelerating the encoding speed as a short-term reference image, it can still be specified in the image of the short-term reference image. Image blocks cannot be used for updates to specific reference frames.
进一步的,可以在视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集中的至少一项加入一标志位,该标志位用于标识不可作为短期参考图像的图像中的图像块信息是否可用于更新特定参考帧。在一些实施例中,标志位还可以为时域可伸缩标志位。当编码***具有时域可伸缩需求时,设置所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于特定参考帧的更新;和/或,当编码***不具有时域可伸缩需求时,设置所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于特定参考帧的更新。Further, at least one of a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set, and a reference configuration set may be added with a flag, where the flag is used to identify Whether the image block information in the image of the short-term reference image is available for updating a particular reference frame. In some embodiments, the flag bit can also be a time domain scalable flag bit. Setting the value of the flag bit to indicate that an image block in an image that is not a short-term reference image is not available for update of a particular reference frame when the encoding system has a time domain scalability requirement; and/or, when the encoding system does not have When the time domain is scalable, the value of the flag is set to indicate that an image block in an image that is not a short-term reference image is available for updating of a particular reference frame.
其中,关于特定参考图像以及特定图像块的解释可参考上面描述中对特定参考图像和特定图像块的解释,在此不再赘述。For the explanation of the specific reference image and the specific image block, reference may be made to the explanation of the specific reference image and the specific image block in the above description, and details are not described herein again.
其中,关于如何确定图像块可用于更新特定参考图像,可参考上面描述中对“确定图像块可用于更新特定参考图像”的解释,在此不再赘述。Wherein, as to how to determine that an image block can be used to update a specific reference image, reference may be made to the explanation in the above description for "determining that an image block can be used to update a specific reference image", and details are not described herein again.
其中,关于如何根据当前待编码图像中的图像块对特定参考图像中的特定图像块进行更新,可参考上面描述中对“根据当前待编码图像中的图像块对特定参考图像中的特定图像块进行更新”的解释,在此不再赘述。Wherein, as for how to update a specific image block in a specific reference image according to an image block in the current image to be encoded, reference may be made to "specific image blocks in a specific reference image according to the image block in the current image to be encoded. The explanation of the update is not repeated here.
在一些实施例中,当前待编码图像中可用于更新特定参考图像的图像块的数量可以是1个,也可以是大于1个。在一些实施例中,当前待编码图像 中可用于更新特定参考图像的图像块的数量可以是没有限制的,也即当前待编码图像中所有满足可用于更新特定参考图像的条件的图像块都用于对特定参考图像进行更新。In some embodiments, the number of image blocks available for updating a particular reference image in the current image to be encoded may be one or more than one. In some embodiments, the current image to be encoded The number of image blocks that can be used to update a particular reference image may be unlimited, that is, all of the image blocks in the current image to be encoded that satisfy the conditions available for updating the particular reference image are used to update the particular reference image.
在一些实施例中,可用于更新特定参考图像的图像块的数量较多,从编解码***实现复杂度考虑,可将当前待编码图像中可用于更新特定参考图像的图像块的数量限制为不大于M,该M为不小于1的整数。In some embodiments, the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be encoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
如此,在确定当前待编码图像中所有可用于更新特定参考图像的图像块之后,若确定出的图像块的数量不大于M,则分别根据确定出的每一个图像块对特定参考图像进行更新。根据每一个图像块对特定参考图像进行更新的方法可参考上述描述,在此不再赘述。若确定出的图像块的数量大于M,则从该确定出的图像块中挑选出其中的M个图像块,并根据该M个图像块对特定参考图像进行更新。In this way, after determining all the image blocks in the current image to be encoded that can be used to update the specific reference image, if the determined number of image blocks is not greater than M, the specific reference image is updated according to each of the determined image blocks. For the method of updating a specific reference image according to each image block, reference may be made to the above description, and details are not described herein again. If the determined number of image blocks is greater than M, the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
当前待编码图像对应的M的取值有多种确定方法。例如,当前待编码图像对应的M的取值是基于当前待编码图像的类型确定的。There are various determination methods for the value of M corresponding to the current image to be encoded. For example, the value of M corresponding to the current image to be encoded is determined based on the type of the image to be currently encoded.
在一些实施例中,当前待编码图像的类型不同时,该当前待编码图像对应的M的取值不同。具体举例来说,当前待编码图像为I图像时,该当前待编码图像最多有第一预设数值个图像块用于特定参考图像的更新;当前待编码图像为P图像(或前向预测图像)时,该当前待编码图像最多有第二预设数值个图像块用于特定参考图像的更新;当前待编码图像为B图像(或双向预测图像)时,该当前待编码图像最多有第三预设数值个图像块用于特定参考图像的更新,其中,该第一预设数值、第二预设数值和第三预设数值不同。In some embodiments, when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different. For example, when the current image to be encoded is an I image, the current image to be encoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be encoded is a P image (or a forward predicted image). When the current image to be encoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be encoded is a B image (or a bidirectional predicted image), the current image to be encoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
在一些实施例中,当前待编码图像对应的M的取值是基于当前待编码图像所属类型的图像总数确定的。具体举例来说,如I图像对应的M值为视频中I图像的图像总数的一半;P图像(或前向预测图像)对应的M值为P图像(或前向预测图像)的图像总数的四分之一;可作为参考图像使用的B图像(或双向预测图像)对应的M值为B图像(或双向预测图像)的图像总数的八分之一。In some embodiments, the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type of the image to be encoded currently. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image). One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
从当前待编码图像中确定出的所有可用于更新特定参考图像的图像块中挑选出其中的M个图像块的方法有多种。具体可参考上面描述中对“从当前待编码图像中确定出的所有可用于更新特定参考图像的图像块中挑选出 其中的M个图像块的方法”的解释,在此不在赘述。There are various methods for selecting M image blocks among all the image blocks that can be used to update a specific reference image determined from the current image to be encoded. For details, refer to the above description for "selecting all the image blocks that can be used to update a specific reference image determined from the current image to be encoded. The explanation of the method of M image blocks therein is not described here.
在视频技术中,不被作为参考图像的图像在编码和解码过程中自身的图像信息不会用于其它图像的编码和解码过程,也即出现部分图像不可用于更新特定参考图像时也会被用于更新特定参考图像。本实施例中在确定当前待编码图像可用于更新特定参考图像时,才考虑采用该当前待编码图像中的图像块来对特定参考图像进行更新,避免了部分图像不可用于更新特定参考图像时也会被用于更新特定参考图像的情况,例如避免了特定参考图像的构造过程与不被作为参考图像的图像的定义相违背的情况。此外,不被作为参考图像的图像在解码时由于不用做其它图像的解码过程,因此所述不被作为参考图像的图像在解码时可以不被解码,从而能加快视频码流的解码速度,实现视频内容的变帧率播放。进一步的,在一些实施例中,在确定当前待编码图像可作为参考图像时,才考虑采用该当前待编码图像中的图像块来对特定参考图像进行更新,避免了采用不可作为参考图像的图像中的图像块对特定参考图像进行更新时无法实现丢弃部分不可作为参考图像的情况。In video technology, image information that is not used as a reference image is not used in the encoding and decoding process of other images during encoding and decoding, that is, when part of the image is not available for updating a specific reference image, Used to update a specific reference image. In this embodiment, when determining that the current image to be encoded is available for updating a specific reference image, the image block in the current image to be encoded is considered to be used to update the specific reference image, thereby avoiding that part of the image is not available for updating the specific reference image. It is also used in the case of updating a specific reference image, for example, a case where the construction process of a specific reference image is avoided from being violated by the definition of an image as a reference image. In addition, an image that is not used as a reference image does not need to be decoded by other images at the time of decoding, so the image that is not used as a reference image may not be decoded at the time of decoding, thereby speeding up the decoding speed of the video stream and realizing The variable frame rate of the video content is played. Further, in some embodiments, when determining that the current image to be encoded is available as a reference image, it is considered to use the image block in the current image to be encoded to update the specific reference image, thereby avoiding adopting an image that is not a reference image. When the image block in the update is updated for a specific reference image, the case where the discarded portion is not available as the reference image cannot be realized.
在一些实施例中,当当前待编码图像不可用于更新特定参考图像时,不用当前待编码图像中的图像块对所述特定参考图像中的特定图像块进行更新。例如,当所述当前待编码图像不可用于帧间预测时,确定所述当前待编码图像不可用于更新特定参考图像。又例如,当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的图像块不用于更新所述特定参考图像中中的特定图像块。又例如,当当前待编码图像不可作为短期参考图像也不可作为长期参考图像时,确定所述待编码图像中的图像块不用于更新所述特定参考图像中的特定图像块。In some embodiments, when the current image to be encoded is not available for updating a particular reference image, the particular image block in the particular reference image is updated without the image block in the current image to be encoded. For example, when the current image to be encoded is not available for inter prediction, it is determined that the current image to be encoded is not available for updating a specific reference image. For another example, when the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image. For another example, when the current image to be encoded is not available as a short-term reference image or as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image.
在一些实施例中,在确定当前待编码图像可用于更新特定参考图像之后,编码端还在视频参数集(VPS,video parameter set)、序列参数集(SPS,sequence parameter set)、序列头(sequence header)、图像头(picture header)、条带头(slice header)、参考图像集(RPS,reference picture set)和参考图像配置集(RCS,reference configuration set)中的至少一项中写入参数或者标志位,以指示该当前待编码图像可用于更新特定参考图像。In some embodiments, after determining that the current image to be encoded is available for updating a specific reference image, the encoding end is also in a video parameter set (VPS), a sequence parameter set (SPS), a sequence header (sequence). Write a parameter or flag in at least one of a header), a picture header, a slice header, a reference picture set (RPS), and a reference configuration set (RCS) Bit to indicate that the current image to be encoded can be used to update a particular reference image.
在一些实施例中,在确定当前待编码图像可用于更新特定参考图像之后,还编码当前待编码图像中的图像块的标志位,该标志位用于标识该当前 待编码图像中的图像块是否用于对所述特定参考图像进行更新。In some embodiments, after determining that the current image to be encoded is available for updating the specific reference image, the flag bit of the image block in the current image to be encoded is also encoded, the flag bit is used to identify the current Whether an image block in the image to be encoded is used to update the specific reference image.
以上结合图1、图2、图3和图4从编码端描述了根据本发明实施例的视频编码方法,下面将结合图5从解码端详细描述根据本发明另一实施例的视频编码方法。图5示出了根据本发明另一实施例的视频解码方法,该方法可以由图像处理装置执行,所述图像处理装置可以是各种类型的用于图像处理的芯片、图像处理器等。如图5所示,视频解码方法包括:The video encoding method according to an embodiment of the present invention is described above from the encoding side with reference to FIG. 1, FIG. 2, FIG. 3, and FIG. 4. The video encoding method according to another embodiment of the present invention will be described in detail below from the decoding end with reference to FIG. FIG. 5 illustrates a video decoding method according to another embodiment of the present invention, which may be performed by an image processing apparatus, which may be various types of chips, image processors, and the like for image processing. As shown in FIG. 5, the video decoding method includes:
501、当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。501. When a current image to be decoded is available as a reference image, and when the image block is available to update a specific reference image, updating a specific image block in the specific reference image according to the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
在一些实施例中,确定当前待解码图像可作为参考图像,可以发生在对该待解码图像进行解码之前。如此,可以根据该确定的结果在对待解码图像中的各图像块进行解码时或者解码后判断各图像块满足用于更新特定参考图像的条件。或者,确定当前待解码图像可作为参考图像,也可以发生在对待解码图像中的各图像块进行解码时或者解码后,也即在对每一个图像块解码时或者解码后,首先确定该图像块当前所在图像是可作为参考图像的图像,当确定可作为参考图像时,再判断该图像块可用于更新特定参考图像。In some embodiments, determining that the current image to be decoded is available as a reference image may occur prior to decoding the image to be decoded. As such, it is possible to determine, based on the result of the determination, that each image block in the image to be decoded is decoded or after decoding, that each image block satisfies a condition for updating a specific reference image. Alternatively, it may be determined that the current image to be decoded may be used as a reference image, or may be generated when decoding each image block in the image to be decoded or after decoding, that is, when decoding or decoding each image block, first determining the image block. The current image is an image that can be used as a reference image, and when it is determined to be a reference image, it can be judged that the image block can be used to update a specific reference image.
在一些实施例中,确定当前待解码图像可作为参考图像,可通过获取用于指示当前待解码图像的参考关系的参数或者标志位,并根据该参数或者标志位确定当前待解码图像是否为可作为参考图像的图像。其中,可通过多种途径获取用于指示当前待解码图像的参考关系的参数或者标志位。例如,可从视频参数集(VPS,video parameter set)、序列参数集(SPS,sequence parameter set)、序列头(sequence header)、图像头(picture header)、条带头(slice header)、参考图像集(RPS,reference picture set)和参考图像配置集(RCS,reference configuration set)中的至少一项来获取用于指示当前待解码图像的参考关系的参数或者标志位。In some embodiments, determining that the current image to be decoded is a reference image may be obtained by acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded, and determining, according to the parameter or the flag bit, whether the current image to be decoded is An image as a reference image. Wherein, the parameter or the flag bit for indicating the reference relationship of the current image to be decoded can be obtained through various ways. For example, from a video parameter set (VPS), a sequence parameter set (SPS), a sequence header, a picture header, a slice header, a reference picture set. At least one of (RPS, reference picture set) and a reference configuration set (RCS, reference configuration set) to obtain a parameter or a flag bit for indicating a reference relationship of the current image to be decoded.
在一些实施例中,由于I图像和P图像(或前向预测图像)可以作为其他图像进行帧间预测的参考图像,因此,当确定当前待解码图像为I图像或者为P图像(或前向预测图像)时,确定当前待解码图像是可作为参考图像 的图像。在一些实施例中,部分B图像(或双向预测图像)也可作为用于帧间预测的参考图像,如在分层B(Hierarchical B)技术中,位于层次较低的B图像可作为参考帧使用,因此,确定当前待编码图像是这一部分B图像时,也可以确定当前待编码图像可作为参考图像。In some embodiments, since the I picture and the P picture (or forward predicted picture) can be used as reference pictures for inter prediction of other pictures, when determining that the current picture to be decoded is an I picture or a P picture (or forward direction) When predicting an image), it is determined that the current image to be decoded is available as a reference image Image. In some embodiments, the partial B image (or bi-predictive image) may also serve as a reference image for inter prediction, as in Hierarchical B technology, a lower-level B image may be used as a reference frame. When using, therefore, when determining that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as a reference image.
判断图像块可用于更新特定参考图像的方法,可以参考上面描述中判断当前待编码图像中的图像块可用于更新特定参考图像的方法。或者,在一些实施例中,解码端还从码流中解析出各图像的标志位,其中,每个图像的标志位用于指示该图像中的各图像块是否用于对特定参考图像进行更新。解码端可以从中获取到图像块的标志位,并根据该标志位判断该图像块是否用于更新特定参考图像。A method of judging that an image block can be used to update a specific reference image can be referred to the above description to determine a method in which an image block in an image to be encoded can be used to update a specific reference image. Alternatively, in some embodiments, the decoding end further parses the flag bits of each image from the code stream, wherein the flag bits of each image are used to indicate whether each image block in the image is used to update a specific reference image. . The decoding end can obtain the flag bit of the image block from the decoding end, and judge whether the image block is used to update the specific reference image according to the flag bit.
其中,根据图像块对特定参考图像中的特定图像块进行更新的方法,可以参考上面描述中根据当前待编码图像中的图像块对特定参考图像中的特定图像块进行更新的方法,在此不在赘述。其中,特定图像块在所述特定参考图像中的位置具体如何由该图像块在当前待解码图像中的位置决定,可以参考步骤101中特定图像块在特定参考图像中的位置具体如何由该图像块在当前待编码图像中的位置决定,在此不再赘述。Wherein, according to the method for updating a specific image block in a specific reference image according to an image block, reference may be made to a method for updating a specific image block in a specific reference image according to an image block in the current image to be encoded, which is not in the above description. Narration. Wherein, the position of the specific image block in the specific reference image is specifically determined by the position of the image block in the current image to be decoded, and reference may be made to how the position of the specific image block in the specific reference image in step 101 is specifically determined by the image. The position of the block in the current image to be encoded is determined and will not be described here.
其中,在一些实施例中,当前待解码图像中可用于更新特定参考图像的图像块的数量可以是1个,也可以是大于1个。在一些实施例中,当前待解码图像中可用于更新特定参考图像的图像块的数量可以是没有限制的,也即当前待解码图像中所有满足可用于更新特定参考图像的条件的图像块都用于对特定参考图像进行更新。Wherein, in some embodiments, the number of image blocks that can be used to update a specific reference image in the current image to be decoded may be one, or may be greater than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be decoded may be unlimited, that is, all image blocks in the current image to be decoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
在一些实施例中,可用于更新特定参考图像的图像块的数量较多,从编解码***实现复杂度考虑,可将当前待解码图像中可用于更新特定参考图像的图像块的数量限制为不大于M,该M为不小于1的整数。In some embodiments, the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be decoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
如此,在确定当前待解码图像中所有可用于更新特定参考图像的图像块之后,若确定出的图像块的数量不大于M,则分别根据确定出的每一个图像块对特定参考图像进行更新。根据每一个图像块对特定参考图像进行更新的方法可参考上述描述,在此不再赘述。若确定出的图像块的数量大于M,则从该确定出的图像块中挑选出其中的M个图像块,并根据该M个图像块对特定参考图像进行更新。 In this way, after determining all the image blocks in the currently to-be-decoded image that can be used to update the specific reference image, if the determined number of image blocks is not greater than M, the specific reference image is updated according to each of the determined image blocks. For the method of updating a specific reference image according to each image block, reference may be made to the above description, and details are not described herein again. If the determined number of image blocks is greater than M, the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
当前待解码图像对应的M的取值可以是基于多种确定方法的。例如,当前待解码图像对应的M的取值是基于当前待解码图像的类型确定的。在一些实施例中,当前待解码图像的图像类型不同时,该当前待解码图像对应的M的取值不同。具体举例来说,当前待解码图像为I图像时,该当前待解码图像最多有第一预设数值个图像块用于特定参考图像的更新;当前待解码图像为P图像(或前向预测图像)时,该当前待解码图像最多有第二预设数值个图像块用于特定参考图像的更新;当前待解码图像为B图像(或双向预测图像)时,该当前待解码图像最多有第三预设数值个图像块用于特定参考图像的更新,其中,该第一预设数值、第二预设数值和第三预设数值不同。The value of M corresponding to the current image to be decoded may be based on multiple determination methods. For example, the value of M corresponding to the current image to be decoded is determined based on the type of the image to be decoded currently. In some embodiments, when the image types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different. For example, when the current image to be decoded is an I image, the current image to be decoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be decoded is a P image (or a forward predicted image). When the current image to be decoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be decoded is a B image (or a bidirectional predicted image), the current image to be decoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
在一些实施例中,当前待解码图像对应的M的取值是基于当前待解码图像所属类型的图像总数确定的。具体举例来说,如I图像对应的M值为视频中I图像的图像总数的一半;P图像(或前向预测图像)对应的M值为P图像(或前向预测图像)的图像总数的四分之一;可作为参考图像使用的B图像(或双向预测图像)对应的M值为B图像(或双向预测图像)的图像总数的八分之一。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the image to be decoded currently belongs. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image). One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
在一些实施例中,以下至少一项中携带有当前待解码图像中可用于更新所述特定参考图像的图像块的数量:当前待解码图像的图像头、当前解码图像的图像参数集、当前待解码图像对应的序列头、当前待解码图像对应的序列参数集、当前待解码图像对应的视频参数集。解码端可从其中解析出当前待解码图像中可用于更新所述特定参考图像的图像块的数量。In some embodiments, at least one of the following carries the number of image blocks available for updating the specific reference image in the current image to be decoded: an image header of the current image to be decoded, an image parameter set of the current decoded image, and a current waiting The sequence header corresponding to the decoded image, the sequence parameter set corresponding to the current image to be decoded, and the video parameter set corresponding to the current image to be decoded. The decoding end can parse out the number of image blocks in the current image to be decoded that can be used to update the particular reference image.
在一些实施例中,当前待解码图像对应的M的取值仅用于告知解码端当前图像最多有多少个图像块可用于特定参考帧的更新,这样可以便于解码端的设计,从而降低解码端的复杂度。In some embodiments, the value of M corresponding to the current image to be decoded is only used to inform the decoding end how many image blocks of the current image are available for the update of the specific reference frame, which can facilitate the design of the decoding end, thereby reducing the complexity of the decoding end. degree.
如图6所示,图6为本发明的视频解码的方法的又一个实施例的流程示意图。如图6所示,方法包括:As shown in FIG. 6, FIG. 6 is a schematic flowchart diagram of still another embodiment of a video decoding method according to the present invention. As shown in Figure 6, the method includes:
601、当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。 601. When a current image to be encoded is available for updating a specific reference image, and when the image block is available for updating a specific reference image, updating a specific image block in the specific reference image according to the image block, wherein the image block For one of the current image to be encoded, the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be encoded.
其中,确定当前待编码图像可用于更新特定参考图像的方法有多种。There are various methods for determining that the current image to be encoded can be used to update a specific reference image.
在一些实施例中,当所述当前待解码图像可用于帧间预测时,确定当前待解码图像可用于更新所述特定参考图像。例如,由于I图像和P图像(或前向预测图像)可以作为其他图像进行帧间预测的参考图像,因此,当确定当前待解码图像为I图像或者为P图像(或前向预测图像)时,确定当前待解码图像是可作为参考图像的图像。在一些实施例中,部分B图像(或双向预测图像)也可作为用于帧间预测的参考图像,如在分层B(Hierarchical B)技术中,位于层次较低的B图像可作为参考帧使用,因此,确定当前待编码图像是这一部分B图像时,也可以确定当前待编码图像可作为参考图像。In some embodiments, when the current image to be decoded is available for inter prediction, it is determined that the current image to be decoded is available for updating the particular reference image. For example, since an I picture and a P picture (or a forward prediction picture) can be used as reference pictures for inter prediction of other pictures, when determining that the current picture to be decoded is an I picture or a P picture (or a forward prediction picture) And determining that the current image to be decoded is an image that can be used as a reference image. In some embodiments, the partial B image (or bi-predictive image) may also serve as a reference image for inter prediction, as in Hierarchical B technology, a lower-level B image may be used as a reference frame. When using, therefore, when determining that the current image to be encoded is this partial B image, it can also be determined that the current image to be encoded can be used as a reference image.
在一些实施例中,当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。具体解释可参考上面对“根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新”的解释,在此不再赘述。In some embodiments, when the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded. For specific explanation, reference may be made to the above explanation of “update all image blocks of the specific reference image according to all image blocks of the current image to be decoded”, and details are not described herein again.
确定当前待解码图像可作为参考图像(也即可用于帧间预测),可通过获取用于指示当前待解码图像的参考关系的参数或者标志位,并根据该参数或者标志位确定当前待解码图像是否为可作为参考图像的图像。其中,所述所述当前待解码图像的参考关系可以指的是所述当前带解码图像为短期参考图像或者长期参考图像。其中,可通过多种途径获取用于指示当前待解码图像的参考关系的参数或者标志位。例如,可从视频参数集(VPS,video parameter set)、序列参数集(SPS,sequence parameter set)、序列头(sequence header)、图像头(picture header)、条带头(slice header)、参考图像集(RPS,reference picture set)和参考图像配置集(RCS,reference configuration set)中的至少一项来获取用于指示当前待解码图像的参考关系的参数或者标志位。Determining that the current image to be decoded can be used as a reference image (that is, for inter prediction), by obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded, and determining an image to be decoded according to the parameter or the flag bit. Whether it is an image that can be used as a reference image. The reference relationship of the current image to be decoded may refer to that the current band decoded image is a short-term reference image or a long-term reference image. Wherein, the parameter or the flag bit for indicating the reference relationship of the current image to be decoded can be obtained through various ways. For example, from a video parameter set (VPS), a sequence parameter set (SPS), a sequence header, a picture header, a slice header, a reference picture set. At least one of (RPS, reference picture set) and a reference configuration set (RCS, reference configuration set) to obtain a parameter or a flag bit for indicating a reference relationship of the current image to be decoded.
在一些实施例中,视频中的图像可作为参考图像时,是不区分作为长期参考图像还是作为短期参考图像的,只要当前待解码图像可以作为其他图像进行帧间预测的参考图像,即可确定当前待解码图像可作为参考图像,此时当前待编码图像可用于更新特定参考图像。In some embodiments, when the image in the video can be used as the reference image, whether it is a long-term reference image or a short-term reference image, as long as the current image to be decoded can be used as a reference image for inter prediction of other images, it can be determined. The current image to be decoded can be used as a reference image, and the current image to be encoded can be used to update a specific reference image.
在一些实施例中,视频中的图像可作为参考图像时,是区分长期参考图像和短期参考图像的。其中,该短期参考图像是与长期参考图像相对应的一 个概念。短期参考图像指的是只能存在于参考图像缓冲区中一段时间,经过该短期参考图像之后的已解码的参考图像在参考图像缓冲区中的若干移入和移出操作之后,短期参考图像会被移出参考图像缓冲区。相应的,长期参考图像(或长期参考图像中的一部分数据)一直存在于参考图像缓冲区中,该长期参考图像(或长期参考图像中的一部分数据)不受已解码的参考图像在参考图像缓冲区中的移入和移出操作的影响,只有在解码端发出更新指令操作时该长期参考图像(或长期参考图像中的一部分数据)才会被移出参考图像缓冲区。需要注意的是短期参考图像和长期参考图像在不同的标准中的叫法可能不同,如在H.264/AVC或H.265/HEVC标准中,短期参考图像被称为短期参考帧(short-term reference),长期参考图像被称为长期参考帧(long-term reference),又如在AVS1视频和AVS2视频标准中长期参考图像被称为背景帧,在VP8、VP9标准中长期参考图像被称为黄金帧。In some embodiments, when the image in the video is available as a reference image, the long-term reference image and the short-term reference image are distinguished. Wherein the short-term reference image is a one corresponding to the long-term reference image Concepts. The short-term reference image refers to a time period that can only exist in the reference image buffer for a period of time. After a number of move-in and move-out operations of the decoded reference image after the short-term reference image in the reference image buffer, the short-term reference image is removed. Reference image buffer. Correspondingly, the long-term reference image (or a part of the data in the long-term reference image) is always present in the reference image buffer, and the long-term reference image (or a part of the data in the long-term reference image) is not buffered by the reference image in the reference image. The effect of the move-in and move-out operations in the zone is that the long-term reference image (or a portion of the data in the long-term reference image) is removed from the reference image buffer only when the decoder issues an update command operation. It should be noted that the short-term reference image and the long-term reference image may be called differently in different standards. For example, in the H.264/AVC or H.265/HEVC standard, the short-term reference image is called a short-term reference frame (short- Term reference), the long-term reference image is called a long-term reference, and as in the AVS1 video and AVS2 video standards, the long-term reference image is called a background frame. In the VP8 and VP9 standards, the long-term reference image is called For gold frames.
在一些实施例中,当当前待解码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待解码图像不可用于更新所述特定参考图像,也即确定所述待解码图像中的图像块不用于更新特定参考图像中的特定图像块。In some embodiments, when the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image to be decoded is not available to update the specific reference image, that is, in the image to be decoded. Image blocks are not used to update a particular image block in a particular reference image.
在一些实施例中,当当前待解码图像可作为短期参考图像且可作为长期参考图像时,确定所述待解码图像中的图像块可用于更新所述特定参考图像。In some embodiments, when the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the particular reference image.
在一些实施例中,当当前待解码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
在一些实施例中,当当前待解码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待解码图像不可用于更新所述特定参考图像,也即确定所述待解码图像中的图像块不用于更新特定参考图像中的特定图像块。In some embodiments, when the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image to be decoded is not available to update the specific reference image, that is, in the image to be decoded. Image blocks are not used to update a particular image block in a particular reference image.
在一些实施例中,当当前待解码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
在一些实施例中,当当前待解码图像可作为短期参考图像且可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。In some embodiments, when the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the particular reference image.
确定当前带解码图像是哪一种图像的方法有多种,例如可通过以在视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、 参考配置集中解析获得当前图像是短期参考图像还是长期参考图像。There are various methods for determining which image is currently decoded, such as in a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set, The reference configuration is analyzed to obtain whether the current image is a short-term reference image or a long-term reference image.
进一步的,还可通过以在视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集中的至少一项解析出一标志位,所述标志位用于标识所述待解码图像是否可用于更新所述特定参考图像。在一些实施例中,标志位还可以为时域可伸缩标志位。当解码端具有时域可伸缩需求时,该标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于特定参考帧的更新;和/或,当解码端不具有时域可伸缩需求时,该标志位的值用于指示不可为短期参考图像的图像中的图像块可用于特定参考帧的更新。Further, the flag bit may be parsed by at least one of a video parameter set, a sequence parameter set, a sequence header, an image parameter set, an image header, a strip header, a reference image set, and a reference configuration set. It is used to identify whether the image to be decoded is available for updating the specific reference image. In some embodiments, the flag bit can also be a time domain scalable flag bit. When the decoding end has a time domain scalability requirement, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for update of a particular reference frame; and/or, when the decoding end does not have a time domain When scalable, the value of this flag is used to indicate that an image block in an image that is not a short-term reference image is available for update of a particular reference frame.
其中,关于特定参考图像以及特定图像块的解释可参考上面描述中对特定参考图像和特定图像块的解释,在此不再赘述。For the explanation of the specific reference image and the specific image block, reference may be made to the explanation of the specific reference image and the specific image block in the above description, and details are not described herein again.
其中,关于如何确定图像块可用于更新特定参考图像,可参考上面描述中对“确定图像块可用于更新特定参考图像”的解释,在此不再赘述。Wherein, as to how to determine that an image block can be used to update a specific reference image, reference may be made to the explanation in the above description for "determining that an image block can be used to update a specific reference image", and details are not described herein again.
在一些实施例中,还获取当前待解码图像的图像块的标志位,其中,该标志位用于标识该当前待解码图像中的图像块是否用于对所述特定参考图像进行更新。根据所述标志位确定可用于更新特定参考图像的图像块。In some embodiments, the flag bit of the image block of the current image to be decoded is also obtained, wherein the flag bit is used to identify whether the image block in the current image to be decoded is used to update the specific reference image. An image block that can be used to update a particular reference image is determined based on the flag bit.
其中,关于如何根据当前待解码图像中的图像块对特定参考图像中的特定图像块进行更新,可参考上面描述中对“根据当前待解码图像中的图像块对特定参考图像中的特定图像块进行更新”的解释,在此不再赘述。Wherein, regarding how to update a specific image block in a specific reference image according to an image block in an image to be decoded, reference may be made to “specific image blocks in a specific reference image according to image blocks in the current image to be decoded. The explanation of the update is not repeated here.
其中,在一些实施例中,当前待解码图像中可用于更新特定参考图像的图像块的数量可以是1个,也可以是大于1个。在一些实施例中,当前待解码图像中可用于更新特定参考图像的图像块的数量可以是没有限制的,也即当前待解码图像中所有满足可用于更新特定参考图像的条件的图像块都用于对特定参考图像进行更新。Wherein, in some embodiments, the number of image blocks that can be used to update a specific reference image in the current image to be decoded may be one, or may be greater than one. In some embodiments, the number of image blocks that can be used to update a particular reference image in the current image to be decoded may be unlimited, that is, all image blocks in the current image to be decoded that satisfy the conditions that can be used to update the specific reference image are used. Updates to a specific reference image.
在一些实施例中,可用于更新特定参考图像的图像块的数量较多,从编解码***实现复杂度考虑,可将当前待解码图像中可用于更新特定参考图像的图像块的数量限制为不大于M,该M为不小于1的整数。In some embodiments, the number of image blocks that can be used to update a particular reference image is large. From the implementation complexity of the codec system, the number of image blocks in the current image to be decoded that can be used to update a particular reference image can be limited to no. Greater than M, the M is an integer not less than 1.
如此,在确定当前待解码图像中所有可用于更新特定参考图像的图像块之后,若确定出的图像块的数量不大于M,则分别根据确定出的每一个图像块对特定参考图像进行更新。根据每一个图像块对特定参考图像进行更新的 方法可参考上述描述,在此不再赘述。若确定出的图像块的数量大于M,则从该确定出的图像块中挑选出其中的M个图像块,并根据该M个图像块对特定参考图像进行更新。In this way, after determining all the image blocks in the currently to-be-decoded image that can be used to update the specific reference image, if the determined number of image blocks is not greater than M, the specific reference image is updated according to each of the determined image blocks. Updating a specific reference image according to each image block For the method, reference may be made to the above description, and details are not described herein again. If the determined number of image blocks is greater than M, the M image blocks are selected from the determined image blocks, and the specific reference image is updated according to the M image blocks.
当前待解码图像对应的M的取值可以是基于多种确定方法的。例如,当前待解码图像对应的M的取值是基于当前待解码图像的类型确定的。在一些实施例中,当前待解码图像的图像类型不同时,该当前待解码图像对应的M的取值不同。具体举例来说,当前待解码图像为I图像时,该当前待解码图像最多有第一预设数值个图像块用于特定参考图像的更新;当前待解码图像为P图像(或前向预测图像)时,该当前待解码图像最多有第二预设数值个图像块用于特定参考图像的更新;当前待解码图像为B图像(或双向预测图像)时,该当前待解码图像最多有第三预设数值个图像块用于特定参考图像的更新,其中,该第一预设数值、第二预设数值和第三预设数值不同。The value of M corresponding to the current image to be decoded may be based on multiple determination methods. For example, the value of M corresponding to the current image to be decoded is determined based on the type of the image to be decoded currently. In some embodiments, when the image types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different. For example, when the current image to be decoded is an I image, the current image to be decoded has at most a first preset number of image blocks for updating the specific reference image; the current image to be decoded is a P image (or a forward predicted image). When the current image to be decoded has at most a second preset number of image blocks for updating the specific reference image; when the current image to be decoded is a B image (or a bidirectional predicted image), the current image to be decoded has at most a third The preset value image blocks are used for updating the specific reference image, wherein the first preset value, the second preset value, and the third preset value are different.
在一些实施例中,当前待解码图像对应的M的取值是基于当前待解码图像所属类型的图像总数确定的。具体举例来说,如I图像对应的M值为视频中I图像的图像总数的一半;P图像(或前向预测图像)对应的M值为P图像(或前向预测图像)的图像总数的四分之一;可作为参考图像使用的B图像(或双向预测图像)对应的M值为B图像(或双向预测图像)的图像总数的八分之一。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the image to be decoded currently belongs. For example, the M value corresponding to the I image is half of the total number of images of the I image in the video; the M value corresponding to the P image (or the forward predicted image) is the total number of images of the P image (or the forward predicted image). One-fourth; the B-image (or bi-predictive image) that can be used as a reference image corresponds to an M value that is one-eighth of the total number of images of the B image (or bi-predictive image).
在一些实施例中,以下至少一项中携带有当前待解码图像中可用于更新所述特定参考图像的图像块的数量:当前待解码图像的图像头、当前解码图像的图像参数集、当前待解码图像对应的序列头、当前待解码图像对应的序列参数集、当前待解码图像对应的视频参数集。解码端可从其中解析出当前待解码图像中可用于更新所述特定参考图像的图像块的数量。In some embodiments, at least one of the following carries the number of image blocks available for updating the specific reference image in the current image to be decoded: an image header of the current image to be decoded, an image parameter set of the current decoded image, and a current waiting The sequence header corresponding to the decoded image, the sequence parameter set corresponding to the current image to be decoded, and the video parameter set corresponding to the current image to be decoded. The decoding end can parse out the number of image blocks in the current image to be decoded that can be used to update the particular reference image.
在一些实施例中,当前待解码图像对应的M的取值仅用于告知解码端当前图像最多有多少个图像块可用于特定参考帧的更新,这样可以便于解码端的设计,从而降低解码端的复杂度。In some embodiments, the value of M corresponding to the current image to be decoded is only used to inform the decoding end how many image blocks of the current image are available for the update of the specific reference frame, which can facilitate the design of the decoding end, thereby reducing the complexity of the decoding end. degree.
在一些实施例中,当确定所述当前待解码图像不可用于除所述当前待解码图像的图像进行帧间预测时,确定所述图像块不用于更新所述特定参考图像。In some embodiments, when it is determined that the current image to be decoded is not available for inter prediction of an image of the current image to be decoded, it is determined that the image block is not used to update the specific reference image.
在一些实施例中,当当前待解码图像可作为短期参考图像但不可作为长 期参考图像时,确定所述待解码图像中的图像块不用于更新所述特定参考图像。In some embodiments, when the current image to be decoded can be used as a short-term reference image but not as long When the image is referenced, it is determined that the image block in the image to be decoded is not used to update the specific reference image.
在一些实施例中,当当前待解码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待解码图像中的图像块不可用于更新所述特定参考图像。In some embodiments, when the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be decoded is not available for updating the particular reference image.
图7是根据本发明实施例的视频编码装置的示意性框图。如图7所示,视频编码装置70包括:FIG. 7 is a schematic block diagram of a video encoding apparatus according to an embodiment of the present invention. As shown in FIG. 7, the video encoding apparatus 70 includes:
至少一个存储器701,用于存储计算机可执行指令;At least one memory 701 for storing computer executable instructions;
至少一个处理器702,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor 702, alone or collectively, is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
当当前待编码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be encoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
在一些实施例中,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。In some embodiments, the number of image blocks in the current image to be encoded that can be used to update the specific reference image is not greater than M, and M is an integer not less than one.
在一些实施例中,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。In some embodiments, the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
在一些实施例中,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。In some embodiments, when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
在一些实施例中,所述当前待编码图像对应的M的取值是基于所述当前待编码图像所属类型的图像总数确定的。In some embodiments, the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type to which the current image to be encoded belongs.
在一些实施例中,所述图像块包括预置数量个颜色通道的像素,In some embodiments, the image block includes pixels of a preset number of color channels,
在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中, 所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中,In the order of the cost of each image block in the current image to be encoded, from small to large, The cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和;The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和;The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
在一些实施例中,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:In some embodiments, a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, including:
所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When the current image to be encoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
在一些实施例中,所述特定参考图像是作为帧间预测的参考图像。In some embodiments, the particular reference image is a reference image as inter prediction.
在一些实施例中,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。In some embodiments, the particular reference image is a long-term reference frame, either a background frame or a golden frame.
在一些实施例中,所述判断图像块可用于更新特定参考图像的装置,包括:In some embodiments, the determining image block is operable to update a device of a particular reference image, comprising:
根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
在一些实施例中,所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括:In some embodiments, the determining, according to the image block and the encoded block, that an image block is available for updating a specific reference image comprises:
根据以下至少一项判断图像块可用于更新特定参考图像: The image block can be used to update a particular reference image according to at least one of the following:
所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference value of a luminance component between the image block and the encoded block, a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block The pixel value difference between the chroma components, the total number of pixels of the image block and/or the chroma component of the encoded block.
图8是根据本发明实施例的视频编码装置的另一示意性框图。如图8所示,视频编码装置80包括:FIG. 8 is another schematic block diagram of a video encoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding apparatus 80 includes:
至少一个存储器801,用于存储计算机可执行指令;At least one memory 801 for storing computer executable instructions;
至少一个处理器802,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor 802, singly or collectively, is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available for updating a particular reference image, and when the image block is available to update a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be encoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像不可用于更新特定参考图像时,不用所述当前待编码图像中的图像块对所述特定参考图像中的特定图像块进行更新。When the current image to be encoded is not available for updating the specific reference image, the specific image block in the specific reference image is updated without using the image block in the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
在一些实施例中,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。In some embodiments, the number of image blocks in the current image to be encoded that can be used to update the specific reference image is not greater than M, and M is an integer not less than one.
在一些实施例中,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。In some embodiments, the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
在一些实施例中,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。In some embodiments, when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
在一些实施例中,所述当前待编码图像对应的M的取值是基于所述当 前待编码图像所属类型的图像总数确定的。In some embodiments, the value of M corresponding to the current image to be encoded is based on the The total number of images of the type to which the pre-coded image belongs is determined.
在一些实施例中,所述图像块包括预置数量个颜色通道的像素,In some embodiments, the image block includes pixels of a preset number of color channels,
在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中,所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中,In the order of the cost of each image block in the current image to be encoded, the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和;The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和;The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
在一些实施例中,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:In some embodiments, a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, including:
所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像不可用于帧间预测时,确定所述当前待编码图像不可用于更新特定参考图像。When the current image to be encoded is not available for inter prediction, it is determined that the current image to be encoded is not available for updating a specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的图像块不用于更新所述特定参考图像中的特定图像块。When the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a particular image block in the particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像不可作为短期参考图像也不可作为长期参考图像时,确定所述待编码图像中的图像块不用于更新所述特定参考图像中的特定图像块。 When the current image to be encoded is not available as a short-term reference image or as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update a specific image block in the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码图像可用于帧间预测时,确定当前待编码图像可用于更新所述特定参考图像。When the current image to be encoded is available for inter prediction, it is determined that the current image to be encoded is available for updating the particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待编码码图像为帧内预测图像或者为前向预测图像时,确定当前待编码图像可用于更新所述特定参考图像。When the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。When the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像可作为短期参考图像且可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
在一些实施例中,在以下至少一项中加入标志位,所述标志位用于标识不可作为短期参考图像的图像是否可用于更新所述特定参考图像:In some embodiments, a flag bit is added in at least one of the following to identify whether an image that is not available as a short-term reference image is available for updating the particular reference image:
视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
在一些实施例中,所述标志位为时域可伸缩标志位。In some embodiments, the flag bit is a time domain scalable flag bit.
在一些实施例中,当具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,In some embodiments, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available for updating the particular reference image when having a time domain scalability requirement; and/or,
当不具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image when there is no time domain scalability requirement.
在一些实施例中,所述特定参考图像是可用于帧间预测的图像。In some embodiments, the particular reference image is an image that is available for inter prediction.
在一些实施例中,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。In some embodiments, the particular reference image is a long-term reference frame, either a background frame or a golden frame.
在一些实施例中,所述判断图像块可用于更新特定参考图像的装置,包括: In some embodiments, the determining image block is operable to update a device of a particular reference image, comprising:
根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
在一些实施例中,所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括:In some embodiments, the determining, according to the image block and the encoded block, that an image block is available for updating a specific reference image comprises:
根据以下至少一项判断图像块可用于更新特定参考图像:The image block can be used to update a particular reference image according to at least one of the following:
所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference value of a luminance component between the image block and the encoded block, a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block The pixel value difference between the chroma components, the total number of pixels of the image block and/or the chroma component of the encoded block.
图9是根据本发明实施例的视频解码装置的示意性框图。如图8所示,视频编码装置90包括:FIG. 9 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding device 90 includes:
至少一个存储器901,用于存储计算机可执行指令;At least one memory 901 for storing computer executable instructions;
至少一个处理器902,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor 902, alone or collectively, is operable to: access the at least one memory and execute the computer executable instructions to perform the following operations:
当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
获取所述图像块的标志位;Obtaining a flag bit of the image block;
根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定所述当前待解码图像可作为参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded can be used as a reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
根据所述参数或者标志位确定所述当前待解码图像可作为参考图像。Determining, according to the parameter or the flag bit, that the current image to be decoded is available as a reference image.
在一些实施例中,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括: In some embodiments, the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded includes:
从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
在一些实施例中,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。In some embodiments, the number of image blocks available to update the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
在一些实施例中,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
在一些实施例中,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。In some embodiments, when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
在一些实施例中,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
在一些实施例中,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:In some embodiments, at least one of the following includes the number of image blocks in the current image to be decoded that are usable to update the particular reference image:
所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当确定所述当前待解码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像中的特定图像块。When it is determined that the current image to be decoded is not available as a reference image, it is determined that the image block is not used to update a specific image block in the specific reference image.
在一些实施例中,所述特定参考图像是作为帧间预测的参考图像。In some embodiments, the particular reference image is a reference image as inter prediction.
在一些实施例中,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。In some embodiments, the particular reference image is a long-term reference frame, either a background frame or a golden frame.
图10是根据本发明实施例的视频解码装置的示意性框图。如图8所示,视频编码装置100包括:FIG. 10 is a schematic block diagram of a video decoding apparatus according to an embodiment of the present invention. As shown in FIG. 8, the video encoding apparatus 100 includes:
至少一个存储器1001,用于存储计算机可执行指令;At least one memory 1001 for storing computer executable instructions;
至少一个处理器1002,单独或共同地用于:访问所述至少一个存储器, 并执行所述计算机可执行指令,以实施以下操作:At least one processor 1002, used alone or in common, to: access the at least one memory, And executing the computer executable instructions to perform the following operations:
当当前待解码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available for updating a particular reference image, and when the image block is available for updating a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待解码图像不可用于更新特定参考图像时,不用所述当前待解码图像中的图像块对所述特定参考图像中的特定图像块进行更新。When the current image to be decoded is not available for updating the specific reference image, the specific image block in the specific reference image is updated without using the image block in the current image to be decoded.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
获取所述图像块的标志位;Obtaining a flag bit of the image block;
根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
根据所述参数或者标志位确定所述当前待解码图像可用于更新特定参考图像。Determining that the current image to be decoded is available for updating a particular reference image based on the parameter or flag.
在一些实施例中,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:In some embodiments, the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded includes:
从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
在一些实施例中,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。In some embodiments, the number of image blocks available to update the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
在一些实施例中,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
在一些实施例中,所述当前待解码图像的类型不同时,所述当前待解码 图像对应的M的取值不同。In some embodiments, when the types of the currently to be decoded images are different, the current to be decoded The value of M corresponding to the image is different.
在一些实施例中,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。In some embodiments, the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
在一些实施例中,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:In some embodiments, at least one of the following includes the number of image blocks in the current image to be decoded that are usable to update the particular reference image:
所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当确定所述当前待解码图像不可用于除所述当前待解码图像的图像进行帧间预测时,确定所述图像块不用于更新所述特定参考图像中的特定图像块。When it is determined that the current image to be decoded is not available for inter prediction according to the image of the current image to be decoded, it is determined that the image block is not used to update a specific image block in the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待解码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待解码图像中的图像块不用于更新所述特定参考图像中的特定图像块。When the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be decoded is not used to update a particular image block in the particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待解码图像可用于帧间预测时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is available for inter prediction, it is determined that the current image to be decoded is available for updating the particular reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded is available for updating the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待解码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。When the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the specific reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待解码图像可作为短期参考图像且可作为长期参考图像时,确定所述待解码图像中的图像块可用于更新所述特定参考图像。When the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the specific reference image.
在一些实施例中,所述所述当前待解码图像的参考关系为:所述当前带解码图像为短期参考图像或者长期参考图像。 In some embodiments, the reference relationship of the current image to be decoded is: the current band decoded image is a short-term reference image or a long-term reference image.
在一些实施例中,所述处理器还用于:In some embodiments, the processor is further configured to:
当当前待解码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待解码图像中的图像块不可用于更新所述特定参考图像。When the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be decoded is not available for updating the specific reference image.
在一些实施例中,所述处理器还用于:从以下至少一项中获取标志位,所述标志位用于标识所述待解码图像是否可用于更新所述特定参考图像:In some embodiments, the processor is further configured to: obtain a flag bit from at least one of the following, the flag bit being used to identify whether the image to be decoded is available for updating the specific reference image:
视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
在一些实施例中,所述标志位为时域可伸缩标志位。In some embodiments, the flag bit is a time domain scalable flag bit.
在一些实施例中,所述标志位或可伸缩标志位为第一数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,In some embodiments, when the flag bit or the scalable flag bit is the first value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is unavailable for updating the specific reference image. ;and / or,
所述标志位或可伸缩标志位为第二数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。When the flag bit or the scalable flag bit is the second value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
在一些实施例中,所述特定参考图像是可用于帧间预测的图像。In some embodiments, the particular reference image is an image that is available for inter prediction.
在一些实施例中,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。In some embodiments, the particular reference image is a long-term reference frame, either a background frame or a golden frame.
可选地,本实施例中的处理器可以是中央处理器(Central Processing Unit,简称为“CPU”),网络处理器(Network Processor,简称为“NP”)或者CPU和NP的组合。处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(Application-Specific Integrated Circuit,简称为“ASIC”),可编程逻辑器件(Programmable Logic Device,简称为“PLD”)或其组合。上述PLD可以是复杂可编程逻辑器件(Complex Programmable Logic Device,简称为“CPLD”),现场可编程逻辑门阵列(Field-Programmable Gate Array,简称为“FPGA”),通用阵列逻辑(Generic Array Logic,简称为“GAL”)或其任意组合。Optionally, the processor in this embodiment may be a central processing unit (Central Processing Unit, abbreviated as "CPU"), a network processor (Network Processor, abbreviated as "NP"), or a combination of a CPU and an NP. The processor may further include a hardware chip. The hardware chip may be an Application-Specific Integrated Circuit ("ASIC"), a Programmable Logic Device (PLD), or a combination thereof. The PLD may be a Complex Programmable Logic Device (CPLD), a Field-Programmable Gate Array (FPGA), and a Generic Array Logic (Generic Array Logic). Referred to as "GAL" or any combination thereof.
可选地,本发明实施例中的存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。Optionally, the memory in the embodiment of the present invention may include a read only memory and a random access memory, and provides instructions and data to the processor. A portion of the memory may also include a non-volatile random access memory. For example, the memory can also store information of the device type.
还应理解,本文中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本发明实施例的范围。 It is also to be understood that the various reference numerals of the present invention are not limited to the scope of the embodiments of the invention.
还应理解,在某些实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。It should also be understood that, in some embodiments, the size of the sequence numbers of the processes does not imply a sequence of executions, and the order of execution of the processes should be determined by their function and intrinsic logic, and should not be directed to the implementation of the embodiments of the present invention. Form any limit.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。Those of ordinary skill in the art will appreciate that the modules of the various examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods for implementing the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个模块中,或一些特征可以忽略,或不执行。In the several embodiments provided by the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of the modules is only a logical function division. In actual implementation, there may be another division manner. For example, multiple modules may be combined or integrated. Go to another module, or some features can be ignored or not executed.
另外,在装置实施例中的各功能模块可以集成在一个处理单元中,也可以是各个功能模块单独物理存在于各自的处理单元中,也可以两个或两个以上功能模块集成在一个处理单元中。In addition, each functional module in the device embodiment may be integrated into one processing unit, or each functional module may be physically present in the respective processing unit, or two or more functional modules may be integrated into one processing unit. in.
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。 The foregoing is only a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto, and any person skilled in the art can easily think of changes or replacements within the technical scope disclosed by the embodiments of the present invention. All should be covered by the scope of this application. Therefore, the scope of protection of the present application should be determined by the scope of the claims.

Claims (176)

  1. 一种视频编码方法,其特征在于,包括:A video encoding method, comprising:
    当当前待编码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be encoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be encoded.
  2. 根据权利要求1所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 1, wherein the method further comprises:
    当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  3. 根据权利要求1所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 1, wherein the method further comprises:
    当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  4. 根据权利要求1所述的视频编码方法,其特征在于,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。The video encoding method according to claim 1, wherein the number of image blocks that can be used to update the specific reference image in the current image to be encoded is not greater than M, and M is an integer not less than one.
  5. 根据权利要求4所述的视频编码方法,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。The video encoding method according to claim 4, wherein the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  6. 根据权利要求5所述的视频编码方法,其特征在于,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。The video encoding method according to claim 5, wherein when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
  7. 根据权利要求5所述的视频编码方法,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像所属类型的图像总数确定的。The video encoding method according to claim 5, wherein the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type to which the current image to be encoded belongs.
  8. 根据权利要求4所述的视频编码方法,其特征在于,所述图像块包括预置数量个颜色通道的像素,The video encoding method according to claim 4, wherein the image block comprises pixels of a preset number of color channels,
    在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中,所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中,In the order of the cost of each image block in the current image to be encoded, the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
    所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和; The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
    所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和;The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
    所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  9. 根据权利要求1所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 1, wherein the method further comprises:
    编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
  10. 根据权利要求1所述的视频编码方法,其特征在于,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:The video encoding method according to claim 1, wherein a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, comprising:
    所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
    所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  11. 根据权利要求1所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 1, wherein the method further comprises:
    当所述当前待编码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When the current image to be encoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
  12. 根据权利要求1所述的视频编码方法,其特征在于,所述特定参考图像是作为帧间预测的参考图像。The video encoding method according to claim 1, wherein the specific reference image is a reference image as inter prediction.
  13. 根据权利要求12所述的视频编码方法,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video encoding method according to claim 12, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  14. 根据权利要求1所述的视频编码方法,其特征在于,所述判断图像块可用于更新特定参考图像的方法,包括:The video encoding method according to claim 1, wherein the determining that the image block is usable for updating a specific reference image comprises:
    根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  15. 根据权利要求14所述的视频编码方法,其特征在于:所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括: The video encoding method according to claim 14, wherein the determining that the image block is available for updating the specific reference image according to the image block and the encoded block comprises:
    根据以下至少一项判断图像块可用于更新特定参考图像:The image block can be used to update a particular reference image according to at least one of the following:
    所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference value of a luminance component between the image block and the encoded block, a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block The pixel value difference between the chroma components, the total number of pixels of the image block and/or the chroma component of the encoded block.
  16. 一种视频解码方法,其特征在于,包括:A video decoding method, comprising:
    当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
  17. 根据权利要求16所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 16, wherein the method further comprises:
    获取所述图像块的标志位;Obtaining a flag bit of the image block;
    根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
  18. 根据权利要求16所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 16, wherein the method further comprises:
    当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定所述当前待解码图像可作为参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded can be used as a reference image.
  19. 根据权利要求16所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 16, wherein the method further comprises:
    获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
    根据所述参数或者标志位确定所述当前待解码图像可作为参考图像。Determining, according to the parameter or the flag bit, that the current image to be decoded is available as a reference image.
  20. 根据权利要求19所述的视频解码方法,其特征在于,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:The video decoding method according to claim 19, wherein the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded comprises:
    从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  21. 根据权利要求16所述的视频解码方法,其特征在于,所述方法还包括: The video decoding method according to claim 16, wherein the method further comprises:
    当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  22. 根据权利要求16所述的视频解码方法,其特征在于,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。The video decoding method according to claim 16, wherein the number of image blocks that can be used to update the specific reference image in the current image to be decoded is M, and M is an integer not less than one.
  23. 根据权利要求22所述的视频解码方法,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。The video decoding method according to claim 22, wherein the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  24. 根据权利要求23所述的视频解码方法,其特征在于,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。The video decoding method according to claim 23, wherein when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
  25. 根据权利要求23所述的视频解码方法,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。The video decoding method according to claim 23, wherein the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  26. 根据权利要求22所述的视频解码方法,其特征在于,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:The video decoding method according to claim 22, wherein at least one of the following includes the number of image blocks in the current image to be decoded that are usable for updating the specific reference image:
    所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
  27. 根据权利要求16所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 16, wherein the method further comprises:
    当确定所述当前待解码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When it is determined that the current image to be decoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
  28. 根据权利要求16所述的视频解方法,其特征在于,所述特定参考图像是作为帧间预测的参考图像。The video decoding method according to claim 16, wherein the specific reference image is a reference image as inter prediction.
  29. 根据权利要求28所述的视频解码方法,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video decoding method according to claim 28, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  30. 一种视频编码装置,其特征在于,包括:A video encoding apparatus, comprising:
    至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
    至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作: At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
    当当前待编码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be encoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be encoded.
  31. 根据权利要求30所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 30, wherein the processor is further configured to:
    当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  32. 根据权利要求30所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 30, wherein the processor is further configured to:
    当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  33. 根据权利要求30所述的视频编码装置,其特征在于,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。The video encoding apparatus according to claim 30, wherein the number of image blocks in the current image to be encoded that can be used to update the specific reference image is not greater than M, and M is an integer not less than one.
  34. 根据权利要求33所述的视频编码装置,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。The video encoding apparatus according to claim 33, wherein the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  35. 根据权利要求34所述的视频编码装置,其特征在于,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。The video encoding apparatus according to claim 34, wherein when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
  36. 根据权利要求34所述的视频编码装置,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像所属类型的图像总数确定的。The video encoding apparatus according to claim 34, wherein the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type to which the current image to be encoded belongs.
  37. 根据权利要求33所述的视频编码装置,其特征在于,所述图像块包括预置数量个颜色通道的像素,The video encoding apparatus according to claim 33, wherein said image block comprises pixels of a preset number of color channels,
    在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中,所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中,In the order of the cost of each image block in the current image to be encoded, the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
    所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和;The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
    所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和; The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
    所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  38. 根据权利要求30所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 30, wherein the processor is further configured to:
    编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
  39. 根据权利要求30所述的视频编码装置,其特征在于,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:The video encoding apparatus according to claim 30, wherein a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, comprising:
    所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
    所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  40. 根据权利要求30所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 30, wherein the processor is further configured to:
    当所述当前待编码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When the current image to be encoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
  41. 根据权利要求30所述的视频编码装置,其特征在于,所述特定参考图像是作为帧间预测的参考图像。The video encoding apparatus according to claim 30, wherein said specific reference image is a reference image as inter prediction.
  42. 根据权利要求41所述的视频编码装置,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video encoding apparatus according to claim 41, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  43. 根据权利要求30所述的视频编码装置,其特征在于,所述判断图像块可用于更新特定参考图像的装置,包括:The video encoding apparatus according to claim 30, wherein the means for determining the image block to be used for updating a specific reference image comprises:
    根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  44. 根据权利要求43所述的视频编码装置,其特征在于:所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括:The video encoding apparatus according to claim 43, wherein the determining, based on the image block and the encoded block, that an image block is available for updating a specific reference image comprises:
    根据以下至少一项判断图像块可用于更新特定参考图像:The image block can be used to update a particular reference image according to at least one of the following:
    所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块 和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference of a luminance component between the image block and the encoded block, the image block And/or the total number of pixels of the luma component of the encoded block, the pixel value difference of the chroma component between the image block and the encoded block, the image block and/or the encoded block The total number of pixels of the chroma component.
  45. 一种视频解码装置,其特征在于,包括:A video decoding device, comprising:
    至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
    至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
    当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
  46. 根据权利要求1所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 1, wherein the processor is further configured to:
    获取所述图像块的标志位;Obtaining a flag bit of the image block;
    根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
  47. 根据权利要求1所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 1, wherein the processor is further configured to:
    当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定所述当前待解码图像可作为参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded can be used as a reference image.
  48. 根据权利要求1所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 1, wherein the processor is further configured to:
    获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
    根据所述参数或者标志位确定所述当前待解码图像可作为参考图像。Determining, according to the parameter or the flag bit, that the current image to be decoded is available as a reference image.
  49. 根据权利要求48所述的视频解码装置,其特征在于,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:The video decoding device according to claim 48, wherein the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded comprises:
    从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  50. 根据权利要求1所述的视频解码装置,其特征在于,所述处理器还 用于:The video decoding apparatus according to claim 1, wherein said processor further Used for:
    当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  51. 根据权利要求1所述的视频解码装置,其特征在于,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。The video decoding apparatus according to claim 1, wherein the number of image blocks that can be used to update the specific reference image in the current image to be decoded is M, and M is an integer not less than one.
  52. 根据权利要求51所述的视频解码装置,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。The video decoding device according to claim 51, wherein the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  53. 根据权利要求52所述的视频解码装置,其特征在于,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。The video decoding device according to claim 52, wherein when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
  54. 根据权利要求52所述的视频解码装置,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。The video decoding device according to claim 52, wherein the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  55. 根据权利要求51所述的视频解码装置,其特征在于,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:The video decoding apparatus according to claim 51, wherein at least one of the following includes the number of image blocks in the current image to be decoded that are usable for updating the specific reference image:
    所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
  56. 根据权利要求1所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 1, wherein the processor is further configured to:
    当确定所述当前待解码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When it is determined that the current image to be decoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
  57. 根据权利要求1所述的视频解装置,其特征在于,所述特定参考图像是作为帧间预测的参考图像。The video decoding apparatus according to claim 1, wherein said specific reference image is a reference image as inter prediction.
  58. 根据权利要求57所述的视频解码装置,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video decoding apparatus according to claim 57, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  59. 一种机器可读存储介质,其特征在于,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理权利要求1-15任一项所述的视频编码方法。 A machine-readable storage medium, characterized by being applicable to a terminal, the machine-readable storage medium storing a plurality of computer instructions, the computer instructions being executed when processed, according to any one of claims 1-15 Video coding method.
  60. 一种视频解码装置,其特征在于,包括:A video decoding device, comprising:
    至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
    至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
    当当前待解码图像可作为参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available as a reference image, and when the image block is available for updating a specific reference image, updating a particular image block in the specific reference image according to the image block, wherein the image block is the current image One of the image blocks to be decoded, the position of the particular image block in the particular reference image being determined by the position of the image block in the current image to be decoded.
  61. 根据权利要求60所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 60, wherein the processor is further configured to:
    获取所述图像块的标志位;Obtaining a flag bit of the image block;
    根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
  62. 根据权利要求60所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 60, wherein the processor is further configured to:
    当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定所述当前待解码图像可作为参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded can be used as a reference image.
  63. 根据权利要求60所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 60, wherein the processor is further configured to:
    获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
    根据所述参数或者标志位确定所述当前待解码图像可作为参考图像。Determining, according to the parameter or the flag bit, that the current image to be decoded is available as a reference image.
  64. 根据权利要求63所述的视频解码装置,其特征在于,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:The video decoding device according to claim 63, wherein the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded comprises:
    从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  65. 根据权利要求60所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 60, wherein the processor is further configured to:
    当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。 When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  66. 根据权利要求60所述的视频解码装置,其特征在于,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。The video decoding apparatus according to claim 60, wherein the number of image blocks available for updating the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
  67. 根据权利要求66所述的视频解码装置,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。The video decoding device according to claim 66, wherein the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  68. 根据权利要求67所述的视频解码装置,其特征在于,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。The video decoding device according to claim 67, wherein when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
  69. 根据权利要求67所述的视频解码装置,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。The video decoding device according to claim 67, wherein the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  70. 根据权利要求66所述的视频解码装置,其特征在于,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:The video decoding apparatus according to claim 66, wherein at least one of the following includes the number of image blocks in the current image to be decoded that are usable for updating the specific reference image:
    所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
  71. 根据权利要求60所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 60, wherein the processor is further configured to:
    当确定所述当前待解码图像不可作为参考图像时,确定所述图像块不用于更新所述特定参考图像。When it is determined that the current image to be decoded is not available as a reference image, it is determined that the image block is not used to update the specific reference image.
  72. 根据权利要求60所述的视频解装置,其特征在于,所述特定参考图像是作为帧间预测的参考图像。The video decoding apparatus according to claim 60, wherein said specific reference image is a reference image as inter prediction.
  73. 根据权利要求72所述的视频解码装置,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video decoding device according to claim 72, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  74. 一种机器可读存储介质,其特征在于,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理权利要求16-29任一项所述的视频解码方法。A machine-readable storage medium, characterized by being applicable to a terminal, the machine-readable storage medium storing a plurality of computer instructions, the computer instructions being executed when processed, according to any one of claims 16-29 Video decoding method.
  75. 一种视频编码的方法,其特征在于,包括:A method of video coding, comprising:
    当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更 新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When the current image to be encoded is available for updating a specific reference image, and when the image block is available for updating a specific reference image, performing a specific image block in the specific reference image according to the image block New, wherein the image block is one image block in the current image to be encoded, and a position of the specific image block in the specific reference image is a position of the image block in the current image to be encoded Decide.
  76. 根据权利要求75所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75, wherein the method further comprises:
    当当前待编码图像不可用于更新特定参考图像时,不用所述当前待编码图像中的所述图像块对所述特定参考图像中的所述特定图像块进行更新。When the current image to be encoded is not available for updating a specific reference image, the particular image block in the specific reference image is not updated by the image block in the current image to be encoded.
  77. 根据权利要求75所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75, wherein the method further comprises:
    当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  78. 根据权利要求75所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75, wherein the method further comprises:
    当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  79. 根据权利要求75所述的视频编码方法,其特征在于,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。The video encoding method according to claim 75, wherein the number of image blocks that can be used to update the specific reference image in the current image to be encoded is not greater than M, and M is an integer not less than one.
  80. 根据权利要求79所述的视频编码方法,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。The video encoding method according to claim 79, wherein the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  81. 根据权利要求80所述的视频编码方法,其特征在于,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。The video encoding method according to claim 80, wherein when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
  82. 根据权利要求80所述的视频编码方法,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像所属类型的图像总数确定的。The video encoding method according to claim 80, wherein the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type of the current image to be encoded.
  83. 根据权利要求79所述的视频编码方法,其特征在于,所述图像块包括预置数量个颜色通道的像素,The video encoding method according to claim 79, wherein the image block comprises pixels of a preset number of color channels,
    在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中,所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中, In the order of the cost of each image block in the current image to be encoded, the cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
    所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和;The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
    所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和;The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
    所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  84. 根据权利要求75所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75, wherein the method further comprises:
    编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
  85. 根据权利要求75所述的视频编码方法,其特征在于,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:The video encoding method according to claim 75, wherein a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, comprising:
    所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
    所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  86. 根据权利要求76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 76, wherein the method further comprises:
    当所述当前待编码图像不可用于帧间预测时,确定所述当前待编码图像中的所述图像块不可用于更新所述特定参考图像中的所述特定图像块。When the current image to be encoded is not available for inter prediction, it is determined that the image block in the current image to be encoded is not available for updating the specific image block in the specific reference image.
  87. 根据权利要求76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 76, wherein the method further comprises:
    当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的所述图像块不用于更新所述特定参考图像中的所述特定图像块。When the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update the particular image block in the particular reference image.
  88. 根据权利要求76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 76, wherein the method further comprises:
    当当前待编码图像不可作为短期参考图像也不可作为长期参考图像时,确定所述待编码图像中的所述图像块不用于更新所述特定参考图像中的所述特定图像块。 When the current image to be encoded is not available as a short-term reference image or as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update the specific image block in the specific reference image.
  89. 根据权利要求75或76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75 or 76, wherein the method further comprises:
    当所述当前待编码图像可用于帧间预测时,确定当前待编码图像可用于更新所述特定参考图像。When the current image to be encoded is available for inter prediction, it is determined that the current image to be encoded is available for updating the particular reference image.
  90. 根据权利要求89所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 89, wherein the method further comprises:
    当所述当前待编码码图像为帧内预测图像或者为前向预测图像时,确定当前待编码图像可用于更新所述特定参考图像。When the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image.
  91. 根据权利要求75或76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75 or 76, wherein the method further comprises:
    当当前待编码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。When the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the specific reference image.
  92. 根据权利要求75或76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75 or 76, wherein the method further comprises:
    当当前待编码图像可作为短期参考图像且可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  93. 根据权利要求75或76所述的视频编码方法,其特征在于,所述方法还包括:The video encoding method according to claim 75 or 76, wherein the method further comprises:
    当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  94. 根据权利要求75、87、88、91、92、93任一项所述的视频编码方法,其特征在于,在以下至少一项中加入标志位,所述标志位用于标识不可作为短期参考图像的图像是否可用于更新所述特定参考图像:The video encoding method according to any one of claims 75, 87, 88, 91, 92, 93, wherein a flag bit is added in at least one of the following, the flag bit being used to identify a non-short-term reference image Whether the image can be used to update the specific reference image:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  95. 根据权利要求94所述的视频编码方法,其特征在于,所述标志位为时域可伸缩标志位。The video encoding method according to claim 94, wherein said flag bit is a time domain scalable flag bit.
  96. 根据权利要求95所述的视频编码方法,其特征在于,A video encoding method according to claim 95, wherein
    当具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或, The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available to update the particular reference image when having a time domain scalability requirement; and/or,
    当不具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image when there is no time domain scalability requirement.
  97. 根据权利要求75所述的视频编码方法,其特征在于,所述特定参考图像是可用于帧间预测的图像。The video encoding method according to claim 75, wherein said specific reference image is an image usable for inter prediction.
  98. 根据权利要求97所述的视频编码方法,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video encoding method according to claim 97, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  99. 根据权利要求75所述的视频编码方法,其特征在于,所述判断图像块可用于更新特定参考图像的方法,包括:The video encoding method according to claim 75, wherein the determining that the image block is usable for updating a specific reference image comprises:
    根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  100. 根据权利要求99所述的视频编码方法,其特征在于:所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括:The video encoding method according to claim 99, wherein said determining, according to said image block and said encoded block, that said image block is usable for updating a specific reference image comprises:
    根据以下至少一项判断图像块可用于更新特定参考图像:The image block can be used to update a particular reference image according to at least one of the following:
    所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference value of a luminance component between the image block and the encoded block, a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block The pixel value difference between the chroma components, the total number of pixels of the image block and/or the chroma component of the encoded block.
  101. 一种视频解码方法,其特征在于,包括:A video decoding method, comprising:
    当当前待解码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available for updating a particular reference image, and when the image block is available for updating a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
  102. 根据权利要求101所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101, wherein the method further comprises:
    当当前待解码图像不可用于更新特定参考图像时,不用所述当前待解码图像中的所述图像块对所述特定参考图像中的所述特定图像块进行更新。When the current image to be decoded is not available for updating the specific reference image, the specific image block in the specific reference image is not updated without using the image block in the current image to be decoded.
  103. 根据权利要求101所述的视频解码方法,其特征在于,所述方法还包括: The video decoding method according to claim 101, wherein the method further comprises:
    获取所述图像块的标志位;Obtaining a flag bit of the image block;
    根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
  104. 根据权利要求101所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101, wherein the method further comprises:
    获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
    根据所述参数或者标志位确定所述当前待解码图像可用于更新特定参考图像。Determining that the current image to be decoded is available for updating a particular reference image based on the parameter or flag.
  105. 根据权利要求104所述的视频解码方法,其特征在于,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:The video decoding method according to claim 104, wherein the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded comprises:
    从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  106. 根据权利要求101所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101, wherein the method further comprises:
    当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  107. 根据权利要求101所述的视频解码方法,其特征在于,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。The video decoding method according to claim 101, wherein the number of image blocks that can be used to update the specific reference image in the current image to be decoded is M, and M is an integer not less than one.
  108. 根据权利要求107所述的视频解码方法,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。The video decoding method according to claim 107, wherein the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  109. 根据权利要求108所述的视频解码方法,其特征在于,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。The video decoding method according to claim 108, wherein when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
  110. 根据权利要求108所述的视频解码方法,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。The video decoding method according to claim 108, wherein the value of M corresponding to the current image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  111. 根据权利要求107所述的视频解码方法,其特征在于,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量: The video decoding method according to claim 107, wherein at least one of the following includes the number of image blocks in the current image to be decoded that are usable for updating the specific reference image:
    所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
  112. 根据权利要求102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 102, wherein the method further comprises:
    当确定所述当前待解码图像不可用于除所述当前待解码图像的图像进行帧间预测时,确定所述图像块不用于更新所述特定参考图像中的所述特定图像块。When it is determined that the current image to be decoded is not available for inter prediction according to the image of the current image to be decoded, it is determined that the image block is not used to update the specific image block in the specific reference image.
  113. 根据权利要求102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 102, wherein the method further comprises:
    当当前待解码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待解码图像中的图像块不用于更新所述特定参考图像中的所述特定图像块。When the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be decoded is not used to update the specific image block in the specific reference image.
  114. 根据权利要求101或102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101 or 102, wherein the method further comprises:
    当所述当前待解码图像可用于帧间预测时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is available for inter prediction, it is determined that the current image to be decoded is available for updating the particular reference image.
  115. 根据权利要求114所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 114, wherein the method further comprises:
    当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded is available for updating the specific reference image.
  116. 根据权利要求101或102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101 or 102, wherein the method further comprises:
    当当前待解码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。When the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the specific reference image.
  117. 根据权利要求101或102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 101 or 102, wherein the method further comprises:
    当当前待解码图像可作为短期参考图像且可作为长期参考图像时,确定所述待解码图像中的图像块可用于更新所述特定参考图像。When the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the specific reference image.
  118. 根据权利要求105所述的视频解码方法,其特征在于,所述所述 当前待解码图像的参考关系为:所述当前带解码图像为短期参考图像或者长期参考图像。A video decoding method according to claim 105, wherein said said said The reference relationship of the current image to be decoded is that the current band decoded image is a short-term reference image or a long-term reference image.
  119. 根据权利要求102所述的视频解码方法,其特征在于,所述方法还包括:The video decoding method according to claim 102, wherein the method further comprises:
    当当前待解码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待解码图像中的图像块不可用于更新所述特定参考图像中的所述特定图像块。When the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be decoded is not available for updating the specific image block in the specific reference image.
  120. 根据权利要求101、113、116、117、118、119任一项所述的视频解码方法,其特征在于,A video decoding method according to any one of claims 101, 113, 116, 117, 118, 119, characterized in that
    从以下至少一项中获取标志位,所述标志位用于标识所述待解码图像是否可用于更新所述特定参考图像:A flag bit is obtained from at least one of the following, the flag bit being used to identify whether the image to be decoded is available for updating the specific reference image:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  121. 根据权利要求120所述的视频解码方法,其特征在于,所述标志位为时域可伸缩标志位。The video decoding method according to claim 120, wherein said flag bit is a time domain scalable flag bit.
  122. 根据权利要求120或121所述的视频解码方法,其特征在于,A video decoding method according to claim 120 or 121, wherein
    所述标志位或可伸缩标志位为第一数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,When the flag bit or the scalable flag bit is the first value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is unavailable for updating the specific reference image; and/or,
    所述标志位或可伸缩标志位为第二数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。When the flag bit or the scalable flag bit is the second value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
  123. 根据权利要求101所述的视频解方法,其特征在于,所述特定参考图像是可用于帧间预测的图像。The video decoding method according to claim 101, wherein said specific reference image is an image usable for inter prediction.
  124. 根据权利要求123所述的视频解码方法,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video decoding method according to claim 123, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  125. 一种视频编码装置,其特征在于,包括:A video encoding apparatus, comprising:
    至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
    至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作: At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
    当当前待编码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待编码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定。When a current image to be encoded is available for updating a particular reference image, and when the image block is available to update a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be encoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be encoded.
  126. 根据权利要求125所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125, wherein the processor is further configured to:
    当当前待编码图像不可用于更新特定参考图像时,不用所述当前待编码图像中的所述图像块对所述特定参考图像中的所述特定图像块进行更新。When the current image to be encoded is not available for updating a specific reference image, the particular image block in the specific reference image is not updated by the image block in the current image to be encoded.
  127. 根据权利要求125所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125, wherein the processor is further configured to:
    当所述当前待编码图像为帧内预测图像或者为前向预测图像时,确定所述当前待编码图像可作为参考图像。When the current image to be encoded is an intra prediction image or a forward prediction image, it is determined that the current image to be encoded can be used as a reference image.
  128. 根据权利要求125所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125, wherein the processor is further configured to:
    当所述当前待编码图像为帧内预测图像和/或随机访问点时,根据所述当前待编码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be encoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be encoded.
  129. 根据权利要求125所述的视频编码装置,其特征在于,所述当前待编码图像中可用于更新所述特定参考图像的图像块的数量不大于M,M为不小于1的整数。The video encoding apparatus according to claim 125, wherein the number of image blocks that can be used to update the specific reference image in the current image to be encoded is not greater than M, and M is an integer not less than one.
  130. 根据权利要求129所述的视频编码装置,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像的参考关系确定的。The video encoding apparatus according to claim 129, wherein the value of M corresponding to the current image to be encoded is determined based on a reference relationship of the current image to be encoded.
  131. 根据权利要求130所述的视频编码装置,其特征在于,所述当前待编码图像的类型不同时,所述当前待编码图像对应的M的取值不同。The video encoding apparatus according to claim 130, wherein when the types of the currently to be encoded images are different, the values of M corresponding to the current image to be encoded are different.
  132. 根据权利要求130所述的视频编码装置,其特征在于,所述当前待编码图像对应的M的取值是基于所述当前待编码图像所属类型的图像总数确定的。The video encoding apparatus according to claim 130, wherein the value of M corresponding to the current image to be encoded is determined based on the total number of images of the type to which the current image to be encoded belongs.
  133. 根据权利要求129所述的视频编码装置,其特征在于,所述图像块包括预置数量个颜色通道的像素,The video encoding apparatus according to claim 129, wherein said image block comprises pixels of a preset number of color channels,
    在所述当前待编码图像中各图像块的代价(cost)从小到大的排序中, 所述图像块的代价位于前M个内,且所述图像块的代价不小于预置数值;其中,In the order of the cost of each image block in the current image to be encoded, from small to large, The cost of the image block is located in the first M, and the cost of the image block is not less than a preset value;
    所述图像块的代价为所述图像块在所述各颜色通道的像素差异的总和;The cost of the image block is the sum of the pixel differences of the image blocks in the respective color channels;
    所述图像块在每个颜色通道的像素差异为,所述图像块的各像素分别和已编码块中具有相同位置的像素在所述颜色通道的像素值之差的总和;The pixel difference of the image block in each color channel is a sum of a difference between a pixel value of the image block and a pixel having the same position in the encoded block at a pixel value of the color channel;
    所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。The encoded block is an image block at a specific position in the encoded image located before the current image to be encoded.
  134. 根据权利要求125所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125, wherein the processor is further configured to:
    编码所述图像块的标志位,所述标志位用于标识所述图像块是否用于对所述特定参考图像进行更新。A flag bit encoding the image block, the flag bit being used to identify whether the image block is used to update the particular reference image.
  135. 根据权利要求125所述的视频编码装置,其特征在于,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待编码图像中的位置决定,包括:The video encoding apparatus according to claim 125, wherein a position of the specific image block in the specific reference image is determined by a position of the image block in the current image to be encoded, comprising:
    所述特定图像块在所述特定参考图像中的位置与所述图像块在所述当前待编码图像中的位置相同,或者,a position of the specific image block in the specific reference image is the same as a position of the image block in the current image to be encoded, or
    所述特定图像块在所述特定参考图像中的位置是所述图像块在所述当前待编码图像中的位置加上预设偏移值得到的。The position of the specific image block in the specific reference image is obtained by adding a preset offset value to the position of the image block in the current image to be encoded.
  136. 根据权利要求126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 126, wherein the processor is further configured to:
    当所述当前待编码图像不可用于帧间预测时,确定所述当前待编码图像中的所述图像块不可用于更新所述特定参考图像中的所述特定图像块。When the current image to be encoded is not available for inter prediction, it is determined that the image block in the current image to be encoded is not available for updating the specific image block in the specific reference image.
  137. 根据权利要求126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 126, wherein the processor is further configured to:
    当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的所述图像块不用于更新所述特定参考图像中的所述特定图像块。When the current image to be encoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded is not used to update the particular image block in the particular reference image.
  138. 根据权利要求126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 126, wherein the processor is further configured to:
    当当前待编码图像不可作为短期参考图像也不可作为长期参考图像时, 确定所述待编码图像中的所述图像块不用于更新所述特定参考图像中的所述特定图像块。When the current image to be encoded is not available as a short-term reference image or as a long-term reference image, Determining that the image block in the image to be encoded is not used to update the particular image block in the particular reference image.
  139. 根据权利要求125或126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125 or 126, wherein the processor is further configured to:
    当所述当前待编码图像可用于帧间预测时,确定当前待编码图像可用于更新所述特定参考图像。When the current image to be encoded is available for inter prediction, it is determined that the current image to be encoded is available for updating the particular reference image.
  140. 根据权利要求139所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 139, wherein the processor is further configured to:
    当所述当前待编码码图像为帧内预测图像或者为前向预测图像时,确定当前待编码图像可用于更新所述特定参考图像。When the current code to be encoded image is an intra prediction image or a forward predicted image, it is determined that the current image to be encoded can be used to update the specific reference image.
  141. 根据权利要求125或126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125 or 126, wherein the processor is further configured to:
    当当前待编码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待编码图像可用于更新所述特定参考图像。When the current image to be encoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be encoded can be used to update the specific reference image.
  142. 根据权利要求125或126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125 or 126, wherein the processor is further configured to:
    当当前待编码图像可作为短期参考图像且可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  143. 根据权利要求125或126所述的视频编码装置,其特征在于,所述处理器还用于:The video encoding apparatus according to claim 125 or 126, wherein the processor is further configured to:
    当当前待编码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待编码图像中的图像块可用于更新所述特定参考图像。When the current image to be encoded can be used as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be encoded can be used to update the specific reference image.
  144. 根据权利要求125、137、138、141、142、143任一项所述的视频编码装置,其特征在于,在以下至少一项中加入标志位,所述标志位用于标识不可作为短期参考图像的图像是否可用于更新所述特定参考图像:A video encoding apparatus according to any one of claims 125, 137, 138, 141, 142, 143, wherein a flag bit is added in at least one of the following, the flag bit being used to identify a non-short-term reference image Whether the image can be used to update the specific reference image:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  145. 根据权利要求144所述的视频编码装置,其特征在于,所述标志位为时域可伸缩标志位。A video encoding apparatus according to claim 144, wherein said flag bit is a time domain scalable flag bit.
  146. 根据权利要求145所述的视频编码装置,其特征在于, A video encoding apparatus according to claim 145, characterized in that
    当具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is not available to update the particular reference image when having a time domain scalability requirement; and/or,
    当不具有时域可伸缩需求时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。The value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image when there is no time domain scalability requirement.
  147. 根据权利要求125所述的视频编码装置,其特征在于,所述特定参考图像是可用于帧间预测的图像。A video encoding apparatus according to claim 125, wherein said specific reference image is an image usable for inter prediction.
  148. 根据权利要求147所述的视频编码装置,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video encoding apparatus according to claim 147, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  149. 根据权利要求125所述的视频编码装置,其特征在于,所述判断图像块可用于更新特定参考图像的装置,包括:The video encoding apparatus according to claim 125, wherein the means for determining the image block is operable to update a specific reference image, comprising:
    根据所述图像块的像素信息和已编码块的像素信息判断图像块可用于更新特定参考图像,其中,所述已编码块为位于所述当前待编码图像之前的已编码图像中特定位置处的图像块。Determining an image block according to pixel information of the image block and pixel information of the encoded block may be used to update a specific reference image, wherein the encoded block is at a specific position in the encoded image before the current image to be encoded Image block.
  150. 根据权利要求149所述的视频编码装置,其特征在于:所述根据所述图像块和已编码块判断图像块可用于更新特定参考图像,包括:The video encoding apparatus according to claim 149, wherein said determining, based on said image block and said encoded block, that said image block is usable for updating a specific reference image comprises:
    根据以下至少一项判断图像块可用于更新特定参考图像:The image block can be used to update a particular reference image according to at least one of the following:
    所述图像块和所述已编码块之间的亮度分量的像素值差值、所述图像块和/或所述已编码块的亮度分量的像素总数、所述图像块和所述已编码块之间的色度分量的像素值差值、所述图像块和/或所述已编码块的色度分量的像素总数。a pixel value difference value of a luminance component between the image block and the encoded block, a total number of pixels of the image block and/or a luminance component of the encoded block, the image block, and the encoded block The pixel value difference between the chroma components, the total number of pixels of the image block and/or the chroma component of the encoded block.
  151. 一种视频解码装置,其特征在于,包括:A video decoding device, comprising:
    至少一个存储器,用于存储计算机可执行指令;At least one memory for storing computer executable instructions;
    至少一个处理器,单独或共同地用于:访问所述至少一个存储器,并执行所述计算机可执行指令,以实施以下操作:At least one processor, singly or collectively, for accessing the at least one memory and executing the computer executable instructions to perform the following operations:
    当当前待解码图像可用于更新特定参考图像时,且当图像块可用于更新特定参考图像时,根据所述图像块对特定参考图像中的特定图像块进行更新,其中,所述图像块为所述当前待解码图像中的一个图像块,所述特定图像块在所述特定参考图像中的位置由所述图像块在所述当前待解码图像中的位置决定。When a current image to be decoded is available for updating a particular reference image, and when the image block is available for updating a particular reference image, updating a particular image block in the particular reference image in accordance with the image block, wherein the image block is One image block in the current image to be decoded is determined, and the position of the specific image block in the specific reference image is determined by the position of the image block in the current image to be decoded.
  152. 根据权利要求151所述的视频解码装置,其特征在于,所述处理 器还用于:A video decoding apparatus according to claim 151, wherein said processing Also used to:
    当当前待解码图像不可用于更新特定参考图像时,不用所述当前待解码图像的所述图像块对所述特定参考图像中的特定图像块进行更新。When the current image to be decoded is not available for updating a specific reference image, the specific image block in the specific reference image is updated without using the image block of the current image to be decoded.
  153. 根据权利要求151所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 151, wherein the processor is further configured to:
    获取所述图像块的标志位;Obtaining a flag bit of the image block;
    根据所述标志位确定所述图像块可用于更新特定参考图像。Determining, based on the flag bit, the image block can be used to update a particular reference image.
  154. 根据权利要求151所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 151, wherein the processor is further configured to:
    获取用于指示所述当前待解码图像的参考关系的参数或者标志位;Obtaining a parameter or a flag bit for indicating a reference relationship of the current image to be decoded;
    根据所述参数或者标志位确定所述当前待解码图像可用于更新特定参考图像。Determining that the current image to be decoded is available for updating a particular reference image based on the parameter or flag.
  155. 根据权利要求154所述的视频解码装置,其特征在于,所述获取用于指示所述当前待解码图像的参考关系的参数或者标志位,包括:The video decoding apparatus according to claim 154, wherein the acquiring a parameter or a flag bit for indicating a reference relationship of the current image to be decoded comprises:
    从以下至少一项中获取用于指示所述当前待解码图像的参考关系的参数或者标志位:Obtaining a parameter or a flag bit indicating a reference relationship of the current image to be decoded from at least one of the following:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  156. 根据权利要求151所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding device according to claim 151, wherein the processor is further configured to:
    当所述当前待解码图像为帧内预测图像和/或随机访问点时,根据所述当前待解码图像的全部图像块对所述特定参考图像的全部图像块进行更新。When the current image to be decoded is an intra prediction image and/or a random access point, all image blocks of the specific reference image are updated according to all image blocks of the current image to be decoded.
  157. 根据权利要求151所述的视频解码装置,其特征在于,所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量为M,M为不小于1的整数。The video decoding apparatus according to claim 151, wherein the number of image blocks available for updating the specific reference image in the current image to be decoded is M, and M is an integer not less than 1.
  158. 根据权利要求157所述的视频解码装置,其特征在于,所述当前待解码图像对应的M的取值是基于所述当前待解码图像的参考关系确定的。The video decoding device according to claim 157, wherein the value of M corresponding to the current image to be decoded is determined based on a reference relationship of the current image to be decoded.
  159. 根据权利要求158所述的视频解码装置,其特征在于,所述当前待解码图像的类型不同时,所述当前待解码图像对应的M的取值不同。The video decoding device according to claim 158, wherein when the types of the currently to be decoded images are different, the values of M corresponding to the current image to be decoded are different.
  160. 根据权利要求158所述的视频解码装置,其特征在于,所述当前 待解码图像对应的M的取值是基于所述当前待解码图像所属类型的图像总数确定的。A video decoding apparatus according to claim 158, wherein said current The value of M corresponding to the image to be decoded is determined based on the total number of images of the type to which the current image to be decoded belongs.
  161. 根据权利要求157所述的视频解码装置,其特征在于,以下至少一项中包含所述当前待解码图像中可用于更新所述特定参考图像的图像块的数量:The video decoding apparatus according to claim 157, characterized in that at least one of the following includes the number of image blocks in the current image to be decoded that are usable for updating the specific reference image:
    所述当前待解码图像的图像头、所述当前解码图像的图像参数集、所述当前待解码图像对应的序列头、所述当前待解码图像对应的序列参数集、所述当前待解码图像对应的视频参数集。The image header of the current image to be decoded, the image parameter set of the current decoded image, the sequence header corresponding to the current image to be decoded, the sequence parameter set corresponding to the current image to be decoded, and the current image to be decoded Video parameter set.
  162. 根据权利要求152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 152, wherein the processor is further configured to:
    当确定所述当前待解码图像不可用于除所述当前待解码图像的图像进行帧间预测时,确定所述所述待解码图像中的所述图像块不用于更新所述特定参考图像中的特定图像块。Determining that the image block in the image to be decoded is not used to update the specific reference image when it is determined that the current image to be decoded is not available for inter prediction according to the image of the current image to be decoded. Specific image block.
  163. 根据权利要求152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 152, wherein the processor is further configured to:
    当当前待解码图像可作为短期参考图像但不可作为长期参考图像时,确定所述待解码图像中的图像块不用于更新所述特定参考图像中的特定图像块。When the current image to be decoded is available as a short-term reference image but not as a long-term reference image, it is determined that the image block in the image to be decoded is not used to update a particular image block in the particular reference image.
  164. 根据权利要求151或152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 151 or 152, wherein the processor is further configured to:
    当所述当前待解码图像可用于帧间预测时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is available for inter prediction, it is determined that the current image to be decoded is available for updating the particular reference image.
  165. 根据权利要求164所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 164, wherein the processor is further configured to:
    当所述当前待解码图像为帧内预测图像或者为前向预测图像时,确定当前待解码图像可用于更新所述特定参考图像。When the current image to be decoded is an intra prediction image or a forward prediction image, it is determined that the current image to be decoded is available for updating the specific reference image.
  166. 根据权利要求151或152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 151 or 152, wherein the processor is further configured to:
    当当前待解码图像不可作为短期参考图像但可作为长期参考图像时,确定所述待解码图像可用于更新所述特定参考图像。 When the current image to be decoded is not available as a short-term reference image but can be used as a long-term reference image, it is determined that the image to be decoded can be used to update the specific reference image.
  167. 根据权利要求151或152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 151 or 152, wherein the processor is further configured to:
    当当前待解码图像可作为短期参考图像且可作为长期参考图像时,确定所述待解码图像中的图像块可用于更新所述特定参考图像。When the current image to be decoded is available as a short-term reference image and can be used as a long-term reference image, it is determined that the image block in the image to be decoded can be used to update the specific reference image.
  168. 根据权利要求154所述的视频解码装置,其特征在于,所述所述当前待解码图像的参考关系为:所述当前带解码图像为短期参考图像或者长期参考图像。The video decoding device according to claim 154, wherein the reference relationship of the current image to be decoded is: the current band decoded image is a short-term reference image or a long-term reference image.
  169. 根据权利要求152所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to claim 152, wherein the processor is further configured to:
    当当前待解码图像不可作为短期参考图像且不可作为长期参考图像时,确定所述待解码图像中的图像块不可用于更新所述特定参考图像。When the current image to be decoded is not available as a short-term reference image and is not available as a long-term reference image, it is determined that the image block in the image to be decoded is not available for updating the specific reference image.
  170. 根据权利要求151、163、166、167、168、169任一项所述的视频解码装置,其特征在于,所述处理器还用于:The video decoding apparatus according to any one of claims 151, 163, 166, 167, 168, 169, wherein the processor is further configured to:
    从以下至少一项中获取标志位,所述标志位用于标识所述待解码图像是否可用于更新所述特定参考图像:A flag bit is obtained from at least one of the following, the flag bit being used to identify whether the image to be decoded is available for updating the specific reference image:
    视频参数集、序列参数集、序列头、图像参数集、图像头、条带头、参考图像集、参考配置集。Video parameter set, sequence parameter set, sequence header, image parameter set, image header, strip header, reference image set, reference configuration set.
  171. 根据权利要求170所述的视频解码装置,其特征在于,所述标志位为时域可伸缩标志位。The video decoding apparatus according to claim 170, wherein said flag bit is a time domain scalable flag bit.
  172. 根据权利要求170或171所述的视频解码装置,其特征在于,A video decoding apparatus according to claim 170 or 171, characterized in that
    所述标志位或可伸缩标志位为第一数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块不可用于更新所述特定参考图像;和/或,When the flag bit or the scalable flag bit is the first value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is unavailable for updating the specific reference image; and/or,
    所述标志位或可伸缩标志位为第二数值时,所述标志位的值用于指示不可为短期参考图像的图像中的图像块可用于更新所述特定参考图像。When the flag bit or the scalable flag bit is the second value, the value of the flag bit is used to indicate that an image block in an image that is not a short-term reference image is available for updating the particular reference image.
  173. 根据权利要求151所述的视频解装置,其特征在于,所述特定参考图像是可用于帧间预测的图像。A video decoding apparatus according to claim 151, wherein said specific reference image is an image usable for inter prediction.
  174. 根据权利要求173所述的视频解码装置,其特征在于,所述特定参考图像为长期参考帧,或者为背景帧,或者为黄金帧。The video decoding apparatus according to claim 173, wherein the specific reference image is a long-term reference frame, or is a background frame, or is a golden frame.
  175. 一种机器可读存储介质,其特征在于,适用于终端,所述机器可 读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理权利要求75-100任一项所述的视频编码方法。A machine readable storage medium, characterized by being applicable to a terminal, the machine being A plurality of computer instructions are stored on the read storage medium, and when the computer instructions are executed, the video encoding method of any one of claims 75-100 is processed.
  176. 一种机器可读存储介质,其特征在于,适用于终端,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行处理权利要求101-124任一项所述的视频解码方法。 A machine-readable storage medium, characterized by being applicable to a terminal, the machine-readable storage medium storing a plurality of computer instructions, the computer instructions being executed when processed, according to any one of claims 101-124 Video decoding method.
PCT/CN2017/087633 2017-06-08 2017-06-08 Video coding method, video decoding method, and related device WO2018223353A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201780084713.2A CN110235446B (en) 2017-06-08 2017-06-08 Video encoding method, video decoding method and related devices
PCT/CN2017/087633 WO2018223353A1 (en) 2017-06-08 2017-06-08 Video coding method, video decoding method, and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/087633 WO2018223353A1 (en) 2017-06-08 2017-06-08 Video coding method, video decoding method, and related device

Publications (1)

Publication Number Publication Date
WO2018223353A1 true WO2018223353A1 (en) 2018-12-13

Family

ID=64565611

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/087633 WO2018223353A1 (en) 2017-06-08 2017-06-08 Video coding method, video decoding method, and related device

Country Status (2)

Country Link
CN (1) CN110235446B (en)
WO (1) WO2018223353A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687301B2 (en) * 2001-03-19 2004-02-03 Fulvio Moschetti Method for block matching motion estimation in digital video sequences
CN101415115A (en) * 2007-10-15 2009-04-22 华为技术有限公司 Method for encoding and decoding video based on movement dancing mode, and encoder and decoder thereof
US8363727B2 (en) * 2008-09-30 2013-01-29 Microsoft Corporation Techniques to perform fast motion estimation
CN106534871A (en) * 2016-12-06 2017-03-22 北京大学 Coding method and decoding method for video codec

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127912B (en) * 2007-09-14 2010-11-17 浙江大学 Video coding method for dynamic background frames
CN101272494B (en) * 2008-01-25 2011-06-08 浙江大学 Video encoding/decoding method and device using synthesized reference frame
US20150229967A1 (en) * 2012-08-21 2015-08-13 Samsung Electronics Co., Ltd. Inter-layer video coding method and device for predictive information based on tree structure coding unit, and inter-layer video decoding method and device for predictive informationbased on tree structure coding unit
CN104717511B (en) * 2013-12-13 2018-10-16 联发科技(新加坡)私人有限公司 Video coding or decoded method and device
CN106791829B (en) * 2016-11-18 2020-01-21 华为技术有限公司 Method and equipment for establishing virtual reference frame

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687301B2 (en) * 2001-03-19 2004-02-03 Fulvio Moschetti Method for block matching motion estimation in digital video sequences
CN101415115A (en) * 2007-10-15 2009-04-22 华为技术有限公司 Method for encoding and decoding video based on movement dancing mode, and encoder and decoder thereof
US8363727B2 (en) * 2008-09-30 2013-01-29 Microsoft Corporation Techniques to perform fast motion estimation
CN106534871A (en) * 2016-12-06 2017-03-22 北京大学 Coding method and decoding method for video codec

Also Published As

Publication number Publication date
CN110235446B (en) 2024-04-12
CN110235446A (en) 2019-09-13

Similar Documents

Publication Publication Date Title
CN110024398B (en) Local hash-based motion estimation for screen teleprocessing scenes
JP6462119B2 (en) Computing device
KR101904625B1 (en) Signaling for sub-decoded picture buffer (sub-dpb) based dpb operations in video coding
CN108737825B (en) Video data encoding method, apparatus, computer device and storage medium
US11356684B2 (en) Method and system for signaling chroma quantization parameter table
CN110944185B (en) Video decoding method and device, computer equipment and storage medium
JP2019195203A (en) Dependent random access point pictures
EP2941876B1 (en) Multi-resolution decoded picture buffer management for multi-layer coding
CN111355951B (en) Video decoding method, device and decoding equipment
WO2021109978A1 (en) Video encoding method, video decoding method, and corresponding apparatuses
US11792412B2 (en) Adaptive loop filtering for color format support
CN117615149A (en) Image timing and decoding unit information for implementing temporal adaptability
EP4024872A1 (en) Video coding method and apparatus, video decoding method and apparatus, electronic device, and storage medium
US11496754B2 (en) Video encoder, video decoder, and corresponding method of predicting random access pictures
US20150016500A1 (en) Device and method for scalable coding of video information
CN114424571A (en) Encoder, decoder and corresponding methods
US10271049B1 (en) Control methods of sample adaptive offset (SAO) filtering and related image processing systems thereof
WO2022166462A1 (en) Encoding/decoding method and related device
US20240214562A1 (en) Video coding with dynamic groups of pictures
CN110913215B (en) Method and device for selecting prediction mode and readable storage medium
CN110366851B (en) Encoding and decoding method and encoding and decoding device
WO2018223353A1 (en) Video coding method, video decoding method, and related device
WO2020224476A1 (en) Image division method, apparatus and device
JP7494315B2 (en) Image encoding/decoding method and device based on available slice type information for GDR or IRPA pictures, and recording medium for storing bitstreams
JP7414856B2 (en) Video coding layer upswitching instructions

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17912700

Country of ref document: EP

Kind code of ref document: A1