WO2024041369A1 - Procédé et appareil de codage entropique pour des sous-images - Google Patents

Procédé et appareil de codage entropique pour des sous-images Download PDF

Info

Publication number
WO2024041369A1
WO2024041369A1 PCT/CN2023/111643 CN2023111643W WO2024041369A1 WO 2024041369 A1 WO2024041369 A1 WO 2024041369A1 CN 2023111643 W CN2023111643 W CN 2023111643W WO 2024041369 A1 WO2024041369 A1 WO 2024041369A1
Authority
WO
WIPO (PCT)
Prior art keywords
current
subpicture
context
context states
previous
Prior art date
Application number
PCT/CN2023/111643
Other languages
English (en)
Inventor
Shih-Ta Hsiang
Original Assignee
Mediatek Inc.
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 Mediatek Inc. filed Critical Mediatek Inc.
Publication of WO2024041369A1 publication Critical patent/WO2024041369A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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

Definitions

  • the present invention is a non-Provisional Application of and claims priority to U.S. Provisional Patent Application No. 63/373,471, filed on August 25, 2022.
  • the U.S. Provisional Patent Application is hereby incorporated by reference in its entirety.
  • the present invention relates to video coding system.
  • the present invention relates to context initialization for entropy coding subpictures in a video coding system to improve the coding performance.
  • VVC Versatile video coding
  • JVET Joint Video Experts Team
  • MPEG ISO/IEC Moving Picture Experts Group
  • ISO/IEC 23090-3 2021
  • Information technology -Coded representation of immersive media -Part 3 Versatile video coding, published Feb. 2021.
  • VVC is developed based on its predecessor HEVC (High Efficiency Video Coding) by adding more coding tools to improve coding efficiency and also to handle various types of video sources including 3-dimensional (3D) video signals.
  • HEVC High Efficiency Video Coding
  • Fig. 1A illustrates an exemplary adaptive Inter/Intra video coding system incorporating loop processing.
  • Intra Prediction the prediction data is derived based on previously coded video data in the current picture.
  • Motion Estimation (ME) is performed at the encoder side and Motion Compensation (MC) is performed based of the result of ME to provide prediction data derived from other picture (s) and motion data.
  • Switch 114 selects Intra Prediction 110 or Inter-Prediction 112 and the selected prediction data is supplied to Adder 116 to form prediction errors, also called residues.
  • the prediction error is then processed by Transform (T) 118 followed by Quantization (Q) 120.
  • T Transform
  • Q Quantization
  • the transformed and quantized residues are then coded by Entropy Encoder 122 to be included in a video bitstream corresponding to the compressed video data.
  • the bitstream associated with the transform coefficients is then packed with side information such as motion and coding modes associated with Intra prediction and Inter prediction, and other information such as parameters associated with loop filters applied to underlying image area.
  • the side information associated with Intra Prediction 110, Inter prediction 112 and in-loop filter 130, are provided to Entropy Encoder 122 as shown in Fig. 1A. When an Inter-prediction mode is used, a reference picture or pictures have to be reconstructed at the encoder end as well.
  • the transformed and quantized residues are processed by Inverse Quantization (IQ) 124 and Inverse Transformation (IT) 126 to recover the residues.
  • the residues are then added back to prediction data 136 at Reconstruction (REC) 128 to reconstruct video data.
  • the reconstructed video data may be stored in Reference Picture Buffer 134 and used for prediction of other frames.
  • incoming video data undergoes a series of processing in the encoding system.
  • the reconstructed video data from REC 128 may be subject to various impairments due to a series of processing.
  • in-loop filter 130 is often applied to the reconstructed video data before the reconstructed video data are stored in the Reference Picture Buffer 134 in order to improve video quality.
  • deblocking filter (DF) may be used.
  • SAO Sample Adaptive Offset
  • ALF Adaptive Loop Filter
  • the loop filter information may need to be incorporated in the bitstream so that a decoder can properly recover the required information. Therefore, loop filter information is also provided to Entropy Encoder 122 for incorporation into the bitstream.
  • DF deblocking filter
  • SAO Sample Adaptive Offset
  • ALF Adaptive Loop Filter
  • Loop filter 130 is applied to the reconstructed video before the reconstructed samples are stored in the reference picture buffer 134.
  • the system in Fig. 1A is intended to illustrate an exemplary structure of a typical video encoder. It may correspond to the High Efficiency Video Coding (HEVC) system, VP8, VP9, H. 264 or VVC.
  • HEVC High Efficiency Video Coding
  • the decoder can use similar or portion of the same functional blocks as the encoder except for Transform 118 and Quantization 120 since the decoder only needs Inverse Quantization 124 and Inverse Transform 126.
  • the decoder uses an entropy decoder 140 to decode the video bitstream into quantized transform coefficients and needed coding information (e.g., ILPF information, Intra prediction information and Inter prediction information) .
  • the Intra prediction 150 at the decoder side does not need to perform the mode search. Instead, the decoder only need to generate Intra prediction according to Intra prediction information received from the Entropy Decoder 140.
  • the decoder only needs to perform motion compensation (MC 152) according to Intra prediction information received from the Entropy Decoder 140 without the need for motion estimation.
  • a coded video sequence can be represented by a collection of coded layered video sequences.
  • a coded layered video sequence can be further divided into more than one temporal sublayer.
  • Each coded video data unit belongs to one particular layer identified by the layer index (ID) and one particular sublayer ID identified by the temporal ID. Both layer ID and sublayer ID are signalled in a network abstraction layer (NAL) header.
  • NAL network abstraction layer
  • a coded video sequence can be recovered at reduced quality or frame rate by skipping video data units belonging to one or more highest layers or sublayers.
  • the video parameter set (VPS) , the sequence parameter set (SPS) and the picture parameter set (PPS) contain high-level syntax elements that apply to a coded video sequence, a coded layered video sequence and a coded picture, respectively.
  • the picture header (PH) and slice header (SH) contain high-level syntax elements that apply to a current coded picture and a current coded slice, respectively.
  • a coded picture is partitioned into non-overlapped square block regions represented by the associated coding tree units (CTUs) .
  • a coded picture can be represented by a collection of slices, each comprising an integer number of CTUs. The individual CTUs in a slice are processed in raster-scan order.
  • a bi-predictive (B) slice may be decoded using intra prediction or inter prediction with at most two motion vectors and reference indices to predict the sample values of each block.
  • a predictive (P) slice is decoded using intra prediction or inter prediction with at most one motion vector and reference index to predict the sample values of each block.
  • An intra (I) slice is decoded using intra prediction only.
  • a CTU can be partitioned into one or multiple non-overlapped coding units (CUs) using the quadtree (QT) with nested multi-type-tree (MTT) structure to adapt to various local motion and texture characteristics.
  • a CU can be further split into smaller CUs using one of the five split types (quad-tree partitioning 210, vertical binary tree partitioning 220, horizontal binary tree partitioning 230, vertical centre-side triple-tree partitioning 240, horizontal centre-side triple-tree partitioning 250) illustrated in Fig. 2.
  • Fig. 3 provides an example of a CTU recursively partitioned by QT with the nested MTT.
  • Each CU contains one or more prediction units (PUs) .
  • the prediction unit together with the associated CU syntax, works as a basic unit for signalling the predictor information.
  • the specified prediction process is employed to predict the values of the associated pixel samples inside the PU.
  • Each CU may contain one or more transform units (TUs) for representing the prediction residual blocks.
  • a transform unit (TU) comprises of a transform block (TB) of luma samples and two corresponding transform blocks of chroma samples and each TB correspond to one residual block of samples from one colour component.
  • An integer transform is applied to a transform block.
  • the level values of quantized coefficients together with other side information are entropy coded in the bitstream.
  • coding tree block CB
  • CB coding block
  • PB prediction block
  • TB transform block
  • the context-based adaptive binary arithmetic coding (CABAC) mode is employed for entropy coding the values of the syntax elements in HEVC and VVC.
  • Fig. 4 illustrates an exemplary block diagram of the CABAC process. Since the arithmetic coder in the CABAC engine can only encode the binary symbol values, the CABAC process needs to convert the values of the syntax elements into a binary string using a binarizer (410) . The conversion process is commonly referred to as binarization. During the coding process, the probability models are gradually built up from the coded symbols for the different contexts.
  • the context modeller (420) serves the modelling purpose.
  • the regular coding engine (430) is used, which corresponds to a binary arithmetic coder.
  • the selection of the modelling context for coding the next binary symbol can be determined by the coded information.
  • Symbols can also be encoded without the context modelling stage and assume an equal probability distribution, commonly referred to as the bypass mode, for reduced complexity.
  • a bypass coding engine (440) may be used.
  • switches (S1, S2 and S3) are used to direct the data flow between the regular CABAC mode and the bypass mode. When the regular CABAC mode is selected, the switches are flipped to the upper contacts. When the bypass mode is selected, the switches are flipped to the lower contacts as shown in Fig. 4.
  • the CABAC operation first needs to convert the value of a syntax element into a binary string, the process commonly referred to as binarization.
  • binarization the accurate probability models are gradually built up from the coded symbols for the different contexts.
  • a set of storage units is allocated to trace the on-going context state, including accumulated probability state, for individual modelling contexts.
  • the context states are initialized using the pre-defined modelling parameters for each context according to the specified slice QP.
  • the selection of a particular modelling context for coding a binary symbol can be determined by a pre-defined rule or derived from the coded information. Symbols can be coded without the context modelling stage and assume an equal probability distribution, commonly referred to as the bypass mode, for improving bitstream parsing throughput rate.
  • a tile is a sequence of CTUs that covers a rectangular region of a picture.
  • the CTUs in a tile are scanned in a raster scan order within the tile.
  • a picture is divided into one or more tile rows and one or more tile columns.
  • a slice consists of an integer number of complete tiles or an integer number of consecutive complete CTU rows within a tile of a picture.
  • Two modes of slices are supported, namely the raster-scan slice mode and the rectangular slice mode, indicated by the syntax element rect_slice_flag.
  • a slice contains a sequence of complete tiles in a tile raster scan of a picture.
  • a slice contains either a number of complete tiles that collectively form a rectangular region of the picture or a number of consecutive complete CTU rows of one tile that collectively form a rectangular region of the picture.
  • Tiles within a rectangular slice are scanned in a tile raster scan order within the rectangular region corresponding to the slice.
  • a subpicture contains one or more slices that collectively cover a rectangular region of a picture. Subpictures are identified by assigned subpicture indices in a coded video sequence.
  • Fig. 5 provides an example of partitioning a picture into 18 tiles, 24 slices/24 subpictures. As shown in Fig.
  • the picture 510 is partitioned into 18 tiles (514) , 12 on the left-hand side each covering one slice of 4 by 4 CTUs and 6 tiles on the right-hand side each covering 2 vertically-stacked slices of 2 by 2 CTUs, altogether resulting in 24 slices (516) /24 subpictures (516) of varying dimensions (each slice is also a subpicture) .
  • Each small rectangle 512 corresponds to one CTU.
  • JVET Joint Video Expert Team
  • ITU-T SG16 WP3 and ISO/IEC JTC1/SC29 are currently in the process of exploring the next-generation video coding standard.
  • Some promising new coding tools have been adopted into Enhanced Compression Model 5 (ECM 5) (M. Coban, et al., “Algorithm description of Enhanced Compression Model 5 (ECM 5) , ” Joint Video Expert Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29, 26th Meeting, by teleconference, 20–29 April 2022, Document JVET-Z2025) to further improve VVC.
  • the adopted new tools have been implemented in the reference software ECM-5.0 (available online: https: //vcgit. hhi. fraunhofer. de/ecm/ECM) .
  • the present invention is intended to overcome issues related to context state initialization for entropy coding subpictures.
  • a method and apparatus of context initialization for entropy coding are disclosed.
  • input data are received, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states for an arithmetic entropy coder are determined, wherein one or more context state buffers are used to store the previous context states for initializing the arithmetic entropy coder.
  • the arithmetic entropy coder is initialized by using pre-defined context states.
  • the method further comprises, when the subpicture coding tool is used for the current picture, a conforming bitstream is generated at the encoder side or received at the decoder side, wherein syntax information always indicates initialization of context states using the previous context states stored in said one or more context state buffers is disabled.
  • input data are received, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states for an arithmetic entropy coder are determined, wherein one or more context state buffers are used to store the previous context states for initializing the arithmetic entropy coder.
  • the arithmetic entropy coder is initialized by using the previous context states stored in said one or more context state buffers, wherein only the previous context states generated after entropy coding one or more previous inter slices corresponding to a same subpicture index of a coded previous subpicture as a current subpicture index of the current subpicture are allowed for said initializing the arithmetic entropy coder.
  • the input data is encoded or decoded using the arithmetic entropy coder.
  • the arithmetic entropy coder when a set of context states associated with the current subpicture index for the current subpicture is not available in the previous context states, the arithmetic entropy coder is not initialized using the previous context states for entropy coding one or more inter slices in the current subpicture.
  • input data are received, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states generated by entropy coding a subpicture are determined for an arithmetic entropy coder, wherein the previous context states are stored in multiple context state buffers and different context state buffers are used to store the previous context states for different subpicture ID.
  • a set of target context states is determined, from the previous context states, for the current slice in the current subpicture indicated by a current subpicture ID according to current coding parameters comprising the current subpicture ID.
  • a current set of context states for the arithmetic entropy coder is initialized using the set of target context states.
  • the input data is encoded or decoded using the arithmetic entropy coder after said initializing the current set of context states for the arithmetic entropy coder.
  • the current set of context states, generated from said encoding or decoding the input data are stored in the multiple context state buffers after entropy coding the current subpicture in the current picture.
  • the previous context states generated from entropy coding one subpicture having a same slice type, a same QP, a same temporal ID, and a same subpicture ID as corresponding values of respective slice type, QP, temporal ID, and subpicture ID associated with the current slice are stored in one context state buffer.
  • each of the multiple context state buffers only stores one or more sets of context states generated from entropy coding one or more subpictures corresponding to the same subpicture ID in a coded video sequence.
  • the set of target context states is derived from two or more sets of context states stored in the multiple context state buffers.
  • one or more syntaxes are signalled or parsed to indicate said two or more sets of context states used to derive the set of target context states.
  • the multiple context state buffers correspond to a four-dimensional array of context state buffers with a slice type, a temporal ID, a layer ID and a subpicture ID as four dimensions.
  • different values of maximum context state buffer sizes are set for the different context state buffers.
  • the maximum context state buffer sizes are pre-defined.
  • the maximum context state buffer sizes are explicitly signalled or parsed in a high-level syntax of a bitstream.
  • a total context state buffer size is limited by one or more constraints defined for a particular profile, tier, or level associated with a current coded video sequence.
  • Fig. 1A illustrates an exemplary adaptive Inter/Intra video coding system incorporating loop processing.
  • Fig. 1B illustrates a corresponding decoder for the encoder in Fig. 1A.
  • Fig. 2 illustrates that a CU can be split into smaller CUs using one of the five split types (quad-tree partitioning, vertical binary tree partitioning, horizontal binary tree partitioning, vertical centre-side triple-tree partitioning, and horizontal centre-side triple-tree partitioning) .
  • Fig. 3 illustrates an example of a CTU being recursively partitioned by QT with the nested MTT.
  • Fig. 4 illustrates an exemplary block diagram of the CABAC process.
  • Fig. 5 provides an example of partitioning a picture into 18 tiles, 24 slices and 24 subpictures.
  • Fig. 6 illustrates a flowchart of an exemplary video coding system that comprises entropy coding for subpictures according to an embodiment of the present invention.
  • Fig. 7 illustrates a flowchart of an exemplary video coding system that comprises entropy coding for subpictures according to an embodiment of the present invention.
  • Fig. 8 illustrates a flowchart of an exemplary video coding system that uses multiple sets of context states for initialization of entropy coding subpictures according to an embodiment of the present invention.
  • the set of the context states after entropy coding the last CTU in a coded inter picture can be used to initialize the set of the context states for entropy coding a future inter slice having the same slice type, quantization parameter (QP) , and temporal ID (TID) as the coded picture.
  • QP quantization parameter
  • TID temporal ID
  • a new set of the context states after entropy coding a current inter picture is stored in an assigned entry of a context state buffer in a video coder.
  • the new set of the context states When a stored set of context states that is generated by entropy coding a previous inter slice having the same slice type, QP, and TID as the current picture can be found in the context state buffer, the new set of the context states just replaces the stored set of context states corresponding to the same slice type, QP, and TID in the context state buffer. Otherwise, the new set of the context states is assigned to be stored in an empty entry in the context state buffer.
  • the context state buffer is already full, the stored context set associated with the entry having the smallest QP and temporal ID is removed first from the context state buffer before storing the new set of context states.
  • an array of context state buffers ctxStateBuffers [NumInterSliceTypes] is created for storage of the sets of context states corresponding to different slice types, wherein NumInterSliceTypes indicates the number of different slice types and is equal to 2 (referring to B and P slice types in ECM 5) .
  • Each context state buffer stores the sets of context states that are resulted from entropy coding inter slices in previous pictures using one particular slice type.
  • the allowed maximum buffer size is fixed to be equal to 5 (sets of context states) for each of the two context state buffers.
  • the context state for each context in a stored set may include entries for tracing long-term probability, short-term probability, and weighting factors for deriving the predicted probability.
  • the ECM 5 video coder Before starting entropy coding a current inter slice, the ECM 5 video coder will first search the context state buffer for a stored set of context states having the same slice type, QP, and TID as the current slice.
  • the slice type, QP, and TID are referred as coding parameters in this disclosure. Accordingly, a set of context states is stored for each coding parameter combination (i.e., slice type, QP, and TID) . If such a stored set can be found, the video coder will copy each context state in the stored set to the corresponding context state in the current slice. Otherwise, the set of the context states in the current slice are not initialized by any stored set of context states in the context state buffer.
  • the context states in the current slice are just initialized by the pre-defined default method in VVC.
  • a coded picture can be divided into a plurality of coded subpictures. Each coded subpicture can be extracted from a single bitstream and decoded independently from other coded subpictures.
  • the set of context states for entropy coding one or more inter slices in a particular subpicture of a current picture is initialized from a stored set of context states that is generated after entropy coding the last CTU in a coded previous picture.
  • entropy coding a particular subpicture in the current picture is dependent on the coded subpicture containing the last CTU in the coded previous picture. Individual subpictures can no longer be decoded independently.
  • a video coder may disable the initialization of context states for entropy coding a subpicture based on a stored set of context states resulted from entropy coding a different subpicture.
  • the individual subpictures can be identified by subpicture indices or other pre-defined methods.
  • a video coder may disable the initialization of context states from the stored set of context states entirely when the subpicture coding tool is used in a current coded video sequence.
  • the video coder can be forced to disable the initialization of context states from the stored set of context states in the encoding or decoding process when the subpicture coding tool is enabled, or more than one subpicture is present in the current video sequence.
  • the video coder may comprise a bitstream conformance requirement that the syntax information shall indicate the initialization of context states from the stored set of context states being disable when the subpicture coding tool is enabled, or more than one subpicture is present in the current coded video sequence.
  • a video coder may only allow the initialization of context states for entropy coding a current subpicture using the stored set of context states that is generated after entropy coding an inter slice corresponding to the same subpicture, identified by a subpicture index or other pre-defined methods, in a coded previous picture.
  • the context states are not initialized from a stored set of context states for entropy coding the current subpicture.
  • a video coder may store more than one set of context states corresponding to different subpictures after entropy coding a picture.
  • the video coder may initialize the context states for entropy coding a current inter slice in a current subpicture using one or more stored sets of context states generated by entropy coding previous slices corresponding to a same subpicture ID as a current subpicture ID of the current subpicture.
  • the video coder may initialize the context states for entropy coding a current inter slice in a subpicture using a stored set of context states, wherein the stored set of context states is generated by entropy coding a subpicture in a previous picture having the same slice type, QP, TID, and subpicture ID as the current slice.
  • the video coder may store one or more sets of context states after entropy coding each of subpictures in a picture. The video coder may maintain separate context state buffers for different subpictures. Each context state buffer only stores the sets of context states that are generated from the coded subpictures corresponding to the same subpicture ID in a coded video sequence.
  • a video coder may further comprise signalling one or more syntax elements to indicate the selected set of stored context states for initialization of the set of context states for entropy coding the current slice.
  • a video coder may create a two-dimensional array of context state buffers ctxStateBuffers [NumSubPictures] [NumInterSliceTypes] for storage of the sets of context states generated from different subpictures and slice types, wherein NumSubPictures indicates the number of subpictures in a coded video sequence.
  • Each context state buffer ctxStateBuffers [subpicId] [SliceType] only stores the sets of context states that are generated from coded inter slices having a subpicture ID equal to subpicIs and a slice type equal to SliceType.
  • a video coder may create a three-dimensional array of context state buffers ctxStateBuffers [NumSubLayers] [NumSubPictures] [NumInterSliceTypes] for storage of the sets of context states generated from different temporal sublayers, subpictures and slice types, wherein NumSubLayers indicates the number of temporal sublayers in a coded video sequence.
  • Each context state buffer ctxStateBuffers [TemporalId] [subpicId] [SliceType] only stores the sets of context states that are generated from coded inter slices having a TID equal to TemporalId, a subpicture ID equal to subpicId, and a slice type equal to SliceType.
  • a video coder may create a four-dimensional array of context state buffers ctxStateBuffers [NumLayers] [NumSubLayers] [NumSubPictures] [NumInterSliceTypes] for storage of the sets of context states generated from different subpictures, temporal sublayers, and slice types, wherein NumLayers indicates the number of layers in a coded video sequence.
  • Each context state buffer ctxStateBuffers [LayerId] [TemporalId] [subpicId] [SliceType] only stores the sets of context states that are generated from coded inter slices having a layer index equal to LayerId, a TID equal to TemporalId, a subpicture ID equal to subpicId, and a slice type equal to SliceType.
  • the video coder may set different values of maximum context state buffer sizes for different context state buffers, wherein the maximum context state buffer sizes can be either pre-defined or explicitly signalled in the bitstream, such as in the SPS or PPS.
  • the total context state buffer size may be limited by the constraint defined for a particular profile, tier, or level associated with a current coded video sequence.
  • the proposed methods can be jointly supported in a video coder.
  • the video coder may further comprise signalling one or more high-level syntax elements in the high-level syntax set such as the SPS, PPS, PH, and SH to indicate which method is selected for context initialization in a current video sequence.
  • any of the foregoing proposed entropy coding methods for subpictures can be implemented in encoders and/or decoders.
  • any of the proposed entropy coding methods can be implemented in the entropy coding module (e.g., Entropy Encoder 122 in Fig. 1A) of an encoder, and/or the entropy coding module (e.g., Entropy Decoder 140 in Fig. 1B) of a decoder.
  • any of the proposed methods can be implemented as a circuit integrated to the entropy coding module of an encoder, and/or the entropy coding module of a decoder.
  • the proposed aspects, methods and related embodiments can be implemented individually and jointly in a video coding system.
  • Fig. 6 illustrates a flowchart of an exemplary video coding system that comprises entropy coding for subpictures according to an embodiment of the present invention.
  • the steps shown in the flowchart may be implemented as program codes executable on one or more processors (e.g., one or more CPUs) at the encoder/decoder side.
  • the steps shown in the flowchart may also be implemented based hardware such as one or more electronic devices or processors arranged to perform the steps in the flowchart.
  • input data are received in step 610, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states for an arithmetic entropy coder are determined in step 620, wherein one or more context state buffers are used to store the previous context states for initializing the arithmetic entropy coder. Whether a subpicture coding tool is used for the current picture is checked in step 630.
  • step 640 is performed. If the subpicture coding tool is used for the current picture (i.e., the “Yes” path in step 630) , step 640 is performed. If the subpicture coding tool is not used for the current picture (i.e., the “No” path in step 630) , step 642 is performed.
  • step 640 the arithmetic entropy coder is initialized using pre-defined context states.
  • step 642 the arithmetic entropy coder is initialized using the previous context states stored in said one or more context state buffers.
  • step 650 the input data is encoded or decoded using the arithmetic entropy coder.
  • Fig. 7 illustrates a flowchart of an exemplary video coding system that comprises entropy coding for subpictures according to an embodiment of the present invention.
  • input data are received in step 710, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states for an arithmetic entropy coder are determined in step 720, wherein one or more context state buffers are used to store the previous context states for initializing the arithmetic entropy coder.
  • the arithmetic entropy coder is initialized by using the previous context states stored in said one or more context state buffers in step 730, wherein only the previous context states generated after entropy coding one or more previous inter slices corresponding to a same subpicture index of a coded previous subpicture as a current subpicture index of the current subpicture are allowed for said initializing the arithmetic entropy coder.
  • the input data is encoded or decoded using the arithmetic entropy coder in step 740.
  • Fig. 8 illustrates a flowchart of an exemplary video coding system that uses multiple sets of context states for initialization of entropy coding subpictures according to an embodiment of the present invention.
  • input data are received in step 810, wherein the input data comprise binary symbols for a set of syntax elements associated with a current slice in a current subpicture of a current picture at an encoder side, or entropy coded bitstream of the binary symbols for the set of syntax elements at a decoder side, and wherein the current slice is inter coded.
  • Previous context states generated by entropy coding a subpicture are determined for an arithmetic entropy coder in step 820, wherein the previous context states are stored in multiple context state buffers and different context state buffers are used to store the previous context states for different subpicture ID.
  • a set of target context states is determined in step 830, from the previous context states, for the current slice in the current subpicture indicated by a current subpicture ID according to current coding parameters comprising the current subpicture ID.
  • a current set of context states for the arithmetic entropy coder is initialized using the set of target context states in step 840.
  • the input data is encoded or decoded using the arithmetic entropy coder after said initializing the current set of context states for the arithmetic entropy coder in step 850.
  • the current set of context states, generated from said encoding or decoding the input data, is stored in the multiple context state buffers after entropy coding the current subpicture in the current picture in step 860.
  • Embodiment of the present invention as described above may be implemented in various hardware, software codes, or a combination of both.
  • an embodiment of the present invention can be one or more circuit circuits integrated into a video compression chip or program code integrated into video compression software to perform the processing described herein.
  • An embodiment of the present invention may also be program code to be executed on a Digital Signal Processor (DSP) to perform the processing described herein.
  • DSP Digital Signal Processor
  • the invention may also involve a number of functions to be performed by a computer processor, a digital signal processor, a microprocessor, or field programmable gate array (FPGA) .
  • These processors can be configured to perform particular tasks according to the invention, by executing machine-readable software code or firmware code that defines the particular methods embodied by the invention.
  • the software code or firmware code may be developed in different programming languages and different formats or styles.
  • the software code may also be compiled for different target platforms.
  • different code formats, styles and languages of software codes and other means of configuring code to perform the tasks in accordance with the invention will not depart from the spirit and scope of the invention.

Landscapes

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

Abstract

L'invention concerne un procédé et un appareil d'initialisation de contexte pour un codage entropique de sous-images. Selon ce procédé, de précédents états de contexte pour un codeur entropique arithmétique sont déterminés, un ou plusieurs tampons d'état de contexte étant utilisés pour stocker les précédents états de contexte pour initialiser le codeur entropique arithmétique. Lorsqu'un outil de codage de sous-image est utilisé pour l'image actuelle : l'initialisation du codeur entropique arithmétique à l'aide des précédents états de contexte stockés dans ledit ou lesdits tampons d'état de contexte est désactivée ; et les données d'entrée sont codées ou décodées à l'aide du codeur entropique arithmétique. Dans un autre mode de réalisation, un codeur vidéo peut uniquement permettre l'initialisation d'états de contexte pour un codage entropique d'une sous-image actuelle à l'aide de l'ensemble stocké d'états de contexte qui est généré après un codage entropique d'une tranche inter correspondant à la même sous-image dans une précédente image codée.
PCT/CN2023/111643 2022-08-25 2023-08-08 Procédé et appareil de codage entropique pour des sous-images WO2024041369A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263373471P 2022-08-25 2022-08-25
US63/373,471 2022-08-25

Publications (1)

Publication Number Publication Date
WO2024041369A1 true WO2024041369A1 (fr) 2024-02-29

Family

ID=90012504

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/111643 WO2024041369A1 (fr) 2022-08-25 2023-08-08 Procédé et appareil de codage entropique pour des sous-images

Country Status (1)

Country Link
WO (1) WO2024041369A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050012648A1 (en) * 2003-07-17 2005-01-20 Detlev Marpe Apparatus and methods for entropy-encoding or entropy-decoding using an initialization of context variables
US20130188700A1 (en) * 2012-01-19 2013-07-25 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
US20180338144A1 (en) * 2015-11-22 2018-11-22 Lg Electronics Inc. Method and apparatus for entropy-encoding and entropy-decoding video signal
US20190158837A1 (en) * 2017-11-20 2019-05-23 Qualcomm Incorporated Memory reduction for context initialization with temporal prediction
US20210274182A1 (en) * 2018-07-02 2021-09-02 Interdigital Vc Holdings, Inc. Context-based binary arithmetic encoding and decoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050012648A1 (en) * 2003-07-17 2005-01-20 Detlev Marpe Apparatus and methods for entropy-encoding or entropy-decoding using an initialization of context variables
US20130188700A1 (en) * 2012-01-19 2013-07-25 Qualcomm Incorporated Context adaptive entropy coding with a reduced initialization value set
US20180338144A1 (en) * 2015-11-22 2018-11-22 Lg Electronics Inc. Method and apparatus for entropy-encoding and entropy-decoding video signal
US20190158837A1 (en) * 2017-11-20 2019-05-23 Qualcomm Incorporated Memory reduction for context initialization with temporal prediction
US20210274182A1 (en) * 2018-07-02 2021-09-02 Interdigital Vc Holdings, Inc. Context-based binary arithmetic encoding and decoding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PARK WOONSUNG; KIM MUNCHURL: "Deep Predictive Video Compression Using Mode-Selective Uni- and Bi-Directional Predictions Based on Multi-Frame Hypothesis", IEEE ACCESS, IEEE, USA, vol. 9, 21 December 2020 (2020-12-21), USA , pages 72 - 85, XP011829522, DOI: 10.1109/ACCESS.2020.3046040 *

Similar Documents

Publication Publication Date Title
EP3662666B1 (fr) Procédés et appareils de traitement d'images dans un système de codage d'image ou de vidéo
CN109479139B (zh) 视频处理系统中参考量化参数推导的方法与装置
CN109547790B (zh) 用于在高效率视频编解码中处理分区模式的设备和方法
US20240179311A1 (en) Method and Apparatus of Luma-Chroma Separated Coding Tree Coding with Constraints
US11665345B2 (en) Method and apparatus of luma-chroma separated coding tree coding with constraints
US20190238843A1 (en) Devices and methods for video coding
CN114902670A (zh) 用信号通知子图像划分信息的方法和装置
CN115152235A (zh) 图像或视频处理系统中传送回路滤波器参数的方法及装置
US11477445B2 (en) Methods and apparatuses of video data coding with tile grouping
WO2024041369A1 (fr) Procédé et appareil de codage entropique pour des sous-images
US11711513B2 (en) Methods and apparatuses of coding pictures partitioned into subpictures in video coding systems
US11882270B2 (en) Method and apparatus for video coding with constraints on reference picture lists of a RADL picture
WO2024041249A1 (fr) Procédé et appareil de codage entropique à des fins de codage vidéo modulable
WO2024041306A1 (fr) Procédé et appareil d'initialisation de contexte pour codage par entropie dans des systèmes de codage vidéo
WO2023236708A1 (fr) Procédé et appareil de codage entropique de décisions de division de partition dans un système de codage vidéo
WO2023103521A1 (fr) Procédé et appareil de codage de signes de coefficients de transformée dans un système de codage vidéo
WO2024217211A1 (fr) Procédés et appareils servant à déterminer des paramètres de contrainte de partitionnement pour coder des données d'image et de vidéo
WO2023197832A1 (fr) Procédé et appareil d'utilisation d'arbres de division séparés pour des composantes de couleur dans un système de codage vidéo
WO2023197837A1 (fr) Procédés et appareil d'amélioration de dérivation et de prédiction de mode intra à l'aide d'un gradient et d'un modèle
US20230188753A1 (en) Method and Apparatus for Sign Coding of Transform Coefficients in Video Coding System
WO2021197433A1 (fr) Procédé et appareil de signalisation d'informations de partition de tranche pour le codage d'image et vidéo
WO2023202713A1 (fr) Procédé et appareil de dérivation de vecteur de mouvement en mode de fusion affine basée sur une régression dans de systèmes de codage vidéo
TWI853402B (zh) 視訊編解碼方法及相關裝置
WO2021185311A1 (fr) Procédé et appareil de signalisation d'informations de partition de tuile et de tranche dans un codage d'image et de vidéo
WO2023138628A1 (fr) Procédé et appareil de prédiction de modèle linéaire inter-composantes dans un système de codage vidéo

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

Country of ref document: EP

Kind code of ref document: A1