WO2020134884A1 - 视频编码及视频解码 - Google Patents

视频编码及视频解码 Download PDF

Info

Publication number
WO2020134884A1
WO2020134884A1 PCT/CN2019/122373 CN2019122373W WO2020134884A1 WO 2020134884 A1 WO2020134884 A1 WO 2020134884A1 CN 2019122373 W CN2019122373 W CN 2019122373W WO 2020134884 A1 WO2020134884 A1 WO 2020134884A1
Authority
WO
WIPO (PCT)
Prior art keywords
data block
intra
block
current data
mode
Prior art date
Application number
PCT/CN2019/122373
Other languages
English (en)
French (fr)
Inventor
叶淑睿
王莉
Original Assignee
杭州海康威视数字技术股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 杭州海康威视数字技术股份有限公司 filed Critical 杭州海康威视数字技术股份有限公司
Publication of WO2020134884A1 publication Critical patent/WO2020134884A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • the present application relates to video codec technology, in particular to intra-block copy technology.
  • Predictive coding is a common coding method in video compression.
  • Common prediction modes of predictive coding can include intra prediction mode (intra prediction mode, which can be written as MODE_INTRA) and inter prediction mode (inter prediction mode, which can be written as MODE_INTER).
  • Intra prediction refers to using only the data elements (such as sample values) of the current frame to complete the prediction.
  • Inter-frame prediction refers to the use of data elements (such as sample values or motion vectors) of encoded frames other than the current frame to complete the prediction.
  • the frame types of video may include I frames (intra-coded frames), P frames (forward predictive coded frames), and B frames (bidirectional predictive coded frames).
  • Intra-block copy technology has been proposed.
  • the intra-block copy technology is also called intra-block matching, and it uses the reconstructed region that has been encoded in the current frame as the reference region for predictive encoding.
  • the prediction mode of the coding unit adopting the intra block copy technology is inter prediction.
  • Intra-frame copy technology can be used for each of I frame, P frame and B frame. For I-frames, if intra-block copy technology is allowed, the frame type will be changed to P-frames.
  • a video encoding method is provided.
  • the method is performed by a video encoder, and includes: when it is determined that the current data block adopts the intra block copy mode, encoding corresponding to the current data block
  • the stream carries first indication information and second indication information, where the first indication information is used to indicate that the prediction mode of the current data block is intra prediction, and the second indication information is used to indicate the current data
  • the block adopts the intra-block copy mode; the encoded stream carrying the first indication information and the second indication information is sent.
  • a video decoding method is provided.
  • the method is executed by a video decoder and includes: acquiring an encoding stream corresponding to a current data block; when it is determined that the encoding stream carries first indication information And the second indication information, it is determined that the current data block adopts the intra block copy mode, wherein the first indication information is used to indicate that the prediction mode of the current data block is intra prediction, and the second indication information It is used to indicate that the current data block adopts the intra block copy mode.
  • a video encoding device including: a memory for storing a computer program; and a processor for executing the computer program stored on the memory to implement the above video encoding method .
  • a video decoding device including: a memory for storing a computer program; and a processor for executing the computer program stored on the memory to implement the above video decoding method .
  • a storage medium on which a computer program is stored, and when the computer program is executed by a processor, the processor is caused to implement the above video encoding method.
  • a storage medium on which a computer program is stored, and when the computer program is executed by a processor, the processor is caused to implement the above video decoding method.
  • the efficiency of the video decoder in identifying the data block in the intra-block copy mode can be improved, and the consistency of the syntax and semantics in encoding and decoding of the data block that uses the intra-block copy mode for predictive encoding can be ensured.
  • FIG. 1 is a flowchart of a video encoding method according to an exemplary embodiment of the present application
  • FIG. 2 is a flowchart of a video decoding method according to an exemplary embodiment of the present application
  • FIG. 3A is a schematic diagram of prediction mode classification according to an exemplary embodiment of the present application.
  • FIG. 3B is a schematic diagram of a block referred to for obtaining boundary strength according to an exemplary embodiment of the present application
  • FIG. 4 is a schematic diagram of the correspondence relationship between the positions of brightness and chroma according to an exemplary embodiment of the present application
  • FIG. 5 is a schematic diagram of adjacent data blocks of a current data block according to an exemplary embodiment of the present application.
  • FIG. 6 is a schematic structural diagram of a video encoding device according to an exemplary embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a video decoding device according to an exemplary embodiment of the present application.
  • FIG. 1 is a flowchart of a video encoding method according to an embodiment of the present application. The method may be performed by a video encoder, and may include steps S100-S110.
  • step S100 when it is determined that the current data block adopts the intra block copy mode, the encoded stream corresponding to the current data block carries the first indication information and the second indication information, where the first indication information is used to indicate the current data block
  • the prediction mode is intra prediction
  • the second indication information is used to indicate that the current data block adopts the intra block copy mode.
  • step S110 an encoded stream carrying the first indication information and the second indication information is sent.
  • the encoded stream may be sent to a video decoder or a device for storing the encoded stream.
  • the second indication information that the block uses the intra-block copy mode can improve the efficiency of the video decoder in identifying the data block to use the intra-block copy mode, and ensure that the data block that uses the intra-block copy mode for predictive encoding has the same syntax and codec Semantic consistency.
  • the first indication information may include a first identifier, and the first identifier may be used to identify that the type of the video frame where the current data block is located is an I frame.
  • the above determination that the current data block adopts the intra block copy mode may include: when it is determined that the intra prediction mode with the lowest rate distortion cost is the intra block copy mode, determining that the current data block uses the intra block copy mode.
  • Intra prediction may include, but is not limited to, Planar (plane) mode, DC mode, angle mode, cross-component prediction mode, intra block copy mode, and so on.
  • Inter prediction may include, but is not limited to, Merge mode, AMVP (Advanced Motion Vector Prediction) mode, Skip mode, Affine mode, and the like.
  • the intra block copy mode is no longer used as a mode for inter prediction, but belongs to a mode for intra prediction.
  • an intra block copy mode when intra prediction is performed on a data block in an I frame, an intra block copy mode may be adopted. If there are data blocks using intra prediction in the B frame or the P frame, the intra block copy mode is also allowed for these data blocks.
  • the first indication information may include an identifier for identifying the video frame where the current data block is an I frame (Referred to herein as the first logo). That is, the video encoder may use the first identifier used to identify the video frame where the current data block is an I frame to indicate that the current data block uses intra prediction, and does not need to carry additional special instructions to indicate that the current data block uses intra prediction
  • the predicted information reduces the bit rate overhead of the current data block and improves coding performance.
  • the video encoder may determine the rate-distortion cost of each intra-prediction mode and select the intra-prediction mode with the lowest rate-distortion cost as the current data block Intra prediction mode used.
  • the video encoder may determine the rate-distortion cost of encoding the current data block using intra-block copy mode, DC mode, Planar mode, angle mode, cross-component prediction mode, etc., and determine the mode with the lowest rate-distortion cost as The intra prediction mode used by the current data block.
  • the video encoder may determine that the current data block uses the intra block copy mode.
  • the video encoder may use a separate flag bit to explicitly identify whether the current data block adopts the intra-block copy mode.
  • the second indication information may include a second identifier. If the value of the second identifier is the first value, the second identifier is used to indicate that the current data block adopts the intra-block copy mode.
  • the video encoder may carry a flag bit (referred to as a second identifier herein) for identifying whether the current data block adopts the intra block copy mode in the encoded stream of the current data block.
  • a flag bit referred to as a second identifier herein
  • the second identifier may indicate that the current data block adopts the intra-block copy mode.
  • the second identifier may indicate that the current data block does not adopt the intra-block copy mode.
  • the I frame uses a separable tree division technology (Dualtree), and its brightness and chrominance have independent block division structures. Both the chroma block and the luma block can be indicated by an explicit mark bit. Whether to use the intra-block copy mode.
  • the current data block is a luma block or a chroma block
  • the second identifier may indicate that the luma or chroma block uses the intra-frame Block copy mode.
  • the available modes of the chroma block include the corresponding brightness component mode (DM, Direct Mode)
  • the predictions adopted by the brightness block corresponding to the chroma block may be used
  • the mode determines the prediction mode adopted by the chroma block (specific implementation examples will be described in detail later). Therefore, the corresponding luma component mode information (eg, DM flag bit) can be used to implicitly indicate whether the chroma block adopts the intra block copy mode, thereby avoiding additional coding of the flag bit for the chroma block and saving coding bits.
  • the second indication information includes a third identification
  • the third identification indicates corresponding luminance component mode information of the chroma block.
  • the frame type of I frames will be modified to P frames. Therefore, for video frames whose frame type is identified as P frames , the actual frame type may be an I frame (the I frame at this time may be called a pseudo P frame), but since the I frame does not allow reference frames other than the current frame to be used as prediction references, the frame type is identified as P frame and A video frame using a reference frame other than the current frame as a prediction reference may be determined as a P frame.
  • the common syntax elements of the video frame that allows the intra block copy mode and the video frame that disables the intra block copy mode can maintain the same initial value of the entropy coding state to enhance the initial entropy coding state
  • the rationality of the value setting is consistent with the definition of the initial value of the entropy coding state.
  • the common syntax of the first video frame and the second video frame maintain the same initial value of the entropy coding state.
  • the above-mentioned first video frame is an I frame that allows the intra-block copy mode
  • the second video frame is an I frame that disables the intra-block copy mode
  • the intra block copy mode belongs to the intra prediction mode. Therefore, when the video encoder adopts the intra block copy mode to predictively encode the current data block, the encoding stream of the current data block carries the non-current frame as the reference frame. The information of the inter prediction mode will not significantly improve the decoding performance. Therefore, for the data block adopting the intra block copy mode, the information of the inter prediction mode using the non-current frame as the reference frame may not be carried in the encoded stream, so as to reduce the bit rate overhead and improve the encoding performance.
  • the information of the inter prediction mode using the non-current frame as the reference frame may not be encoded.
  • the above-mentioned inter prediction mode may include at least one of the following: motion information combining mode encoding MVD (motion vector residual), affine mode (Affine Mode), intra-frame multi-hypothesis prediction mode (Multi hypothesis mode) and triangle prediction mode (Triangle mode).
  • the data block of the mode can reduce the number of candidates in the merge list constructed in the merge mode, and thus can reduce the coding bits of the candidate index value.
  • the candidates in the merge list may include one or more of the candidates of the spatial domain, the temporal domain, the merge candidate, and the zero motion vector of the current data block.
  • the first data block is in the merge list constructed in the merge mode
  • the number of candidates of is less than the number of candidates in the merge list constructed by the second data block in the merge mode.
  • the coding performance of predictive coding of a data block using the intra-block copy mode will also be affected by the information of the reconstructed region of the video frame where the data block is located. Therefore, in the video encoder and video The decoder pre-negotiates the judgment strategy or if the video encoder and the video decoder are configured with the same judgment strategy, it can determine whether the data block adopts the intra-block copy mode according to the reconstructed area information of the video frame where the data block is located, thereby Without the need to carry specific indication information in the encoded stream of the data block, it can effectively determine whether the data block adopts the intra-block copy mode.
  • determining whether the current data block adopts the intra block copy mode may include: determining whether the current data block adopts the intra block copy mode according to the reconstructed area information of the video frame where the current data block is located.
  • the reconstructed area information may include at least one of the following: the gradient value of the surrounding area of the current data block or the mode information of the adjacent data block of the current data block.
  • the peripheral area of the current data block may include M columns to the left and N rows above the current data block in the video frame where the current data block is located, where M and N are both positive integers.
  • the determining whether the current data block adopts the intra-block copy mode according to the reconstructed area information of the video frame where the current data block is located may include: If the gradient value of the surrounding area of the current data block is greater than the first preset threshold, it is determined that the current data block adopts the intra-block copy mode; if the gradient value of the surrounding area of the current data block is less than the second preset threshold, the current data is determined The block does not adopt the intra-block copy mode, where the first preset threshold is greater than the second preset threshold.
  • the video encoder when the video encoder encodes the current data block, it can calculate the gradient value of the surrounding area of the current data block, and compare the gradient value of the surrounding area of the current data block with a preset threshold. If the gradient value of the peripheral area of the current data block is greater than the first preset threshold (which can be set according to actual needs), the video encoder may determine that the current data block adopts the intra-block copy mode. If the gradient value of the surrounding area of the current data block is less than the second preset threshold (can be set according to actual needs, and the second preset threshold is less than the first preset threshold), the video encoder may determine that the current data block does not use frames Internal block copy mode.
  • the first preset threshold which can be set according to actual needs
  • the above determines whether the current data block adopts the intra-block copy mode according to the reconstructed area information of the video frame where the current data block is located It may include: if the proportion of data blocks adopting the inter prediction mode in the adjacent data blocks of the current data block exceeds the third preset threshold, determining that the current data block does not adopt the intra block copy mode.
  • the proportion of data blocks in the inter-prediction mode among the adjacent data blocks of the current data block can be counted according to the mode information of each adjacent data block of the current data block (That is, the ratio of the number of data blocks in the inter-prediction mode among the adjacent data blocks of the current data block and the number of adjacent data blocks of the current data block), and compare the ratio with a preset threshold (referred to as the Three preset thresholds can be set according to actual needs, such as 50%). If the ratio exceeds the third preset threshold, the video encoder may determine that the current data block does not use the intra block copy mode.
  • the video encoder may use other strategies to determine whether the current data block adopts the intra-block copy mode, as described above based on rate distortion The cost determines whether the current data block adopts the intra-block copy mode.
  • the neighboring data blocks of the current data block are airspace neighboring blocks, including the airspace neighboring block at the bottom left of the current data block, and the airspace neighboring block at the top right of the current data block , The nearest neighboring airspace block in the upper right corner of the current data block, the nearest neighboring airspace block in the lower left corner of the current data block, and the nearest neighboring airspace block in the upper left corner of the current data block.
  • FIG. 2 is a flowchart of a video decoding method according to an embodiment of the present application. This method can be performed by a video decoder, and can include steps S200-S210.
  • step S200 an encoded stream corresponding to the current data block is obtained.
  • the video decoder may acquire the encoded stream by receiving the encoded stream sent from the video encoder, or may also acquire the encoded stream from a device for storing the encoded stream.
  • step S210 when it is determined that the encoded stream corresponding to the current data block carries the first indication information and the second indication information, it is determined that the current data block adopts the intra block copy mode, where the first indication information is used to indicate the current data block
  • the prediction mode of is intra prediction, and the second indication information is used to indicate that the current data block adopts the intra block copy mode.
  • the video decoder when the video decoder decodes the current data block, it can determine whether the encoded stream corresponding to the current data block carries the first indication information and the second indication information, and when the encoded stream corresponding to the current data block When carrying the first indication information and the second indication information, the video decoder may determine that the current data block adopts the intra block copy mode.
  • the current data block adopts the intra block copy mode based on the first indication information and the second indication information carried in the encoded stream corresponding to the data block, thereby improving the video decoder's recognition that the data block uses the intra block
  • the efficiency of the copy mode and to ensure the consistency of the syntax and semantics of the data blocks that are predicted and encoded using the intra block copy mode during encoding and decoding.
  • the first indication information may include a first identifier, and the first identifier may be used to identify that the type of the video frame where the current data block is located is an I frame.
  • the video decoder determines that the encoding stream of the current data block carries the identifier for identifying the type of the video frame where the current data block is located as the I frame (Referred to as the first identifier herein), the video decoder can efficiently and accurately determine that the current data block uses intra prediction.
  • the second indication information may include a second identifier. If the value of the second identifier is the first value, the second identifier is used to indicate that the current data block adopts the intra block copy mode.
  • the video decoder when the video decoder decodes the current data block, it can determine whether the current data block adopts the intra block copy mode according to the value of the second identifier carried in the encoded stream of the current data block. If the value of the second identifier carried in the encoded stream of the current data block is the first value (such as 1), the video decoder may determine that the current data block adopts the intra-block copy mode.
  • the video decoder may It is determined that the luma block or chroma block adopts the intra block copy mode.
  • the second indication information includes a third identification
  • the third identification indicates corresponding luminance component mode information of the chroma block.
  • the video decoder can recognize that the data block is turned on by acquiring the third identifier in the encoded stream of the current data block.
  • the luma component mode, and the prediction mode adopted by the chroma block can be determined according to the prediction mode adopted by the luma block corresponding to the chroma block (specific implementation examples will be described in detail later).
  • the video decoder when the video decoder determines that the type of the video frame where the current data block is located is P frame or B frame, the video decoder may determine that the current data block does not adopt the intra block copy mode .
  • the video decoder when the video decoder decodes the current data block, it can calculate the gradient value of the surrounding area of the current data block, and compare the gradient value of the surrounding area of the current data block with the Set the threshold. If the gradient value of the surrounding area of the current data block is greater than the first preset threshold, the video decoder may determine that the current data block adopts the intra-block copy mode. If the gradient value of the peripheral area of the current data block is less than the second preset threshold (the second preset threshold is less than the first preset threshold), the video decoder may determine that the current data block does not adopt the intra block copy mode.
  • the video decoder when the video decoder decodes the current data block, it can count the frames adopted in the adjacent data block of the current data block according to the mode information of the adjacent data block of the current data block The ratio of the data blocks in the inter prediction mode, and compares the ratio with the third preset threshold. If the ratio exceeds the third preset threshold, the video decoder may determine that the current data block does not adopt the intra block copy mode. When the ratio does not exceed the third preset threshold, the video decoder may determine whether the current data block adopts the intra block copy mode according to whether the encoded stream of the current data block carries the first indication information and the second indication information.
  • the prediction mode is intra-prediction, which may be carried in the encoding stream of the current data block to indicate that the prediction mode of the current data block is the intra-prediction mode.
  • An indication information in this embodiment, pred_mode_flag is used as an example
  • a second identifier for indicating that the current data block adopts the intra-block copy mode in this embodiment, cpr_flag is used as an example.
  • pred_mode_flag when the value of pred_mode_flag is 1, it indicates that the prediction mode of the current data block is intra prediction; when the value of cpr_flag is 1, it indicates that the current data block adopts the intra block copy mode.
  • the pred_mode_flag and cpr_flag in the encoded stream of the current data block can be obtained. For example, if it is recognized that the values of pred_mode_flag and cpr_flag are 1, it can be determined that the prediction mode of the current data block is intra prediction, and the intra block copy mode is adopted.
  • pred_mode_flag if the value of pred_mode_flag is 0, it indicates that the prediction mode of the current data block is inter prediction; if pred_mode_flag does not exist, it can be inferred that the prediction mode of the current data block is intra prediction.
  • the video decoder calculates the boundary strength in order to perform deblocking filtering on the current data block, if it is determined that the prediction mode of the current data block is intra prediction and the intra block copy mode is adopted, it will not directly
  • the boundary strength is set to a certain preset value (for example, constant 2), but the boundary strength is determined according to factors such as its reference frame, block vector, etc., as in the inter prediction mode.
  • the boundary strength may be set to a preset value if the P-block or Q-block uses the intra-block copy mode. If the P-block or Q-block uses the intra-block copy mode, the P-block and Q-block will contain non-zero transform coefficients, whether the P-block and Q-block use the same reference frame, and the P-block and Q-block motion vectors ( mv) or whether the number of block vectors (bv) are the same or other related factors to determine the boundary strength value.
  • the type of the video frame is not modified to a P frame but is still an I frame.
  • the encoded stream of the current data block may carry a first identifier for identifying the type of the video frame where the current data block is I frame, and a second identifier for identifying that the data block adopts the intra-frame copy mode (in this In the embodiment, cpr_flag is used as an example). When the value of cpr_flag is 1, it indicates that the current data block adopts the intra-block copy mode.
  • the first identifier and cpr_flag in the encoded stream of the current data block can be obtained.
  • the first identification it is determined that the type of the video frame where the current data block is located is I frame. Since I frame only allows intra prediction, the prediction mode of the current data block can be determined as intra prediction.
  • cpr_flag is acquired and the value of cpr_flag is 1, it can be determined that the current data block adopts the intra-block copy mode.
  • the video frame type is still identified as an I-frame, and the I-frame ID is used as the indication information for indicating that the data block uses intra-prediction, thereby ensuring The syntax and semantics are consistent, and the bit rate overhead is reduced.
  • each luma block or chroma block (a chroma block contains a Cb block and a Cr block) can be regarded as a data block.
  • each luma block or chroma block coded stream can carry a flag bit (corresponding to the above second identifier, taking cpr_flag as an example) to identify whether the block uses the intra-block copy mode, where, when cpr_flag When the value is 1, it indicates that the luma block or chroma block uses the intra-block copy mode.
  • the mark bit may be encoded in an equal probability mode, or may be encoded in an entropy coding mode.
  • the code stream corresponding to the current luma block or chroma block carries cpr_flag, and the value of cpr_flag is 1, it can be determined that the luma block or chroma block adopts the intra-block copy mode.
  • the explicit mark bit is used to identify whether the luma block or chroma block uses the intra block copy mode, which avoids the influence of the inter prediction mode coding bits and improves the video decoder to determine the luma block or color Whether the degree block uses the intra block copy mode efficiency.
  • the I frame adopts the separable tree division technology (Dualtree)
  • its brightness and chroma have independent block division structures.
  • an explicit flag bit (corresponding to the above second flag, taking cpr_flag as an example) can be used to identify whether the luma block adopts the intra-block copy mode.
  • the chroma block it can be implicitly indicated whether the chroma block adopts the intra block copy mode by corresponding luminance component mode information (for example, DM flag bit).
  • the current chroma block adopts the intra-block copy mode, it can be indicated by identifying that it uses the corresponding luminance component mode. For example, you can carry the DM flag bit in the encoded stream of the current chroma block, and set the value of the DM flag bit to true (you can negotiate with the video decoder in advance, such as 1 is true and 0 is false).
  • the current chroma block adopts the corresponding luminance component mode (for example, the coded stream corresponding to the current chroma block carries the DM flag bit, and the value of the DM flag bit is true), and the specific in the chroma block If a luminance block to which the luminance coordinate position corresponding to the point coordinate (for example, the center point coordinate) belongs adopts the intra block copy mode, it can be determined that the chroma block adopts the intra block copy mode.
  • the I frame adopts the separable tree division technology (Dualtree)
  • its brightness and chroma have independent block division structures.
  • an explicit flag bit (corresponding to the above second flag, taking cpr_flag as an example) can be used to identify whether the luma block adopts the intra-block copy mode.
  • the chroma block it can be implicitly indicated whether the chroma block adopts the intra block copy mode by corresponding luminance component mode information (for example, DM flag bit).
  • the current chroma block adopts the intra-block copy mode, it can be indicated by identifying that it uses the corresponding luminance component mode. For example, it is possible to carry the DM flag bit in the encoded stream of the current chroma block, and set the value of the DM flag bit to true.
  • the current color can be determined according to the following rules Intra prediction mode adopted by degree block:
  • a brightness block to which the brightness coordinate position corresponding to the center point coordinates of the current chroma block belongs is in Planar mode, DC mode, angle mode, or cross-component prediction mode (that is, in the frame other than the intra block copy mode, Prediction mode), it is determined that the current chroma block and the luma block use the same intra prediction mode;
  • a brightness block to which the brightness coordinate position corresponding to the center point coordinate of the current chroma block belongs adopts the intra-block copy mode, and there are multiple brightness blocks to which the brightness coordinate positions corresponding to all coordinates in the current chroma block belong
  • the luma block in the intra block copy mode is used, it is determined that the current chroma block uses the preset intra prediction mode, such as the Planar mode, DC mode, angle mode, or cross-component prediction mode.
  • the brightness block to which the position of the brightness coordinate corresponding to the center point coordinate of the current chroma block belongs is the A block, and the brightness corresponding to all coordinates in the current chroma block
  • the luminance block to which the coordinate position belongs includes A block, B block, C block, D block and E block.
  • P-frames and B-frames can use inter-frame prediction for predictive coding
  • disabling the intra-block copy mode on P-frames and B-frames results in less coding performance loss, but can reduce the coding complexity of P-frames and B-frames. . Therefore, it is possible to prohibit the P frame and the B frame from using the intra block copy mode, and only allow the I frame to use the intra block copy mode.
  • the video frame type where the current data block is located is P frame or B frame, and a reference frame other than the current frame is used as a prediction reference, it can be determined that the current data block does not adopt the intra block copy mode.
  • the video frame type in which the current data block is located is P frame or B frame, and a reference frame other than the current frame is used as a prediction reference, it can be determined that the current data block does not adopt the intra block copy mode.
  • Second video frame Allows the use of intra-block copy mode.
  • the common syntax elements of the first video frame and the second video frame can maintain the same initial value of the entropy encoding state.
  • the A frame meets the following conditions: 1.
  • the frame type is P frame; 2.
  • the current frame supports separable tree division technology (Dual tree); 3.
  • the current frame allows the use of intra-block copy mode.
  • the B frame meets the following conditions: 1.
  • the frame type is I frame; 2.
  • the current frame supports separable tree division technology (Dual tree); 3.
  • the current frame prohibits the use of intra-frame block copy mode.
  • the syntax elements (such as SplitFlag, BTSplitFlag, etc.) shared by the A frame and the B frame can maintain the same initial value of the entropy encoding state.
  • the existing syntax elements can maintain the original initial value of the entropy coding state, and the initial value of the newly added syntax element can be the initial value of the entropy coding state. It is the same as P frame or B frame, or may be different from P frame and B frame.
  • the essential frame types of the two frames are the same and the same.
  • the initial value of the entropy coding state is more reasonable and consistent with the definition of the initial value of the entropy coding state.
  • the data block adopting the intra block copy mode may not encode the information of the inter prediction mode using the non-current frame as the reference frame, thereby reducing the bit rate overhead and improving the encoding performance.
  • the information of the inter prediction mode using the non-current frame as the reference frame may not be encoded, wherein the information of the inter prediction mode may include the current data block Information of the motion information merging mode, affine mode (Affine Mode), intra-frame multi-hypothesis prediction mode (Multi hypothesis mode) and/or triangle prediction mode (Triangle prediction mode) of the encoded motion vector residual (MVD).
  • the inter prediction mode information will no longer be obtained from the encoded stream, but will be directly deduced as the inter prediction mode is disabled Information.
  • the number of candidates in the merge list constructed in the merge mode for the data block adopting the intra block copy mode is smaller than the number of candidates in the merge list constructed in the merge mode for the data block not adopting the intra block copy mode.
  • the candidates in the merge list may include, but are not limited to, one or more of spatial domain candidates, temporal domain candidates, merge candidates, and zero motion vectors.
  • the reconstructed area information may include, but is not limited to: the gradient value of the surrounding area of the current data block, and the mode information of the adjacent data block of the current data block.
  • the preset threshold A if the gradient value of the surrounding area of the current data block is greater than the preset threshold A, it is directly determined that the current data block adopts the intra-block copy mode; if the gradient value of the surrounding area of the current data block is less than the preset threshold B, It is directly determined that the current data block does not use the intra-block copy mode, where the surrounding area of the current data block may include the left M columns and N rows above the current data block in the video frame where the current data block is located, where M and N are both positive Integer, the preset threshold A is greater than the preset threshold B.
  • a preset ratio threshold such as 50%
  • the adjacent data block of the current data block is an air-domain adjacent block, which may include the air-space adjacent block at the bottom left of the current data block (that is, the left block in the figure), and the top-most right side of the current data block.
  • the adjacent block in the air domain that is, the upper block in the figure
  • the adjacent block in the upper right corner of the current data block that is, the upper right block in the figure
  • the adjacent block in the lower left corner of the current data block that is, the figure
  • the lower left block of the current data block) and the nearest adjacent block in the upper left corner of the current data block that is, the upper left block in the figure).
  • the video encoder and the video decoder use the same strategy to decide whether the current data block adopts the intra block copy mode. If the above strategy cannot be used to determine whether the current data block adopts the intra block copy mode. At this time, other strategies can be used to further determine whether the current data block adopts the intra-block copy mode.
  • the current data block adopts the intra-block copy mode according to the rate-distortion cost, ie Determine the mode with the lowest rate-distortion cost from intra-block copy mode, DC mode, Planar mode, angle mode, and cross-component prediction mode as the intra-prediction mode used by the current data block.
  • the mode with the lowest rate-distortion cost is the intra-block In the copy mode, it is determined that the current data block adopts the intra-block copy mode, and the second indication information is carried in the encoded stream of the current data block.
  • the second indication information is carried in the encoded stream of the current data block.
  • the video encoding device may include a processor 601, a communication interface 602, a memory 603, and a system bus 604.
  • the processor 601, the communication interface 602, and the memory 603 can communicate with each other through the system bus 604.
  • the memory 603 stores computer programs.
  • the processor 601 may implement the video encoding method according to the above method embodiments by executing the computer program stored on the memory 603.
  • the memory 603 may be an electronic, magnetic, optical, or other physical storage device, and may contain or store information, such as executable instructions, data, and so on.
  • the memory 603 may include volatile memory (such as RAM (Random Access Memory, random access memory)), non-volatile memory (such as flash memory, storage drives (such as hard disk drives), solid-state hard drives, and optical memory (such as CD -ROM (Compact Disc Read-Only Memory, CD-ROM), DVD (Digital Versatile Disc, Digital Versatile Disc, etc.)) or a combination thereof.
  • volatile memory such as RAM (Random Access Memory, random access memory)
  • non-volatile memory such as flash memory
  • storage drives such as hard disk drives
  • solid-state hard drives such as CD -ROM (Compact Disc Read-Only Memory, CD-ROM), DVD (Digital Versatile Disc, Digital Versatile Disc, etc.)
  • CD-ROM Compact Disc Read-Only Memory
  • DVD Digital Versatile Disc, Digital
  • the embodiments of the present application may also provide a machine-readable storage medium storing a computer program, such as the memory 603 in FIG. 6.
  • a computer program such as the memory 603 in FIG. 6.
  • the processor may enable the processor to implement the video encoding method according to the above method embodiment.
  • the video decoding device may include a processor 701, a communication interface 702, a memory 703, and a system bus 704.
  • the processor 701, the communication interface 702, and the memory 703 can communicate with each other through the system bus 704.
  • the memory 703 may be an electronic, magnetic, optical, or other physical storage device on which a computer program is stored.
  • the processor 701 may implement the video decoding method according to the foregoing method embodiment by executing the computer program stored on the memory 703.
  • the embodiments of the present application may also provide a machine-readable storage medium storing a computer program, such as the memory 703 in FIG. 7.
  • a computer program such as the memory 703 in FIG. 7.
  • the processor may enable the processor to implement the video decoding method according to the above method embodiment.

Abstract

本申请提供一种视频编码方法和装置以及视频解码方法和装置。该视频编码方法包括:视频编码器在确定当前数据块采用帧内块复制模式时,在所述当前数据块对应的编码流中携带第一指示信息和第二指示信息,其中,所述第一指示信息用于指示所述当前数据块的预测模式为帧内预测,所述第二指示信息用于指示所述当前数据块采用帧内块复制模式;所述视频编码器发送携带有所述第一指示信息和第二指示信息的编码流。该视频编码方法可以提高视频解码器识别数据块采用帧内块复制模式的效率,并保证使用帧内块复制模式进行预测编码的数据块在编解码时语法与语义的一致性。

Description

视频编码及视频解码 技术领域
本申请涉及视频编解码技术,尤其涉及帧内块复制技术。
背景技术
预测编码是视频压缩中常见的编码方式,预测编码的常见预测模式可以包括帧内预测模式(intra prediction mode,可以记为MODE_INTRA)和帧间预测模式(inter prediction mode,可以记为MODE_INTER)。帧内预测是指仅利用当前帧的数据元素(如样本值)来完成预测。帧间预测是指利用除当前帧外的其他已编码帧的数据元素(如样本值或运动矢量)来完成预测。根据相关的视频压缩标准,视频的帧类型可以包括I帧(帧内编码帧)、P帧(前向预测编码帧)和B帧(双向预测编码帧)。
已提出帧内块复制技术。帧内块复制技术又称为帧内块匹配,其采用当前帧已编码的重建区域作为预测编码的参考区域。采用帧内块复制技术的编码单元的预测模式为帧间预测。帧内块复制技术可以用于I帧、P帧和B帧中的每一种。对于I帧,若允许使用帧内块复制技术,则其帧类型会被修改成P帧。
发明内容
根据本申请实施例的第一方面,提供一种视频编码方法,该方法由视频编码器执行,并且包括:当确定当前数据块采用帧内块复制模式时,在所述当前数据块对应的编码流中携带第一指示信息和第二指示信息,其中,所述第一指示信息用于指示所述当前数据块的预测模式为帧内预测,所述第二指示信息用于指示所述当前数据块采用帧内块复制模式;发送携带有所述第一指示信息和所述第二指示信息的编码流。
根据本申请实施例的第二方面,提供一种视频解码方法,该方法由视频解码器执行,并且包括:获取当前数据块对应的编码流;当确定所述编码流中携带有第一指示信息和第二指示信息时,确定所述当前数据块采用帧内块复制模式,其中,所述第一指示信息用于指示所述当前数据块的预测模式为帧内预测,所述第二指示信息用于指示所述当前数据块采用帧内块复制模式。
根据本申请实施例的第三方面,提供一种视频编码装置,包括:存储器,用于存放计算机程序;以及处理器,用于执行所述存储器上所存放的计算机程序,以实现上述视频编码方法。
根据本申请实施例的第四方面,提供一种视频解码装置,包括:存储器,用于存放计算机程序;以及处理器,用于执行所述存储器上所存放的计算机程序,以实现上述视频解码方法。
根据本申请实施例的第五方面,提供一种存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时,使该处理器实现上述视频编码方法。
根据本申请实施例的第六方面,提供一种存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时,使该处理器实现上述视频解码方法。
根据本申请的实施例,可以提高视频解码器识别数据块采用帧内块复制模式的效率,并保证使用帧内块复制模式进行预测编码的数据块在编解码时语法与语义的一致性。
附图说明
图1为根据本申请一示例性实施例的一种视频编码方法的流程图;
图2为根据本申请一示例性实施例的一种视频解码方法的流程图;
图3A为根据本申请一示例性实施例的预测模式分类的示意图;
图3B为根据本申请一示例性实施例的获取边界强度所参考的块的示意图;
图4为根据本申请一示例性实施例的亮度与色度的位置对应关系示意图;
图5为根据本申请一示例性实施例的当前数据块的相邻数据块的示意图;
图6为根据本申请一示例性实施例的一种视频编码装置的结构示意图;
图7为根据本申请一示例性实施例的一种视频解码装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同参考数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是 与如所附权利要求书中所述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括复数形式,除非上下文清楚地表示其他含义。
为了使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图详细描述本申请的各种实施例。
图1为根据本申请的实施例的一种视频编码方法的流程图。该方法可以由视频编码器执行,并且可以包括步骤S100~S110。
在步骤S100,当确定当前数据块采用帧内块复制模式时,在当前数据块对应的编码流中携带第一指示信息和第二指示信息,其中,第一指示信息用于指示当前数据块的预测模式为帧内预测,第二指示信息用于指示当前数据块采用帧内块复制模式。
在步骤S110,发送携带有该第一指示信息和第二指示信息的编码流。例如,可以将该编码流发送给视频解码器或用于存储编码流的设备等。
根据本实施例,对于采用帧内块复制模式进行预测编码的数据块,通过在数据块对应的编码流中携带用于指示该数据块采用帧内预测的第一指示信息以及用于指示该数据块采用帧内块复制模式的第二指示信息,可以提高视频解码器识别数据块采用帧内块复制模式的效率,并保证使用帧内块复制模式进行预测编码的数据块在编解码时语法与语义的一致性。
根据本申请的一个实施例,上述第一指示信息可以包括第一标识,该第一标识可以用于标识当前数据块所在的视频帧的类型为I帧。上述确定当前数据块采用帧内块复制模式可以包括:当确定率失真代价最小的帧内预测模式为帧内块复制模式时,确定当前数据块采用帧内块复制模式。
在本申请实施例中,预测模式分类可以如图3A所示。帧内预测可以包括但不限于Planar(平面)模式、DC模式、角度模式、跨分量预测模式以及帧内块复制模式等。帧间预测可以包括但不限于Merge(合并)模式、AMVP(Advanced Motion Vector Prediction,高级运动矢量预测)模式、Skip(跳跃)模式、Affine(仿射)模式等。
即在本申请实施例中,帧内块复制模式不再作为帧间预测的一种模式,而是属于帧内预测的一种模式。
在本申请实施例中,对I帧中的数据块进行帧内预测时可以允许采用帧内块复制模式。若B帧或者P帧中存在使用帧内预测的数据块,也允许对这些数据块采用帧内块复制模式。
在该实施例中,考虑到I帧的编码块仅允许采用帧内预测,对于I帧中的数据块,上述第一指示信息可以包括用于标识当前数据块所在的视频帧为I帧的标识(本文中称为第一标识)。即,视频编码器可以使用用于标识当前数据块所在的视频帧为I帧的第一标识来指示当前数据块采用帧内预测,而不需要额外携带其他专门用于指示当前数据块采用帧内预测的信息,减少了当前数据块的码率开销,提升了编码性能。
在该实施例中,当视频编码器确定当前数据块采用帧内预测时,视频编码器可以确定各帧内预测模式的率失真代价,并选择率失真代价最小的帧内预测模式为当前数据块采用的帧内预测模式。
例如,视频编码器可以分别确定使用帧内块复制模式、DC模式、Planar模式、角度模式、跨分量预测模式等对当前数据块进行编码的率失真代价,并将率失真代价最小的模式确定为当前数据块采用的帧内预测模式。当视频编码器确定采用帧内块复制模式对当前数据块进行编码的率失真代价最小时,视频编码器可以确定当前数据块采用帧内块复制模式。
根据本申请的实施例,为了避免对帧间预测模式编码比特的影响,视频编码器可以采用单独的标记位显式地标识当前数据块是否采用帧内块复制模式。相应地,上述第二指示信息可以包括第二标识,若第二标识的取值为第一取值,则第二标识用于指示当前数据块采用帧内块复制模式。
在该实施例中,视频编码器可以在当前数据块的编码流中携带一个用于标识当前数据块是否采用帧内块复制模式的标记位(本文中称为第二标识)。当该第二标识的取值为第一取值(如1)时,该第二标识可以指示当前数据块采用帧内块复制模式。此外,当该第二标识的取值为第二取值(如0)时,该第二标识可以指示当前数据块未采用帧内块复制模式。
在一个示例中,I帧采用可分离树划分技术(Dual tree),其亮度和色度拥有独立的块划分结构,对于色度块和亮度块均可以通过一个显式的标记位来指示该块是否采用帧内块复制模式。相应地,在该示例中,当当前数据块为亮度块或色度块时,若第二标识的取值为第一取值,则第二标识可以指示该亮度块或色度块采用帧内块复制模式。
此外,在本申请实施例中,考虑到色度块的可用模式中包括对应亮度分量模式(DM,Direct Mode),当对应亮度分量模式开启时,可以根据色度块对应的亮度块采用的预测模式确定色度块采用的预测模式(具体实现示例将在后面详细描述)。因此,可以使用对应亮度分量模式信息(例如,DM标记位)来隐式指示色度块是否采用帧内块复制模式,从而避免额外对色度块编码标记位,节省编码比特。
相应地,在一个示例中,当当前数据块为色度块时,第二指示信息包括第三标识,第三标识指示色度块的对应亮度分量模式信息。
此外,在本申请实施例中,考虑到P帧和B帧可以使用帧间预测进行预测编码,在P帧和B帧上禁用帧内块复制模式带来的编码性能损失较小,却可以降低P帧和B帧的编码复杂度。因此,可以禁止P帧和B帧使用帧内块复制模式,而仅允许I帧使用帧内块复制模式。
此外,考虑到现有预测编码方案中,当对I帧使用帧内块复制模式进行预测编码时,I帧的帧类型会被修改为P帧,因此,对于帧类型标识为P帧的视频帧,其实际帧类型可能为I帧(此时的I帧可以称为伪P帧),但由于I帧不允许使用当前帧之外的参考帧作为预测参考,因此,帧类型标识为P帧且使用除当前帧之外的参考帧作为预测参考的视频帧可以被确定为P帧。
此外,在本申请实施例中,可以使允许采用帧内块复制模式的视频帧和禁用帧内块复制模式的视频帧的共有语法元素保持相同的熵编码状态初始值,以增强熵编码状态初始值设置的合理性,并与熵编码状态初始值的定义相符。
相应地,根据本申请的一个实施例,对于允许采用帧内块复制模式的第一视频帧和禁用帧内块复制模式的第二视频帧,该第一视频帧和第二视频帧的共有语法元素保持相同的熵编码状态初始值。
在一个示例中,上述第一视频帧为允许采用帧内块复制模式的I帧,第二视频帧为禁用帧内块复制模式的I帧。
此外,帧内块复制模式属于帧内预测模式,因而当视频编码器采用帧内块复制模式对当前数据块进行预测编码时,在当前数据块的编码流中携带采用非当前帧作为参考帧的帧间预测模式的信息对于解码性能不会存在明显提升。因此,对于采用帧内块复制模式的数据块,可以不在编码流中携带采用非当前帧作为参考帧的帧间预测模式的信息,以减少码率开销,提升编码性能。
相应地,根据本申请的一个实施例,当确定当前数据块采用帧内块复制模式之后,可以对采用非当前帧作为参考帧的帧间预测模式的信息不进行编码。
在一个示例中,上述帧间预测模式可以包括下列中至少一种:编码MVD(运动矢量残差)的运动信息合并模式、仿射模式(Affine Mode)、帧内帧间多假设预测模式(Multi hypothesis mode)以及三角预测模式(Triangle mode)。
此外,在本申请实施例中,考虑到在帧内块复制模式下无时域候选者,且空域相关性也比在帧间预测模式下的空域相关性弱,因此,对于采用帧内块复制模式的数据块,可以减少在合并模式下构建的合并列表中的候选者个数,从而可以减少候选者索引值的编码比特。
在一个示例中,合并列表中候选者可以包括当前数据块的空域候选者、时域候选者、合并候选者以及零运动矢量等候选者中的一种或多种。
相应地,根据本申请的一个实施例,对于采用帧内块复制模式的第一数据块和不采用帧内块复制模式的第二数据块,第一数据块在合并模式下构建的合并列表中的候选者的个数小于第二数据块在合并模式下构建的合并列表中的候选者个数。
此外,在本申请实施例中,考虑到使用帧内块复制模式对数据块进行预测编码的编码性能还会受数据块所在视频帧的已重建区域信息的影响,因此,在视频编码器和视频解码器预先协商好判断策略或在视频编码器和视频解码器配置有相同的判断策略的情况下,可以根据数据块所在视频帧的已重建区域信息确定数据块是否采用帧内块复制模式,从而,在不需要在数据块的编码流中携带特定指示信息的情况下,能够有效地确定数据块是否采用帧内块复制模式。
相应地,根据本申请的一个实施例,确定当前数据块是否采用帧内块复制模式可以包括:根据当前数据块所在的视频帧的已重建区域信息确定当前数据块是否采用帧内块复制模式。
可选地,上述已重建区域信息可以包括下列中至少一种:当前数据块的周边区域的梯度值或者当前数据块的相邻数据块的模式信息。
例如,当前数据块的周边区域可以包括当前数据块所在视频帧中当前数据块的左边M列和上方N行,其中,M、N均为正整数。
在一个示例中,当已重建区域信息包括当前数据块的周边区域的梯度值时,上述根据当前数据块所在的视频帧的已重建区域信息确定当前数据块是否采用帧内块复制模 式可以包括:若当前数据块的周边区域的梯度值大于第一预设阈值,则确定当前数据块采用帧内块复制模式;若当前数据块的周边区域的梯度值小于第二预设阈值,则确定当前数据块不采用帧内块复制模式,其中,第一预设阈值大于第二预设阈值。
在该示例中,视频编码器对当前数据块进行编码时,可以计算当前数据块的周边区域的梯度值,并比较当前数据块的周边区域的梯度值与预设阈值。若当前数据块的周边区域的梯度值大于第一预设阈值(可以根据实际需要设定),则视频编码器可以确定当前数据块采用帧内块复制模式。若当前数据块的周边区域的梯度值小于第二预设阈值(可以根据实际需要设定,且第二预设阈值小于第一预设阈值),则视频编码器可以确定当前数据块不采用帧内块复制模式。
在另一个示例中,当已重建区域信息包括当前数据块的相邻数据块的模式信息时,上述根据当前数据块所在的视频帧的已重建区域信息确定当前数据块是否采用帧内块复制模式可以包括:若当前数据块的相邻数据块中采用帧间预测模式的数据块的比例超过第三预设阈值,则确定当前数据块不采用帧内块复制模式。
在该示例中,视频编码器对当前数据块进行编码时,可以根据当前数据块的各个相邻数据块的模式信息统计当前数据块的相邻数据块中采用帧间预测模式的数据块的比例(即当前数据块的相邻数据块中采用帧间预测模式的数据块的数量与当前数据块的相邻数据块的数量的比值),并比较该比例与预设阈值(本文中称为第三预设阈值,可以根据实际需要设定,如50%)。若该比例超过第三预设阈值,则视频编码器可以确定当前数据块不采用帧内块复制模式。
需要说明的是,在该示例中,当上述比例未超过第三预设阈值时,视频编码器可以采用其他策略确定当前数据块是否采用帧内块复制模式,如按照上文中描述的根据率失真代价确定当前数据块是否采用帧内块复制模式。
可选地,在该示例中,当前数据块的相邻数据块为空域相邻块,包括当前数据块左侧最下方的空域相邻块、当前数据块上侧最右侧的空域相邻块、当前数据块右上角距离最近的空域相邻块、当前数据块左下角距离最近的空域相邻块以及当前数据块左上角距离最近的空域相邻块。
上面描述了根据本申请的各种实施例的视频编码方法,下面将描述与其对应的视频解码方法。
图2为根据本申请的实施例的一种视频解码方法的流程图。该方法可以由视频解码 器执行,并且可以包括步骤S200~S210。
在步骤S200,获取当前数据块对应的编码流。例如,视频解码器可以通过接收从视频编码器发送的编码流的方式获取编码流,或者,也可以从用于存储编码流的设备中获取编码流。
在步骤S210,当确定当前数据块对应的编码流中携带有第一指示信息和第二指示信息时,确定当前数据块采用帧内块复制模式,其中,第一指示信息用于指示当前数据块的预测模式为帧内预测,第二指示信息用于指示当前数据块采用帧内块复制模式。
本申请实施例中,视频解码器对当前数据块进行解码时,可以确定当前数据块对应的编码流中是否携带有第一指示信息和第二指示信息,并当当前数据块对应的编码流中携带有第一指示信息和第二指示信息时,视频解码器可以确定当前数据块采用帧内块复制模式。
根据本实施例,可以基于数据块对应的编码流中携带的第一指示信息以及第二指示信息而确定当前数据块采用帧内块复制模式,从而可以提高视频解码器识别数据块采用帧内块复制模式的效率,并保证使用帧内块复制模式进行预测编码的数据块在编解码时语法与语义的一致性。
根据本申请的一个实施例,上述第一指示信息可以包括第一标识,该第一标识可以用于标识当前数据块所在的视频帧的类型为I帧。
在该实施例中,考虑到I帧的编码块仅允许采用帧内预测,当视频解码器确定当前数据块的编码流中携带有用于标识当前数据块所在的视频帧的类型为I帧的标识(本文中称为第一标识)时,视频解码器可以高效准确地确定当前数据块采用帧内预测。
根据本申请的实施例,上述第二指示信息可以包括第二标识,若第二标识的取值为第一取值,则第二标识用于指示当前数据块采用帧内块复制模式。
相应地,当视频解码器对当前数据块进行解码时,可以根据当前数据块的编码流中携带的第二标识的取值确定当前数据块是否采用帧内块复制模式。若当前数据块的编码流中携带的第二标识的取值为第一取值(如1),则视频解码器可以确定当前数据块采用帧内块复制模式。
在一个示例中,当当前数据块为亮度块或色度块时,若当前数据块的编码流中携带有第二标识,且第二标识的取值为第一取值,则视频解码器可以确定该亮度块或色度块采用帧内块复制模式。
在一个示例中,当当前数据块为色度块时,第二指示信息包括第三标识,第三标识指示所述色度块的对应亮度分量模式信息。
在该示例中,当当前数据块为色度块,且当前数据块开启对应亮度分量模式时,视频解码器可以通过获取当前数据块的编码流中的第三标识,识别出该数据块开启对应亮度分量模式,并且可以根据色度块对应的亮度块采用的预测模式确定色度块采用的预测模式(具体实现示例将在后面详细描述)。
根据本申请的一个实施例,与编码端相应地,当视频解码器确定当前数据块所在的视频帧类型为P帧或B帧时,视频解码器可以确定当前数据块未采用帧内块复制模式。
根据本申请的一个实施例,与编码端相应地,视频解码器对当前数据块进行解码时,可以计算当前数据块的周边区域的梯度值,并比较当前数据块的周边区域的梯度值与预设阈值。若当前数据块的周边区域的梯度值大于第一预设阈值,则视频解码器可以确定当前数据块采用帧内块复制模式。若当前数据块的周边区域的梯度值小于第二预设阈值(第二预设阈值小于第一预设阈值),则视频解码器可以确定当前数据块未采用帧内块复制模式。
根据本申请的一个实施例,与编码端相应地,视频解码器对当前数据块进行解码时,可以根据当前数据块的相邻数据块的模式信息统计当前数据块的相邻数据块中采用帧间预测模式的数据块的比例,并比较该比例与第三预设阈值。若该比例超过第三预设阈值,则视频解码器可以确定当前数据块未采用帧内块复制模式。当该比例未超过第三预设阈值时,视频解码器可以根据当前数据块的编码流中是否携带上述第一指示信息以及第二指示信息,确定当前数据块是否采用帧内块复制模式。
为了使本领域技术人员更好地理解本申请,下面详细描述本申请的一些实施例。
实施例一
在编码端,若确定当前数据块采用帧内块复制模式,则其预测模式为帧内预测,可以在当前数据块的编码流中携带用于指示当前数据块的预测模式为帧内预测的第一指示信息(在该实施例中以pred_mode_flag为例),以及用于指示当前数据块采用帧内块复制模式的第二标识(在该实施例中以cpr_flag为例)。
pred_mode_flag以及cpr_flag的取值与预测模式的对应关系可以由视频编码器和视频解码器协商确定。例如,当pred_mode_flag取值为1时,表明当前数据块的预测模式为帧内预测;当cpr_flag的取值为1时,表明当前数据块采用帧内块复制模式。
在解码端,可以获取当前数据块的编码流中的pred_mode_flag以及cpr_flag。例如,若识别出pred_mode_flag以及cpr_flag取值均为1,则可以确定当前数据块的预测模式为帧内预测,且采用帧内块复制模式。
此外,在该实施例中,若pred_mode_flag取值0,则表明当前数据块的预测模式为帧间预测;若pred_mode_flag不存在,则可以推断当前数据块的预测模式为帧内预测。
在该实施例中,当视频解码器为了对当前数据块进行去块效应滤波而计算边界强度时,若确定当前数据块的预测模式为帧内预测且采用帧内块复制模式,则不直接将边界强度置为某预设值(例如,常数2),而是像帧间预测模式那样根据关于其参考帧、块矢量等的因素来确定边界强度。
例如,参见图3B,若边界两侧的数据块(如图中的P块和Q块)的预测模式均为非帧内块复制模式的帧内预测,则可以将边界强度置为预设值。而若P块或Q块采用帧内块复制模式,则将根据P块或Q块是否包含非零变换系数、P块与Q块是否使用相同的参考帧、P块与Q块的运动矢量(mv)或块矢量(bv)个数是否相同等相关因素,确定边界强度值。
实施例二
在编码端,若当前数据块所在的视频帧为I帧,且允许采用帧内块复制模式,则该视频帧的类型不被修改成P帧而仍然为I帧。可以在当前数据块的编码流中携带用于标识当前数据块所在的视频帧的类型为I帧的第一标识,以及用于标识该数据块采用帧内块复制模式的第二标识(在该实施例中以cpr_flag为例),其中,当cpr_flag的取值为1时,表明当前数据块采用帧内块复制模式。
在解码端,可以获取当前数据块的编码流中的第一标识以及cpr_flag。当获取到第一标识时,确定当前数据块所在的视频帧类型为I帧,由于I帧仅允许采用帧内预测,因此,可以确定当前数据块的预测模式为帧内预测。当获取到cpr_flag,且cpr_flag取值为1,则可以确定当前数据块采用帧内块复制模式。
在该实施例中,对于采用帧内块复制模式的I帧数据块,其视频帧类型仍标识为I帧,并使用I帧标识作为用于指示数据块采用帧内预测的指示信息,从而保证了语法和语义一致,同时减少了码率开销。
实施例三
当I帧采用可分离树划分技术(Dual tree)后,其亮度和色度拥有独立的块划分结构。 每个亮度块或色度块(一个色度块包含一个Cb块和一个Cr块)都可被视为一个数据块。在编码端,每个亮度块或色度块的编码流均可以携带一个标记位(对应于上述第二标识,以cpr_flag为例)来标识该块是否采用帧内块复制模式,其中,当cpr_flag的取值为1时,表明亮度块或色度块采用帧内块复制模式。该标记位可以采用等概模式编码,也可以采用熵编码模式编码。
在解码端,当解析出当前亮度块或色度块对应的编码流中携带cpr_flag,且cpr_flag取值为1时,可以确定该亮度块或色度块采用帧内块复制模式。
在该实施例中,通过显式的标记位标识亮度块或色度块是否采用帧内块复制模式,避免了对帧间预测模式编码比特的影响,并提高了视频解码器确定亮度块或色度块是否采用帧内块复制模式的效率。
实施例四
当I帧采用可分离树划分技术(Dual tree)后,其亮度和色度拥有独立的块划分结构。对于亮度块,可以通过一个显式的标记位(对应于上述第二标识,以cpr_flag为例)来标识该亮度块是否采用帧内块复制模式。对于色度块,可以通过对应亮度分量模式信息(例如,DM标记位)来隐式指示该色度块是否采用帧内块复制模式。
在编码端,若当前色度块采用帧内块复制模式,则可以通过标识其采用对应亮度分量模式来指示。例如,可以在当前色度块的编码流中携带DM标记位,并将DM标记位的值置为真(可以与视频解码器预先协商,如1为真,0为假)。
在解码端,若解析到当前色度块采用对应亮度分量模式(如当前色度块对应的编码流中携带DM标记位,且DM标记位的值为真),且该色度块中的特定点坐标(例如,中心点坐标)对应的亮度坐标位置所属的一个亮度块采用帧内块复制模式,则可以确定该色度块采用帧内块复制模式。
实施例五
当I帧采用可分离树划分技术(Dual tree)后,其亮度和色度拥有独立的块划分结构。对于亮度块,可以通过一个显式的标记位(对应于上述第二标识,以cpr_flag为例)来标识该亮度块是否采用帧内块复制模式。对于色度块,可以通过对应亮度分量模式信息(例如,DM标记位)来隐式指示该色度块是否采用帧内块复制模式。
在编码端,若当前色度块采用帧内块复制模式,则可以通过标识其采用对应亮度分量模式来指示。例如,可以在当前色度块的编码流中携带DM标记位,并将DM标记位 的值置为真。
在解码端,若解析到当前色度块采用对应亮度分量模式(如当前色度块对应的编码流中携带DM标记位,且DM标记位的值为真),则可以根据以下规则确定当前色度块采用的帧内预测模式:
1、若当前色度块内所有坐标对应的亮度坐标位置所属的多个亮度块均采用帧内块复制模式,则确定当前色度块采用帧内块复制模式;
2、若当前色度块的中心点坐标对应的亮度坐标位置所属的一个亮度块采用Planar模式、DC模式、角度模式或跨分量预测模式(即,采用除帧内块复制模式之外的帧内预测模式),则确定当前色度块与该亮度块采用相同的帧内预测模式;
3、若当前色度块的中心点坐标对应的亮度坐标位置所属的一个亮度块采用帧内块复制模式,且当前色度块内所有坐标对应的亮度坐标位置所属的多个亮度块中存在不采用帧内块复制模式的亮度块,则确定当前色度块采用预设的帧内预测模式,如Planar模式、DC模式、角度模式或跨分量预测模式。
例如,参见图4所示的亮度与色度的位置对应关系,与当前色度块的中心点坐标对应的亮度坐标位置所属的亮度块为A块,与当前色度块内所有坐标对应的亮度坐标位置所属的亮度块包括A块、B块、C块、D块及E块。
实施例六
考虑到P帧和B帧可以使用帧间预测进行预测编码,在P帧和B帧上禁用帧内块复制模式带来的编码性能损失较小,却可以降低P帧和B帧的编码复杂度。因此,可以禁止P帧和B帧使用帧内块复制模式,而仅允许I帧使用帧内块复制模式。
在编码端,若确定当前数据块所在的视频帧类型为P帧或B帧,且使用除当前帧之外的参考帧作为预测参考,则可以确定当前数据块不采用帧内块复制模式。
在解码端,若确定当前数据块所在的视频帧类型为P帧或B帧,且使用除当前帧之外的参考帧作为预测参考,则可以确定当前数据块未采用帧内块复制模式。
实施例七
第一视频帧:禁止使用帧内块复制模式;
第二视频帧:允许使用帧内块复制模式。
在编码端和解码端,第一视频帧和第二视频帧的共有语法元素可以保持相同的 熵编码状态初始值。
举例来说,假设A帧符合以下条件:1、帧类型为P帧;2、当前帧支持可分离树划分技术(Dual tree);3、当前帧允许使用帧内块复制模式。B帧符合以下条件:1、帧类型为I帧;2、当前帧支持可分离树划分技术(Dual tree);3、当前帧禁止使用帧内块复制模式。
在编码端和解码端,A帧和B帧共有的语法元素(如SplitFlag,BTSplitFlag等)可以保持相同的熵编码状态初始值。
在该实施例中,对I帧允许使用帧内块复制模式后,原先就存在的语法元素可以保持原有的熵编码状态初始值不变,而新增加的语法元素的熵编码状态初始值可以与P帧或B帧的相同,或者,可以与P帧和B帧的均不同。
在该实施例中,对允许采用帧内块复制模式的视频帧和禁止使用帧内块复制模式的视频帧,若未增加新的参考信息来源,则两帧的本质帧类型一致,采用相同的熵编码状态初始值更加合理,且与熵编码状态初始值的定义相符。
实施例八
若数据块采用帧内块复制模式,则可以禁用采用非当前帧作为参考帧的帧间预测模式的信息。即,采用帧内块复制模式的数据块可以对采用非当前帧作为参考帧的帧间预测模式的信息不进行编码,从而减少码率开销,提高编码性能。
在编码端,当确定当前数据块采用帧内块复制模式,则可以对采用非当前帧作为参考帧的帧间预测模式的信息不进行编码,其中,帧间预测模式的信息可以包括当前数据块的编码运动矢量残差(MVD)的运动信息合并模式、仿射模式(Affine Mode)、帧内帧间多假设预测模式(Multi hypothesis mode)和/或三角预测模式(Triangle mode)的信息。在解码端,当从编码流中解析或推导得出当前数据块采用帧内块复制模式编码,将不再从编码流中获取帧间预测模式的信息,而是直接推导为禁用帧间预测模式的信息。
实施例九
对于采用帧内块复制模式的数据块在合并模式下构建的合并列表中候选者数量小于不采用帧内块复制模式的数据块在合并模式下构建的合并列表中候选者数量。在帧内块复制模式下无时域候选者,且空域相关性也比在帧间预测模式下的空域相关性弱。因此,对于采用帧内块复制模式的数据块,可以减少在合并模式下构建的合并列表中的候选者个数,从而可以减少候选者索引值的编码比特。
举例来说,按照编解码端以相同构建逻辑构建帧内块复制模式的合并列表时,可以仅取前X个有效候选者,其中,X<Y,Y为不采用帧内块复制模式的合并列表中的候选者的数量。
合并列表中的候选者可以包括但不限于空域候选者、时域候选者、合并候选者以及零运动矢量中的一种或多种。
实施例十
可以通过对当前数据块所在的视频帧的已重建区域信息进行预分析,直接确定当前数据块是否允许采用帧内块复制模式,而无需在编码流中携带指示当前数据块是否采用帧内块复制模式的标记,从而节省编码比特。已重建区域信息可以包括但不限于:当前数据块的周边区域的梯度值、当前数据块的相邻数据块的模式信息。
在一个示例中,若当前数据块的周边区域的梯度值大于预设阈值A,则直接确定当前数据块采用帧内块复制模式;若当前数据块的周边区域的梯度值小于预设阈值B,则直接确定当前数据块不采用帧内块复制模式,其中,当前数据块的周边区域可以包括当前数据块所在视频帧中当前数据块的左边M列和上方N行,其中M、N均为正整数,预设阈值A大于预设阈值B。
在另一个示例中,若当前数据块的相邻数据块中采用帧间预测模式的数据块的比例超过预设比例阈值(如50%),则直接确定当前数据块不采用帧内块复制模式。
参见图5,当前数据块的相邻数据块为空域相邻块,可以包括当前数据块左侧最下方的空域相邻块(即图中的左块)、当前数据块上侧最右侧的空域相邻块(即图中的上块)、当前数据块右上角距离最近的空域相邻块(即图中的右上块)、当前数据块左下角距离最近的空域相邻块(即图中的左下块)以及当前数据块左上角距离最近的空域相邻块(即图中的左上块)。
需要说明的是,在该实施例中,视频编码器和视频解码器采用相同的策略决策当前数据块是否采用帧内块复制模式,若按照上述策略无法确定当前数据块是否采用帧内块复制模式时,可以采用其他策略进一步确定当前数据块是否采用帧内块复制模式。
举例来说,假设当前数据块的周边区域的梯度值大于预设阈值B,但小于预设阈值A,则在编码端,可以根据率失真代价确定当前数据块是否采用帧内块复制模式,即从帧内块复制模式、DC模式、Planar模式、角度模式和跨分量预测模式中确定率失真代价最小的模式作为当前数据块采用的帧内预测模式,当率失真代价最小的模式为帧 内块复制模式时,确定当前数据块采用帧内块复制模式,并在当前数据块的编码流中携带第二指示信息。在解码端,若解析出当前数据块的编码流中携带有第二指示信息,则确定当前数据块采用帧内块复制模式。
以上对根据本申请的实施例的方法进行了描述。下面对根据本申请的实施例的装置进行描述。
图6为根据本申请的实施例的一种视频编码装置的结构示意图。该视频编码装置可以包括处理器601、通信接口602、存储器603和系统总线604。处理器601、通信接口602以及存储器603可以通过系统总线604相互通信。存储器603上存放有计算机程序。处理器601可以通过执行存储器603上所存放的计算机程序,实现根据上述方法实施例的视频编码方法。
存储器603可以是电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据等等。例如,存储器603可以包括易失性存储器(例如RAM(Random Access Memory,随机存取存储器))、非易失性存储器(例如闪存、存储驱动器(如硬盘驱动器)、固态硬盘、光存储器(如CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器)、DVD(Digital Versatile Disc,数字多功能光盘)等))或者它们的组合。
本申请实施例还可以提供一种存储有计算机程序的机器可读存储介质,例如图6中的存储器603。所述计算机程序在由处理器执行时,可以使该处理器实现根据上述方法实施例的视频编码方法。
图7为根据本申请的实施例的一种视频解码装置的结构示意图。该视频解码装置可以包括处理器701、通信接口702、存储器703和系统总线704。处理器701、通信接口702以及存储器703可以通过系统总线704相互通信。类似于上述的存储器603,存储器703可以是电子、磁性、光学或其它物理存储装置,其上存放有计算机程序。处理器701可以通过执行存储器703上所存放的计算机程序,实现根据上述方法实施例的视频解码方法。
本申请实施例还可以提供一种存储有计算机程序的机器可读存储介质,例如图7中的存储器703。所述计算机程序在由处理器执行时,可以使该处理器实现根据上述方法实施例的视频解码方法。
需要说明的是,在本文中,诸如第一和第二等之类的术语仅仅用来将一个实体 或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅可以包括那些要素,而且还可以包括没有明确列出的其他要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的一些实施例,并不用以限制本申请。凡在本申请的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (14)

  1. 一种视频解码方法,所述方法由视频解码器执行,并且包括:
    获取当前数据块对应的编码流;
    当确定所述当前数据块对应的编码流中携带第二指示信息时,确定所述当前数据块采用帧内块复制模式,所述第二指示信息用于指示所述当前数据块采用帧内块复制模式。
  2. 根据权利要求1所述的方法,还包括:
    当确定所述当前数据块对应的编码流中携带第一指示信息时,确定所述当前数据块的预测模式为帧内预测,所述第一指示信息用于指示所述当前数据块的预测模式为帧内预测。
  3. 根据权利要求2所述的方法,其中,若所述当前数据块所在的视频帧为I帧,则所述第一指示信息包括第一标识,所述第一标识用于标识所述当前数据块所在的视频帧的类型为I帧。
  4. 根据权利要求1至3中任一项所述的方法,其中,所述第二指示信息包括第二标识,具有第一取值的所述第二标识用于标识所述当前数据块采用帧内块复制模式。
  5. 根据权利要求1至3中任一项所述的方法,所述方法还包括:
    在确定所述当前数据块采用帧内块复制模式之后,确定对采用非当前帧作为参考帧的帧间预测模式的信息不进行解码,其中,所述帧间预测模式的信息包括所述当前数据块的编码运动矢量残差MVD的运动信息合并模式、仿射模式、帧内帧间多假设预测模式和/或三角预测模式的信息。
  6. 根据权利要求1至3中任一项所述的方法,其中,
    对于采用帧内块复制模式的第一数据块和未采用帧内块复制模式的第二数据块,所述第一数据块在合并模式下构建的合并列表中的候选者的个数小于所述第二数据块在合并模式下构建的合并列表中的候选者的个数。
  7. 一种视频编码方法,所述方法由视频编码器执行,并且包括:
    当确定当前数据块采用帧内块复制模式时,在所述当前数据块对应的编码流中携带 第二指示信息,其中,所述第二指示信息用于指示所述当前数据块采用帧内块复制模式;
    发送携带有所述第二指示信息的编码流。
  8. 根据权利要求7所述的方法,其中,所述确定当前数据块采用帧内块复制模式包括:
    当所述当前数据块所在的视频帧的类型为I帧且确定率失真代价最小的帧内预测模式为帧内块复制模式时,确定所述当前数据块采用帧内块复制模式。
  9. 根据权利要求7至8中任一项所述的方法,其中,所述第二指示信息包括第二标识,具有第一取值的所述第二标识用于标识所述当前数据块采用帧内块复制模式。
  10. 根据权利要求7至8中任一项所述的方法,所述方法还包括:
    使允许采用帧内块复制模式的第一视频帧和禁用帧内块复制模式的第二视频帧的共有语法元素保持相同的熵编码状态初始值。
  11. 根据权利要求7至8中任一项所述的方法,其中,
    在确定所述当前数据块采用帧内块复制模式之后,对采用非当前帧作为参考帧的帧间预测模式的信息不进行编码,其中,所述帧间预测模式的信息包括所述当前数据块的编码运动矢量残差MVD的运动信息合并模式、仿射模式、帧内帧间多假设预测模式和/或三角预测模式的信息。
  12. 根据权利要求7至8中任一项所述的方法,其中,
    对于采用帧内块复制模式的第一数据块和不采用帧内块复制模式的第二数据块,所述第一数据块在合并模式下构建的合并列表中的候选者的个数小于所述第二数据块在合并模式下构建的合并列表中的候选者的个数。
  13. 一种视频解码装置,包括:
    存储器,用于存放计算机程序;以及
    处理器,用于执行所述存储器上所存放的计算机程序,以实现根据权利要求1-6中任一项所述的视频解码方法。
  14. 一种视频编码装置,包括:
    存储器,用于存放计算机程序;以及
    处理器,用于执行所述存储器上所存放的计算机程序,以实现根据权利要求7-12中任一项所述的视频编码方法。
PCT/CN2019/122373 2018-12-28 2019-12-02 视频编码及视频解码 WO2020134884A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201811628690.XA CN111385570B (zh) 2018-12-28 2018-12-28 编码方法、解码方法及装置
CN201811628690.X 2018-12-28

Publications (1)

Publication Number Publication Date
WO2020134884A1 true WO2020134884A1 (zh) 2020-07-02

Family

ID=66377120

Family Applications (4)

Application Number Title Priority Date Filing Date
PCT/CN2019/122372 WO2020134883A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码
PCT/CN2019/122368 WO2020134882A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码
PCT/CN2019/122373 WO2020134884A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码
PCT/CN2019/122362 WO2020134880A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码

Family Applications Before (2)

Application Number Title Priority Date Filing Date
PCT/CN2019/122372 WO2020134883A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码
PCT/CN2019/122368 WO2020134882A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/122362 WO2020134880A1 (zh) 2018-12-28 2019-12-02 视频编码及视频解码

Country Status (4)

Country Link
US (1) US11570447B2 (zh)
EP (1) EP3905695A4 (zh)
CN (4) CN111385570B (zh)
WO (4) WO2020134883A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111385570B (zh) * 2018-12-28 2021-11-02 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置
US10958904B2 (en) * 2019-02-01 2021-03-23 Tencent America LLC Method and apparatus for video coding
CN113826390B (zh) * 2019-05-16 2024-03-08 字节跳动有限公司 屏幕内容编解码的帧内块复制
WO2020244568A1 (en) * 2019-06-04 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list with geometric partition mode coding
CN113365076B (zh) * 2019-06-21 2022-03-08 杭州海康威视数字技术股份有限公司 预测模式的解码、编码方法及装置
CN113347426A (zh) * 2019-06-21 2021-09-03 杭州海康威视数字技术股份有限公司 一种编解码方法、装置、设备及存储介质
WO2021023261A1 (en) 2019-08-06 2021-02-11 Beijing Bytedance Network Technology Co., Ltd. Size restriction based on color format
KR20220049000A (ko) 2019-08-23 2022-04-20 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 참조 픽처 리샘플링에서의 클리핑
BR112022003732A2 (pt) 2019-09-02 2022-10-11 Beijing Bytedance Network Tech Co Ltd Método e aparelho para processamento de dados de vídeo, e, meios de armazenamento e de gravação legíveis por computador não transitórios
CN110719467B (zh) * 2019-09-18 2022-04-19 浙江大华技术股份有限公司 色度块的预测方法、编码器及存储介质
CN114424565A (zh) 2019-09-21 2022-04-29 北京字节跳动网络技术有限公司 基于色度帧内模式的尺寸限制
WO2021078177A1 (en) 2019-10-23 2021-04-29 Beijing Bytedance Network Technology Co., Ltd. Signaling for reference picture resampling
CN114600461A (zh) * 2019-10-23 2022-06-07 北京字节跳动网络技术有限公司 用于多编解码工具的计算
WO2021180163A1 (en) 2020-03-11 2021-09-16 Beijing Bytedance Network Technology Co., Ltd. Adaptation parameter set signaling based on color format
CN115699753A (zh) * 2020-05-31 2023-02-03 抖音视界有限公司 具有本地双树模式类型定义的调色板模式
CN112087634B (zh) * 2020-08-11 2022-03-08 北京博雅慧视智能技术研究院有限公司 一种最佳角度判定方法和系统
CN111953973B (zh) * 2020-08-31 2022-10-28 中国科学技术大学 支持机器智能的通用视频压缩编码方法
US11736708B2 (en) 2020-12-16 2023-08-22 Tencent America LLC Method and apparatus for video coding
US20230079960A1 (en) * 2021-09-15 2023-03-16 Tencent America LLC On propagating intra prediction mode information of ibc block by using block vector

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150139296A1 (en) * 2013-11-18 2015-05-21 Arris Enterprises, Inc. Intra block copy for intra slices in high efficiency video coding (hevc)
WO2015196029A1 (en) * 2014-06-19 2015-12-23 Qualcomm Incorporated Systems and methods for intra-block copy
CN105392008A (zh) * 2014-08-22 2016-03-09 中兴通讯股份有限公司 一种预测编、解码方法和相应的编、解码器和电子设备
CN107852490A (zh) * 2015-07-27 2018-03-27 联发科技股份有限公司 使用帧内块复制模式的视频编解码方法及系统
CN109743576A (zh) * 2018-12-28 2019-05-10 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG188255A1 (en) * 2010-09-30 2013-04-30 Panasonic Corp Image decoding method, image coding method, image decoding apparatus, image coding apparatus, program, and integrated circuit
CA2833893C (en) 2011-05-24 2024-02-27 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9654772B2 (en) * 2012-01-19 2017-05-16 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
US10021419B2 (en) * 2013-07-12 2018-07-10 Qualcomm Incorported Rice parameter initialization for coefficient level coding in video coding process
US9503715B2 (en) * 2013-08-30 2016-11-22 Qualcomm Incorporated Constrained intra prediction in video coding
AU2013228045A1 (en) 2013-09-13 2015-04-02 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding video data
US20150271515A1 (en) * 2014-01-10 2015-09-24 Qualcomm Incorporated Block vector coding for intra block copy in video coding
EP3078192B1 (en) * 2014-02-21 2019-12-04 MediaTek Singapore Pte Ltd. Method of video coding using prediction based on intra picture block copy
US10432928B2 (en) * 2014-03-21 2019-10-01 Qualcomm Incorporated Using a current picture as a reference for video coding
US20170195677A1 (en) * 2014-05-22 2017-07-06 Mediatek Inc. Method of Intra Block Copy with Flipping for Image and Video Coding
JP6482191B2 (ja) * 2014-06-12 2019-03-13 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
KR102311815B1 (ko) 2014-06-19 2021-10-13 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 통합된 인트라 블록 카피 및 인터 예측 모드
CN105208396B (zh) * 2014-06-20 2019-01-15 联想(北京)有限公司 一种视频帧的编码及解码方法和装置
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
US10027981B2 (en) * 2014-09-01 2018-07-17 Hfi Innovation Inc. Method of intra picture block copy for screen content and video coding
WO2016188447A1 (en) 2015-05-28 2016-12-01 Hfi Innovation Inc. Method and apparatus for using a current picture as a reference picture
US10638140B2 (en) * 2015-05-29 2020-04-28 Qualcomm Incorporated Slice level intra block copy and other video coding improvements
US10148961B2 (en) * 2015-05-29 2018-12-04 Qualcomm Incorporated Arithmetic coder with multiple window sizes
WO2016200984A1 (en) 2015-06-08 2016-12-15 Vid Scale, Inc. Intra block copy mode for screen content coding
GB2539212A (en) * 2015-06-08 2016-12-14 Canon Kk Handling of non-correct block vectors generated for intra block copy coding mode
CN108449599B (zh) * 2018-03-23 2021-05-18 安徽大学 一种基于面透射变换的视频编码与解码方法
JP2021536717A (ja) * 2018-09-07 2021-12-27 ビー1、インスティテュート、オブ、イメージ、テクノロジー、インコーポレイテッドB1 Institute Of Image Technology, Inc. イントラ予測を用いた画像符号化/復号化方法及び装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150139296A1 (en) * 2013-11-18 2015-05-21 Arris Enterprises, Inc. Intra block copy for intra slices in high efficiency video coding (hevc)
WO2015196029A1 (en) * 2014-06-19 2015-12-23 Qualcomm Incorporated Systems and methods for intra-block copy
CN105392008A (zh) * 2014-08-22 2016-03-09 中兴通讯股份有限公司 一种预测编、解码方法和相应的编、解码器和电子设备
CN107852490A (zh) * 2015-07-27 2018-03-27 联发科技股份有限公司 使用帧内块复制模式的视频编解码方法及系统
CN109743576A (zh) * 2018-12-28 2019-05-10 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置
CN109819264A (zh) * 2018-12-28 2019-05-28 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置
CN109874011A (zh) * 2018-12-28 2019-06-11 杭州海康威视数字技术股份有限公司 编码方法、解码方法及装置

Also Published As

Publication number Publication date
EP3905695A1 (en) 2021-11-03
CN109874011A (zh) 2019-06-11
EP3905695A4 (en) 2022-02-23
WO2020134880A1 (zh) 2020-07-02
CN111385570B (zh) 2021-11-02
WO2020134882A1 (zh) 2020-07-02
CN109874011B (zh) 2020-06-09
CN111385570A (zh) 2020-07-07
US20220070473A1 (en) 2022-03-03
CN109819264B (zh) 2020-05-12
CN109819264A (zh) 2019-05-28
WO2020134883A1 (zh) 2020-07-02
US11570447B2 (en) 2023-01-31
CN109743576B (zh) 2020-05-12
CN109743576A (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
WO2020134884A1 (zh) 视频编码及视频解码
US20220060736A1 (en) Method and an apparatus for processing a video signal
KR101946916B1 (ko) 적응적인 영상 부호화 방법 및 장치

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

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

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 19902583

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 04/02/2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19902583

Country of ref document: EP

Kind code of ref document: A1