Decoding and coding method, device and equipment

By dividing the permission levels and filling the predicted reference pixels at the encoding and decoding ends, the problem of image information permission protection is solved, ensuring that users with low permission levels can only see image information at their permission level, and achieving accurate image decoding and privacy protection.

CN120751146APending Publication Date: 2025-10-03HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510887685.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-05-15
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

Existing technologies make it difficult to implement permission level division and privacy protection for image information at the decoding end, resulting in the leakage of high-privilege level information to low-privilege level users.

Method used

By dividing the image frames into permission levels at the encoding end, filling each processing block with prediction reference pixels with a permission level higher than its corresponding one, and encoding the prediction mode information and residual parameter information of the processing blocks of the same permission level, a permission code stream is generated; when decoding the lowest permission level processing block at the decoding end, the prediction reference pixels of the high permission level are filled in to ensure that users with low permission levels cannot view information with high permission levels.

Benefits of technology

This ensures that low-privilege users can accurately view image information of their permission level without leaking high-privilege information, thereby improving the accuracy of image decoding and privacy protection capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120751146A_ABST
    Figure CN120751146A_ABST
Patent Text Reader

Abstract

The invention provides a decoding method, a coding method, a decoding device, a coding device and equipment. The decoding method comprises the steps that image frame code streams of the same frame of image are acquired, the image frame code streams comprise at least two permission code streams, and different permission code streams correspond to different permission levels; decoding the permission code stream corresponding to the lowest permission level to obtain prediction mode information of each lowest permission level processing block; if the target permission level of the user is the lowest permission level, for each lowest permission level processing block, obtaining a prediction reference pixel of the lowest permission level processing block; filling the prediction reference pixels of which the authority levels are higher than the lowest authority level; and according to the prediction mode information and the prediction reference pixel of the lowest permission level processing block, predicting to obtain a prediction block corresponding to the lowest permission level processing block.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of coding and decoding technology, and in particular to a decoding and encoding method, device and equipment thereof. Background Art

[0002] In order to save space, images are compressed and encoded before transmission. The complete image encoding process can include transformation, prediction, quantization, entropy coding, filtering and other processes.

[0003] In some scenarios, it is necessary to set at least two permission levels on the decoding end, and divide the image into permission areas corresponding to different permission levels. Users of any permission level can only view image information within the permission area corresponding to a level not higher than that of the current permission level.

[0004] Based on this, the present disclosure aims to provide a coding and decoding solution that can be applied in the above scenarios and has high accuracy. Summary of the Invention

[0005] In view of this, the present application provides a decoding, encoding method, device and equipment thereof, which can encode and decode image frames that are internally divided into different permission areas, so that users of any permission level can only view image information within the permission area not higher than that corresponding to the current permission level, and the accuracy of the encoding and decoding scheme is relatively high.

[0006] The present application provides a decoding method, applied to a decoding end, comprising:

[0007] Obtain at least two permission code streams, with different permission code streams corresponding to different permission levels;

[0008] Decoding the permission code stream corresponding to the lowest permission level to obtain prediction mode information of each lowest permission level processing block;

[0009] If the user's target permission level is the lowest permission level, for each lowest permission level processing block, obtain the predicted reference pixels of the lowest permission level processing block; fill the predicted reference pixels with a permission level higher than the lowest permission level;

[0010] A prediction block corresponding to the lowest privilege level processing block is predicted based on the prediction mode information and the prediction reference pixels of the lowest privilege level processing block.

[0011] This application provides an encoding method, applied to an encoding end, including:

[0012] Acquire an image frame, wherein the image frame is divided into a plurality of processing blocks, wherein the plurality of processing blocks include processing blocks corresponding to at least two authority levels;

[0013] For each processing block, obtaining prediction mode information of the processing block and obtaining prediction reference pixels of the processing block, and filling the prediction reference pixels with a higher authority level than the authority level corresponding to the processing block;

[0014] According to the processing block and the prediction reference pixels of the processing block, a prediction block corresponding to the processing block is predicted to determine prediction mode information of the processing block; and according to the processing block and the prediction block, residual parameter information of the processing block is obtained;

[0015] For each permission level, encoding the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain the permission code stream corresponding to the permission level;

[0016] The image frame code stream including the permission code stream corresponding to each permission level is sent to the decoding end.

[0017] The present application provides a decoding device, applied to a decoding end, comprising:

[0018] The acquisition module obtains at least two permission code streams, and different permission code streams correspond to different permission levels;

[0019] A decoding module decodes the permission code stream corresponding to the lowest permission level and obtains prediction mode information of each lowest permission level processing block;

[0020] The processing module obtains prediction reference pixels of each processing block of the lowest permission level if the target permission level of the user is the lowest permission level; and fills the prediction reference pixels with permission levels higher than the lowest permission level;

[0021] The prediction module predicts a prediction block corresponding to the lowest authority level processing block according to the prediction mode information and prediction reference pixels of the lowest authority level processing block.

[0022] The present application provides an encoding device, applied to an encoding end, comprising:

[0023] An acquisition module, configured to acquire an image frame, wherein the image frame is divided into a plurality of processing blocks, wherein the plurality of processing blocks include processing blocks corresponding to at least two authority levels;

[0024] A processing module, for each processing block, obtains prediction mode information of the processing block and prediction reference pixels of the processing block, and fills the prediction reference pixels with a higher authority level than the authority level corresponding to the processing block;

[0025] A prediction module, which predicts a prediction block corresponding to the processing block based on the processing block and the prediction reference pixels of the processing block to determine prediction mode information of the processing block; and obtains residual parameter information of the processing block based on the processing block and the prediction block;

[0026] An encoding module, for each permission level, encodes the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain a permission code stream corresponding to the permission level;

[0027] The sending module sends the image frame code stream including the permission code stream corresponding to each permission level to the decoding end.

[0028] The present application provides a decoding end device, comprising: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the above-mentioned decoding method.

[0029] The present application provides an encoding end device, comprising: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the above-mentioned encoding method.

[0030] The present application provides an electronic device, comprising: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the above-mentioned decoding method or encoding method.

[0031] The present application provides a machine-readable storage medium, on which a number of computer instructions are stored. When the computer instructions are executed by a processor, the above-mentioned decoding method or encoding method is implemented.

[0032] In the above technical solution, if the image frame includes permission areas corresponding to different permission levels, a plurality of processing blocks are divided in the image frame. Some of the processing blocks correspond to higher permission levels, while some correspond to lower permission levels. There may be one or more processing blocks corresponding to the same permission level. During the encoding and decoding process, it is necessary to consider the privacy of the image information in the processing blocks of higher permission levels relative to the lower permission levels, that is, it is necessary to at least ensure that the prediction reference pixels of the higher permission level cannot be referenced in the prediction process of the processing blocks of the lower permission level. Therefore, at the encoding end, for each processing block, it is necessary to fill the prediction reference pixels of the processing block with the prediction reference pixels whose permission level is higher than the permission level corresponding to the processing block, and perform prediction based on the filled prediction reference pixels. The prediction mode information and residual parameter information of each processing block corresponding to the same permission level are encoded to obtain the permission code stream corresponding to the permission level, thereby sending the image frame code stream including the permission code stream corresponding to each permission level to the decoding end.

[0033] On the decoding end, after receiving the aforementioned image frame code stream, it can decode at least the permission code stream corresponding to the lowest permission level to obtain prediction mode information for the lowest permission level processing block. If the permission level of the user at the decoding end is the lowest permission level, then for each lowest permission level processing block, it is necessary to fill the prediction reference pixels of the lowest permission level processing block with prediction reference pixels with a permission level higher than the lowest permission level, and perform prediction based on the prediction mode information of the lowest permission level processing block and the filled prediction reference pixels.

[0034] Through the above technical solution, when permission protection is enabled on the decoding end (i.e., privacy protection is performed on image information with a permission level higher than that of the user on the decoding end), when the decoding end decodes the image frame code stream, at least in the prediction process for the processing block with the lowest permission level, the prediction reference pixels of non-lowest permission levels will not be referenced, but will be filled in. This ensures that the accuracy of the image information of the lowest permission level displayed to the user by the decoding end is ensured without exposing the image information of non-lowest permission levels to the user with the lowest permission level. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1 It is a schematic diagram of the video coding framework;

[0036] Figure 2A-2B It is a schematic diagram of the video coding framework;

[0037] Figure 3 is a flowchart of a decoding method in one embodiment of the present application;

[0038] Figures 4A-4C This is a schematic diagram of horizontal filling in one embodiment of the present application;

[0039] Figures 5A-5C is a schematic diagram of vertical filling in one embodiment of the present application;

[0040] Figure 6 This is a schematic diagram of a process for decoding mosaic information parsing at a decoding end in one embodiment of the present application;

[0041] Figure 7 is a flowchart of an encoding method in one embodiment of the present application;

[0042] Figure 8A This is a hardware structure diagram of a decoding end device in one embodiment of the present application;

[0043] Figure 8B This is a hardware structure diagram of an encoding terminal device in one embodiment of the present application. DETAILED DESCRIPTION

[0044] The terms used in the embodiments of the present application are only for the purpose of describing specific embodiments, rather than for limiting the present application. The singular forms of "a", "said" and "the" used in the embodiments of the present application and the claims are also intended to include plural forms, unless the context clearly indicates other meanings. It should also be understood that the term "and / or" used herein refers to any or all possible combinations of one or more associated listed items. It should be understood that although the embodiments of the present application may use the terms first, second, etc. to describe various information, these information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of the embodiments of the present application, the first information may also be referred to as the second information, and the second information may also be referred to as the first information, depending on the context. In addition, the word "if" used can be interpreted as "at the time of...", or "when...", or "in response to determination".

[0045] Here we first introduce the video coding framework used in the technical solution provided by this disclosure. Figure 1 As shown in FIG, a schematic diagram of a video encoding framework of an encoding end can be used to implement the encoding end processing flow of the present application, and a schematic diagram of a video decoding framework can be used with FIG. Figure 1 Similarly, the video decoding framework can be used to implement the decoding end processing flow of this application.

[0046] See also Figure 1As shown, the video encoding framework can include modules such as prediction, transformation, quantization, entropy encoder, inverse quantization, inverse transformation, reconstruction, and filtering. On the encoding side, the coordination between these modules enables the encoding process. Furthermore, the video decoding framework can include modules such as prediction, transformation, quantization, entropy decoder, inverse quantization, inverse transformation, reconstruction, and filtering. On the decoding side, the coordination between these modules enables the decoding process.

[0047] Prediction includes intra-frame prediction and inter-frame prediction. Intra-frame prediction uses the prediction reference pixels around the current processing block to perform prediction and remove spatial redundancy; inter-frame prediction uses the prediction reference pixels on the time domain reference frame to perform prediction and remove temporal redundancy.

[0048] Transformation linearly maps the residual information in the spatial domain to a transform domain (such as the frequency domain). The goal is to concentrate the energy and remove the frequency domain correlation of the signal. Theoretically, the transformation matrix is ​​reversible and does not cause signal loss.

[0049] Quantization is a "many-to-one" mapping process that is irreversible and will cause signal loss; the advantage is that it can significantly reduce the signal value range, allowing the encoder to give a good approximation of the original signal with a small number of symbols, thereby improving the compression rate.

[0050] Entropy coding is a lossless coding method based on the principle of information entropy. It converts a series of element symbols used to represent a video sequence (such as transform coefficients and mode information) into a binary code stream, removing the statistical redundancy of these video element symbols.

[0051] The filtering module enhances the reconstructed image, aiming to make the reconstructed image closer to the original image while reducing the effects of blocking and ringing effects, thereby improving the quality of the reconstructed image.

[0052] In addition, numerous coding tools have been proposed for various modules on the encoding side, and each tool often has multiple modes. For different video sequences, the coding tools that achieve optimal coding performance are often different. Therefore, during the encoding process, RDO (Rate-Distortion Optimize) is often used to compare the coding performance of different tools or modes to select the optimal mode. After determining the optimal tool or mode, the decision information for the tool or mode is transmitted by encoding marker information in the bitstream. Although this method brings higher coding complexity, it can adaptively select the optimal mode combination for different content to achieve the optimal coding performance. The decoding side obtains relevant mode information by directly parsing the marker information, which has a smaller impact on complexity.

[0053] The following combination Figure 2A and Figure 2B Further introduction to the framework structure of the encoding end and decoding end. Figure 2A As shown in FIG, a schematic block diagram of an example for implementing an encoding end is shown. Figure 2A In the embodiment, the encoding end includes a prediction processing unit, a residual calculation unit, a transform processing unit, a quantization unit, an encoding unit, an inverse quantization unit (also referred to as an inverse quantization unit), an inverse transform processing unit (also referred to as an inverse transform processing unit), a reconstruction unit (or a reconstruction unit), and a filter unit. In one example, the encoding end may further include a buffer and a decoded image buffer, wherein the buffer is used to cache the reconstructed block output by the reconstruction unit, and the decoded image buffer is used to cache the filtered reconstructed block output by the filter unit.

[0054] The input of the encoding end (also called an encoder) is a processing block of an image (which can be called an image to be encoded). The encoding end also includes a segmentation unit (not shown in the figure), which is used to segment the image to be encoded into multiple processing blocks. The encoding end is used to encode the image to be encoded block by block to complete the encoding of the image to be encoded, for example, performing the encoding process on each processing block. The prediction processing unit is used to receive or obtain the processing block and reconstructed image data, and predict the current block based on the relevant data in the reconstructed image data to obtain a prediction block corresponding to the processing block. The prediction processing unit includes an inter-frame prediction unit, an intra-frame prediction unit and a mode selection unit. The mode selection unit is used to select an intra-frame prediction mode or an inter-frame prediction mode. If the intra-frame prediction mode is selected, the prediction process is performed by the intra-frame prediction unit. If the inter-frame prediction mode is selected, the prediction process can be performed by the inter-frame prediction unit.

[0055] The residual calculation unit is configured to calculate the residual between the actual value of the processing block and the prediction block corresponding to the processing block, thereby obtaining a residual block. For example, the residual calculation unit may perform a pixel-by-pixel transformation by subtracting the pixel values ​​of the prediction block from the pixel values ​​of the processing block. The transform processing unit is configured to perform a transform on the residual block, such as a discrete cosine transform (DCT) or discrete sine transform (DST), to obtain transform coefficients in the transform domain. The transform coefficients may also be referred to as transform residual coefficients, which may represent the residual block in the transform domain. The quantization unit is configured to quantize the transform coefficients by applying scalar quantization or vector quantization to obtain quantized transform coefficients, also referred to as quantized residual coefficients. The quantization process may reduce the bit depth associated with some or all transform coefficients. For example, during quantization, an n-bit transform coefficient may be rounded down to an m-bit transform coefficient, where n is greater than m. The degree of quantization may be modified by adjusting the quantization parameter (QP). For example, for scalar quantization, different scales may be applied to achieve finer or coarser quantization. A smaller quantization step size corresponds to finer quantization, and a larger quantization step size corresponds to coarser quantization. The appropriate quantization step size is indicated by a quantization parameter (QP).

[0056] The coding unit is used to encode the quantized residual coefficients, output the encoded image data in the form of an encoded bit stream (i.e., the encoding result of the current processing block), and then transmit the encoded bit stream to the decoder, or store it and subsequently transmit it to the decoder or use it for retrieval. The coding unit can also be used to encode other syntax elements of the current processing block, such as encoding the prediction mode into the bit stream, etc. The coding algorithm includes but is not limited to variable length coding (VLC) algorithm, context adaptive VLC (CAVLC) algorithm, arithmetic coding algorithm, context adaptive binary arithmetic coding (CABAC) algorithm, syntax-based context-adaptive binary arithmetic coding (SBAC) algorithm, and probability interval partitioning entropy (PIPE) algorithm.

[0057] The inverse quantization unit is configured to inversely quantize the quantized coefficients to obtain inversely quantized coefficients. The inverse quantization is the reverse application of the quantization unit, for example, applying an inverse quantization scheme of the quantization scheme applied by the quantization unit based on or using the same quantization step size as the quantization unit. The inversely quantized coefficients may also be referred to as inversely quantized residual coefficients. The inverse transform processing unit is configured to inversely transform the inversely quantized coefficients. It should be understood that the inverse transform is the reverse application of the transform processing unit. For example, the inverse transform may include an inverse discrete cosine transform (DCT) or an inverse discrete sine transform (DST) to obtain an inversely transformed block in the pixel domain (or sample domain). The inversely transformed block may also be referred to as an inversely transformed inversely quantized block or an inversely transformed residual block. The reconstruction unit is configured to add the inversely transformed block (i.e., the inversely transformed residual block) to the prediction block to obtain a reconstructed block in the sample domain. The reconstruction unit may be a summer, for example, adding sample values ​​(i.e., pixel values) of the residual block to sample values ​​of the prediction block. The reconstructed block output by the reconstruction unit may be subsequently used to predict other processed blocks, for example, in an intra-frame prediction mode.

[0058] The filter unit (or simply "filter") is used to filter the reconstructed block to smoothly perform pixel conversion or improve image quality. The filter unit can be a loop filter unit, which is intended to represent one or more loop filters. For example, the filter unit can be a deblocking filter, a sample-adaptive offset (SAO) filter, or other filters, such as a bilateral filter, an adaptive loop filter (ALF), or a sharpening or smoothing filter, or a collaborative filter. In one example, the filtered block output by the filter unit can be subsequently used to predict other processing blocks, for example, in an inter-frame prediction mode, without limitation.

[0059] See also Figure 2B , a schematic block diagram of an example of a decoding end (also referred to as a decoder) for implementing an embodiment of the present application is shown. The decoder is used to receive, for example, encoded image data (i.e., an encoded bit stream, for example, including an encoded bit stream of a processing block and associated syntax elements) encoded by an encoder to obtain a decoded image. The decoder includes a decoding unit, an inverse quantization unit, an inverse transform processing unit, a prediction processing unit, a reconstruction unit, and a filter unit. In some examples, the decoder may perform substantially the same Figure 2A The decoding pass is the inverse of the encoding pass described by the encoder. In one example, the decoder may further include a buffer and a decoded image buffer, wherein the buffer is used to cache the reconstructed block output by the reconstruction unit, and the decoded image buffer is used to cache the filtered reconstructed block output by the filter unit.

[0060] The decoding unit is configured to decode the encoded image data to obtain quantized coefficients and / or decoded coding parameters (e.g., the decoded parameters may include any one or all of inter-frame prediction parameters, intra-frame prediction parameters, filter parameters, and / or other syntax elements). The decoding unit is further configured to forward the decoded coding parameters to the prediction processing unit so that the prediction processing unit performs a prediction process based on the coding parameters. The inverse quantization unit may function similarly to the inverse quantization unit of the encoder and is configured to inversely quantize (i.e., inverse quantize) the quantized coefficients decoded by the decoding unit. The inverse transform processing unit may function similarly to the inverse transform processing unit of the encoder, and the reconstruction unit (e.g., a summer) may function similarly to the reconstruction unit of the encoder and is configured to inversely transform (e.g., using an inverse DCT, an inverse integer transform, or a conceptually similar inverse transform process) the quantized coefficients to obtain an inverse transform block (also referred to as an inverse transform residual block). The inverse transform block is the pixel-domain residual block for the current coding unit.

[0061] A prediction processing unit is configured to receive or obtain encoded image data (e.g., an encoded bitstream of a current coding unit) and reconstructed image data. The prediction processing unit may also receive or obtain prediction-related parameters and / or information about a selected prediction mode (i.e., decoded coding parameters) from, for example, a decoding unit, and predict the current coding unit based on the relevant data in the reconstructed image data and the decoded coding parameters to obtain a prediction block for the current coding unit. In one example, the prediction processing unit may include an inter-frame prediction unit, an intra-frame prediction unit, and a mode selection unit. The mode selection unit is configured to select an intra-frame prediction mode or an inter-frame prediction mode. If the intra-frame prediction mode is selected, the intra-frame prediction unit performs the prediction process. If the inter-frame prediction mode is selected, the inter-frame prediction unit performs the prediction process.

[0062] The reconstruction unit is used to add the inverse transform block (i.e., the inverse transform residual block) to the prediction block to obtain a reconstructed block in the sample domain, such as adding the sample values ​​of the inverse transform residual block to the sample values ​​of the prediction block. The filter unit is used to filter the reconstructed block.

[0063] It should be understood that in the encoder and decoder, the processing results of a certain link can also be further processed and output to the next link. For example, after the interpolation filtering, motion vector derivation or filtering links, the processing results of the corresponding link can be further clipped or shifted.

[0064] In addition, it should be noted that for an image frame, permission areas of different permission levels can be divided inside it. For example, if two permission levels are set, then an image frame can be divided into two permission areas. If five permission levels are set, then an image frame can be divided into five permission areas. The purpose of setting different permission areas may be, for example, the need for image information security. Specifically, an image may include license plate information, local area information of the human body, text information, screen information, etc. If users of all permission levels can view these image information, there will be security risks. Based on the user's permission level, the image information needs to be divided into permission levels, so that users with lower permission levels cannot view image information higher than this permission level, but users with higher permission levels can view image information not higher than this permission level.

[0065] To achieve the above objectives, since the scope of a permission region can be irregular, the image frame can be divided into M*N image blocks to define the scope of the permission region. Each image block can include one or more pixels. The image blocks covered by each permission region can be determined. It is easy to understand that the finer the granularity of the image blocks, the more precise the definition of the permission region. Based on the permission region to which each image block belongs, the permission level of the image block can be marked. The permission level of each pixel depends on the permission level of the image block marked with the pixel.

[0066] In the process of encoding and decoding an image frame, the basic processing object is called a processing block. For example, an image frame can be divided into multiple processing blocks (one processing block can be recorded as a CU). For a single processing block, the permission levels of each pixel within it are not necessarily the same. Generally speaking, if a processing block contains pixels of different permission levels, it can be determined whether the processing block can be further divided. If it can be further divided, after the processing block is further divided, it is determined whether the divided processing block still contains pixels of different permission levels. If a processing block that cannot be further divided contains pixels of different permission levels, the relatively highest permission level among these permission levels is marked as the permission level of the processing block. After obtaining the reconstructed block corresponding to the processing block, the reconstructed block can be filtered. Usually, multiple reconstructed blocks can be combined into an image frame or a large processing block (a large processing block can be recorded as an LCU), and the image frame or the large processing block is filtered one by one to reconstruct the pixels.

[0067] In the specific implementation of the solution, if the image frame includes permission areas corresponding to different permission levels, a plurality of processing blocks are divided in the image frame. Some of the processing blocks correspond to higher permission levels, while some correspond to lower permission levels. There may be one or more processing blocks corresponding to the same permission level. During the encoding and decoding process, it is necessary to consider the privacy of the image information in the processing blocks of higher permission levels relative to the lower permission levels, that is, it is necessary to at least ensure that the prediction reference pixels of the higher permission level cannot be referenced in the prediction process of the processing blocks of the lower permission level. Therefore, at the encoding end, for each processing block, it is necessary to fill the prediction reference pixels of the processing block with prediction reference pixels whose permission level is higher than the permission level corresponding to the processing block, and perform prediction based on the filled prediction reference pixels. The prediction mode information and residual parameter information of each processing block corresponding to the same permission level are encoded to obtain the permission code stream corresponding to the permission level, thereby sending the image frame code stream including the permission code stream corresponding to each permission level to the decoding end.

[0068] On the decoding end, after receiving the aforementioned image frame code stream, it can decode at least the permission code stream corresponding to the lowest permission level to obtain prediction mode information for the lowest permission level processing block. If the permission level of the user at the decoding end is the lowest permission level, then for each lowest permission level processing block, it is necessary to fill the prediction reference pixels of the lowest permission level processing block with prediction reference pixels with a permission level higher than the lowest permission level, and perform prediction based on the prediction mode information of the lowest permission level processing block and the filled prediction reference pixels.

[0069] Through the above technical solution, when permission protection is enabled on the decoding end (i.e., privacy protection is performed on image information with a permission level higher than that of the user on the decoding end), when the decoding end decodes the image frame code stream, at least in the prediction process for the processing block with the lowest permission level, the prediction reference pixels of non-lowest permission levels will not be referenced, but will be filled in. This ensures that the accuracy of the image information of the lowest permission level displayed to the user by the decoding end is ensured without exposing the image information of non-lowest permission levels to the user with the lowest permission level.

[0070] The decoding method and the encoding method are described in detail below with reference to several specific embodiments.

[0071] Example 1: In the embodiment of the present disclosure, a decoding method is proposed, which is applied at the decoding end. Figure 3 As shown, the following steps are included:

[0072] S300: Obtain at least two permission code streams.

[0073] Different permission code streams correspond to different permission levels. The at least two permission code streams can be encoded based on processing blocks of different permission levels in the same frame image, or can be encoded based on processing blocks of different permission levels in a large processing block (LCU).

[0074] It is easy to understand that in the entropy coding process, if the information to be encoded corresponding to processing blocks with different permission levels are all sent to the same entropy encoder for encoding, it is easy to continuously encode different processing blocks with different permission levels, which will bring additional overhead and lead to poor coding performance. Therefore, the information to be encoded corresponding to each processing block of the same permission level (such as prediction mode information, residual block, etc.) can be sent to the same entropy encoder for encoding. Different permission levels correspond to different entropy encoders, so that the permission code streams output by different entropy encoders correspond to different permission levels.

[0075] S302: Decode the permission code stream corresponding to the lowest permission level to obtain prediction mode information of each lowest permission level processing block.

[0076] Since the image information of the permission area of ​​the lowest permission level can be exposed to users of any permission level, the decoding end can perform the step of decoding the permission code stream corresponding to the lowest permission level regardless of the user's permission level.

[0077] Specifically, the permission code stream corresponding to the lowest permission level can be fed into an entropy decoder corresponding to the lowest permission level to obtain information to be parsed for the lowest permission level. This information to be parsed then yields permission level tag information (used to indicate the permission levels of different processing blocks in the same image frame), prediction mode information for each lowest permission level processing block, and residual parameter information for each lowest permission level block. Subsequently, based on the residual parameter information for the lowest permission level block, a corresponding residual (or residual block) can be obtained. Furthermore, based on the prediction mode information for each lowest permission level block, a corresponding prediction block can be obtained, thereby obtaining a reconstructed block corresponding to each lowest permission level block.

[0078] S304: If the target permission level of the user is the lowest permission level, for each lowest permission level processing block, obtain the predicted reference pixels of the lowest permission level processing block.

[0079] S306: Filling prediction reference pixels with an authority level higher than the lowest authority level.

[0080] S308: Predicting a prediction block corresponding to the lowest privilege level processing block according to the prediction mode information and prediction reference pixels of the lowest privilege level processing block.

[0081] It is easy to understand that in the process of predicting a processing block, it is usually necessary to refer to the predicted reference pixel set around the processing block (usually the upper boundary row cache and the left boundary column cache). However, in the scenario applied by the present disclosure, it is necessary to consider that pixels with lower permission levels cannot be exposed to users with higher permission levels. Therefore, when executing steps S304-S306, it is necessary to consider the permission level of the user at the decoding end and the relationship between the permission level corresponding to the processing block to be predicted.

[0082] Specifically, if the user's target permission level is the lowest permission level, then when predicting the prediction block of the lowest permission level processing block, no pixels with a permission level higher than the lowest permission level can be referenced. To this end, it is necessary to fill in the prediction reference pixel set of the lowest permission level processing block with prediction reference pixels with a permission level higher than the lowest permission level. Filling here means replacing the original prediction reference pixel with a fill pixel. Since the fill pixel does not involve the original image information of the non-lowest permission level, privacy leakage can be avoided.

[0083] In addition, if the user's target permission level is a non-minimum permission level, then for each non-minimum permission level processing block, the non-minimum permission level processing block can be decoded (usually sent to the entropy decoder corresponding to the non-minimum permission level) to obtain the information to be parsed corresponding to the non-minimum permission level, and the prediction mode information and residual parameter information of the minimum permission level processing block can be parsed from the information to be parsed. Then, the prediction reference pixels of the non-minimum permission level processing block are obtained, and the prediction reference pixels with a permission level higher than the non-minimum permission level are filled. Then, based on the prediction mode information and prediction reference pixels of the non-minimum permission level processing block, the prediction block corresponding to the non-minimum permission level processing block is predicted. Then, on the one hand, the corresponding residual (or residual block) can be obtained based on the residual parameter information of the non-minimum permission level block, and on the other hand, the corresponding prediction block can be obtained based on the prediction mode information of the non-minimum permission level block, and then the reconstructed block corresponding to the non-minimum permission level block can be obtained.

[0084] When there are only two permission levels, there is only one non-minimum permission level. When there are three or more permission levels, there are at least two non-minimum permission levels. For each processing block of each non-minimum permission level, a corresponding prediction block must be obtained. Similarly, during the prediction process, the prediction reference pixel set for the current processing block must be filled with prediction reference pixels whose permission level is higher than the non-minimum permission level corresponding to the current processing block.

[0085] After obtaining the prediction mode information and the padded prediction reference pixel set of each processing block, the prediction block corresponding to the processing block can be obtained.

[0086] It should be noted that the user permission level at the decoding end is recorded as the target permission level. The decoding end generally only decodes code streams with permission levels not higher than the target permission level and does not decode code streams with permission levels higher than the target permission level. The reconstructed blocks of processing blocks with permission levels higher than the target permission level are actually obtained using padded pixel blocks. It is easy to understand that when padded pixel blocks are used as reconstructed blocks, the reconstructed blocks do not include the original image information of processing blocks with permission levels higher than the target level, thereby preventing the privacy of users with the target permission level from being exposed.

[0087] Here, embodiment 2 is proposed for how the decoding end obtains the permission levels of different processing blocks in the same image frame in embodiment 1.

[0088] Example 2:

[0089] In one example, permission level marking information can be obtained based on the permission code stream corresponding to the lowest permission level. The permission level marking information is used to indicate the permission levels of different processing blocks in the same image frame. It is easy to understand that regardless of the user permission level of the decoding end, the permission code stream of the lowest permission level must be decoded. Therefore, encoding the permission level division information of different processing blocks into the permission code stream of the lowest permission level ensures that the decoding end obtains the permission levels of different processing blocks.

[0090] If the user authority level at the decoding end is not the lowest authority level, then when decoding each authority code stream that is not the lowest authority level, the authority level division information of the above-mentioned different processing blocks can be used to clarify which processing blocks are the processing blocks corresponding to this authority level when decoding the authority code stream of this authority level, thereby obtaining the prediction mode information and residual parameter information of these processing blocks.

[0091] In other examples, first-type permission level marking information can be obtained based on the permission code stream corresponding to the lowest permission level, and the first-type permission level marking information is used to indicate the permission level of the lowest permission level processing block in the same image frame; second-type permission level marking information can be obtained based on the permission code stream corresponding to the non-lowest permission level, and the second-type permission level marking information is used to indicate the permission level of the non-lowest permission level processing block in the same image frame.

[0092] That is to say, for different permission code streams corresponding to different permission levels, the permission code stream only encodes the permission level division information of the processing blocks corresponding to the permission level. This makes it convenient for the decoding end to always determine which processing blocks correspond to the permission level when it needs to decode the permission code stream corresponding to any permission level, thereby obtaining the prediction mode information and residual parameter information of these processing blocks.

[0093] Here, Example 3 is proposed to illustrate the context model used by different entropy decoders in Example 1.

[0094] Example 3:

[0095] As mentioned above, for processing blocks of different permission levels, different entropy encoders are used for encoding and different entropy decoders are used for decoding. If each entropy encoder and entropy decoder uses an independent context model, then as the permission level increases, the number of context models that need to be maintained will continue to increase. However, the storage cost of the context model is high, which will bring higher costs to the encoding and decoding process.

[0096] To this end, in some examples, the entropy decoders (and entropy encoders) corresponding to different permission levels use the same context model for decoding, the entropy decoder (and entropy encoder) corresponding to the lowest permission level updates the same context model after decoding (and encoding), and the entropy decoders (and entropy encoders) corresponding to permission levels higher than the lowest permission level do not update the same context model after decoding (and encoding).

[0097] In this way, the number of context models that need to be maintained can be greatly reduced to improve encoding and decoding performance, while not violating the principle that "image information with higher permission levels cannot be exposed to users with lower permission levels."

[0098] In some examples, entropy decoders (and entropy encoders) corresponding to different permission levels may use different context models for decoding (and encoding), where the context model used by the entropy decoder (and entropy encoder) corresponding to the lowest permission level includes a full set of elements, and the context model used by the entropy decoder (and entropy encoder) corresponding to permission levels higher than the lowest permission level includes a partial set of elements. Multiple elements in the context model used by the entropy decoder (and entropy encoder) corresponding to non-highest permission levels may be combined to obtain a partial set of elements.

[0099] In another example, the entropy decoder corresponding to the lowest privilege level uses a context model for decoding, and the entropy decoder corresponding to a non-lowest privilege level performs decoding based on bypass coding without using a context model.

[0100] In this way, the storage cost of the context model can be reduced to a certain extent.

[0101] In addition, for the prediction process in Example 1, several more specific implementations are proposed, namely Examples 4 to 6. It should also be noted that since the principles of the prediction process for a processing block with the lowest privilege level and the prediction process for a processing block with a non-lowest privilege level are similar, except that the privilege levels of the prediction reference pixels to be filled are different, for the convenience of description, any privilege level is denoted as a set privilege level. That is, the set privilege level includes the lowest privilege level and the non-lowest privilege level. The prediction process is described using the set privilege level as an example.

[0102] Example 4:

[0103] In the case of performing intra-frame prediction, the step of filling the predicted reference pixels with an authority level higher than the set authority level includes: if there are upper boundary row predicted reference pixels and / or left boundary column predicted reference pixels of the processing block with the set authority level, then using fixed pixels to fill the missing predicted reference pixels in the reference cache, and / or, filling the predicted reference pixels in the reference cache with an authority level higher than the set authority level; if there are no upper boundary row predicted reference pixels and left boundary column predicted reference pixels of the processing block with the set authority level, then using fixed pixels to fill the reference cache.

[0104] Among them, the predicted reference pixels with an authority level higher than the set authority level in the reference cache can be filled based on other predicted reference pixels (authority levels not higher than the set authority level) surrounding the predicted reference pixels with an authority level higher than the set authority level in the reference cache.

[0105] Specifically, the intra prediction process includes:

[0106] S401: Deriving a prediction model: Constructing a reference list based on the model information of surrounding blocks, and deciphering the prediction model based on the reference list and the permission code stream corresponding to the set permission level.

[0107] S402: Intra-frame prediction requires determining whether the prediction reference pixels above and to the left of the current prediction block are available based on reference pixels, namely, the row cache and column cache (the upper boundary row prediction reference pixel cache and the left boundary column prediction reference pixel cache of the current processing block). Available here means that the current processing block is not the first processing block close to the upper boundary, or is not the first processing block close to the left boundary. Unavailable means that the processing block is the first processing block close to the upper boundary and is also the first processing block close to the left boundary.

[0108] S404: If the result of the judgment in S402 is that the pixels are not available, then the prediction reference pixels are filled with fixed pixels. The fixed pixels can be pre-set according to actual conditions.

[0109] S406: If the result of the judgment in S402 is available, then the missing predicted reference pixels in the reference buffer are filled with fixed pixels; and the predicted reference pixels in the reference buffer whose authority level is higher than the set authority level are filled.

[0110] S408: Determine a prediction block corresponding to the current processing block using the predicted reference pixels in the filled reference buffer.

[0111] S410: After obtaining the reconstructed block corresponding to the current processing block, the reference cache needs to be updated so that when the next processing block is used as the current processing block again, the reference cache used is its own upper boundary row prediction reference pixel cache and left boundary column prediction reference pixel cache.

[0112] Among them, for filling the predicted reference pixels in the reference buffer whose permission level is higher than the set permission level, fixed pixels can be used, or other predicted reference pixels (with permission levels not higher than the set permission level) surrounding the predicted reference pixels to be filled can be used for filling. For the line buffer, the filling scheme adopted can be as follows:

[0113] Horizontal filling: Use other prediction reference pixels with a lower permission level than the set permission level that are directly adjacent to the prediction reference pixel to be filled as filling pixels. Figure 4A , use the pixel A on the left edge of the 4 prediction reference pixels on the right that do not need to be filled to fill the 4 prediction reference pixels on the left that need to be filled.

[0114] Horizontal DC filling: Use the predicted reference pixels that are directly adjacent to the predicted reference pixel to be filled and whose permission level is lower than the set permission level to calculate the average value to obtain the filling pixels for filling. Figure 4B , use the average value E of the 4 predicted reference pixels on the right that do not need to be filled to fill the 4 predicted reference pixels on the left that need to be filled.

[0115] Horizontal gradient fill: Use the predicted reference pixels that are directly adjacent to the predicted reference pixel to be filled and whose permission level is lower than the set permission level to calculate the weighted sum to obtain the filling pixels for filling. Figure 4C , use the weighted sum F1, F2, F3, and F4 of the four predicted reference pixels on the right that do not need to be filled (the weight values ​​are a, b, c, and d, and different weight values ​​result in different F1, F2, F3, and F4) to fill the four predicted reference pixels on the left that need to be filled.

[0116] For column cache, the filling scheme adopted can be as follows:

[0117] Vertical filling: Fill the predicted reference pixels directly adjacent to the predicted reference pixel to be filled with other predicted reference pixels whose permission level is lower than the set permission level as filling pixels. Figure 5A , use the pixel A on the left edge of the 4 prediction reference pixels below that do not need to be filled to fill the 4 prediction reference pixels above that need to be filled.

[0118] Vertical DC filling: Use the predicted reference pixels directly adjacent to the predicted reference pixel to be filled, whose permission level is lower than the set permission level, to calculate the average value and obtain the filling pixels for filling. Figure 5B , use the average value E of the 4 prediction reference pixels that do not need to be filled above to fill the 4 prediction reference pixels that need to be filled below.

[0119] Vertical gradient fill: Use the predicted reference pixels that are directly adjacent to the predicted reference pixel to be filled and whose permission level is lower than the set permission level to calculate the weighted sum to obtain the filling pixels for filling. Figure 5C , use the weighted sum F1, F2, F3, and F4 of the 4 prediction reference pixels that do not need to be filled above (different weight values ​​result in different F1, F2, F3, and F4) to fill the 4 prediction reference pixels that need to be filled below.

[0120] After determining whether the reconstructed pixels of the surrounding blocks are available, the reconstructed pixels one row (or two rows) above and one column (or two columns) to the left of the current prediction unit are obtained as reference pixels, as shown in the figure below. If the surrounding pixels are not available, the unavailable area is filled using a padding solution.

[0121] Example 5:

[0122] When performing intra-frame prediction, the step of filling prediction reference pixels having a higher permission level than a set permission level includes:

[0123] After obtaining the reconstructed block corresponding to the set authority level processing block, if the set authority level is the lowest authority level, the upper boundary row prediction reference pixels and the left boundary column prediction reference pixels of the set authority level processing block are updated based on the reconstructed block; if the set authority level is not the lowest authority level, the upper boundary row prediction reference pixels and the left boundary column prediction reference pixels of the set authority level processing block are not updated.

[0124] Specifically, the intra-frame prediction process may include:

[0125] S501: Deriving a prediction model: Constructing a reference list based on the model information of surrounding blocks, and deciphering the prediction model based on the reference list and the permission code stream corresponding to the set permission level.

[0126] S502: Intra-frame prediction needs to determine whether the prediction reference pixels above and to the left of the current prediction block are available based on the reference pixels, namely the row cache and column cache (the upper boundary row prediction reference pixel cache and the left boundary column prediction reference pixel cache of the current processing block). Available here means that the current processing block is not the first processing block close to the upper boundary, or not the first processing block close to the left boundary. Unavailable means that the processing block is the first processing block close to the upper boundary and also the first processing block close to the left boundary.

[0127] S504: If the result of the determination in S502 is that the pixels are not available, then the prediction reference pixels are filled with fixed pixels, which can be pre-set according to actual conditions.

[0128] S506: If the result of the judgment in S502 is available, then the missing predicted reference pixels in the reference pixels are filled.

[0129] S508: Determine a prediction block corresponding to the current processing block using the predicted reference pixels in the filled reference buffer.

[0130] S510: After subsequently obtaining the reconstructed block corresponding to the current processing block, if the set permission level is the lowest permission level, the reference cache needs to be updated; if the set permission level is not the lowest permission level, the reference cache is not updated.

[0131] In this way, no matter what the permission level of the current processing block is, a reference cache filled with fixed values, or a reference cache including boundary row and column pixels of the lowest permission level, is always used for prediction, which does not violate the principle that "image information of higher permission levels cannot be exposed to users of lower permission levels."

[0132] Example 6:

[0133] In the case of performing inter-frame prediction, the step of filling predicted reference pixels whose authority level is higher than the set authority level includes: determining a reference block for prediction, wherein the reference block includes a spatial reference block or a temporal reference block whose authority level is not higher than the set authority level; for each predicted reference pixel in the reference block, if the authority level corresponding to the predicted reference pixel is higher than the set authority level, filling the predicted reference pixel with a filling pixel.

[0134] Specifically, the inter-frame prediction process may include:

[0135] S601: Constructing a reference list. Inter-frame prediction can construct a reference list using current spatial motion information, temporal motion information, or spatial historical motion information.

[0136] If spatial motion information is obtained to construct a reference list, the permission level of the current processing block is compared with the permission level of the adjacent processing block. If the permission level of the current processing block is higher than or equal to the permission level of the adjacent processing block, the adjacent processing block can be used to construct the reference list; if the permission level of the current processing block is lower than the permission level of the adjacent processing block, the adjacent processing block cannot be used to construct the reference list.

[0137] If the time domain motion information is obtained to construct a reference list, the permission level of the current processing block is compared with the permission level of the time domain reference block. If the permission level of the current processing block is higher than or equal to the permission level of the time domain reference block, the time domain reference block can be used to construct the reference list; if the permission level of the current processing block is lower than the permission level of the time domain reference block, the time domain reference block cannot be used to construct the reference list.

[0138] If a reference list is constructed based on spatial historical motion information, then if the permission level of the current processing block is not the lowest permission level, the motion prediction information of the current processing block cannot be used to construct the reference list.

[0139] S602: According to the prediction mode information parsed from the permission code stream corresponding to the set permission level, the motion information of the prediction block corresponding to the current processing block is obtained from the reference list.

[0140] S603: Acquire a prediction reference pixel set from the corresponding reference block according to the motion information of the prediction block.

[0141] S604: Fill in the predicted reference pixels in the reference pixel set whose authority level is higher than the set authority level.

[0142] Wherein, in step S604, the above-mentioned padding pixels can be determined based on the predicted reference pixels whose authority level is not higher than the set authority level among the upper boundary row predicted reference pixels and the left boundary column predicted reference pixels of the processing block with the set authority level. The padding pixels can also be determined based on the predicted reference pixels whose authority level is not higher than the set authority level in the reference block. The padding pixels can also be determined based on the predicted reference pixels whose authority level is not higher than the set authority level among the upper boundary row predicted reference pixels and the left boundary column predicted reference pixels of the processing block with the set authority level, and based on the predicted reference pixels whose authority level is not higher than the set authority level in the reference block. For example, the weighted sum is calculated based on the predicted reference pixels whose authority level is not higher than the set authority level among the upper boundary row predicted reference pixels and the left boundary column predicted reference pixels of the processing block with the set authority level, and based on the predicted reference pixels whose authority level is not higher than the set authority level in the reference block, to obtain the padding pixels.

[0143] In addition, embodiment 7 is proposed to provide a detailed description of the filtering operation involved in embodiment 1.

[0144] Example 7:

[0145] In one example, for each reconstructed pixel of the reconstructed block corresponding to each processing block, a filtering reference pixel corresponding to the reconstructed pixel can be obtained; if there is a filtering reference pixel with an authority level higher than the authority level corresponding to the reconstructed pixel, the filtering reference pixel with an authority level higher than the authority level corresponding to the reconstructed pixel is filled, and the reconstructed pixel is filtered according to the filled filtering reference pixel; alternatively, the reconstructed pixel is not filtered.

[0146] Among them, in the step of filling the filtered reference pixels whose authority level is higher than the authority level corresponding to the reconstructed pixel, the filling pixels can be calculated based on other filtered reference pixels around the filtered reference pixels whose authority level is higher than the authority level corresponding to the reconstructed pixel, and used to filter the reconstructed pixel.

[0147] In the step of filling the filtered reference pixels whose authority level is higher than the authority level corresponding to the reconstructed pixel, the reconstructed pixel can also be used as a filling pixel to fill the filtered reference pixels whose authority level is higher than the authority level corresponding to the reconstructed pixel, and the filling pixel is used to filter the reconstructed pixel.

[0148] In another example, one or more blocks to be filtered can be combined based on the reconstructed blocks corresponding to the processing blocks; for each block to be filtered, a plurality of sub-blocks to be filtered are divided within the block to be filtered; for each sub-block to be filtered, the lowest authority level among the authority levels corresponding to the pixels to be filtered in the sub-block to be filtered is used as the authority level corresponding to the sub-block to be filtered; it is determined whether the authority levels of the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered are not higher than the authority level corresponding to the sub-block to be filtered; if so, the sub-block to be filtered is filtered based on the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered; if not, the sub-block to be filtered is not filtered.

[0149] In one example, for each reconstructed pixel of the reconstructed block corresponding to each processing block, a filtering reference pixel corresponding to the reconstructed pixel can be obtained; if there is a filtering reference pixel whose authority level is not equal to the authority level corresponding to the reconstructed pixel, the reconstructed pixel is not filtered.

[0150] In one example, one or more blocks to be filtered can be combined based on the reconstructed blocks corresponding to the processing blocks; for each block to be filtered, a plurality of sub-blocks to be filtered are divided within the block to be filtered; for each sub-block to be filtered, the lowest authority level among the authority levels corresponding to the pixels to be filtered in the sub-block to be filtered is used as the authority level corresponding to the sub-block to be filtered; it is determined whether the authority levels of the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered are not equal to the authority level corresponding to the sub-block to be filtered; if so, the sub-block to be filtered is filtered based on the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered; if not, the sub-block to be filtered is not filtered.

[0151] In addition, with respect to the step of obtaining the padding pixel block corresponding to each processing block having an authority level higher than the target authority level in Example 1, Example 8 is proposed for explanation.

[0152] Example 8:

[0153] For decoding end users with lower permission levels, it is impossible to decode and obtain image information with higher permission levels. Therefore, when a user with a lower permission level decodes the permission code stream, if it parses a processing block with a higher permission level, it is necessary to skip this processing block and use a fixed value to fill the reconstruction block corresponding to this processing block, or interpolate and fill the reconstruction block corresponding to this processing block based on the pixels around this processing block. This solution makes the image visual effect seen by users with lower permission levels poor. In order to improve the visual effect of users with lower permission levels, the mosaic information of each image information that is not of the lowest permission level can be encoded in the permission code stream corresponding to the lowest permission level. In this way, the decoding end can parse the permission code stream corresponding to the lowest permission level to obtain the mosaic information of the image information with a higher permission level than the target permission level of the decoding end, and fill the mosaic information into the reconstruction block of the processing block with a higher permission level, so that the user can see the mosaic content of the image information with a higher permission level, thereby improving the user's visual experience. The specific solution is as follows:

[0154] A flag indicating whether mosaic information needs to be parsed can be designed in the image frame code stream. If the permission level of the current processing block is higher than the target permission level of the decoding end, the mosaic information needs to be parsed. The encoding of the mosaic information uses 4x4 as the minimum unit to transmit a mean value, and the mean code length is less than or equal to the image bit width. Taking the sequence in the YUV420 format as an example, each 4x4 contains a 4x4 luminance block and two 2x2 chroma blocks, so each 4x4 privacy area transmits a 4x4 luminance mean and two 2x2 chroma mean values. The mean code length is n. If the permission level of the current processing block is not higher than the target permission level of the decoding end, the mosaic information does not need to be parsed.

[0155] See also Figure 6As shown, after decoding the permission code stream corresponding to the lowest permission level, the decoder obtains the corresponding information to be parsed. It first parses the permission level tag information, which is used to indicate the permission levels of different processing blocks in the same image frame. It then determines whether each processing block can be further divided. If it can be further divided, the processing block is further divided and the permission level tag information is re-acquired. If each processing block cannot be further divided, the permission level of each processing block is obtained based on the permission level tag information. For processing blocks with the lowest permission level, prediction mode information, residual parameter information, etc. are directly parsed from the information to be parsed. For processing blocks with non-lowest permission levels, the mosaic information corresponding to the processing block is parsed. Then, if the non-lowest permission level is not higher than the target permission level, the mosaic information is not used. Instead, the prediction mode information and residual parameter information are parsed from the information to be parsed to generate the reconstructed block. If the non-lowest permission level is not higher than the target permission level, the mosaic information is used to fill the reconstructed block.

[0156] In one example, based on the permission code stream corresponding to the lowest permission level, mosaic information corresponding to each processing block having a permission level higher than the target permission level may be obtained as a filling pixel block.

[0157] In another example, a mosaic code stream can be obtained and decoded to obtain at least one mosaic information, where different mosaic blocks correspond to different permission levels; for each permission level higher than the target permission level, the mosaic information corresponding to the permission level is used as the filling pixel block corresponding to each processing block corresponding to the permission level.

[0158] In addition, for mosaic information, the encoder can use an independent entropy encoder to encode the mosaic information into a mosaic code stream, place the mosaic code stream in another address, and splice it before the corresponding permission code stream corresponding to the non-minimum permission level. The decoder parses the permission code stream corresponding to the minimum permission level to obtain the address of each mosaic information corresponding to the non-minimum permission level and obtain the corresponding mosaic information.

[0159] Alternatively, the mosaic information can be encoded using an entropy encoder of the lowest privilege level at the encoding end. Specifically, for a processing block of a non-lowest privilege level, the mosaic information is first encoded using the entropy encoder of the lowest privilege level, and then the corresponding real image information is encoded using the entropy encoder corresponding to the non-lowest privilege level. At the decoding end, users of the lowest privilege level normally parse the mosaic information from the permission code stream corresponding to the lowest privilege level. Users of non-lowest privilege levels first parse the mosaic information corresponding to the non-lowest privilege level from the permission code stream corresponding to the lowest privilege level, but discard the mosaic information and continue to parse the real image information corresponding to the non-lowest privilege level from the permission code stream corresponding to the non-lowest privilege level to generate the reconstructed image.

[0160] Alternatively, fixed mosaic information can be set for different non-minimum permission levels on the codec side without encoding. Instead, the mosaic information can be added to the image header. In this way, the decoder can obtain (without decoding) the mosaic information corresponding to different non-minimum permission levels from the image header for use.

[0161] More specifically, the image header may include one or more mosaic information indexes. The decoding end obtains the indexes from the image header, and based on the indexes, finds which permission level of mosaic information corresponds to the reconstructed block that needs to be filled, and obtains the corresponding mosaic information.

[0162] The image header can contain multiple sets of mosaic information, each corresponding to a specific permission level. Multiple sets of mosaic information in the image header can also correspond to a single permission level. After determining the permission level corresponding to the reconstructed block to be filled, the decoder can obtain the corresponding set or sets of mosaic information and select the mosaic information to fill the reconstructed block.

[0163] In addition, for the method of obtaining at least two permission code streams in Example 1, Example 9 is proposed for explanation:

[0164] Example 9:

[0165] In some examples, an image frame code stream can be obtained for the same image frame. The image frame code stream is composed of at least two permission code streams, each of which has a start code that distinguishes it from the other permission code streams. During encoding, permission code streams corresponding to different permission levels can be spliced ​​into a complete frame code stream based on the order of the permission levels and at the frame level. Before splicing, each permission code stream corresponding to a permission level has a separate start code. During decoding, the position of each permission code stream in the image frame code stream is found according to its respective start code, and the different permission code streams are parsed.

[0166] In other examples, at least two independent permission code streams corresponding to the same image frame can be obtained, with different permission code streams stored at addresses corresponding to different permission levels. During encoding, the different permission code streams are not concatenated; instead, they are stored separately at addresses corresponding to different frames. Each permission code stream has a start code indicating the frame to which it belongs, which is used to store the corresponding frame address. During decoding, the permission code stream is retrieved and parsed based on the current permission level.

[0167] Furthermore, the present disclosure further proposes Example 10.

[0168] Example 10:

[0169] The knowledge base frame used in the encoding and decoding process may also include image information within the permission area of ​​non-minimum permission level. For privacy protection reasons, the reference to image information of non-minimum permission level can be restricted during encoding at the encoding end, and only the information corresponding to the processing block of the lowest permission level in the knowledge base frame will be encoded. In this way, the image information within the permission area of ​​non-minimum permission level cannot be parsed from the permission code stream corresponding to the lowest permission level obtained by encoding. In this way, at the decoding end, only the image information within the permission area of ​​the lowest permission level can be parsed from the permission code stream corresponding to the lowest permission level. Although the location of the permission area of ​​non-minimum permission level can be perceived, the image information within the permission area of ​​non-minimum permission level cannot be obtained. The reconstructed block of non-minimum permission level obtained naturally does not include image information of non-minimum permission level, thereby protecting privacy.

[0170] Alternatively, before encoding the knowledge base frame at the encoder, the permission regions of the non-minimum permission level can be removed, and then the knowledge base frame can be encoded using the entropy encoder corresponding to the minimum permission level. In this way, at the decoder, the image information within the permission regions of the minimum permission level can be parsed from the permission code stream corresponding to the minimum permission level, but the location of the permission regions of non-minimum permission levels cannot be perceived. The resulting reconstructed blocks of non-minimum permission levels will naturally not include image information of non-minimum permission levels, thereby protecting privacy.

[0171] That is, at the decoding end, a knowledge base frame code stream is obtained; the knowledge base frame code stream is decoded to obtain the permission levels of the processing blocks in the knowledge base frame, determine the lowest permission level processing block, and obtain prediction mode information for the lowest permission level processing block. Alternatively, at the decoding end, a knowledge base frame code stream is obtained; the knowledge base frame code stream is decoded, and the permission level of each processing block in the knowledge base frame is directly determined without parsing the code stream, and prediction mode information for the lowest permission level processing block is obtained. Alternatively, the knowledge base frame code stream is decoded to obtain prediction mode information for the lowest permission level processing block.

[0172] Example 11:

[0173] The present disclosure provides a flow chart of an encoding method, such as Figure 7 Shown, including:

[0174] S700: Acquire an image frame.

[0175] The image frame is divided into a plurality of processing blocks, and the plurality of processing blocks include processing blocks corresponding to at least two authority levels.

[0176] S702: For each processing block, obtain prediction mode information of the processing block and obtain prediction reference pixels of the processing block, and fill the prediction reference pixels with a higher authority level than the authority level corresponding to the processing block.

[0177] S704: According to the processing block and the predicted reference pixels of the processing block, predict a prediction block corresponding to the processing block to determine prediction mode information of the processing block; according to the processing block and the prediction block, obtain residual parameter information of the processing block.

[0178] S706: For each permission level, encode the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain a permission code stream corresponding to the permission level.

[0179] S708: Send the image frame code stream including the permission code stream corresponding to each permission level to the decoding end.

[0180] In the description of the decoding end operation in the above Examples 1 to 10, the different operations of the encoding end relative to the decoding end are also described. In addition, the process of the decoding end can be understood as the inverse process matching the encoding end process, so the encoding end process will not be repeated.

[0181] Based on the same application concept as the above method, an embodiment of the present application further proposes a decoding device, which is applied to a decoding end and includes:

[0182] Applied to a decoding end, the device includes:

[0183] An acquisition module is configured to acquire an image frame code stream of the same frame of image, wherein the image frame code stream includes at least two permission code streams, and different permission code streams correspond to different permission levels;

[0184] A decoding module decodes the permission code stream corresponding to the lowest permission level and obtains prediction mode information of each lowest permission level processing block;

[0185] The processing module obtains prediction reference pixels of each processing block of the lowest permission level if the target permission level of the user is the lowest permission level; and fills the prediction reference pixels with permission levels higher than the lowest permission level;

[0186] The prediction module predicts a prediction block corresponding to the lowest authority level processing block according to the prediction mode information and prediction reference pixels of the lowest authority level processing block.

[0187] In some embodiments, the decoding module is further configured to:

[0188] Obtaining permission level marking information based on the permission code stream corresponding to the lowest permission level, wherein the permission level marking information is used to indicate the permission levels of different processing blocks in the same image frame;

[0189] or

[0190] Based on the permission code stream corresponding to the lowest permission level, first-category permission level marking information is obtained, where the first-category permission level marking information is used to indicate the permission level of the lowest permission level processing block in the same image frame; based on the permission code stream corresponding to the non-lowest permission level, second-category permission level marking information is obtained, where the second-category permission level marking information is used to indicate the permission level of the non-lowest permission level processing block in the same image frame.

[0191] In some embodiments, the decoding module is further configured to:

[0192] If the target permission level is higher than the minimum permission level, decoding each non-minimum permission level processing block to obtain prediction mode information of the minimum permission level processing block;

[0193] Obtain prediction reference pixels of the non-minimum privilege level processing block, and fill the prediction reference pixels with a higher privilege level than the non-minimum privilege level;

[0194] A prediction block corresponding to the non-minimum privilege level processing block is obtained by prediction according to the prediction mode information and the prediction reference pixels of the non-minimum privilege level processing block.

[0195] In some embodiments, the device also includes: a reconstruction module, which obtains the residual corresponding to each processing block whose authority level is not higher than the target authority level; based on the prediction block and residual corresponding to each processing block whose authority level is not higher than the target authority level, obtains the reconstructed block corresponding to the processing block.

[0196] In some embodiments, entropy decoders corresponding to different permission levels use the same context model for decoding, the entropy decoder corresponding to the lowest permission level updates the same context model after decoding, and the entropy decoders corresponding to permission levels higher than the lowest permission level do not update the same context model after decoding;

[0197] or

[0198] Entropy decoders corresponding to different permission levels use different context models for decoding. The context model used by the entropy decoder corresponding to the lowest permission level includes a full set of elements, and the context model used by the entropy decoder corresponding to the permission level higher than the lowest permission level includes a partial set of elements.

[0199] or

[0200] The entropy decoder corresponding to the lowest privilege level uses a context model for decoding, and the entropy decoder corresponding to the non-lowest privilege level decodes based on bypass coding.

[0201] In some embodiments, the set permission level includes a minimum permission level or a non-minimum permission level, and when performing intra prediction, the step of filling prediction reference pixels having a permission level higher than the set permission level includes:

[0202] If there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the processing block with a set authority level, the missing prediction reference pixels in the reference buffer are filled with fixed pixels, and / or the prediction reference pixels in the reference buffer with an authority level higher than the set authority level are filled with fixed pixels;

[0203] If there are no upper boundary row prediction reference pixels and left boundary column prediction reference pixels of the processing block with a set authority level, the reference buffer is filled with fixed pixels.

[0204] In some embodiments, the processing module is configured to fill the predicted reference pixels in the reference buffer with a permission level higher than a set permission level, including:

[0205] The predicted reference pixels in the reference buffer having an authority level higher than the set authority level are filled according to the predicted reference pixels surrounding the predicted reference pixels in the reference buffer having an authority level higher than the set authority level.

[0206] In some embodiments, the set permission level includes a minimum permission level or a non-minimum permission level, and when performing intra prediction, the step of filling prediction reference pixels having a permission level higher than the set permission level includes:

[0207] After obtaining the reconstructed block corresponding to the set authority level processing block, if the set authority level is the lowest authority level, the upper boundary row prediction reference pixels and the left boundary column prediction reference pixels of the set authority level processing block are updated based on the reconstructed block; if the set authority level is not the lowest authority level, the upper boundary row prediction reference pixels and the left boundary column prediction reference pixels of the set authority level processing block are not updated.

[0208] In some embodiments, the set permission level includes a minimum permission level or a non-minimum permission level, and when performing inter-frame prediction, the step of filling prediction reference pixels having a permission level higher than the set permission level includes:

[0209] Determining a reference block for prediction, wherein the reference block includes a spatial domain reference block or a temporal domain reference block whose permission level is not higher than a set permission level;

[0210] For each predicted reference pixel in the reference block, if the authority level corresponding to the predicted reference pixel is higher than the set authority level, the predicted reference pixel is padded with padding pixels.

[0211] In some embodiments, the step of determining the padding pixels includes:

[0212] Determining the padding pixel according to the predicted reference pixels having an authority level not higher than the set authority level among the upper boundary row predicted reference pixels and the left boundary column predicted reference pixels of the block with the set authority level;

[0213] or

[0214] determining the filling pixel according to the predicted reference pixel in the reference block whose authority level is not higher than the set authority level;

[0215] or

[0216] The filling pixels are determined based on the predicted reference pixels whose authority level is not higher than the set authority level in the upper boundary row prediction reference pixels and the left boundary column prediction reference pixels of the processing block with a set authority level, and based on the predicted reference pixels whose authority level is not higher than the set authority level in the reference block.

[0217] In some embodiments, the reconstruction module is further configured to determine, based on a padding pixel block corresponding to each processing block having a permission level higher than the target permission level, whether the processing block corresponds to a reconstructed block.

[0218] In some embodiments, the device also includes a filtering module for obtaining a filtering reference pixel corresponding to each reconstructed pixel of the reconstructed block corresponding to each processing block; if there is a filtering reference pixel with an authority level higher than the authority level corresponding to the reconstructed pixel, the filtering reference pixel with an authority level higher than the authority level corresponding to the reconstructed pixel is filled, and the reconstructed pixel is filtered according to the filled filtering reference pixel; or, the reconstructed pixel is not filtered.

[0219] In some embodiments, the filtering module is specifically used to combine one or more blocks to be filtered based on the reconstruction blocks corresponding to the processing blocks; for each block to be filtered, divide the block to be filtered into multiple sub-blocks to be filtered; for each sub-block to be filtered, use the lowest authority level among the authority levels corresponding to the pixels to be filtered in the sub-block to be filtered as the authority level corresponding to the sub-block to be filtered; determine whether the authority levels of the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered are not higher than the authority level corresponding to the sub-block to be filtered; if so, filter the sub-block to be filtered based on the filtering reference pixels corresponding to the pixels to be filtered in the sub-block to be filtered; if not, do not filter the sub-block to be filtered.

[0220] In some embodiments, the step of obtaining a padding pixel block corresponding to each processing block whose permission level is higher than the target permission level includes:

[0221] Based on the permission code stream corresponding to the lowest permission level, obtaining mosaic information corresponding to each processing block having a permission level higher than the target permission level as a filling pixel block;

[0222] or

[0223] A mosaic code stream is obtained, where the mosaic code stream includes at least one mosaic information, where different mosaic blocks correspond to different permission levels; and for each permission level higher than the target permission level, the mosaic information corresponding to the permission level is used as a filling pixel block corresponding to each processing block corresponding to the permission level.

[0224] In some embodiments, the image frame code stream is formed by splicing the at least two permission code streams, and each permission code stream has a start code for distinguishing from other permission code streams;

[0225] or

[0226] The image frame code stream includes at least two independent permission code streams, and different permission code streams are stored in addresses corresponding to different permission levels.

[0227] In some embodiments, the decoding module is further used to obtain a knowledge base frame code stream; decode the knowledge base frame code stream to obtain the permission level of the processing block in the knowledge base frame, determine the lowest permission level processing block, and obtain the prediction mode information of the lowest permission level processing block; or decode the knowledge base frame code stream to obtain the prediction mode information of the lowest permission level processing block.

[0228] The present disclosure further provides an encoding device, applied to an encoding end, the device comprising:

[0229] An acquisition module, configured to acquire an image frame, wherein the image frame is divided into a plurality of processing blocks, wherein the plurality of processing blocks include processing blocks corresponding to at least two authority levels;

[0230] A processing module, for each processing block, obtains prediction mode information of the processing block and prediction reference pixels of the processing block, and fills the prediction reference pixels with a higher authority level than the authority level corresponding to the processing block;

[0231] A prediction module, which predicts a prediction block corresponding to the processing block based on the processing block and the prediction reference pixels of the processing block to determine prediction mode information of the processing block; and obtains residual parameter information of the processing block based on the processing block and the prediction block;

[0232] An encoding module, for each permission level, encodes the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain a permission code stream corresponding to the permission level;

[0233] The sending module sends the image frame code stream including the permission code stream corresponding to each permission level to the decoding end.

[0234] In some embodiments, entropy encoders corresponding to different permission levels use the same context model for encoding, the entropy encoder corresponding to the lowest permission level updates the same context model after encoding, and the entropy encoders corresponding to permission levels higher than the lowest permission level do not update the same context model after encoding;

[0235] or

[0236] The entropy encoders corresponding to different permission levels use different context models for encoding, the context model used by the entropy encoder corresponding to the lowest permission level includes a full set of elements, and the context model used by the entropy encoder corresponding to the permission level higher than the lowest permission level includes a partial set of elements;

[0237] or

[0238] The entropy encoder corresponding to the lowest privilege level uses a context model for encoding, and the entropy encoder corresponding to the non-lowest privilege level encodes based on bypass coding.

[0239] In some embodiments, the apparatus further comprises:

[0240] A reconstruction module, for each processing block, determines a reconstruction block corresponding to the processing block;

[0241] A filtering module obtains, for each reconstructed pixel corresponding to the reconstructed block, a filtering reference pixel corresponding to the reconstructed pixel; if there is a filtering reference pixel whose authority level is higher than the authority level corresponding to the reconstructed pixel, the filtering reference pixel whose authority level is higher than the authority level corresponding to the reconstructed pixel is filled, and the reconstructed pixel is filtered according to the filled filtering reference pixel; or, the reconstructed pixel is not filtered.

[0242] The present disclosure also provides a decoding terminal device. Figure 8A As shown, it includes: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the above decoding method.

[0243] Provide an encoding terminal device, see Figure 8B As shown, it includes: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-executable instructions to implement the above encoding method.

[0244] An electronic device is provided, comprising: a processor and a machine-readable storage medium, wherein the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is configured to execute the machine-executable instructions to implement the above-mentioned decoding method or encoding method.

[0245] A machine-readable storage medium is provided, on which a plurality of computer instructions are stored. When the computer instructions are executed by a processor, the above-mentioned decoding method or encoding method is implemented.

[0246] Those skilled in the art will appreciate that embodiments of the present application may be provided as methods, systems, or computer program products. The present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Embodiments of the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0247] The foregoing is merely an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.

Claims

1. An image decoding method, characterized in that: include: Obtain at least two permission code streams, with different permission code streams corresponding to different permission levels; Decoding the permission code stream corresponding to the lowest permission level to obtain prediction mode information of each lowest permission level processing block; If the user's target permission level is the lowest permission level, for each lowest permission level processing block, the prediction reference pixels of the lowest permission level processing block are obtained; wherein, when performing intra-frame prediction, if there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the lowest permission level processing block, the missing prediction reference pixels in the boundary are filled with fixed pixels; A prediction block corresponding to the lowest privilege level processing block is predicted based on the prediction mode information and the prediction reference pixels of the lowest privilege level processing block.

2. The method according to claim 1, wherein In the case of performing intra-frame prediction, the method further includes: If there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the processing block with the lowest privilege level, filling the prediction reference pixels with a privilege level higher than the lowest privilege level in the reference buffer; If there are no upper boundary row prediction reference pixels and left boundary column prediction reference pixels of the lowest authority level processing block, fixed pixels are used to fill the prediction reference pixels in the reference buffer.

3. The method according to claim 2, wherein: Filling the predicted reference pixels in the reference buffer with a permission level higher than the minimum permission level includes: The predicted reference pixels with a higher permission level than the lowest permission level in the reference buffer are filled according to the predicted reference pixels surrounding the predicted reference pixels with a higher permission level than the lowest permission level in the reference buffer.

4. The method according to claim 1, wherein: The method further comprises: Based on the permission code stream corresponding to the lowest permission level, permission level marking information is obtained, where the permission level marking information is used to indicate the permission levels of different processing blocks.

5. The method according to any one of claims 1 to 4, characterized in that The method further comprises: If the target permission level is higher than the minimum permission level, decoding each non-minimum permission level processing block to obtain prediction mode information of the non-minimum permission level processing block; Obtaining prediction reference pixels of the non-minimum privilege level processing block; wherein, when performing intra-frame prediction, if there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the non-minimum privilege level processing block, filling the missing prediction reference pixels in the boundary with fixed pixels; A prediction block corresponding to the non-minimum privilege level processing block is obtained by prediction according to the prediction mode information and the prediction reference pixels of the non-minimum privilege level processing block.

6. The method according to claim 5, wherein: In the case of performing intra-frame prediction, the method further includes: If there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the non-minimum privilege level processing block, filling the prediction reference pixels in the reference buffer with a privilege level higher than the non-minimum privilege level; If there are no upper boundary row prediction reference pixels and left boundary column prediction reference pixels of the non-lowest authority level processing block, fixed pixels are used to fill the prediction reference pixels in the reference buffer.

7. The method according to claim 1, wherein: The entropy decoders corresponding to different permission levels use different context models for decoding; among them, the context model used by the entropy decoder corresponding to the lowest permission level includes a full set of elements, and the context model used by the entropy decoder corresponding to the permission level higher than the lowest permission level includes a partial set of elements.

8. The method according to claim 1, wherein: The method further comprises: Obtain the residual corresponding to each processing block whose authority level is not higher than the target authority level; Based on the prediction block and the residual corresponding to each processing block whose authority level is not higher than the target authority level, a reconstructed block corresponding to the processing block is obtained.

9. The method according to claim 8, wherein: The method further comprises: Based on the padded pixel block corresponding to each processing block having an authority level higher than the target authority level, it is determined that the processing block corresponds to a reconstructed block.

10. The method according to claim 9, wherein: The method further comprises: For each reconstructed pixel of the reconstructed block corresponding to each processing block, obtaining a filtering reference pixel corresponding to the reconstructed pixel; If there is a filtering reference pixel whose authority level is higher than the authority level corresponding to the reconstructed pixel, the reconstructed pixel is not filtered.

11. The method according to claim 9, wherein: The step of obtaining a filling pixel block corresponding to each processing block having an authority level higher than the target authority level comprises: Based on the permission code stream corresponding to the lowest permission level, mosaic information corresponding to each processing block having a permission level higher than the target permission level is obtained as the filling pixel block.

12. An image coding method, characterized in that: include: Acquire an image frame, wherein the image frame is divided into a plurality of processing blocks, wherein the plurality of processing blocks include processing blocks corresponding to at least two authority levels; For each processing block, prediction mode information of the processing block and prediction reference pixels of the processing block are obtained; wherein, when performing intra-frame prediction, if there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the processing block, the missing prediction reference pixels in the boundary are filled with fixed pixels; Predicting a prediction block corresponding to the processing block based on the processing block and the predicted reference pixels of the processing block, and obtaining residual parameter information of the processing block based on the processing block and the prediction block; For each permission level, encoding the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain the permission code stream corresponding to the permission level; The permission code stream corresponding to each permission level is sent to the decoding end.

13. An image decoding device, characterized in that: The device comprises: The acquisition module obtains at least two permission code streams, and different permission code streams correspond to different permission levels; A decoding module decodes the permission code stream corresponding to the lowest permission level and obtains prediction mode information of each lowest permission level processing block; a processing module, if the target permission level of the user is the lowest permission level, obtaining, for each lowest permission level processing block, prediction reference pixels of the lowest permission level processing block; wherein, when performing intra-frame prediction, if there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the lowest permission level processing block, filling the missing prediction reference pixels in the boundary with fixed pixels; The prediction module predicts a prediction block corresponding to the lowest authority level processing block according to the prediction mode information and prediction reference pixels of the lowest authority level processing block.

14. An image coding device, characterized in that The device comprises: An acquisition module, configured to acquire an image frame, wherein the image frame is divided into a plurality of processing blocks, wherein the plurality of processing blocks include processing blocks corresponding to at least two authority levels; a processing module, for each processing block, obtaining prediction mode information of the processing block and obtaining prediction reference pixels of the processing block; wherein, when performing intra-frame prediction, if there are upper boundary row prediction reference pixels and / or left boundary column prediction reference pixels of the processing block, then using fixed pixels to fill the missing prediction reference pixels in the boundary; A prediction module, which predicts a prediction block corresponding to the processing block according to the processing block and the prediction reference pixels of the processing block, and obtains residual parameter information of the processing block according to the processing block and the prediction block; An encoding module, for each permission level, encodes the prediction mode information and residual parameter information of each processing block corresponding to the permission level to obtain a permission code stream corresponding to the permission level; The sending module sends the permission code stream corresponding to each permission level to the decoding end.

15. An image decoding device, characterized in that: include: a processor and a machine-readable storage medium storing machine-executable instructions capable of being executed by the processor; The processor is configured to execute machine-executable instructions to implement the method according to any one of claims 1 to 11.

16. An image encoding device, characterized in that include: a processor and a machine-readable storage medium storing machine-executable instructions capable of being executed by the processor; The processor is configured to execute machine-executable instructions to implement the method according to any one of claim 12.

17. A machine-readable storage medium, characterized in that The machine-readable storage medium stores a plurality of computer instructions, and when the computer instructions are executed by a processor, the method according to any one of claims 1 to 11 is implemented, or the method according to claim 12 is implemented.