Coding and decoding methods and apparatuses

By using the reference image determination module in the encoder and decoder, the reconstructed CRR image is used as the reference image for inter prediction encoding and decoding, the problem of mismatch between the reference image and the displayed image across the random access point is solved, and the encoding and decoding success rate is improved.

WO2025044372A1PCT designated stage expired Publication Date: 2025-03-06HUAWEI TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/097243
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-09-01
Filing Date
2024-06-04
Publication Date
2025-03-06

AI Technical Summary

Technical Problem

In the prior art, the cross-random access point reference (CRR) image does not match the displayed image, resulting in a codec failure and reducing the success rate of the codec.

Method used

By implementing the reference image determination module in the encoder and the decoder, inter prediction encoding and decoding are performed using the reconstructed CRR image as the reference image to ensure that the reference image matches the display image.

Benefits of technology

The codec success rate of the codec is improved, ensuring the stability and efficiency of the codec process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024097243_06032025_PF_FP_ABST
    Figure CN2024097243_06032025_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application relate to the field of data compression, and provide coding and decoding methods and apparatuses. The coding method comprises: after performing a coding operation on a cross random access point reference (CRR) image and a plurality of display images corresponding to the CRR image to obtain a coded image bit stream, on the basis of the coding operation, acquiring a reconstructed CRR image; and when a display image currently being processed is a reference-activating first image for the currently obtained reconstructed CRR image, using the currently obtained reconstructed CRR image as a reference image, and performing inter-frame predictive coding on the display images, wherein the coded image bit stream comprises a plurality of interleaved CRR image bit stream segments, a plurality of display image bit streams and image information, the image information is used for indicating the reference-activating first image, and the reference-activating first image comprises the first image that makes reference to the reconstructed CRR image among the display images. In the present application, a reference image used for coding and decoding display images can be accurately determined, thereby improving the coding and decoding success rates of codecs.
Need to check novelty before this filing date? Find Prior Art

Description

Coding and decoding method and device

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on September 1, 2023, with application number 202311131845.X and invention name “Encoding and Decoding Method and Device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of data compression technology, and in particular to a coding and decoding method and device. Background Art

[0003] With the proliferation of digital video applications (such as broadcast digital television, video transmission over the Internet, real-time video conversation applications, video content storage, video content acquisition and editing systems, and other digital video-related applications), video encoding and decoding (video encoding and decoding) using codecs (encoders and decoders) have become widely used. Video encoding involves the encoder compressing the original video stream using a specific compression algorithm, making the compressed video stream more convenient for storage and transmission. Video decoding involves the decoder decoding the compressed video stream to obtain the original video stream.

[0004] In the related art, a coding and decoding scheme based on a cross random access point reference (CRR) image is provided. For example, the encoder performs coding operations on slices of multiple display images and CRR images corresponding to the multiple display images to obtain a coded image bit stream and a reconstructed CRR image. The coded image bit stream includes multiple CRR image bit stream segments and multiple display image bit streams in an interleaved order. The encoder can use the reconstructed CRR image corresponding to the current display image as a reference image for the current display image to perform inter-frame prediction coding on the current display image to eliminate time domain redundancy. Accordingly, the decoder decodes the coded image bit stream to obtain a reconstructed CRR image and multiple display image bit streams. The decoder can use the reconstructed CRR image corresponding to the current display image bit stream as a reference image to perform inter-frame prediction decoding on the current display image bit stream to eliminate time domain redundancy. The CRR image corresponds to multiple display images, and the multiple display images can include multiple cross random access points (RAPs). In this way, the reconstructed CRR image can be used for cross-RAP reference.

[0005] However, cross-RAP references mean that the display image and the reconstructed CRR image that it references are relatively far apart. As a result, the reconstructed CRR image that the codec determines as the reference image for the display image may not be the reference image that the display image should actually use, resulting in codec failure.

[0006] Summary of the Invention

[0007] The present application provides a coding and decoding method and device, which solves the problem of mismatch between reference images and display images in related technologies, and can accurately determine the reference image used for coding and decoding the display image, thereby improving the coding and decoding success rate of the codec.

[0008] In a first aspect, the present application provides a coding method, which includes: performing a coding operation on a reference CRR image across random access points and multiple display images corresponding to the CRR image to obtain a coded image bit stream, and then obtaining a reconstructed CRR image based on the coding operation; when the currently processed display image is a reference enabled first image of the currently obtained reconstructed CRR image, using the currently obtained reconstructed CRR image as a reference image to perform inter-frame prediction coding on the display image; wherein the coded image bit stream includes: multiple CRR image bit stream segments in an interleaved order, multiple display image bit streams, and image information; the image information is used to indicate the reference enabled first image, and the reference enabled first image includes the first image in the display image that refers to the reconstructed CRR image.

[0009] In an embodiment of the present application, when the encoder performs inter-frame prediction encoding, when encountering a reference enabled first image for reconstructing a CRR image, the encoder determines the reconstructed CRR image of the reference enabled first image as the reference image, thereby ensuring that there is a reference image that matches the display image when performing inter-frame prediction encoding on the display image, avoiding the encoding failure problem caused by the mismatch between the reference image and the display image, and improving the encoding success rate.

[0010] In one possible implementation, the reference image used for inter-frame prediction coding is stored in a designated buffer; when the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, the currently acquired reconstructed CRR image is used as the reference image, including: when the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

[0011] In an embodiment of the present application, the reference image used for inter-frame prediction coding is stored in a designated buffer, and then the reference image can be determined by updating the designated cache with the currently acquired reconstructed CRR image, without the need for additional marking and recording information, which is more efficient.

[0012] In a possible implementation, updating a designated buffer using the currently acquired reconstructed CRR image includes:

[0013] When a historical reconstructed CRR image is acquired from the designated buffer, the historical reconstructed CRR image in the designated buffer is replaced with the currently acquired reconstructed CRR image.

[0014] In the embodiment of the present application, if the encoder already has a previously reconstructed CRR image, the newly reconstructed CRR image replaces the previously reconstructed CRR image. In this way, the encoder can continue to directly use the reconstructed image with reference to the previous display image, and the timeliness of the update is improved, thereby achieving a balance between accuracy and coding efficiency.

[0015] In a possible implementation, updating a designated buffer using the currently acquired reconstructed CRR image includes:

[0016] If no historical reconstructed CRR image is obtained from the designated buffer, the currently obtained reconstructed CRR image is stored in the designated buffer.

[0017] In this embodiment of the present application, if the encoder does not use the reconstructed CRR image, the currently obtained reconstructed CRR image can be directly moved into the buffer. The reconstructed CRR image not used by the encoder means that there is no longer a display image to use, and the buffer is also empty, so it can be directly moved into, thereby expanding the applicable scenarios and further avoiding encoding failures.

[0018] In a possible implementation, after obtaining the reconstructed CRR image based on the encoding operation, the method further includes:

[0019] When the currently processed display image is the non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image is used as the reference image to perform inter-frame prediction coding on the display image.

[0020] In an embodiment of the present application, in the case where the currently processed display image is a non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the previously processed display image is used as the reference image, thereby ensuring that the reference image can be accurately determined for multiple display images over long distances in cross-RAP scenarios, further improving the encoding success rate.

[0021] In a second aspect, the present application provides a decoding method, which includes: receiving a coded image bit stream, the coded image bit stream including interleaved cross-random access point reference CRR image bit stream segments, multiple display image bit streams, quantity information and image information; the image information is used to indicate a reference enabled first image, the reference enabled first image including the first image in the display image that refers to the reconstructed CRR image; performing a decoding operation on the coded image bit stream, and obtaining a reconstructed CRR image based on the operation result; when the currently processed display image bit stream is the reference enabled first image bit stream of the currently obtained reconstructed CRR image, using the currently obtained reconstructed CRR image as a reference image to perform inter-frame prediction decoding on the display image bit stream.

[0022] In an embodiment of the present application, when the decoder performs inter-frame prediction decoding, when encountering a reference-enabled first-image bitstream for reconstructing a CRR image, the decoder determines the reconstructed CRR image of the reference-enabled first-image bitstream as a reference image, thereby ensuring that there is a reference image that matches the display image when performing inter-frame prediction decoding on the display image bitstream, avoiding decoding failure problems caused by mismatch between the reference image and the display image bitstream, and improving the decoding success rate.

[0023] In one possible implementation, the coded image bit stream also includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; a decoding operation is performed on the coded image bit stream, and based on the operation result, a reconstructed CRR image is obtained, including: if there are n CRR image bit stream fragments in the coded image bit stream, and based on the image information, it is determined that the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, the n CRR image bit stream fragments are decoded to obtain the reconstructed CRR image.

[0024] In the embodiment of the present application, the decoder obtains the reconstructed CRR image only when the first image bit stream is enabled for the CRR image. In this way, it can be ensured that the CRR image bit stream fragment is cached, the caching cost is low, and it is conducive to performance improvement.

[0025] In one possible implementation, the coded image bit stream also includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; a decoding operation is performed on the coded image bit stream, and based on the operation result, a reconstructed CRR image is obtained, including: if there are n CRR image bit stream fragments in the coded image bit stream, the n CRR image bit stream fragments are decoded to obtain the reconstructed CRR image.

[0026] In the embodiment of the present application, the decoder receives a complete CRR slice bit stream and immediately obtains the reconstructed CRR image, so that it can be used for decoding in a more timely manner.

[0027] In one possible implementation, after performing a decoding operation on the coded image bit stream and obtaining a reconstructed CRR image based on the operation result, the method further includes: when the currently processed display image bit stream is a non-reference enabled first-image bit stream of the currently obtained reconstructed CRR image, using the reconstructed CRR image used by the previously processed display image bit stream as a reference image, and performing inter-frame prediction decoding on the display image bit stream.

[0028] In an embodiment of the present application, if there is a display image bit stream of the previous reconstructed CRR image still in use, the display image bit stream will be waited until the CRR image is received to enable the first image bit stream, and then the currently acquired reconstructed CRR image will be used as a reference image to ensure that the display image bit stream of the previous reconstructed CRR image can be decoded successfully.

[0029] In one possible implementation, the reference image used for inter-frame prediction coding is stored in a designated buffer; the currently acquired reconstructed CRR image is used as the reference image, including: when the currently processed display image bit stream is the reference-enabled first-image bit stream of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

[0030] In an embodiment of the present application, the reconstructed CRR image serving as the reference image is stored in a designated buffer, thereby updating the designated buffer with the currently acquired reconstructed CRR image. This allows the reference image to be determined without the need for additional marking or information addition, which is more efficient.

[0031] In the third aspect, the present application provides an encoding device, which includes: a reconstructed image acquisition module, which is used to perform encoding operations on a reference CRR image across random access points and multiple display images corresponding to the CRR image to obtain an encoded image bit stream, and then obtain a reconstructed CRR image based on the encoding operation; a reference image determination module, which is used to use the currently acquired reconstructed CRR image as a reference image to perform inter-frame prediction encoding on the display image when the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image; wherein the encoded image bit stream includes: multiple CRR image bit stream segments in an interleaved order, multiple display image bit streams, and image information; the image information is used to indicate the reference enabled first image, and the reference enabled first image includes the first image in the display image that refers to the reconstructed CRR image.

[0032] In one possible implementation, the reference image used for inter-frame prediction coding is stored in a designated buffer; the reference image determination module is specifically used to: when the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, update the designated buffer using the currently acquired reconstructed CRR image.

[0033] In a possible implementation, the reference image determination module is specifically configured to: when a historically reconstructed CRR image is acquired from a designated buffer, replace the historically reconstructed CRR image in the designated buffer with the currently acquired reconstructed CRR image.

[0034] In a possible implementation, the reference image determination module is specifically configured to: store the currently acquired reconstructed CRR image in the designated buffer when no historical reconstructed CRR image is acquired from the designated buffer.

[0035] In one possible implementation, the reference image determination module is also used to: when the currently processed display image is a non-reference enabled first image of the currently acquired reconstructed CRR image, use the reconstructed CRR image used by the last processed display image as a reference image to perform inter-frame prediction encoding on the display image.

[0036] The third aspect and any implementation of the third aspect correspond to the first aspect and any implementation of the first aspect, respectively. The technical effects corresponding to the third aspect and any implementation of the third aspect can be referred to the technical effects corresponding to the first aspect and any implementation of the first aspect, and will not be repeated here.

[0037] In a fourth aspect, the present application provides a decoding device, which includes: a transceiver module for receiving a coded image bit stream, the coded image bit stream including interleaved and sorted cross-random access point reference CRR image bit stream segments, multiple display image bit streams, quantity information and image information; the image information is used to indicate a reference enabled first image, the reference enabled first image including the first image in the display image that refers to the reconstructed CRR image; a decoding module for performing a decoding operation on the coded image bit stream, and obtaining a reconstructed CRR image based on the operation result; when the currently processed display image bit stream is the reference enabled first image bit stream of the currently obtained reconstructed CRR image, the currently obtained reconstructed CRR image is used as a reference image to perform inter-frame prediction decoding on the display image bit stream.

[0038] In one possible implementation, the coded image bit stream also includes quantity information, which is used to indicate n, where n is an integer greater than 1; the decoding module is specifically used to: if there are n CRR image bit stream fragments in the coded image bit stream, and based on the image information, it is determined that the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, decode the n CRR image bit stream fragments to obtain the reconstructed CRR image.

[0039] In one possible implementation, the coded image bit stream also includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; the decoding module is specifically used to: if there are n CRR image bit stream segments in the coded image bit stream, decode the n CRR image bit stream segments to obtain a reconstructed CRR image.

[0040] In one possible implementation, the decoding module is further used to: perform a decoding operation on the encoded image bit stream, and after obtaining the reconstructed CRR image based on the operation result, when the currently processed display image bit stream is a non-reference enabled first image bit stream of the currently obtained reconstructed CRR image, use the reconstructed CRR image used in the previously processed display image bit stream as a reference image to perform inter-frame prediction decoding on the display image bit stream.

[0041] In one possible implementation, the reference image used for inter-frame prediction coding is stored in a designated buffer; the decoding module is specifically used to: when the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, update the designated buffer using the currently acquired reconstructed CRR image.

[0042] The fourth aspect and any two implementations of the fourth aspect correspond to the second aspect and any two implementations of the second aspect, respectively. The technical effects corresponding to the fourth aspect and any two implementations of the fourth aspect can be referred to the technical effects corresponding to the above-mentioned second aspect and any two implementations of the second aspect, and will not be repeated here.

[0043] In a fifth aspect, the present application provides a coding device, comprising: one or more processors; a memory for storing one or more computer programs or instructions; when the one or more computer programs or instructions are executed by one or more processors, the one or more processors implement a method as described in any one of the first aspects.

[0044] In a sixth aspect, the present application provides a decoding device, comprising: one or more processors; a memory for storing one or more computer programs or instructions; when the one or more computer programs or instructions are executed by one or more processors, the one or more processors implement a method as described in any one of the second aspects.

[0045] In a seventh aspect, the present application provides an encoding device, comprising a processor for executing the method as described in any one of the first aspects.

[0046] In an eighth aspect, the present application provides a decoding device, comprising a processor for executing the method as described in any one of the second aspects.

[0047] In a ninth aspect, the present application provides an electronic device comprising: a processing circuit and an interface circuit; wherein the interface circuit is used to couple with a memory outside the encoding and decoding device and provide a communication interface for the processing circuit to access the memory; the processing circuit is used to execute program instructions in the memory to implement any method described in any one of the first to second aspects.

[0048] In a specific implementation, the electronic device may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be a transistor, a gate circuit, a trigger, or various logic circuits. The input signal received by the input circuit may be, for example, but not limited to, received and input by a receiver, and the signal output by the output circuit may be, for example, but not limited to, output to and transmitted by a transmitter. The input circuit and the output circuit may be the same circuit, which functions as an input circuit and an output circuit at different times. The embodiments of the present application do not limit the specific implementation of the processor and various circuits.

[0049] In one implementation, the electronic device may be a wireless communication device, that is, a computer device that supports wireless communication functions. Specifically, the wireless communication device may be a terminal such as a smartphone, or a wireless access network device such as a base station. The system chip may also be referred to as a system on chip (SoC), or simply as an SoC chip. The communication chip may include a baseband processing chip and a radio frequency processing chip. The baseband processing chip is sometimes also referred to as a modem or baseband chip. The radio frequency processing chip is sometimes also referred to as a radio frequency transceiver or radio frequency chip. In a physical implementation, some or all of the chips in the communication chip may be integrated inside the SoC chip. For example, the baseband processing chip is integrated into the SoC chip, and the radio frequency processing chip is not integrated with the SoC chip. The interface circuit may be the radio frequency processing chip in the wireless communication device, and the processing circuit may be the baseband processing chip in the wireless communication device.

[0050] In another implementation, the electronic device may be a component of a wireless communication device, such as an integrated circuit product such as a system-on-chip (SoC) or a communication chip. The interface circuit may be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor may also be embodied as a processing circuit or a logic circuit.

[0051] In a tenth aspect, the present application provides a computer-readable storage medium, in which program code is stored. When the program code is executed by a processor, the method described in any one of the first to second aspects is implemented.

[0052] In an eleventh aspect, the present application provides a chip, comprising: at least one processor. The at least one processor is configured to execute the method according to any one of the first to second aspects.

[0053] Optionally, the chip further includes a memory, and at least one processor is configured to execute code in the memory. When the at least one processor executes the code, the chip implements the method according to any one of the first and second aspects.

[0054] Optionally, the chip may also be an integrated circuit.

[0055] In a twelfth aspect, the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to implement the method as described in any one of the first to second aspects. BRIEF DESCRIPTION OF THE DRAWINGS

[0056] FIG1 is an exemplary block diagram of a decoding system provided in an embodiment of the present application;

[0057] FIG2 is a schematic diagram of a video sequence provided in an embodiment of the present application;

[0058] FIG3 is a schematic diagram of a flow chart of an encoding method provided in an embodiment of the present application;

[0059] FIG4 is a schematic diagram of a flow chart of a decoding method provided in an embodiment of the present application;

[0060] FIG5 is a schematic diagram of an encoding and decoding process provided by an embodiment of the present application;

[0061] FIG6 is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application;

[0062] FIG7 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0063] FIG8 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0064] FIG9 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0065] FIG10 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0066] FIG11 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application;

[0067] FIG12 is a schematic diagram of another encoding and decoding process provided in an embodiment of the present application. DETAILED DESCRIPTION

[0068] To make the objectives, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments of this application, all other embodiments obtained by ordinary technicians in this field without making any creative efforts are within the scope of protection of this application.

[0069] The terms "first," "second," and the like in the description, embodiments, claims, and drawings of this application are used solely for descriptive purposes and are not to be construed as indicating or implying relative importance or order. Furthermore, the terms "including," "having," and any variations thereof are intended to cover non-exclusive inclusions, such as, for example, inclusion of a series of steps or units. A method, system, product, or apparatus is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0070] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0071] FIG1 is an exemplary block diagram of a decoding system provided in an embodiment of the present application, such as a video decoding system 10 (or simply decoding system 10 ) that can utilize the techniques of the present application. The video encoder 20 (or simply encoder 20 ) and video decoder 30 (or simply decoder 30 ) in the video decoding system 10 represent devices that can be used to perform various techniques according to various examples described in this application.

[0072] As shown in FIG. 1 , a decoding system 10 includes a source device 12 for providing encoded image data 21 such as an encoded image to a destination device 14 for decoding the encoded image data 21 .

[0073] The source device 12 includes an encoder 20 , and optionally, may include an image source 16 , a preprocessor (or preprocessing unit) 18 such as an image preprocessor, and a communication interface (or communication unit) 22 .

[0074] Image source 16 may include or may be any type of image capture device for capturing real-world images, etc., and / or any type of image generation device, such as a computer graphics processor for generating computer-animated images or any type of device for acquiring and / or providing real-world images, computer-generated images (e.g., screen content, virtual reality (VR) images, and / or any combination thereof (e.g., augmented reality (AR) images). The image source may be any type of memory or storage that stores any of the above images.

[0075] In order to distinguish the processing performed by the pre-processor (or pre-processing unit) 18 , the image (or image data) 17 may also be referred to as a raw image (or raw image data) 17 .

[0076] The preprocessor 18 is configured to receive raw image data 17 and preprocess the raw image data 17 to obtain a preprocessed image (or preprocessed image data) 19. For example, the preprocessing performed by the preprocessor 18 may include cropping, color format conversion (e.g., from RGB to YCbCr), color grading, or denoising. It will be appreciated that the preprocessor 18 may be an optional component.

[0077] The video encoder (or encoder) 20 is configured to receive the pre-processed image data 19 and provide encoded image data 21 .

[0078] The communication interface 22 in the source device 12 can be used to receive the encoded image data 21 and send the encoded image data 21 (or any other processed version) to another device such as the destination device 14 or any other device through the communication channel 13 for storage or direct reconstruction.

[0079] The source device 12 may further include a memory (not shown in FIG. 1 ), which may be used to store at least one of the following data: original image data 17 , pre-processed image (or pre-processed image data) 19 , and encoded image data 21 .

[0080] The destination device 14 includes a decoder 30 and, in addition or alternatively, may include a communication interface (or communication unit) 28 , a post-processor (or post-processing unit) 32 , and a display device 34 .

[0081] The communication interface 28 in the destination device 14 is used to receive the encoded image data 21 (or any other processed version) directly from the source device 12 or from any other source device such as a storage device, for example, the storage device is a encoded image data storage device, and provide the encoded image data 21 to the decoder 30.

[0082] The communication interface 22 and the communication interface 28 can be used to send or receive encoded image data (or encoded data) 21 through a direct communication link between the source device 12 and the destination device 14, such as a direct wired or wireless connection, or through any type of network, such as a wired network, a wireless network or any combination thereof, any type of private network and public network or any combination thereof.

[0083] For example, the communication interface 22 may be used to encapsulate the encoded image data 21 into a suitable format such as a message, and / or process the encoded image data using any type of transmission coding or processing for transmission over a communication link or network.

[0084] The communication interface 28 corresponds to the communication interface 22 , and can be used, for example, to receive transmission data and process the transmission data using any type of corresponding transmission decoding or processing and / or decapsulation to obtain the encoded image data 21 .

[0085] Both the communication interface 22 and the communication interface 28 can be configured as a unidirectional communication interface as indicated by the arrow pointing from the source device 12 to the corresponding communication channel 13 of the destination device 14 in Figure 1, or a bidirectional communication interface, and can be used to send and receive messages, etc. to establish a connection, confirm and exchange any other information related to the communication link and / or data transmission such as encoded image data transmission, etc.

[0086] The video decoder (or decoder) 30 is configured to receive the encoded image data 21 and provide decoded image data (or decoded image data) 31 .

[0087] The post-processor 32 is configured to post-process the decoded image data 31 (also referred to as reconstructed image data), such as the decoded image, to obtain post-processed image data 33, such as the post-processed image. The post-processing performed by the post-processing unit 32 may include, for example, color format conversion (e.g., from YCbCr to RGB), color grading, cropping, or resampling, or any other processing for generating the decoded image data 31 for display on a display device 34, etc.

[0088] The display device 34 is configured to receive the post-processed image data 33 and display the image to a user or viewer. The display device 34 may be or include any type of display for displaying the reconstructed image, such as an integrated or external display screen or monitor. For example, the display screen may include a liquid crystal display (LCD), an organic light emitting diode (OLED) display, a plasma display, a projector, a micro-LED display, a liquid crystal on silicon (LCoS) display, a digital light processor (DLP), or any other type of display screen.

[0089] The destination device 14 may further include a memory (not shown in FIG. 1 ), which may be used to store at least one of the following data: the encoded image data 21 , the decoded image data 31 , and the post-processed image data 33 .

[0090] The decoding system 10 also includes a training engine 25, which is used to train the encoder 20 to process the input image or image region or image block, obtain a feature map of the input image or image region or image block, and obtain an estimated probability distribution of the feature map, and encode the feature map according to the estimated probability distribution.

[0091] The training engine 25 is further used to train the decoder 30 to obtain an estimated probability distribution of the code stream, decode the code stream according to the estimated probability distribution to obtain a feature map, and decode and reconstruct the feature map to obtain a reconstructed image.

[0092] Although FIG1 shows source device 12 and destination device 14 as separate devices, device embodiments may also include both source device 12 and destination device 14 or the functions of both source device 12 and destination device 14, that is, both source device 12 or the corresponding functions and destination device 14 or the corresponding functions. In these embodiments, source device 12 or the corresponding functions and destination device 14 or the corresponding functions may be implemented using the same hardware and / or software or through separate hardware and / or software or any combination thereof.

[0093] According to the description, the existence and (accurate) division of different units or functions in the source device 12 and / or the destination device 14 shown in FIG. 1 may vary depending on actual devices and applications, which is obvious to those skilled in the art.

[0094] Before describing the embodiments of the present application, the terms and concepts used in the embodiments of the present application are first explained.

[0095] Reconstructed image: This refers to the lossy image obtained by decoding the encoded image bitstream, which can be displayed and played. It exists on both the encoder and decoder, and the reconstructed image on both ends is identical. On the encoder, the reconstructed image can be used as a reference image for the image to be encoded to perform inter-frame prediction encoding. On the decoder, the reconstructed image can be used as a reference image for the image to be decoded to perform inter-frame prediction decoding.

[0096] RAP: Random access point in video encoding. The encoded video bitstream includes at least one RAP. When random access occurs, the video bitstream before the RAP can be skipped, and the subsequent image bitstream can be decoded from the RAP and the reconstructed video image output by the decoder can be played. From the perspective of video playback, random access can be understood as dragging the progress bar of the player to achieve random jumps of the video when watching on-demand video (or local playback video); or when a black screen occurs due to packet loss when watching live broadcast, the client will access the video stream and continue to play the video when the next RAP arrives. RAP is usually an intra-coded picture (I) frame. The I frame only uses the information within the current frame for predictive coding to eliminate information redundancy in the spatial domain without relying on other frames.

[0097] RAS: A RAS includes all images from one RAP to the next. Images in a RAS are either forward-predicted (P) frames or bi-directionally interpolated prediction (B) frames. P and B frames use already coded images for temporal prediction to eliminate temporal redundancy.

[0098] For example, please refer to Figure 2, which is a schematic diagram of a video sequence provided in an embodiment of the present application. Figure 2 shows 11 video frames a1 to a11. Among them, a2, a6 and a10 are I frames and serve as RAP, all video frames between a2 and a6 are P frames and constitute RAS1, and all video frames between a6 and a10 are P frames and constitute RAS2. As can be seen from Figure 2, each P frame needs to be encoded with reference to the previous m video frames, where m is an integer greater than 1. For example, a3 can be encoded with reference to a2, and a4 can be encoded with reference to a2 and / or a3.

[0099] CRR encoding: When encoding a video frame in one RAS, video frames in other RASs other than the RAS can be referenced for encoding.

[0100] In most videos (such as movies or TV programs), many picture scenes appear alternately, and the picture scenes displayed at different times may be similar. The interval between two adjacent similar picture scenes is usually long, so the two adjacent similar picture scenes are in the same RAP but the interval is long, or the time correlation spans the RAP. For example, the video standard generally stipulates that the length of RAS is 1s or 2s, and the interval between two adjacent similar picture scenes is usually close to the length of RAS (for example, 0.7s) or greater than the length of RAS (for example, 3s). In addition, in video scenes such as security monitoring, the appearance of similar picture scenes usually lasts for a long time, so there will be two similar picture scenes in the same RAP but with a long interval, or the time correlation spans the RAP.

[0101] The embodiment of the present application provides a coding and decoding method, which can accurately determine the reference image when coding and decoding a video with a high degree of scene repetition, thereby improving the success rate of video coding and decoding.

[0102] Please refer to FIG3 , which is a flowchart of an encoding method provided in an embodiment of the present application. The method can be applied to an encoder and may include the following steps:

[0103] S301 , after performing an encoding operation on a cross-random access point reference CRR image and a plurality of display images corresponding to the CRR image to obtain an encoded image bit stream, a reconstructed CRR image is obtained based on the encoding operation.

[0104] For example, the above S301 may specifically include the following processes from 401 to 403 and optional implementation methods:

[0105] 401. Acquire CRR images corresponding to multiple display images.

[0106] The multiple display images may be a plurality of continuous display images in a video sequence. The encoder may be provided with a preset duration, divide the video sequence into at least one video segment according to the preset duration, and obtain a CRR image corresponding to the video segment. The multiple display images may constitute a video segment. The preset duration may be greater than the length of the current RAS, for example, the preset duration may be 6 seconds, 7 seconds, or 10 seconds. Accordingly, the multiple display images include multiple RAPs, each of which may be a P frame or a B frame.

[0107] A reconstructed CRR image can be used as a reference image for multiple subsequent display images to be encoded. Optionally, any one of the multiple display images can be used as a CRR image corresponding to the multiple display images. Alternatively, CRR images corresponding to the multiple display images can be constructed based on the multiple display images. The embodiment of the present application does not limit the method for obtaining the CRR image.

[0108] 402. Perform encoding operations on the CRR image and multiple display images to obtain an encoded image bit stream, where the encoded image bit stream includes: n interleaved CRR image bit stream segments and multiple display image bit streams, where n is an integer greater than 1.

[0109] The coded image bit stream is a single-channel bit stream. When n CRR image bit stream segments are transmitted, the transmission order (ie, the encoder output order) is before the bit stream of the subsequent first display image that references the CRR image.

[0110] The CRR image is used to generate a reconstructed image, which can then be used as a reference image for subsequent encoded display images to perform inter-frame prediction encoding on the encoded display images. The CRR image does not need to be displayed. After encoding a display image in a video sequence, a display image bit stream and a reconstructed display image are obtained. It can be seen that in the embodiment of the present application, the reconstructed image includes two types: reconstructed display image and reconstructed CRR image.

[0111] The reference image of the display image includes: a reconstructed display image and / or a currently effective reconstructed CRR image. The currently effective reconstructed CRR image can be stored in the buffer space of the encoder, for example, in the DPB of the encoder. The currently effective reconstructed CRR image refers to the reconstructed CRR image that is in effect at the moment when the encoding operation is performed on each display image in the multiple display images.

[0112] When performing an encoding operation on each of a plurality of display images, at least one display image bitstream has been encoded, and accordingly, at least one reconstructed display image also exists. Optionally, any number of reconstructed display images among all currently obtained reconstructed display images can be used as reference images for the display image. For example, the reference image of the display image includes: at least one reconstructed display image obtained by the encoding operation performed on at least one display image that was most recently output. For example, when performing an encoding operation on the third display image among a plurality of display images, the current encoding obtains the first display image bitstream and the first reconstructed display image corresponding to the first display image, and the second display image bitstream and the second reconstructed display image corresponding to the second display image. Therefore, when performing an encoding operation on the third display image among a plurality of display images, the first reconstructed display image and the second reconstructed display image can be used as reference images for the third display image.

[0113] The currently valid reconstructed CRR image is obtained by encoding the CRR image. Optionally, it can be obtained when encoding a CRR image bitstream segment group. The CRR image bitstream segment group may include: the n most recently output CRR image bitstream segments, or the n most recently output CRR image bitstream segments corresponding to the same CRR image. The most recently output here refers to the most recently output at the time the encoding operation is performed on the display image.

[0114] During the encoding process of the entire video sequence, before the nth CRR image bitstream segment is output, there is no currently valid reconstructed CRR image. Therefore, for the display image bitstream output before the nth CRR image bitstream segment, the reference image used during encoding only includes the reconstructed display image.

[0115] Since n CRR image bit stream segments and multiple display image bit streams are interwoven into one coded image bit stream, the coded image bit stream can be transmitted using an existing transmission protocol and stored using an existing file format.

[0116] 403. Encode a preset syntax identifier into the coded image bit stream, where the preset syntax identifier includes at least one of the following: quantity information, image information, and position information, where the quantity information indicates n, the image information indicates a target image, and the bit stream of the target image is transmitted after n CRR image bit stream segments, and the position information indicates the positions of the n CRR image bit streams in the coded image bit stream.

[0117] Encoding the preset syntax identifier into the coded image bit stream may be directly adding the preset syntax identifier to the coded image bit stream, or adding the preset syntax identifier to the coded image bit stream after encoding and compression, which is not limited in the embodiments of the present application.

[0118] The preset syntax identifier is used by the decoder to determine whether a CRR slice is lost. The preset syntax identifier can be located in the high-level parameters of the coded image bitstream. The high-level parameters include at least one of the following: SPS, PPS, and picture header. The SPS includes a set of global parameters for the video coding sequence, such as the color space, the size of each frame (width and height), and the encoding level. The PPS includes coding parameters for at least one frame, such as the quantization matrix and filter parameters. The picture header includes coding parameters for a frame, such as the frame number.

[0119] For example, for SPS, one SPS may be placed before every N CRR image bitstream segments, or one SPS may be placed before the entire bitstream. For PPS, one PPS may be placed before every multiple bitstreams. For picture header, one picture header may be placed before the first CRR image bitstream segment, and one slice header or segment header may be placed before other non-first CRR image bitstream segments.

[0120] Since the decoder parses the higher-level parameters after receiving the bitstream, placing the preset syntax identifier in the higher-level parameters enables the decoder to quickly determine whether there are any missing CRR image bitstream segments. This allows the decoder to react promptly to transmission failures, enhancing the robustness of the encoding and decoding process.

[0121] Among them, the target image can be: the first display image that uses the CRR image as a reference image (the image header of the display image has a CRR image enabling first image flag), the first display image that only uses the CRR image as a reference image, a display image whose bitstream is transmitted after n CRR image bitstream segments, or a CRR image whose bitstream is transmitted after n CRR image bitstream segments. Before transmitting the bitstream of the target image, the transmission of n CRR image bitstream segments needs to be completed. For example, assuming that the target image is a CRR image, the bitstream segments of the aforementioned acquired CRR image and the bitstream segments of the target image should not be interleaved for transmission, that is, the transmission of the bitstream segments of the target image should not be started before all the bitstream segments of the aforementioned acquired CRR image are encoded and transmitted. In other words, the target image can be used as a reference to enable the first image.

[0122] The image information may be: the frame number of the target image, the decoding number of the target image's bit stream, the frame number difference between the target image and the CRR image, or the decoding number difference between the target image's bit stream and the CRR image's bit stream, which is not limited in this embodiment of the present application.

[0123] The position information may include a position identifier for each CRR image bitstream segment. The position identifier of the CRR image bitstream segment is used to indicate at which position the next CRR image bitstream segment will be transmitted. The position identifier of the CRR image bitstream segment can be: a frame number (referring to the frame number of a display image corresponding to a display image bitstream before or after the CRR image bitstream segment), a decoding number (referring to the decoding number of a display image bitstream before or after the CRR image bitstream segment), the difference between the frame number and the frame number corresponding to the next CRR image bitstream segment, or the difference between the decoding number and the decoding number corresponding to the next CRR image bitstream segment, etc., as long as it can indicate at which position the CRR image bitstream segment will be transmitted.

[0124] S302. When the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, the currently acquired reconstructed CRR image is used as the reference image to perform inter-frame prediction encoding on the display image; wherein the image information is used to indicate the reference enabled first image, and the reference enabled first image includes the first image in the display image that refers to the reconstructed CRR image.

[0125] Optionally, the preset syntax identifier may further include bitstream segment information, where the bitstream segment information is used to indicate that each CRR image bitstream segment is used as a display image of a reference image.

[0126] In an embodiment of the present application, when the encoder performs inter-frame prediction encoding, when encountering a reference enabled first image for reconstructing a CRR image, the encoder determines the reconstructed CRR image of the reference enabled first image as the reference image, thereby ensuring that there is a reference image that matches the display image when performing inter-frame prediction encoding on the display image, avoiding the encoding failure problem caused by the mismatch between the reference image and the display image, and improving the encoding success rate.

[0127] Optionally, the reference image used for inter-frame prediction coding is stored in a designated buffer;

[0128] In a case where the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, using the currently acquired reconstructed CRR image as a reference image may specifically include:

[0129] In a case where the currently processed display image is the reference-enabled first image of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

[0130] Exemplarily, the encoder and the decoder each have a corresponding designated buffer, which may be, for example, a decoded picture buffer (DPB).

[0131] In an embodiment of the present application, the reference image used for inter-frame prediction coding is stored in a designated buffer, and then the reference image can be determined by updating the designated cache with the currently acquired reconstructed CRR image, without the need for additional marking and recording information, which is more efficient.

[0132] Optionally, updating a designated buffer using the currently acquired reconstructed CRR image may specifically include:

[0133] When a historical reconstructed CRR image is acquired from the designated buffer, the historical reconstructed CRR image in the designated buffer is replaced with the currently acquired reconstructed CRR image.

[0134] For example, when replacing the historical reconstructed CRR image in the designated buffer with the currently acquired reconstructed CRR image, the specific replacement method may be to overwrite the historical reconstructed CRR image, or to remove the historical reconstructed CRR image and then move in the historical reconstructed CRR image.

[0135] In the embodiment of the present application, if the encoder already has a previously reconstructed CRR image, the newly reconstructed CRR image replaces the previously reconstructed CRR image. In this way, the encoder can continue to directly use the reconstructed image with reference to the previous display image, and the timeliness of the update is improved, thereby achieving a balance between accuracy and coding efficiency.

[0136] Optionally, updating a designated buffer using the currently acquired reconstructed CRR image may specifically include:

[0137] If no historical reconstructed CRR image is obtained from the designated buffer, the currently obtained reconstructed CRR image is stored in the designated buffer.

[0138] In this embodiment of the present application, if the encoder does not use the reconstructed CRR image, the currently obtained reconstructed CRR image can be directly moved into the buffer. The reconstructed CRR image not used by the encoder means that there is no longer a display image to use, and the buffer is also empty, so it can be directly moved into, thereby expanding the applicable scenarios and further avoiding encoding failures.

[0139] Optionally, after obtaining the reconstructed CRR image based on the encoding operation, the encoding method provided in the embodiment of the present application may further include:

[0140] When the currently processed display image is the non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image is used as the reference image to perform inter-frame prediction coding on the display image.

[0141] In an embodiment of the present application, in the case where the currently processed display image is a non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the previously processed display image is used as the reference image, thereby ensuring that the reference image can be accurately determined for multiple display images over long distances in cross-RAP scenarios, further improving the encoding success rate.

[0142] Exemplarily, when the first image is enabled for encoding a CRR image, if the previous reconstructed CRR image already exists in the encoder, the previous reconstructed CRR image in the current decoded image buffer is removed, and the current reconstructed CRR image is moved into the decoded image buffer; otherwise, the reconstructed CRR image is directly moved into the decoded image buffer. It should be noted that after all CRR sub-images are encoded, subsequent encoded images may not immediately use the reconstructed CRR image for reference, but continue to refer to the previous reconstructed CRR image. At this point, the current reconstructed CRR image needs to be cached until the first image is enabled for the CRR image, and then the decoded image buffer is updated.

[0143] Please refer to FIG4 , which is a flowchart of a decoding method provided in an embodiment of the present application. The method can be applied to a decoder and may include the following steps:

[0144] S401, receiving a coded image bitstream, the coded image bitstream comprising interleaved and ordered cross-random access point reference CRR image bitstream segments, multiple display image bitstreams, quantity information, and image information; the image information is used to indicate a first reference enabled image, the first reference enabled image comprising a first image in the display image that references a reconstructed CRR image;

[0145] S402, performing a decoding operation on the coded image bit stream, and obtaining a reconstructed CRR image based on the operation result;

[0146] The above S401 to S402 may specifically include the following processes 501 to 505 and optional examples:

[0147] 501. Receive a coded image bit stream, where the coded image bit stream includes interleaved and ordered CRR image bit stream segments and a display image bit stream.

[0148] 502. Perform a decoding operation on the coded image bit stream.

[0149] Each time a display image bitstream is decoded, a reconstructed display image is generated. The reference images in the display image bitstream include: the reconstructed display image and / or the currently valid reconstructed CRR image. The currently valid reconstructed CRR image can be stored in the decoder's buffer space, such as in the decoder's DPB.

[0150] The reference image used when decoding any display image bitstream in the coded image bitstream is the same as the reference image used by the encoder when encoding the display image bitstream. Each display image bitstream may carry a reference image identifier. When decoding the display image bitstream, the decoder determines the reference image for the display image bitstream based on the reference image identifier carried by the bitstream.

[0151] The reconstructed display image is obtained by decoding a previous display image bit stream. A reconstructed display image is obtained by decoding a display image bit stream.

[0152] The currently effective reconstructed CRR image is obtained by decoding the previous CRR image bitstream segment. Optionally, the currently effective reconstructed CRR image can be obtained by decoding a CRR image bitstream segment group. The CRR image bitstream segment group includes: the first n CRR image bitstream segments of the display image bitstream, or the first n CRR image bitstream segments corresponding to the same CRR image in the display image bitstream. In the decoding process of the coded image bitstream corresponding to the entire video sequence, before the decoding of the received n-th CRR image bitstream segment is completed, there is no currently effective reconstructed CRR image. Therefore, for the display image bitstream before the n-th CRR image bitstream segment, the reference image used during decoding only includes the reconstructed display image.

[0153] 503. Obtain a preset syntax identifier from the coded image bit stream.

[0154] The preset syntax identifier includes at least one of the following: quantity information, image information, and position information, the quantity information indicates n, the image information indicates the target image in the coded image bit stream that is transmitted after n CRR image bit stream segments, and the position information indicates the positions of the n CRR image bit stream segments in the coded image bit stream.

[0155] When the preset syntax identifier includes only quantity information, the decoder parses the quantity information (indicating n) from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream. When the preset syntax identifier includes only image information, the decoder parses the image information (indicating the target image) from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream. All n CRR image bitstream segments must be received before the bitstream of the target image. When the preset syntax identifier includes only position information, the decoder parses the position information from the coded image bitstream upon receiving the first CRR image bitstream segment of the coded image bitstream.

[0156] 504. Determine whether n CRR image bit stream segments exist in the coded image bit stream according to a preset syntax identifier, where n CRR image bit stream segments correspond to one CRR image, and n is an integer greater than 1.

[0157] After the decoder obtains the number information from the coded image bitstream, it starts counting from the first CRR image bitstream segment received in the coded image bitstream. That is, the counter starts counting when the first CRR image bitstream segment is received. It then begins receiving display image bitstreams and CRR image bitstream segments, and the counter increments by 1 for each CRR image bitstream segment received.

[0158] Upon receiving the target bitstream, if the number of received CRR image bitstream segments is n (i.e., the value of the counter is n), it is determined that n CRR image bitstream segments exist in the coded image bitstream, and the CRR image bitstream reception is successful. If the number of received CRR image bitstream segments is less than n, it is determined that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream reception fails.

[0159] The target bitstream is a display image bitstream and the reference image is a CRR image, or the preset syntax identifier further includes image information, and the target bitstream is a bitstream of a target image indicated by the image information.

[0160] After successfully receiving the CRR image bitstream segment corresponding to the previous CRR image, the decoder may default the next received CRR image bitstream segment to the first CRR image bitstream segment. Alternatively, if the coded image bitstream only has a picture header before the first CRR image bitstream segment, the decoder may regard the CRR image bitstream segment after the picture header as the first CRR image bitstream segment. Alternatively, if the CRR image bitstream segments corresponding to a CRR image are transmitted in sequence, the decoder may regard the CRR image bitstream segment with the smallest sequence number as the first CRR image bitstream segment.

[0161] After parsing the image information (indicating the target image) from the coded image bitstream, the decoder decodes the coded image bitstream. Upon receiving the bitstream of the target image, the decoder determines the size of the reconstructed CRR image. The reconstructed CRR image is obtained by decoding the received CRR image bitstream segments. If the size of the reconstructed CRR image is equal to the size of the CRR image, the decoder determines that n CRR image bitstream segments exist in the coded image bitstream, and the CRR image bitstream is successfully received. If the size of the reconstructed CRR image is smaller than the size of the CRR image, the decoder determines that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream is unsuccessfully received.

[0162] After parsing the position information from the coded image bitstream, the decoder determines that n CRR image bitstream segments exist in the coded image bitstream when a CRR image bitstream segment is received at each position indicated by the position information, and the CRR image bitstream reception is successful. If a CRR image bitstream segment is not received at at least one position indicated by the position information, the decoder determines that n CRR image bitstream segments do not exist in the coded image bitstream, and the CRR image bitstream reception fails.

[0163] 505. If there are n CRR image bit stream segments in the coded image bit stream, continue to perform a decoding operation on the coded image bit stream to obtain a reconstructed display image.

[0164] If n CRR image bitstream segments do not exist in the coded image bitstream, the decoder may determine that a CRR image bitstream reception error has occurred, and transmission error processing may be performed. Transmission error processing may include discarding or skipping a display image bitstream composed of images obtained by decoding the reference image from the lost CRR image bitstream segments, and requesting the encoder to retransmit the lost CRR image bitstream segments, etc., which is not limited in the present embodiment.

[0165] In summary, the decoding method provided in the embodiment of the present application performs a decoding operation on a received coded image bitstream, where the coded image bitstream includes interleaved CRR image bitstream segments and a display image bitstream, obtains a preset syntax identifier from the coded image bitstream, and determines whether there are n CRR image bitstream segments in the coded image bitstream based on the preset syntax identifier of the coded image bitstream, where the n CRR image bitstream segments correspond to one CRR image, and then, if there are n CRR image bitstream segments in the coded image bitstream, continues to perform a decoding operation on the coded image bitstream to obtain a reconstructed display image, where the reference image of the display image bitstream includes: a reconstructed display image and / or a currently effective reconstructed CRR image, where the reconstructed display image is obtained by decoding the previous display image bitstream, and the currently effective reconstructed CRR image is obtained by decoding the previous CRR image bitstream segment. The currently valid reconstructed CRR image can be used as a reference image for the current display image bitstream to be decoded. The currently valid reconstructed CRR image is obtained based on the CRR image bitstream sub-segment, and the CRR image bitstream sub-segment is obtained by the encoding end based on the CRR image. Since the CRR image corresponds to multiple display images, and multiple display images can include multiple RAPs, cross-RAP reference can be achieved. In addition, n CRR image bitstream segments and multiple display image bitstreams are interwoven into one bitstream and transmitted to the decoder. In this way, all processes can be completed within the decoder, and the entire decoding process can be completed without the cooperation of the system layer, thereby achieving cross-RAP reference while realizing the decoupling of the decoder and the system layer.

[0166] And according to the preset syntax identifier, it can be determined whether there is a lost CRR image bit stream segment, so that the codec layer and the system layer can cooperate better, so that the decoder can respond to the transmission failure in time, and the robustness of the coding and decoding process is enhanced.

[0167] For example, please refer to Figure 5, which is a schematic diagram of a coding and decoding process provided by an embodiment of the present application. The encoder encodes the CRR image and multiple display images to obtain a coded image bit stream and sends the coded image bit stream to the decoder. Figure 5 is illustrated by taking three CRR image bit stream segments b1 to b3 (n=3) and five display image bit streams c1 to c5 as examples. The decoder decodes in sequence according to the order of each bit stream in the coded image bit stream to obtain five reconstructed display images c1′ to c5′ and a reconstructed CRR image. The five reconstructed display images are used for display, and the reconstructed CRR image is only used as a reference image when decoding the display image bit stream and is not used for display.

[0168] In one implementation, the CRR image may be first segmented to obtain n CRR sub-images, and then the CRR sub-images are encoded, including the following process:

[0169] 601. Acquire CRR images corresponding to multiple display images.

[0170] This process can refer to the aforementioned process 401, and will not be described in detail in this embodiment of the present application.

[0171] 602. Split the CRR image to obtain n CRR sub-images, where n is an integer greater than 1.

[0172] 603. Interleave the n CRR sub-images between multiple display images to obtain an image sequence to be encoded.

[0173] In the sequence of images to be encoded, the last image is a display image, that is, all CRR images are located before the last display image.

[0174] Optionally, one or more CRR sub-images may be interspersed between every two display images, as long as the n CRR sub-images are interleaved between multiple display images. The embodiment of the present application does not limit the interleaving method.

[0175] 604. Perform encoding operations on the CRR sub-images and the display images in the image sequence to be encoded in sequence to obtain an encoded image bit stream.

[0176] The order of the display picture bitstreams in the coded picture bitstream is the same as the order of the corresponding display pictures in the image sequence to be coded. The order of the CRR sub-picture bitstreams in the coded picture bitstream is the same as the order of the corresponding CRR sub-pictures in the image sequence to be coded.

[0177] In this implementation, there are various coding examples for generating the currently effective reconstructed CRR image, which are described below.

[0178] Coding example 1, after encoding each CRR sub-image, a CRR image bitstream segment and a reconstructed CRR sub-image are obtained. The encoder caches each reconstructed CRR sub-image obtained, for example, caches the reconstructed CRR sub-image in the DPB of the encoder. When there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. If there is an effective reconstructed CRR image before splicing the n reconstructed CRR sub-images, the last effective reconstructed CRR image is removed from the cache space when splicing the n reconstructed CRR sub-images to obtain the currently effective reconstructed CRR image. The CRR image bitstream segment group in this example includes: the latest output n CRR image bitstream segments corresponding to the same CRR image.

[0179] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image.

[0180] Coding Example 2, based on the aforementioned coding example 1, when the encoding of the first CRR sub-image in the image sequence to be encoded begins, if there is a currently effective reconstructed CRR image (referring to the reconstructed CRR image that is in effect at the moment when the encoding of the first CRR sub-image in the image sequence to be encoded begins), the currently effective reconstructed CRR image is removed (the currently effective reconstructed CRR image is removed from the cache space). When the encoding operation is performed on the target display image among multiple display images, the reference image of the target display image includes the reconstructed display image, and the target display image includes: the display image between the first CRR sub-image and the last CRR sub-image in the image sequence to be encoded. Since there is no reconstructed CRR image in effect when encoding the target display image, the reference image of the target display image only includes the reconstructed display image.

[0181] In this encoding example, when encoding from the first CRR sub-image to the last CRR sub-image in the to-be-encoded image sequence, there is no need to cache the last valid reconstructed CRR image, thereby saving cache space for one frame of image.

[0182] Coding example 3, when performing an encoding operation on a CRR sub-image to obtain a reconstructed CRR sub-image, if there is a currently effective reconstructed CRR image, the target area in the currently effective reconstructed CRR image (referring to the reconstructed CRR image that is effective at the moment when the encoding operation is performed on the CRR sub-image to obtain the reconstructed CRR sub-image) is updated to the obtained reconstructed CRR sub-image, and the currently effective reconstructed CRR image is obtained. The positional relationship between the target area and the currently effective reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image. In this example, the CRR image bitstream segment group includes: the latest output n CRR image bitstream segments.

[0183] In this encoding example, after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image is not cached. Instead, the target area in the currently effective reconstructed CRR image is directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0184] Coding example 4, the encoder caches the CRR image bitstream segments output each time (for example, cached in the DPB of the encoder). When there are n CRR image bitstream segments cached, the cached n CRR image bitstream segments are decoded and reconstructed respectively to obtain n reconstructed CRR sub-images. The n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. That is, the encoding operation of the encoder on multiple display images and CRR images also includes decoding and reconstruction of the n CRR image bitstream segments. If there is a reconstructed CRR image that is in effect before the CRR image bitstream is decoded and reconstructed, the last effective reconstructed CRR image is removed from the cache space when the CRR image bitstream is decoded and reconstructed to obtain the currently effective reconstructed CRR image. In this example, the CRR image bitstream segment group includes: the latest output n CRR image bitstream segments corresponding to the same CRR image.

[0185] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image, ie, the reference enabled first image.

[0186] In this encoding example, CRR image bitstream segments are directly cached, and decoding and reconstruction are performed after caching n CRR image bitstream segments to obtain a reconstructed CRR image, without caching each reconstructed CRR sub-image. Because the cache space occupied by CRR image bitstream segments is smaller than that occupied by reconstructed CRR sub-images, a certain amount of cache space can be saved.

[0187] In another implementation, the CRR image may be encoded to obtain CRR image bit stream segments, and then the CRR image bit stream segments may be segmented, which may include the following process:

[0188] 701. Acquire CRR images corresponding to multiple display images.

[0189] This process can refer to the aforementioned process 401, and will not be described in detail in this embodiment of the present application.

[0190] 702. Perform encoding operation on the CRR image to obtain a CRR image bit stream.

[0191] 703. Split the CRR image bit stream to obtain n CRR image bit stream segments, where n is an integer greater than 1.

[0192] 704. Perform encoding operations on the multiple display images in sequence to obtain multiple display image bit streams.

[0193] 705. Interleave the n CRR image bit stream segments between multiple display image bit streams to obtain a coded image bit stream.

[0194] In the coded image bit stream, the last image bit stream is the display image bit stream, that is, all CRR image bit streams are located before the last display image bit stream.

[0195] Optionally, one or more CRR image bit stream segments may be inserted between every two display image bit streams, as long as n CRR image bit stream segments are interleaved in multiple display image bit streams. The embodiment of the present application does not limit the interleaving method.

[0196] It should be noted that processes 704 and 705 can be performed simultaneously. The encoder can predetermine the order of each CRR image bitstream segment in the subsequent coded image bitstream, and determine the currently effective reconstructed CRR image based on the order. Only when n CRR image bitstream segments are output can the reconstructed CRR image obtained when the CRR image is encoded be used as the currently effective reconstructed CRR image. That is, in the coded image bitstream, when encoding the display image after the nth CRR image bitstream segment, the reconstructed CRR image obtained when the CRR image is encoded can be used as a reference image for inter-frame prediction encoding.

[0197] In this implementation, there are various examples for generating the currently effective reconstructed CRR image, which are described below.

[0198] In Coding Example 5, after encoding a CRR image, the encoder obtains a target reconstructed CRR image and a CRR image bitstream. The encoder caches the target reconstructed CRR image. When outputting the last CRR image bitstream segment among n CRR image bitstream segments, the cached target reconstructed CRR image is used as the currently valid reconstructed CRR image. In this example, the CRR image bitstream segment group includes the n most recently output CRR image bitstream segments corresponding to the same CRR image.

[0199] If a reconstructed CRR image is in effect before the last CRR image bitstream segment among the n CRR image bitstream segments being output, the last valid reconstructed CRR image is removed from the cache space when the cached target reconstructed CRR image is used as the currently valid reconstructed CRR image. In this case, an additional frame buffer is required to store the target reconstructed CRR image.

[0200] Optionally, the first display image that selects the currently valid reconstructed CRR image as the reference image may be marked as the first enabled image of the currently valid reconstructed CRR image.

[0201] In Coding Example 6, the encoder may cache a CRR image bitstream. When outputting the last CRR image bitstream segment among n CRR image bitstream segments, the cached CRR image bitstream is decoded and reconstructed to obtain the currently valid reconstructed CRR image. In this example, the CRR image bitstream segment group includes the n most recently output CRR image bitstream segments corresponding to the same CRR image.

[0202] If a reconstructed CRR image is in effect before the cached CRR image bitstream is decoded and reconstructed, the previously valid reconstructed CRR image is removed from the cache space when the cached CRR image bitstream is decoded and reconstructed to obtain the currently valid reconstructed CRR image. In this case, an additional cache is required to store the CRR image bitstream.

[0203] In this encoding example, before outputting the last of the n CRR image bitstream segments, the entire CRR image bitstream is stored without storing the entire reconstructed CRR image. Because the CRR image bitstream occupies less cache space than the reconstructed CRR image, this can save a certain amount of cache space.

[0204] Corresponding to different encoding examples, there are also different decoding examples on the decoding end. The following describes various decoding examples.

[0205] Decoding example 1: The decoder performs decoding operations in sequence according to the order of the bit streams in the coded image bit stream, and obtains and caches the reconstructed CRR sub-image after performing the decoding operation on each received CRR image bit stream segment. If it is determined according to the preset syntax identifier that there are n CRR image bit stream segments in the coded image bit stream, then when there are n reconstructed CRR sub-images cached, the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image. If there is an effective reconstructed CRR image before the n reconstructed CRR sub-images are spliced, then when the n reconstructed CRR sub-images are spliced ​​to obtain the currently effective reconstructed CRR image, the last effective reconstructed CRR image is removed from the cache space. In this example, the CRR image bit stream segment group includes: the first n CRR image bit stream segments corresponding to the same CRR image of the display image bit stream.

[0206] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information in the preset syntax identifier. For details, please refer to the above embodiment, which will not be described in detail in the embodiment of the present application.

[0207] Optionally, the first display image bit stream that selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image.

[0208] Decoding Example 2, based on the aforementioned decoding Example 1, when a decoding operation is performed on the first CRR image bitstream segment in the coded image bitstream, if there is a currently effective reconstructed CRR image (referring to the reconstructed CRR image that is in effect at the moment when the decoding operation on the first CRR image bitstream segment in the coded image bitstream is started), the currently effective reconstructed CRR image is removed (the currently effective reconstructed CRR image is removed from the cache space). When a decoding operation is performed on a target display image bitstream among multiple display image bitstreams, the reference image of the target display image bitstream includes the reconstructed display image, and the target display image bitstream includes: the display image bitstream between the first CRR image bitstream segment and the last CRR image bitstream segment in the coded image bitstream. Since there is no currently effective reconstructed CRR image when encoding the target display image bitstream, the reference image of the target display image bitstream only includes the reconstructed display image.

[0209] In this decoding example, when decoding the first to the last CRR image bitstream segment in the coded image bitstream, there is no need to cache the last valid reconstructed CRR image, thereby saving cache space for one frame of image.

[0210] Decoding example 3, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream, and obtains a reconstructed CRR sub-image after decoding the received CRR image bit stream segment. If there is no lost CRR image bit stream segment as of now (that is, there are n CRR image bit stream segments in the coded image bit stream), and there is a currently valid reconstructed CRR image, the target area in the currently valid reconstructed CRR image is updated to the obtained reconstructed CRR sub-image to obtain the currently valid reconstructed CRR image. The positional relationship between the target area and the currently valid reconstructed CRR image is the same as the target positional relationship, and the target positional relationship is the positional relationship between the cached reconstructed CRR sub-image and the corresponding CRR image. In this example, the CRR image bit stream segment group includes: the first n CRR image bit stream segments of the display image bit stream.

[0211] The process of determining whether there is a lost CRR image bitstream segment can be implemented by using the position information in the preset syntax identifier. For details, please refer to the above embodiment, and the embodiments of the present application will not be described in detail here.

[0212] In this decoding example, after obtaining a reconstructed CRR sub-image, the reconstructed CRR sub-image is not cached. Instead, the target area in the currently effective reconstructed CRR image is directly replaced with the reconstructed CRR sub-image, which can save the cache occupied by the reconstructed CRR sub-image.

[0213] In Decoding Example 4, upon receiving the first n-1 CRR image bitstream segments, the decoder does not decode them first, but instead caches each received CRR image bitstream segment. Subsequently, if there are n CRR image bitstream segments in the coded image bitstream, the reconstructed CRR image is used as the currently valid reconstructed CRR image. The reconstructed CRR image is obtained by decoding each of the n cached CRR image bitstream segments, obtaining n reconstructed CRR sub-images, and then splicing these n reconstructed CRR sub-images. In this example, the CRR image bitstream segment group includes the first n CRR image bitstream segments corresponding to the same CRR image in the display image bitstream.

[0214] Optionally, the first display image bit stream that selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image.

[0215] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information and / or image information in the preset syntax identifier. For details, please refer to the above embodiments, which will not be described in detail in the embodiments of the present application.

[0216] Decoding Example 5: When the decoder receives the first n-1 CRR image bitstream segments, it does not decode them first, but caches the CRR image bitstream segments received each time. If there are n CRR image bitstream segments in the coded image bitstream, the reconstructed CRR image is used as the currently valid reconstructed CRR image. The reconstructed CRR image is obtained by splicing the n cached CRR image bitstream segments, and then the spliced ​​CRR image bitstream is decoded. If there is a reconstructed CRR image that is in effect before the CRR image bitstream is decoded, the last valid reconstructed CRR image is removed from the cache space when the CRR image bitstream is decoded to obtain the currently valid reconstructed CRR image. In this example, the CRR image bitstream segment group includes: the first n CRR image bitstream segments corresponding to the same CRR image of the display image bitstream.

[0217] The process of determining whether there are any lost CRR image bitstream segments can be implemented by using the quantity information and / or image information in the preset syntax identifier. For details, please refer to the above embodiments, which will not be described in detail in the embodiments of the present application.

[0218] Optionally, the display image bit stream that first selects the currently valid reconstructed CRR image as the reference image may be marked as the enabled first image bit stream of the currently valid reconstructed CRR image, ie, the reference enabled first image bit stream.

[0219] In decoding examples 4 and 5, CRR image bitstream segments are directly cached, and decoding is performed to obtain a reconstructed CRR image after n CRR image bitstream segments have been cached, without the need to cache each reconstructed CRR sub-image. Because the cache space occupied by CRR image bitstream segments is smaller than that occupied by reconstructed CRR sub-images, a certain amount of cache space can be saved.

[0220] The above-mentioned various encoding examples and various decoding examples can be combined. The following uses various combinations as examples to illustrate the encoding and decoding process. In the following encoding and decoding process, five display images d1 to d5 and a corresponding CRR image e are used as examples, and it is assumed that n=3.

[0221] 1. Coding Example 1 Combined with Decoding Example 1, Determining Whether a CRR Image Bitstream Segment Is Lost Based on Data Information

[0222] For example, please refer to Figure 6, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. Referring to the aforementioned encoding example 1, the CRR image e is divided into three CRR sub-images e1 to e3. Intersperse e1 between d1 and d2, intersperse e2 between d2 and d3, and intersperse e3 between d3 and d4 to obtain an image sequence to be encoded. Then, the image sequence to be encoded is encoded, and d1 is first encoded. Since a new CRR image bit stream segment has not been output at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. Select a reference image to perform an encoding operation on d1 to obtain a display image bit stream d1′ and a reconstructed display image (not shown in Figure 6). Perform an encoding operation on e1 to obtain a CRR image bit stream segment e1′ and a reconstructed CRR sub-image e1″, and cache e1″.

[0223] Perform an encoding operation on d2. Since three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to perform an encoding operation on d2 to obtain a display image bit stream d2′ and a reconstructed display image (not shown in Figure 6). Perform an encoding operation on e2 to obtain a CRR image bit stream segment e2′ and a reconstructed CRR sub-image e2″, and cache e2″.

[0224] Perform an encoding operation on d3. Since three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to perform an encoding operation on d3 to obtain a display image bitstream d3′ and a reconstructed display image (not shown in Figure 6). Perform an encoding operation on e3 to obtain a CRR image bitstream segment e3′ and a reconstructed CRR sub-image e3″, and cache e3″.

[0225] At this time, three reconstructed CRR sub-images e1″ to e3″ are cached in the cache space. The second reconstructed CRR image e″ is obtained by splicing e1″ to e3″, and the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0226] An encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". A reference image is selected to perform an encoding operation on d4 to obtain a display image bit stream d4′ and a reconstructed display image (not shown in FIG6 ). An encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". A reference image is selected to perform an encoding operation on d5 to obtain a display image bit stream d5′ and a reconstructed display image (not shown in FIG6 ). At this time, an encoded image bit stream is obtained.

[0227] Referring to the aforementioned decoding example 1, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream. First, d1′ is decoded. Since the new CRR image bit stream segment has not been decoded at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for decoding d1′ is the same as the reference image selected for encoding d1. e1′ is received and a decoding operation is performed on e1′ to obtain and cache e1″. e1′ is the first CRR image bit stream segment. The quantity information indication 3 is parsed from the coded image bit stream, and the count starts from 1.

[0228] A decoding operation is performed on d2′. Since three reconstructed CRR sub-images have not yet been cached at this time, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d2′ to obtain a reconstructed display image d2″. The reference image selected for the decoding operation on d2′ is the same as the reference image selected for the encoding operation on d2. e2′ is received and a decoding operation is performed on e2′ to obtain and cache e2″. The counter is incremented by 1 to obtain 2.

[0229] A decoding operation is performed on d3′. Since three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d3′ to obtain the reconstructed display image d3″. The reference image selected for the decoding operation on d3′ is the same as the reference image selected for the encoding operation on d3. Receive e3′ and perform a decoding operation on e3′ to obtain and cache e3″. The counter is incremented by 1 to obtain 3.

[0230] Subsequently, d4′ is received. d4′ refers to the reconstructed CRR image e″ corresponding to e1″ to e3″. At this time, the number of received CRR image bit stream segments is 3. There are 3 CRR image bit stream segments in the coded image bit stream, and the CRR image bit stream is received successfully.

[0231] At this time, three reconstructed CRR sub-images e1″ to e3″ are cached in the cache space. The second reconstructed CRR image e″ is obtained by splicing e1″ to e3″, and the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0232] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0233] 2. Coding Example 2 Combined with Decoding Example 2, Determining Whether a CRR Image Bitstream Segment Is Lost by Using Data Information

[0234] For example, please refer to Figure 7, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The encoding and decoding process shown in Figure 7 is similar to that of Figure 8. The difference between the encoder side and Figure 8 is that when the encoding operation on e1 begins, the first reconstructed CRR image is removed from the cache space. When the encoding operation is performed on d2, 3 reconstructed CRR sub-images have not been cached, so there is no currently effective reconstructed CRR image. When the encoding operation is performed on d3, 3 reconstructed CRR sub-images have not been cached, so there is no currently effective reconstructed CRR image.

[0235] The difference between the decoder side and Figure 6 is that when the decoding operation of e1′ begins, the first reconstructed CRR image is removed from the cache space. When the decoding operation of d2′ is performed, three reconstructed CRR sub-images have not yet been cached, so there is no currently valid reconstructed CRR image. When the decoding operation of d3′ is performed, three reconstructed CRR sub-images have not yet been cached, so there is no currently valid reconstructed CRR image. For other processes, please refer to the relevant description of Figure 6, and the embodiment of this application will not be repeated here.

[0236] 3. Combining Coding Example 3 with Decoding Example 3: Determining Whether a CRR Image Bitstream Segment Is Missing by Using Position Information

[0237] For example, please refer to Figure 8, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The image sequence to be encoded can refer to the relevant description of Figure 6, and the embodiment of the present application will not be repeated here.

[0238] First, an encoding operation is performed on d1, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform an encoding operation on d1 to obtain a display image bit stream d1′ and a reconstructed display image (not shown in FIG8 ). An encoding operation is performed on e1 to obtain a CRR image bit stream segment e1′ and a reconstructed CRR sub-image e1″. The target area in the currently effective reconstructed CRR image is updated to e1″ to obtain the currently effective reconstructed CRR image.

[0239] Perform encoding operation on d2, and the currently effective reconstructed CRR image is cached in the cache space. Select a reference image to perform encoding operation on d2 to obtain the display image bit stream d2′ and the reconstructed display image (not shown in Figure 8). Perform encoding operation on e2 to obtain the CRR image bit stream segment e2′ and the reconstructed CRR sub-image e2″. Update the target area in the currently effective reconstructed CRR image to e2″ to obtain the currently effective reconstructed CRR image.

[0240] Perform encoding operation on d3, and the currently effective reconstructed CRR image is cached in the cache space. Select a reference image to perform encoding operation on d3 to obtain the display image bit stream d3′ and the reconstructed display image (not shown in Figure 8). Perform encoding operation on e3 to obtain the CRR image bit stream segment e3′ and the reconstructed CRR sub-image e3″. Update the target area in the currently effective reconstructed CRR image to e3″ to obtain the currently effective reconstructed CRR image.

[0241] An encoding operation is performed on d4. The currently valid reconstructed CRR image is cached in the buffer space. A reference image is selected to perform an encoding operation on d4 to obtain a display image bitstream d4′ and a reconstructed display image (not shown in FIG8 ). An encoding operation is performed on d5. The currently valid reconstructed CRR image is cached in the buffer space. A reference image is selected to perform an encoding operation on d5 to obtain a display image bitstream d5′ and a reconstructed display image (not shown in FIG8 ). At this point, an encoded image bitstream is obtained.

[0242] Referring to the aforementioned decoding example 3, the decoder performs decoding operations in sequence according to the order of each bit stream in the coded image bit stream. First, a decoding operation is performed on d1′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for the decoding operation on d1′ is the same as the reference image selected for the encoding operation on d1. e1′ is received at the first position indicated by the position information, and there is no lost CRR image bit stream segment in the coded image bit stream as of the current moment. A decoding operation is performed on e1′ to obtain e1″, and the target area in the currently effective reconstructed CRR image is updated to e1″ to obtain the currently effective reconstructed CRR image.

[0243] A decoding operation is performed on d2′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d2′ to obtain a reconstructed display image d2″. The reference image selected for the decoding operation on d2′ is the same as the reference image selected for the encoding operation on d2. e2′ is received at the second position indicated by the position information, and as of the current moment, there is no lost CRR image bitstream segment in the encoded image bitstream. A decoding operation is performed on e2′ to obtain e2″, and the target area in the currently effective reconstructed CRR image is updated to e2″ to obtain the currently effective reconstructed CRR image.

[0244] A decoding operation is performed on d3′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d3′ to obtain a reconstructed display image d3″. The reference image selected for the decoding operation on d3′ is the same as the reference image selected for the encoding operation on d3. e3′ is received at the third position indicated by the position information. As of the current moment, there is no lost CRR image bitstream segment in the coded image bitstream, so there are 3 CRR image bitstream segments in the coded image bitstream. A decoding operation is performed on e3′ to obtain e3″, and the target area in the currently effective reconstructed CRR image is updated to e3″ to obtain the currently effective reconstructed CRR image.

[0245] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is cached in the cache space. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0246] It should be noted that, when updating the currently effective reconstructed CRR image, the selected target area is related to the reconstructed CRR sub-image in the current cache space, and the target area is not fixed.

[0247] 4. Coding Example 5 Combined with Decoding Example 5: Determining Whether a CRR Image Bitstream Segment Is Lost Based on Image Information

[0248] For example, please refer to Figure 9, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. Referring to the aforementioned encoding example 5, an encoding operation is performed on the CRR image e to obtain a CRR image bit stream e′ and a target reconstructed CRR image e″, and cache e″. The CRR image bit stream is divided to obtain three CRR image bit stream segments e1′ to e3′.

[0249] First, encoding is performed on d1. Since e3′ has not yet been output, the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected and encoded on d1 to obtain the display image bitstream d1′ and the reconstructed display image (not shown in Figure 9). e1′ is inserted after d1′ and output.

[0250] The encoding operation is performed on d2. Since e3′ has not yet been output, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d2 to obtain the display image bitstream d2′ and the reconstructed display image (not shown in Figure 9). e2′ is inserted after d2′ and output.

[0251] The encoding operation is performed on d3. Since e3′ has not yet been output, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected and the encoding operation is performed on d3 to obtain the display image bitstream d3′ and the reconstructed display image (not shown in Figure 9). e3′ is inserted after d3′ and output.

[0252] At this time, the last CRR image bit stream segment e3′ of the three CRR image bit stream segments is output, the first reconstructed CRR image is removed from the buffer space, and e″ is used as the currently valid reconstructed CRR image.

[0253] The encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d4 to obtain the display image bit stream d4′ and the reconstructed display image (not shown in Figure 9). The encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d5 to obtain the display image bit stream d5′ and the reconstructed display image (not shown in Figure 9). At this time, the encoded image bit stream is obtained.

[0254] Referring to the aforementioned decoding example 5, the decoder does not perform decoding operations when receiving the first n-1 CRR image bitstream segments. First, a decoding operation is performed on d1′. Since the new CRR image bitstream segment has not been decoded at this time, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform a decoding operation on d1′ to obtain a reconstructed display image d1″. The reference image selected for the decoding operation on d1′ is the same as the reference image selected for the encoding operation on d1. Then cache the received e1′.

[0255] Decode d2′. Since three reconstructed CRR sub-images have not yet been cached, the currently valid reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to decode d2′ to obtain the reconstructed display image d2″. The reference image selected for decoding d2′ is the same as the reference image selected for encoding d2. Then cache the received e2′.

[0256] Decode d3′. Since three reconstructed CRR sub-images have not yet been cached, the currently valid reconstructed CRR image is still the first reconstructed CRR image. Select a reference image to decode d3′ to obtain the reconstructed display image d3″. The reference image selected for decoding d3′ is the same as the reference image selected for encoding d3. Then cache the received e3′.

[0257] Next, the target image bitstream d4′ is received. Three CRR image bitstream segments e1′ to e3′ are cached in the cache space, and these segments are spliced ​​together. The spliced ​​CRR image bitstream is decoded to obtain the second reconstructed CRR image e″. The size of e″ is equal to the size of e, so there are n CRR image bitstream segments in the coded image bitstream, and the CRR image bitstream is successfully received. At the same time, the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″.

[0258] A decoding operation is performed on d4′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d4′ to obtain a reconstructed display image d4″. The reference image selected for the decoding operation on d4′ is the same as the reference image selected for the encoding operation on d4. A decoding operation is performed on d5′, and the currently effective reconstructed CRR image is e″. A reference image is selected to perform a decoding operation on d5′ to obtain a reconstructed display image d5″. The reference image selected for the decoding operation on d5′ is the same as the reference image selected for the encoding operation on d5.

[0259] V. Combining Encoding Example 1 with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0260] For example, please refer to Figure 10, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. For the description of the encoding process of the encoder in Figure 10, please refer to Figure 8.

[0261] The decoding process shown in Figure 10 is similar to that of Figure 11. The difference between the decoder side and Figure 11 is that when three CRR image bit stream segments e1′ to e3′ are cached in the cache space, e1′ to e3′ are decoded respectively to obtain reconstructed CRR sub-images e1″ to e3″, and then e1″ to e3″ are spliced ​​to obtain the second reconstructed CRR image e″. At the same time, the first reconstructed CRR image is removed from the cache space. The currently effective reconstructed CRR image is e″. For other relevant descriptions about the decoding process of the decoder, please refer to the relevant description of Figure 11, and the embodiments of the present application will not be repeated here.

[0262] VI. Coding Example 4 Combined with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0263] For example, please refer to Figure 11, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The image sequence to be encoded can refer to the relevant description of Figure 6, and the embodiment of the present application will not be repeated here.

[0264] Referring to the aforementioned encoding example 4, an encoding operation is first performed on d1. Since a new CRR image bitstream segment has not yet been output, only the first reconstructed CRR image is stored in the cache space, and the currently effective reconstructed CRR image is the first reconstructed CRR image. A reference image is selected to perform an encoding operation on d1 to obtain a display image bitstream d1′ and a reconstructed display image (not shown in FIG11 ). An encoding operation is performed on e1 to obtain and cache a CRR image bitstream segment e1′.

[0265] The encoding operation is performed on d2. Since the three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d2 to obtain the display image bitstream d2′ and the reconstructed display image (not shown in Figure 11). The encoding operation is performed on e2 to obtain and cache the CRR image bitstream segment e2′.

[0266] The encoding operation is performed on d3. Since the three reconstructed CRR sub-images have not yet been cached, the currently effective reconstructed CRR image is still the first reconstructed CRR image. A reference image is selected to encode d3 to obtain the display image bitstream d3′ and the reconstructed display image (not shown in Figure 11). The encoding operation is performed on e3 to obtain and cache the CRR image bitstream segment e3′.

[0267] At this time, three CRR image bitstream segments e1′ to e3′ are cached in the cache space. e1′ to e3′ are decoded and reconstructed to obtain reconstructed CRR sub-images e1″ to e3″ respectively. e1″ to e3″ are spliced ​​together to obtain the second reconstructed CRR image e″. The first reconstructed CRR image is removed from the cache space, and the currently effective reconstructed CRR image is e″.

[0268] The encoding operation is performed on d4, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d4 to obtain the display image bit stream d4′ and the reconstructed display image (not shown in Figure 9). The encoding operation is performed on d5, and the currently effective reconstructed CRR image is e". The reference image is selected to perform the encoding operation on d5 to obtain the display image bit stream d5′ and the reconstructed display image (not shown in Figure 9). At this time, the encoded image bit stream is obtained.

[0269] For the relevant description of the decoding process of the decoder in Figure 11, please refer to Figure 10, and the embodiment of the present application will not be repeated here.

[0270] VII. Combining Coding Example 6 with Decoding Example 4: Determining Whether a CRR Image Bitstream Segment Is Missing Based on Image Information

[0271] For example, please refer to Figure 12, which is a schematic diagram of another encoding and decoding process provided by an embodiment of the present application. The encoding process shown in Figure 12 is similar to that of Figure 11. The difference between the encoder side and Figure 11 is that e' is cached first after the CRR image bit stream e' is obtained. When the last CRR image bit stream segment e3' among the three CRR image bit stream segments is output, the first reconstructed CRR image is removed from the cache space, and the cached e' is decoded and reconstructed to obtain the second reconstructed CRR image e", and the currently effective reconstructed CRR image is e".

[0272] For the relevant description of the decoding process of the decoder in Figure 12, please refer to Figure 10, and the embodiment of the present application will not be repeated here.

[0273] The order of the methods provided in the embodiments of the present application can be adjusted appropriately, and the process can be increased or decreased accordingly. Any method that can be easily thought of by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application, and the embodiments of the present application do not limit this.

[0274] S403 , when the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, use the currently acquired reconstructed CRR image as a reference image to perform inter-frame prediction decoding on the display image bit stream.

[0275] In an embodiment of the present application, when the decoder performs inter-frame prediction decoding, when encountering a reference-enabled first-image bitstream for reconstructing a CRR image, the decoder determines the reconstructed CRR image of the reference-enabled first-image bitstream as a reference image, thereby ensuring that there is a reference image that matches the display image when performing inter-frame prediction decoding on the display image bitstream, avoiding decoding failure problems caused by mismatch between the reference image and the display image bitstream, and improving the decoding success rate.

[0276] Optionally, the coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1;

[0277] Performing a decoding operation on the coded image bit stream and obtaining a reconstructed CRR image based on the operation result, including:

[0278] If there are n CRR image bit stream segments in the coded image bit stream, and based on the image information, it is determined that the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, the n CRR image bit stream segments are decoded to obtain the reconstructed CRR image.

[0279] In the embodiment of the present application, the decoder obtains the reconstructed CRR image only when the first image bit stream is enabled for the CRR image. In this way, it can be ensured that the CRR image bit stream fragment is cached, the caching cost is low, and it is conducive to performance improvement.

[0280] Optionally, the coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1;

[0281] Performing a decoding operation on the coded image bit stream and obtaining a reconstructed CRR image based on the operation result, including:

[0282] If there are n CRR image bit stream segments in the coded image bit stream, the n CRR image bit stream segments are decoded to obtain a reconstructed CRR image.

[0283] In the embodiment of the present application, the decoder receives a complete CRR slice bit stream and immediately obtains the reconstructed CRR image, so that it can be used for decoding in a more timely manner.

[0284] Optionally, after performing a decoding operation on the coded image bit stream and obtaining a reconstructed CRR image based on the operation result, the method further includes:

[0285] When the currently processed display image bitstream is the non-reference enabled first-image bitstream of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image bitstream is used as the reference image to perform inter-frame prediction decoding on the display image bitstream.

[0286] In an embodiment of the present application, if there is a display image bit stream of the previous reconstructed CRR image still in use, the display image bit stream will be waited until the CRR image is received to enable the first image bit stream, and then the currently acquired reconstructed CRR image will be used as a reference image to ensure that the display image bit stream of the previous reconstructed CRR image can be decoded successfully.

[0287] Exemplarily, after obtaining the current reconstructed CRR image, if there is still a display image bitstream that refers to the previous reconstructed CRR image, the CRR image bitstream slice (including all bitstream slices of the CRR image and its corresponding sequence parameter set, image parameter set, image header and other information) is temporarily stored until the CRR image is received and the first image bitstream is enabled, and then the CRR image bitstream is decoded to obtain the current reconstructed CRR image. Then, the decoded image buffer is updated, the previous reconstructed CRR image in the current decoded image buffer is removed (if any), and the current reconstructed CRR image is moved into the decoded image buffer.

[0288] Optionally, the reference image used for inter-frame prediction coding is stored in a designated buffer;

[0289] The currently acquired reconstructed CRR image is used as a reference image, including:

[0290] In a case where the currently processed display image bit stream is a reference-enabled first-image bit stream of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

[0291] Similar to the encoder, updating the designated buffer with the currently acquired reconstructed CRR image may be directly stored in the designated buffer, replacing the historical reconstructed CRR image in the designated buffer.

[0292] In an embodiment of the present application, the reconstructed CRR image serving as the reference image is stored in a designated buffer, thereby updating the designated buffer with the currently acquired reconstructed CRR image. This allows the reference image to be determined without the need for additional marking or information addition, which is more efficient.

[0293] For example, after obtaining the current reconstructed CRR image, if there is a display image bit stream that refers to the previous reconstructed CRR image, the current reconstructed CRR image is temporarily stored, for example, cached, until the CRR image is received to enable the first image bit stream, and then the decoded image buffer is updated, for example, the previous reconstructed CRR image in the current decoded image buffer is removed, and the current reconstructed CRR image is moved into the decoded image buffer.

[0294] The above mainly introduces the encoding and decoding method provided by the embodiment of the present application from the perspective of the device. It is understandable that, in order to implement the above functions, the device includes a hardware structure and / or software module corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in a hardware or computer software driven hardware manner depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0295] The embodiment of the present application can divide the functional modules of the device according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present application is schematic and is only a logical function division. In actual implementation, there may be other division methods.

[0296] According to the method provided in the embodiments of the present application, the present application also provides a computer program product, which includes computer program code. When the computer program code runs on a computer, it enables the computer to execute any of the methods described in the embodiments of the present application.

[0297] The present application also provides a computer-readable storage medium. All or part of the processes in the above-mentioned method embodiments can be completed by a computer or a device with encoding and decoding capabilities executing a computer program or instruction to control the relevant hardware. The computer program or the group of instructions can be stored in the above-mentioned computer-readable storage medium. When executed, the computer program or the group of instructions can include the processes of the above-mentioned method embodiments. The computer-readable storage medium can be the internal storage unit of the control terminal of any of the above-mentioned embodiments, such as the hard disk or memory of the control terminal. The above-mentioned computer-readable storage medium can also be an external storage device of the above-mentioned control terminal, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the above-mentioned control terminal. Furthermore, the above-mentioned computer-readable storage medium can also include both the internal storage unit of the above-mentioned control terminal and an external storage device. The above-mentioned computer-readable storage medium is used to store the above-mentioned computer program or instruction and other programs and data required by the above-mentioned control terminal. The above-mentioned computer-readable storage medium can also be used to temporarily store data that has been output or is to be output.

[0298] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0299] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0300] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0301] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0302] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0303] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.

[0304] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A coding method, characterized in that: The method comprises: After performing an encoding operation on the cross-random access point reference CRR image and a plurality of display images corresponding to the CRR image to obtain an encoded image bit stream, based on the encoding operation, a reconstructed CRR image is obtained; In a case where the currently processed display image is a reference enabled first image of the currently acquired reconstructed CRR image, the currently acquired reconstructed CRR image is used as a reference image to perform inter-frame prediction coding on the display image; Among them, the encoded image bitstream includes: multiple CRR image bitstream segments in an interleaved order, multiple display image bitstreams and image information; the image information is used to indicate the reference enabled first image, and the reference enabled first image includes the first image in the display image that references the reconstructed CRR image.

2. The method according to claim 1, characterized in that The reference image used in the inter-frame prediction coding is stored in a designated buffer; In the case where the currently processed display image is the reference enabled first image of the currently acquired reconstructed CRR image, using the currently acquired reconstructed CRR image as a reference image includes: In a case where the currently processed display image is a reference-enabled first image of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

3. The method according to claim 2, characterized in that The updating of the designated buffer using the currently acquired reconstructed CRR image includes: In the case where a historically reconstructed CRR image is acquired from the designated buffer, the historically reconstructed CRR image in the designated buffer is replaced with the currently acquired reconstructed CRR image.

4. The method according to claim 2, characterized in that: The updating of the designated buffer using the currently acquired reconstructed CRR image includes: In the case that the historical reconstructed CRR image is not acquired from the designated buffer, the currently acquired reconstructed CRR image is stored in the designated buffer.

5. The method according to any one of claims 1 to 4, characterized in that After obtaining the reconstructed CRR image based on the encoding operation, the method further includes: When the currently processed display image is the non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image is used as the reference image to perform inter-frame prediction encoding on the display image.

6. A decoding method, characterized in that: The method comprises: Receive a coded image bitstream, the coded image bitstream comprising interleaved and ordered cross-random access point reference CRR image bitstream segments, a plurality of display image bitstreams, quantity information, and image information; the image information is used to indicate a reference enabled first image, the reference enabled first image comprising a first image in the display image that references the reconstructed CRR image; Performing a decoding operation on the encoded image bit stream, and obtaining a reconstructed CRR image based on the operation result; In the case where the currently processed display image bit stream is the reference enabled first-image bit stream of the currently acquired reconstructed CRR image, the currently acquired reconstructed CRR image is used as a reference image to perform inter-frame prediction decoding on the display image bit stream.

7. The method according to claim 6, characterized in that The coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; The decoding operation is performed on the coded image bit stream, and based on the operation result, the reconstructed CRR image is obtained, including: If the n CRR image bit stream fragments exist in the encoded image bit stream, and based on the image information, it is determined that the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, the n CRR image bit stream fragments are decoded to obtain the reconstructed CRR image.

8. The method according to claim 6, characterized in that The coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; The decoding operation is performed on the coded image bit stream, and based on the operation result, the reconstructed CRR image is obtained, including: If the n CRR image bit stream segments exist in the coded image bit stream, the n CRR image bit stream segments are decoded to obtain a reconstructed CRR image.

9. The method according to any one of claims 6 to 8, characterized in that: After performing the decoding operation on the encoded image bit stream and obtaining the reconstructed CRR image based on the operation result, the method further includes: When the currently processed display image bitstream is the non-reference enabled first-image bitstream of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image bitstream is used as the reference image to perform inter-frame prediction decoding on the display image bitstream.

10. The method according to any one of claims 6 to 8, characterized in that: The reference image used in the inter-frame prediction coding is stored in a designated buffer; The taking the currently acquired reconstructed CRR image as a reference image comprises: In a case where the currently processed display image bitstream is a reference-enabled first-image bitstream of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

11. A coding device, characterized in that: The device comprises: A reconstructed image acquisition module, configured to perform an encoding operation on a cross-random access point reference CRR image and a plurality of display images corresponding to the CRR image to obtain an encoded image bit stream, and then acquire a reconstructed CRR image based on the encoding operation; A reference image determination module, configured to, when a currently processed display image is a reference enabled first image of a currently acquired reconstructed CRR image, use the currently acquired reconstructed CRR image as a reference image to perform inter-frame prediction coding on the display image; Among them, the encoded image bitstream includes: multiple CRR image bitstream segments in an interleaved order, multiple display image bitstreams and image information; the image information is used to indicate the reference enabled first image, and the reference enabled first image includes the first image in the display image that references the reconstructed CRR image.

12. The device according to claim 11, characterized in that The reference image used in the inter-frame prediction coding is stored in a designated buffer; The reference image determination module is specifically used for: In a case where the currently processed display image is a reference-enabled first image of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

13. The device according to claim 12, characterized in that The reference image determination module is specifically used for: In the case where a historically reconstructed CRR image is acquired from the designated buffer, the historically reconstructed CRR image in the designated buffer is replaced with the currently acquired reconstructed CRR image.

14. The device according to claim 12, characterized in that The reference image determination module is specifically used for: In the case that the historical reconstructed CRR image is not acquired from the designated buffer, the currently acquired reconstructed CRR image is stored in the designated buffer.

15. The device according to any one of claims 11 to 14, characterized in that The reference image determination module is further used for: When the currently processed display image is the non-reference enabled first image of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image is used as the reference image to perform inter-frame prediction encoding on the display image.

16. A decoding device, characterized in that: The device comprises: A transceiver module is used to receive a coded image bit stream, wherein the coded image bit stream includes interleaved and ordered cross-random access point reference CRR image bit stream segments, multiple display image bit streams, quantity information, and image information; the image information is used to indicate a reference enabled first image, and the reference enabled first image includes a first image in the display image that references the reconstructed CRR image; A decoding module is used to perform a decoding operation on the encoded image bit stream and obtain a reconstructed CRR image based on the operation result; when the display image bit stream currently being processed is a reference enabled first-image bit stream of the currently acquired reconstructed CRR image, the currently acquired reconstructed CRR image is used as a reference image to perform inter-frame prediction decoding on the display image bit stream.

17. The device according to claim 16, characterized in that The coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; The decoding module is specifically used for: If the n CRR image bit stream fragments exist in the encoded image bit stream, and based on the image information, it is determined that the currently processed display image bit stream is the reference enabled first image bit stream of the currently acquired reconstructed CRR image, the n CRR image bit stream fragments are decoded to obtain the reconstructed CRR image.

18. The device according to claim 16, characterized in that The coded image bit stream further includes quantity information, where the quantity information is used to indicate n, where n is an integer greater than 1; The decoding module is specifically used for: If the n CRR image bit stream segments exist in the coded image bit stream, the n CRR image bit stream segments are decoded to obtain a reconstructed CRR image.

19. The device according to any one of claims 16 to 18, characterized in that The decoding module is further used for: After the decoding operation is performed on the encoded image bit stream and the reconstructed CRR image is obtained based on the operation result, when the currently processed display image bit stream is a non-reference enabled first-image bit stream of the currently acquired reconstructed CRR image, the reconstructed CRR image used by the last processed display image bit stream is used as a reference image to perform inter-frame prediction decoding on the display image bit stream.

20. The device according to any one of claims 16 to 18, characterized in that The reference image used in the inter-frame prediction coding is stored in a designated buffer; The decoding module is specifically used for: In a case where the currently processed display image bitstream is a reference-enabled first-image bitstream of the currently acquired reconstructed CRR image, the designated buffer is updated using the currently acquired reconstructed CRR image.

21. An electronic device, characterized in that: include: Processor and memory; The processor is connected to the memory; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 10.

22. A computer-readable storage medium, characterized in that: The method comprises a computer program, wherein when the computer program is run on an electronic device, the electronic device executes the method according to any one of claims 1 to 10.

23. A chip, characterized in that: It comprises one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the signal to the processor, the signal comprising a computer instruction stored in the memory; when the processor executes the computer instruction, the electronic device executes the method described in any one of claims 1 to 10.

24. A computer program product, characterized in that The invention comprises a computer program, which, when executed by an electronic device, enables the electronic device to execute the method according to any one of claims 1 to 10.

Citation Information

Patent Citations

  • Image encoding / decoding method, apparatus and an image processing method, system

    CN101389034A

  • Image encoding and decoding method and related device

    CN104768011A

  • Image encoding / decoding method and device

    CN108243339A

  • Video decoding method and device, video encoding method and device, equipment and storage medium

    CN111526368A

  • Moving image decoding method, decoding device and decoding program

    JP2010041353A