Symbolization and decoding method and electronic device

By grouping channels and using linear weighting to determine probability distribution parameters, the method addresses inefficiencies in AI image compression, enhancing encoding and decoding efficiency and performance.

JP2025520959AActive Publication Date: 2025-07-03HUAWEI TECH CO LTD

Patent Information

Application Number
JP2025500168
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-07-07
Filing Date
2023-05-22
Publication Date
2025-07-03
Estimated Expiration
2043-05-22

AI Technical Summary

Technical Problem

AI image compression algorithms require significant computational resources due to the fusion of data from all channels and multiple convolutions, leading to inefficiencies in encoding and decoding processes.

Method used

The method involves grouping channels into groups, determining probability distribution parameters based on feature values and estimated information matrices of specific channels, and performing linear weighting to reduce computational load.

Benefits of technology

This approach significantly reduces computational requirements, improving encoding and decoding efficiency by minimizing the number of calculations needed, while also reducing the introduction of invalid information and enhancing encoding performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025520959000001_ABST
    Figure 2025520959000001_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide an encoding and decoding method and an electronic device. The encoding method includes: obtaining an image to be encoded; generating feature maps of C channels based on the image to be encoded, where the feature maps include feature values of a plurality of feature points; generating an estimated information matrix of C channels based on the feature maps of C channels; grouping the C channels into N channel groups; for at least one target channel group among the N channel groups, determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group; determining a probability distribution corresponding to the feature points to be encoded based on the at least one probability distribution parameter corresponding to the feature points to be encoded; and encoding the feature points to be encoded based on the probability distribution corresponding to the feature points to be encoded. In this way, at least one probability distribution parameter is determined based on information about some channels, so as to improve the encoding efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application claims priority to Chinese Patent Application No. 202210796212.X, titled "ENCODING AND DECODING METHOD AND ELECTRONIC DEVICE", filed with the China National Intellectual Property Administration on July 7, 2022, the entire content of which is incorporated herein by reference.

[0002] [Technical Field] Embodiments of the present application relate to the field of encoding and decoding, and in particular, to encoding and decoding methods and electronic devices.

Background Art

[0003] AI (Artificial Intelligence) image compression algorithms are implemented based on deep learning and have a better compression effect than conventional image compression technologies (e.g., JPEG (Joint Photographic Experts Group), BPG (Better Portable Graphics)). The process of compressing an image by an AI image compression algorithm is to predict at least one probability distribution parameter corresponding to an encoding target point / decoding target point, then determine a probability distribution based on the at least one probability distribution parameter, and then perform entropy encoding on the encoding target point / decoding target point based on the probability distribution to obtain a bitstream.

[0004] In the prior art, generally, the feature values of the encoded / decoded points of all channels are first fused to calculate the context features of the points to be encoded / decoded in the channel, and then multi-layer convolution is performed on the context features of the points to be encoded / decoded and the hyper-prior features to determine at least one probability distribution parameter corresponding to the points to be encoded / decoded. However, the fusion of data of all channels and multiple convolutions require a large amount of calculation, take time, and affect the encoding and decoding efficiency.

Summary of the Invention

[0005] This application provides an encoding and decoding method and an electronic device to solve the above technical problems. The encoding and decoding method can improve the encoding and decoding efficiency.

[0006] According to a first aspect, an embodiment of the present application provides an encoding method. The method includes first obtaining an image to be encoded, and then generating feature maps of C channels based on the image to be encoded, where the feature maps include feature values of a plurality of feature points, and C is a positive integer; generating an estimated information matrix of C channels based on the feature maps of C channels; then grouping the C channels into N channel groups, where N is an integer greater than 1, each channel group includes k channels, and the number k of channels included in any two channel groups may be the same or different, and k is a positive integer; then, for at least one target channel group among the N channel groups, determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group; then determining a probability distribution corresponding to the feature points to be encoded based on the at least one probability distribution parameter corresponding to the feature points to be encoded; and then encoding the feature points to be encoded based on the probability distribution corresponding to the feature points to be encoded.

[0007] Compared with the prior art that determines at least one probability distribution parameter based on the feature values of the encoded feature points of all channels and the estimated information matrix of all channels, in the present application, it is only necessary to determine at least one probability distribution parameter corresponding to the feature points to be encoded based on at least one feature value of at least one encoded feature point in the feature maps of some channels and the estimated information matrix of some channels. Thereby, the computing power for encoding is reduced, and the encoding efficiency can be improved.

[0008] Additionally, compared with the prior art that needs to generate context features based on at least one feature value of at least one encoded feature point and then determine at least one probability distribution parameter based on the context features and the estimated information matrix, in this application, it is not necessary to generate context features. Thereby, the computing power for encoding is further reduced and the encoding efficiency is improved.

[0009] Additionally, the correlation between the feature maps of channels is low and a large amount of information is stored during compression. Therefore, in this application, the introduction of invalid information can be reduced and the encoding performance can be improved.

[0010] For example, the feature map of each channel

Number

[0011] For example, the estimated information matrix of each channel

Number

[0012] For example, the estimated information may be the information used to estimate the probability distribution parameter and may include features and / or probability distribution parameters. This is not limited in this application.

[0013] For example, k = 1.

[0014] According to the first aspect, determining at least one probability distribution parameter corresponding to an encoding target feature point corresponding to a target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and an estimated information matrix corresponding to the target channel group includes performing linear weighting on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the encoding target feature point corresponding to the target channel group. Therefore, the amount of calculation for determining at least one probability distribution parameter can be reduced from the original tens of thousands of product-sum calculations to at least several times, at most several hundred times of product-sum calculations. As a result, the amount of calculation is significantly reduced.

[0015] According to any one of the first aspect or the aforementioned implementation of the first aspect, the estimated information matrix includes the estimated information of a plurality of feature points. Performing linear weighting on at least one feature value of at least one encoded feature point corresponding to a target channel group and the estimated information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group includes determining a first target area in the feature map corresponding to the target channel group and a second target area in the estimated information matrix corresponding to the target channel group based on the feature point to be encoded, and performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the estimated information of at least one feature point in the second target area to obtain at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group. Therefore, linear weighting is performed based only on the feature values of some encoded feature points in the feature map and the estimated information of feature points at some positions in the estimated information matrix. Thereby, the computing power for determining at least one probability distribution parameter is reduced, and the encoding efficiency can be improved.

[0016] For example, the at least one probability distribution parameter may include at least one first probability distribution parameter and / or at least one second probability distribution parameter.

[0017] For example, the first probability distribution parameter is the mean, and the second probability distribution parameter is Dispersion ( variance )

[0018] According to any one of the first aspect or the aforementioned implementations of the first aspect, when k is greater than 1, based on the feature points to be encoded, determining the first target region in the feature map corresponding to the target channel group and the second target region in the estimated information matrix corresponding to the target channel group is to determine, as the first target region, a region with a preset size centered on the feature points to be encoded in the feature map of the first channel and a region with a preset size centered on the feature points corresponding to the position of the feature points to be encoded in the feature map of the second channel, where the first channel corresponds to the feature points to be encoded and the second channel is a channel other than the first channel in the target channel group, and determining, as the second target region, a region with a preset size centered on the encoding target position in the estimated information matrix of the first channel and a region with a preset size centered on the position corresponding to the encoding target position in the estimated information matrix of the second channel, where the encoding target position is the position of the feature points to be encoded. Therefore, the probability distribution parameters can be calculated based on at least one encoded feature point and at least one feature value around the feature points to be encoded and the estimated information of the surrounding feature points, and the calculated probability distribution parameters can be made more accurate to further improve the encoding quality.

[0019] For example, the preset size may be the size of the linear weighted window, or may be ks1*ks2, where ks1 and ks2 are integers greater than 1, and ks1 and ks2 may or may not be equal and may be specifically set based on requirements. This is not limited in this application.

[0020] According to any one of the first aspect or the aforementioned implementations of the first aspect, determining the first target position based on positions other than the encoded positions in the second target area, where the encoded position is at least one position of at least one encoded feature point, and obtaining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group by performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the estimated information of at least one feature point in the second target area, and obtaining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group by performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the estimated information of the feature points corresponding to the first target position. Therefore, linear weighting is performed based only on the estimated information of the feature points at some positions in the second target area, so that the number of feature points for linear weighting can be reduced. Thereby, the computing power is reduced and the encoding efficiency can be improved.

[0021] According to any one of the first aspect or the aforementioned implementations of the first aspect, when k is greater than 1, determining the first target position based on positions other than the encoded positions in the second target area includes determining, as the first target position, the encoded target position and at least one other unencoded position in the second target area in the estimated information matrix of the first channel and the positions corresponding to the encoded target position and at least one other unencoded position in the second target area in the estimated information matrix of the second channel, where the first channel corresponds to the feature points to be encoded and the second channel is a channel other than the first channel in the target channel group. When performing linear weighting based only on some of the other unencoded positions, the number of feature points for linear weighting can be reduced. Thereby, the computing power is reduced and the encoding efficiency can be improved.

[0022] According to any one of the first aspect or the foregoing implementations of the first aspect, when k is greater than 1, determining the first target position based on a position other than the encoded position in the second target area includes determining, as the first target position, the encoding target position in the second target area in the estimated information matrix of the first channel and the position corresponding to the encoding target position in the second target area in the estimated information matrix of the second channel, where the first channel corresponds to the feature points to be encoded, and the second channel is a channel other than the first channel in the target channel group. Therefore, the number of feature points for linear weighting can be reduced. As a result, the computational amount for the probability distribution parameters can be further reduced, and the encoding efficiency can be improved.

[0023] According to any one of the first aspect or the foregoing implementations of the first aspect, performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the feature points corresponding to the first target position to obtain at least one first probability distribution parameter corresponding to the encoding target feature points corresponding to the target channel group includes obtaining a preset weight matrix corresponding to the first channel corresponding to the encoding target feature points, where the preset weight matrix includes a weight map of k channels, and the size of the weight map is the same as the size of the first target area, and performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the feature points corresponding to the first target position based on the weight map of k channels to obtain at least one first probability distribution parameter corresponding to the encoding target feature points corresponding to the target channel group. Different channels correspond to different preset weight matrices. Therefore, different probability distribution parameters may be obtained for the encoding target feature points of different channels. Estimated information feature points corresponding to the first target position to obtain at least one first probability distribution parameter corresponding to the encoding target feature points corresponding to the target channel group includes obtaining a preset weight matrix corresponding to the first channel corresponding to the encoding target feature points, where the preset weight matrix includes a weight map of k channels, and the size of the weight map is the same as the size of the first target area, and performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the feature points corresponding to the first target position based on the weight map of k channels to obtain at least one first probability distribution parameter corresponding to the encoding target feature points corresponding to the target channel group. Different channels correspond to different preset weight matrices. Therefore, different probability distribution parameters may be obtained for the encoding target feature points of different channels. Estimated information feature points corresponding to the first target position to obtain at least one first probability distribution parameter corresponding to the encoding target feature points corresponding to the target channel group. Different channels correspond to different preset weight matrices. Therefore, different probability distribution parameters may be obtained for the encoding target feature points of different channels.

[0024] According to any one of the first aspect or the aforementioned implementation of the first aspect, the estimated information matrix of C channels includes the first feature matrix of C channels and the second feature matrix of C channels. The first feature matrix includes the first features of a plurality of feature points, the second feature matrix includes the second features of a plurality of feature points, and at least one probability distribution parameter includes at least one first probability distribution parameter and at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes determining at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group, and determining at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group. The first feature matrix of C channels may be used to determine the first probability distribution parameter, and the second feature matrix of C channels may be used to determine the second probability distribution parameter. Therefore, both the first probability distribution parameter and the second probability distribution parameter can be corrected to make the obtained probability distribution parameter more accurate. Thereby, the accuracy of the determined probability distribution is improved.

[0025] According to any one of the first aspect or the aforementioned implementation of the first aspect, the estimated information matrix of C channels includes the first feature matrix of C channels and the second probability distribution parameter matrix of C channels. The first feature matrix includes the first features of a plurality of feature points, the second probability distribution parameter matrix includes the second probability distribution parameters of a plurality of feature points, and at least one probability distribution parameter includes at least one first probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes determining at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature points to be encoded based on at least one probability distribution parameter corresponding to the feature points to be encoded includes determining at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the second probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature points to be encoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature points to be encoded. Therefore, the first probability distribution parameter can be corrected to make the obtained first probability distribution parameter more accurate. Thereby, the accuracy of the determined probability distribution is improved.

[0026] According to any one of the first aspect or the foregoing implementation of the first aspect, the estimated information matrix of C channels includes a first probability distribution parameter matrix of C channels and a second feature matrix of C channels. The first probability distribution parameter matrix includes the first probability distribution parameters of a plurality of feature points, the second feature matrix includes the second features of a plurality of feature points, and at least one probability distribution parameter includes at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes determining at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature points to be encoded based on at least one probability distribution parameter corresponding to the feature points to be encoded includes determining at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one first probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature points to be encoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature points to be encoded. Therefore, the second probability distribution parameter can be corrected to make the obtained second probability distribution parameter more accurate. Thereby, the accuracy of the determined probability distribution is improved.

[0027] Based on the feature maps of C channels, further generate other estimated information matrices for the C channels, and then, based on at least one feature value of at least one encoded feature point corresponding to the target channel group, the estimated information matrix corresponding to the target channel group, and another estimated information matrix corresponding to the target channel group, it should be understood that at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group may be determined.

[0028] According to any one of the first aspect or the foregoing implementations of the first aspect, determining at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group includes: determining, based on the feature points to be encoded, a first target area in the feature map corresponding to the target channel group and a third target area in the second feature matrix corresponding to the target channel group; determining at least one difference corresponding to at least one encoded feature point in the first target area based on at least one feature value of at least one encoded feature point in the first target area and at least one corresponding first probability distribution parameter; and performing linear weighting on at least one second feature of at least one feature point in the third target area and at least one difference corresponding to at least one encoded feature point in the first target area to obtain at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group. Therefore, the second probability distribution parameter can be accurately calculated.

[0029] For example, the first probability distribution parameter is the mean, and the second probability distribution parameter is the variance ( variance ).

[0030] For example, at least one first probability distribution parameter corresponding to at least one encoded feature point may be obtained by first performing linear weighting on at least one feature value of at least one encoded feature point in a first target region and a first feature of a feature point corresponding to a first target position.

[0031] For example, when an estimated information matrix includes a first probability distribution parameter matrix and a second feature matrix, at least one second probability distribution parameter may also be determined in this manner. At least one first probability distribution parameter corresponding to an encoded feature point may be determined based on the first probability distribution parameter matrix.

[0032] For example, a method of determining at least one difference corresponding to at least one encoded feature point in a first target region based on at least one feature value of at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter may be to determine at least one difference between at least one feature value of at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter as at least one difference corresponding to at least one encoded feature point in the first target region.

[0033] For example, a method of determining at least one difference corresponding to at least one encoded feature point in a first target region based on at least one feature value of at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter may be to determine at least one absolute value of at least one difference between at least one feature value of at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter as at least one difference corresponding to at least one encoded feature point in the first target region.

[0034] For example, based on at least one feature value of at least one encoded feature point in a first target region and at least one corresponding first probability distribution parameter, a method of determining at least one difference corresponding to at least one encoded feature point in the first target region may be to determine the square of the difference between at least one feature value of at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter as at least one difference corresponding to at least one encoded feature point in the first target region.

[0035] According to a second aspect, an embodiment of the present application provides a decoding method. The method includes first receiving a bitstream, decoding the bitstream to obtain an estimated information matrix of C channels, where C is a positive integer, and then decoding the bitstream to obtain feature values of feature points of C channels based on the estimated information matrix of C channels to obtain a feature map of C channels. For a feature point to be decoded, determining a target channel group to which the channel corresponding to the feature point to be decoded belongs from N channel groups obtained by grouping C channels, where each channel group includes k channels, and the number k of channels included in any two channel groups may be the same or different, k is a positive integer, and N is an integer greater than 1, determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, determining the probability distribution corresponding to the feature point to be decoded based on at least one probability distribution parameter corresponding to the feature point to be decoded, decoding the feature point to be decoded based on the probability distribution corresponding to the feature point to be decoded to obtain a feature value, and performing reconstruction based on the feature maps of C channels to output a reconstructed image.

[0036] Compared with the prior art that determines probability distribution parameters based on the feature values of the decoded feature points of all channels and the estimated information matrices of all channels, in the present application, at least one probability distribution parameter corresponding to the feature points to be decoded needs to be determined based only on at least one feature value of at least one decoded feature point in the feature maps of some channels and the estimated information matrices of some channels. Thereby, the computing power for decoding is reduced, and the decoding efficiency can be improved.

[0037] Additionally, compared with the prior art that needs to generate context features based on at least one feature value of at least one decoded feature point and then determine probability distribution parameters based on the context features and the estimated information matrices, in the present application, there is no need to generate context features. Thereby, the computing power for decoding is further reduced, and the decoding efficiency is improved.

[0038] According to a second aspect, determining at least one probability distribution parameter corresponding to the feature points to be decoded based on at least one feature value of at least one decoded feature point corresponding to a target channel group and the estimated information matrix corresponding to the target channel group includes performing linear weighting on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the feature points to be decoded.

[0039] According to either the second aspect or any one of the foregoing implementations of the second aspect, the estimated information matrix includes the estimated information of a plurality of feature points. Determining at least one probability distribution parameter corresponding to the feature point to be decoded by performing linear weighting on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes: determining, based on the feature point to be decoded, a first target area in the feature map corresponding to the target channel group and a second target area in the estimated information matrix corresponding to the target channel group; and performing linear weighting on at least one feature value of at least one decoded feature point in the first target area and the estimated information of at least one feature point in the second target area to obtain at least one probability distribution parameter corresponding to the feature point to be decoded.

[0040] According to either the second aspect or any one of the foregoing implementations of the second aspect, when k is greater than 1, determining, based on the feature point to be decoded, a first target area in the feature map corresponding to the target channel group and a second target area in the estimated information matrix corresponding to the target channel group includes: determining, as the first target area, an area with a preset size centered on the feature point to be decoded in the feature map of the first channel and an area with a preset size centered on the feature point corresponding to the position of the feature point to be decoded in the feature map of the second channel, where the first channel corresponds to the feature point to be decoded and the second channel is a channel other than the first channel in the target channel group; and determining, as the second target area, an area with a preset size centered on the position to be decoded in the estimated information matrix of the first channel and an area with a preset size centered on the position corresponding to the position to be decoded in the estimated information matrix of the second channel, where the position to be decoded is the position of the feature point to be decoded.

[0041] According to either the second aspect or any one of the foregoing implementations of the second aspect, obtaining at least one probability distribution parameter corresponding to the feature point to be decoded by performing linear weighting on at least one feature value of at least one decoded feature point in the first target area and the estimated information of at least one feature point in the second target area is to determine the first target position based on positions other than the decoded position in the second target area, where the decoded position is at least one position of at least one decoded feature point, and performing linear weighting on at least one feature value of at least one decoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position to obtain at least one probability distribution parameter corresponding to the feature point to be decoded.

[0042] According to either the second aspect or any one of the foregoing implementations of the second aspect, when k is greater than 1, determining the first target position based on positions other than the decoded position in the second target area includes determining, as the first target position, the position corresponding to the position to be decoded and at least one other undecoded position in the second target area in the estimated information matrix of the first channel and the position corresponding to the position to be decoded and at least one other undecoded position in the second target area in the estimated information matrix of the second channel, where the first channel corresponds to the feature point to be decoded and the second channel is a channel other than the first channel in the target channel group.

[0043] According to either the second aspect or any one of the foregoing implementations of the second aspect, when k is greater than 1, the step of determining the first target position based on positions other than the decoded positions in the second target area includes determining, as the first target position, the position corresponding to the position to be decoded in the second target area in the estimated information matrix of the first channel and the position corresponding to the position to be decoded in the second target area in the estimated information matrix of the second channel, where the first channel corresponds to the feature point to be decoded, and the second channel is a channel other than the first channel in the target channel group.

[0044] According to either the second aspect or any one of the foregoing implementations of the second aspect, obtaining at least one probability distribution parameter corresponding to the feature point to be decoded by performing linear weighting on at least one feature value of at least one decoded feature point in the first target area and the estimated information of the feature point corresponding to the first target area includes obtaining a preset weight matrix corresponding to the first channel corresponding to the feature point to be decoded, where the weight matrix includes a weight map of k channels, and performing linear weighting on at least one feature value of at least one decoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position based on the weight map of k channels to obtain at least one probability distribution parameter corresponding to the feature point to be decoded.

[0045] According to either the second aspect or any one of the foregoing implementations of the second aspect, the estimation information matrix of C channels includes a first feature matrix of C channels and a second feature matrix of C channels. The first feature matrix includes the first features of a plurality of feature points, the second feature matrix includes the second features of a plurality of feature points, and at least one probability distribution parameter includes at least one first probability distribution parameter and at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimation information matrix corresponding to the target channel group includes determining at least one first probability distribution parameter corresponding to the feature points to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group, and determining at least one second probability distribution parameter corresponding to the feature points to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group.

[0046] According to either the second aspect or any one of the aforementioned implementations of the second aspect, the estimated information matrix of C channels includes the first feature matrix of C channels and the second probability distribution parameter matrix of C channels. The first feature matrix includes the first features of a plurality of feature points, and the second probability distribution parameter matrix includes the second probability distribution parameters of a plurality of feature points. At least one probability distribution parameter includes at least one first probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes determining at least one first probability distribution parameter corresponding to the feature point to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature point to be decoded based on at least one probability distribution parameter corresponding to the feature point to be decoded includes determining at least one second probability distribution parameter of the feature point to be decoded based on at least one second probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature point to be decoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature point to be decoded.

[0047] According to either the second aspect or any one of the aforementioned implementations of the second aspect, the estimated information matrix of C channels includes the first probability distribution parameter matrix of C channels and the second feature matrix of C channels. The first probability distribution parameter matrix includes the first probability distribution parameters of a plurality of feature points, the second feature matrix includes the second features of a plurality of feature points, and at least one probability distribution parameter includes at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes determining at least one second probability distribution parameter corresponding to the feature points to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature points to be decoded based on at least one probability distribution parameter corresponding to the feature points to be decoded includes determining at least one first probability distribution parameter corresponding to the feature points to be decoded based on the first probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature points to be decoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature points to be decoded.

[0048] According to any one of the second aspect or the aforementioned implementation of the second aspect, determining at least one second probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and a second feature matrix corresponding to the target channel group includes: determining, based on the feature point to be decoded, a first target area in the feature map corresponding to the target channel group and a third target area in the second feature matrix corresponding to the target channel group; determining at least one difference corresponding to at least one decoded feature point in the first target area based on at least one feature value of at least one decoded feature point in the first target area and at least one corresponding first probability distribution parameter; and obtaining at least one second probability distribution parameter corresponding to the feature point to be decoded by linearly weighting at least one second feature of at least one feature point in the third target area and at least one difference corresponding to at least one decoded feature point in the first target area.

[0049] Any one of the second aspect and the implementation of the second aspect corresponds to any one of the first aspect and the implementation of the first aspect. For the technical effects corresponding to any one of the second aspect or the implementation of the second aspect, refer to the technical effects corresponding to any one of the first aspect or the implementation of the first aspect. Details are not described again here.

[0050] According to the third aspect, an embodiment of the present application provides an encoder configured to perform the encoding method in any one of the first aspect and the implementation of the first aspect.

[0051] Any one of the third aspect and the implementation of the third aspect corresponds to any one of the first aspect and the implementation of the first aspect. For the technical effects corresponding to any one of the third aspect or the implementation of the third aspect, refer to the technical effects corresponding to any one of the first aspect or the implementation of the first aspect. Details are not described again here.

[0052] According to a fourth aspect, one embodiment of the present application provides a decoder configured to perform a decoding method in any one of the second aspect and the implementation of the second aspect.

[0053] Any one of the fourth aspect and the implementation of the fourth aspect corresponds to any one of the second aspect and the implementation of the second aspect. For the technical effects corresponding to any one of the fourth aspect or the implementation of the fourth aspect, refer to the technical effects corresponding to any one of the second aspect or the implementation of the second aspect. Details are not described again here.

[0054] According to a fifth aspect, one embodiment of the present application provides an electronic device including a memory and a processor. The memory is coupled to the processor. The memory stores program instructions. When the program instructions are executed by the processor, the electronic device can perform an encoding method in any one of the first aspect or a possible implementation of the first aspect.

[0055] Any one of the fifth aspect and the implementation of the fifth aspect corresponds to any one of the first aspect and the implementation of the first aspect. For the technical effects corresponding to any one of the fifth aspect or the implementation of the fifth aspect, refer to the technical effects corresponding to any one of the first aspect or the implementation of the first aspect. Details are not described again here.

[0056] According to a sixth aspect, one embodiment of the present application provides an electronic device including a memory and a processor. The memory is coupled to the processor. The memory stores program instructions. When the program instructions are executed by the processor, the electronic device can perform a decoding method in any one of the second aspect or a possible implementation of the second aspect.

[0057] Either one of the sixth aspect and the implementation of the sixth aspect corresponds to either one of the second aspect and the implementation of the second aspect. For the technical effect corresponding to either one of the sixth aspect or the implementation of the sixth aspect, refer to the technical effect corresponding to either one of the second aspect or the implementation of the second aspect. Details are not described again here.

[0058] According to the seventh aspect, an embodiment of the present application provides a chip including one or more interface circuits and one or more processors. The interface circuit is configured to receive a signal from the memory of an electronic device and transmit the signal to the processor. The signal includes computer instructions stored in the memory. When the processor executes the computer instructions, the electronic device can perform the encoding method in either one of the first aspect or a possible implementation of the first aspect.

[0059] For the seventh aspect and various implementations of the seventh aspect, refer to the description of the corresponding effects of the first aspect and various implementations of the first aspect. For the technical effect corresponding to either one of the seventh aspect or the implementation of the seventh aspect, refer to the technical effect corresponding to either one of the first aspect or the implementation of the first aspect. Details are not described again here.

[0060] According to the eighth aspect, an embodiment of the present application provides a chip including one or more interface circuits and one or more processors. The interface circuit is configured to receive a signal from the memory of an electronic device and transmit the signal to the processor. The signal includes computer instructions stored in the memory. When the processor executes the computer instructions, the electronic device can perform the decoding method in either one of the second aspect or a possible implementation of the second aspect.

[0061] Any one of the eighth aspect and the implementation of the eighth aspect corresponds to any one of the second aspect and the implementation of the second aspect. For the technical effects corresponding to any one of the eighth aspect or the implementation of the eighth aspect, refer to the technical effects corresponding to any one of the second aspect or the implementation of the second aspect. Details are not described again here.

[0062] According to the ninth aspect, an embodiment of the present application provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program is executed on a computer or a processor, the computer or the processor can perform the encoding method in any one of the first aspect or the possible implementations of the first aspect.

[0063] Any one of the ninth aspect and the implementation of the ninth aspect corresponds to any one of the first aspect and the implementation of the first aspect. For the technical effects corresponding to any one of the ninth aspect or the implementation of the ninth aspect, refer to the technical effects corresponding to any one of the first aspect or the implementation of the first aspect. Details are not described again here.

[0064] According to the tenth aspect, an embodiment of the present application provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program is executed on a computer or a processor, the computer or the processor can perform the decoding method in any one of the second aspect or the possible implementations of the second aspect.

[0065] Any one of the tenth aspect and the implementation of the tenth aspect corresponds to any one of the second aspect and the implementation of the second aspect. For the technical effects corresponding to any one of the tenth aspect or the implementation of the tenth aspect, refer to the technical effects corresponding to any one of the second aspect or the implementation of the second aspect. Details are not described again here.

[0066] According to the 11th aspect, an embodiment of the present application provides a computer program product. The computer program product includes a software program. When the software program is executed by a computer or a processor, the computer or the processor can perform the encoding method in any one of the 1st aspect or the possible implementations of the 1st aspect.

[0067] Any one of the 11th aspect and the implementations of the 11th aspect corresponds to any one of the 1st aspect and the implementations of the 1st aspect. For the technical effects corresponding to any one of the 11th aspect or the implementations of the 11th aspect, refer to the technical effects corresponding to any one of the 1st aspect or the implementations of the 1st aspect. Details are not described again here.

[0068] According to the 12th aspect, an embodiment of the present application provides a computer program product. The computer program product includes a software program. When the software program is executed by a computer or a processor, the computer or the processor can perform the decoding method in any one of the 2nd aspect or the possible implementations of the 2nd aspect.

[0069] Any one of the 12th aspect and the implementations of the 12th aspect corresponds to any one of the 2nd aspect and the implementations of the 2nd aspect. For the technical effects corresponding to any one of the 12th aspect or the implementations of the 12th aspect, refer to the technical effects corresponding to any one of the 2nd aspect or the implementations of the 2nd aspect. Details are not described again here.

[0070] According to the 13th perspective, an embodiment of the present application provides a bitstream generation method used to generate a bitstream by the encoding method in any one of the 1st aspect and the implementations of the 1st aspect.

[0071] According to the 14th aspect, one embodiment of the present application provides a bitstream storage method used for storing a bitstream generated by a bitstream generation method in any one of the 13th aspect and the implementation of the 13th aspect.

[0072] According to the 15th aspect, one embodiment of the present application provides a bitstream transmission method used for transmitting a bitstream generated by a bitstream generation method in any one of the 13th aspect and the implementation of the 13th aspect.

Brief Description of the Drawings

[0073]

Figure 1

Figure 2

Figure 3a

Figure 3b

Figure 3c

Figure 4A

Figure 4B

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12a

Figure 12b

Figure 12c

Figure 12d

Figure 13a

Figure 13b

Figure 14a

Figure 14b

Figure 15

Embodiments for Carrying Out the Invention

[0074] Hereinafter, with reference to the accompanying drawings in the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly described. It is obvious that the described embodiments are only part of the embodiments of the present application, not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.

[0075] The term "and / or" in this specification only explains the association relationship for the associated objects and indicates that three relationships may exist. For example, A and / or B may indicate the following three cases, namely, the case where only A exists, the case where both A and B exist, and the case where only B exists.

[0076] In the specification of this application, terms such as "first", "second", "third", "fourth", etc. are intended to distinguish different objects and do not indicate a specific order of the objects. For example, the first target object and the second target object are used to distinguish different target objects, but are not used to explain a specific order of the target objects.

[0077] In the embodiments of this application, words such as "example", "for example", etc. are used to represent giving examples, illustrations or explanations. In the embodiments of this application, any embodiment or design scheme described as an "example" or "for example" should not be described as being more preferable than another embodiment or design scheme or having more advantages than this. Exactly, the use of words such as "example", "for example", etc. is intended to present related concepts in a specific manner.

[0078] In the description of the embodiments of this application, unless otherwise specified, "a plurality" means two or more. For example, a plurality of processing units are two or more processing units, and a plurality of systems are two or more systems.

[0079] FIG. 1 is a diagram of an example of the configuration of a system framework. The system shown in FIG. 1 is merely an example, and it should be understood that the system in this application may have more or fewer components than those shown in the figure, may combine two or more components, or may have different component configurations. The various components shown in FIG. 1 may be implemented in hardware including one or more signal processing and / or application-specific integrated circuits, software, or a combination of hardware and software.

[0080] Refer to FIG. 1. For example, the image encoding process may be as follows. The image to be encoded is input to the AI encoding unit and processed by the AI encoding unit to output the feature value of the feature points to be encoded and the corresponding probability distribution. Next, the feature value of the feature points to be encoded and the corresponding probability distribution are input to the entropy encoding unit. The entropy encoding unit performs entropy encoding on the feature value of the feature points to be encoded based on the probability distribution corresponding to the feature points to be encoded, and outputs a bit stream.

[0081] Continuing to refer to FIG. 1. For example, the image decoding process may be as follows. After obtaining the bit stream, the entropy decoding unit performs entropy decoding on the feature points to be decoded based on the probability distribution predicted by the AI decoding unit corresponding to the feature points to be decoded and based on at least one feature value of at least one decoded feature point, and may output at least one feature value of at least one decoded feature point to the AI decoding unit. After performing entropy decoding on all the feature points to be decoded, the AI decoding unit performs reconstruction based on at least one feature value corresponding to at least one decoded feature point, and outputs a reconstructed image.

[0082] For example, entropy encoding is encoding without information loss according to the entropy principle in the encoding process. Entropy encoding may include multiple types, for example, Shannon encoding, Huffman encoding, arithmetic coding. This is not limited in this application.

[0083] For example, the image to be encoded input to the AI encoding unit may be a raw (unprocessed) image, an RGB (Red Green Blue) image, a YUV image (Y represents luminance or luma, U and V represent chrominance and chroma respectively). This is not limited in this application.

[0084] For example, the compression process and the decompression process may be performed on the same electronic device or on different electronic devices. This is not limited in the present application.

[0085] For example, the present application may be applied to the compression and decompression of one image, or may be applied to the compression and decompression of images of a plurality of frames in a video sequence. This is not limited in the present application.

[0086] For example, the present application may be applied to a plurality of scenarios, such as a Huawei image (or video) cloud storage (or transmission) scenario, a video surveillance scenario, or a live broadcast scenario. This is not limited in the present application.

[0087] FIG. 2 is a diagram of an example of an encoding process.

[0088] S201: Obtain the image to be encoded.

[0089] For example, on the encoder side, the image to be encoded may be obtained, and then the image to be encoded may be encoded with reference to S202 to S206 to obtain a corresponding bitstream.

[0090] S202: Based on the image to be encoded, generate feature maps of C channels, and the feature maps include feature values of a plurality of feature points.

[0091] For example, perform a spatial transformation on the image to be encoded to reduce the temporal redundancy and spatial redundancy of the image to be encoded, and in order to transform the image to be encoded into another space, obtain feature maps of C (C is a positive integer) channels.

[0092] For example, the feature map of each channel

Number

[0093] For example, FIG. 2 shows the feature maps of channels 1, 2, ···, k, c1, ···, ck, ···, C-1, and C among the feature maps of C channels. Both c1 and ck are positive integers smaller than C.

[0094] S203: Generate an estimated information matrix for C channels based on the feature maps of C channels.

[0095] For example, after the feature maps of C channels are obtained, feature extraction may be performed on the feature maps of C channels to obtain an estimated information matrix for C channels. For example, the estimated information matrix of each channel

Number

[0096] For example, the estimated information may be information used to estimate probability distribution parameters and may include features and / or probability distribution parameters. This is not limited in this application.

[0097] For example, FIG. 2 shows the estimated information matrices of channels 1, 2, ···, k, c1, ···, ck, ···, C-1, and C among the estimated information matrices of C channels.

[0098] S204: Group C channels into N channel groups.

[0099] For example, C channels may be grouped into at least N (N is an integer greater than 1) channel groups, and each channel group may include at least one channel. Let the number of channels included in one channel group be represented by k (k is a positive integer smaller than C), and it is assumed that k in all channel groups may be the same or different. This is not limited in the present application.

[0100] FIG. 3a is a diagram of an example of a channel group. In the embodiment of FIG. 3a, the number k of channels included in all channel groups is the same.

[0101] Referring to FIG. 3a. For example, k = 2. Specifically, two channels out of C channels are used to form one channel group. Therefore, the number of obtained channel groups is N = C / 2. Assume C = 192 and k = 2. In this case, N = 96. In other words, two channels out of 192 channels may be used to form one channel group, and 96 channel groups may be obtained.

[0102] FIG. 3b is a diagram of an example of a channel group. In the embodiment of FIG. 3b, it is shown that the number k of channels included in all channel groups is different.

[0103] Referring to FIG. 3b. For example, channel 1 among C channels may be used to form channel group 1, channels 2 and 3 among C channels may be used to form channel group 2, channels 4, 5, and 6 among C channels may be used to form channel group 3,..., channels C - 1 and C among C channels may be used to form channel group N.

[0104] Note that FIGS. 3a and 3b are merely examples of the present application, and k may be set to other values as needed. This is not limited in the present application.

[0105] Note that different channel groups may include the same channel. For example, channel group 1 may include channel 1 and channel 2, and channel group 2 may include channel 2 and channel 3. This is not limited in the present application.

[0106] S205: For at least one target channel group among N channel groups, based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, determine at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group.

[0107] For example, all of the N channel groups may be sequentially determined as the target channel group, and then for each target channel group, based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group may be determined. In the present application, one target channel group among the N channel groups is used as an example, and the process of determining the probability distribution parameter corresponding to one feature point to be encoded in the feature map of channel c in the target channel group will be described.

[0108] FIG. 3c is a diagram of an example of the encoding order.

[0109] (1) in FIG. 3c shows the feature map of one channel. The size of the feature map is 10*10, and each block represents one feature point. For example, on the encoder side, all the feature points in the feature map may be sequentially encoded in the order shown in (1) of FIG. 3c. Specifically, all the feature points may be sequentially encoded from left to right in the first row, and after encoding all the feature points in the first row, start encoding all the feature points in the second row from left to right, and so on until all the feature points in the feature map are encoded.

[0110] (2) in FIG. 3c shows the feature map of one channel. The size of the feature map is 10*10, and each block represents one feature point. The white blocks represent unencoded feature points, and the black blocks represent encoded feature points (on the encoder side, the feature map of each channel is first divided based on a black and white checkerboard, and on the encoder side, the feature points corresponding to the black blocks are encoded first, and then the feature points corresponding to the white blocks are encoded). In a possible implementation, in the process of encoding the feature points corresponding to the black blocks, based on the estimated information matrix, the corresponding probability distribution parameters are determined, and in the process of encoding the feature points corresponding to the white blocks, based on S204 of the present application, the corresponding probability distribution parameters are determined. In a possible implementation, in both the process of encoding the feature points corresponding to the black blocks and the process of encoding the feature points corresponding to the white blocks, based on S204 of the present application, the corresponding probability distribution parameters are determined.

[0111] For example, for the feature points corresponding to the white blocks, the encoding side may sequentially encode all the feature points corresponding to the white blocks in the feature map in the order of (2) in FIG. 3c. Specifically, all the feature points corresponding to the white blocks may be sequentially encoded from left to right in the first row, and after encoding all the feature points corresponding to the white blocks in the first row, start encoding all the feature points corresponding to the white blocks in the second row from left to right, and so on until all the feature points corresponding to the white blocks in the feature map are encoded.

[0112] For example, in the process where the encoder side encodes the feature points corresponding to the black blocks, when determining the corresponding probability distribution parameters based on S204 of the present application, the order of encoding the feature points corresponding to the black blocks is the same as the order of encoding the feature points corresponding to the white blocks. Details will not be described again here.

[0113] Note that (2) in FIG. 3c is only an example. Alternatively, the positions of the black blocks and white blocks in the black and white checkerboard may be interchanged. This is not limited in the present application.

[0114] For example, in the encoding order of FIG. 3c, the feature points to be encoded may be selected from the unencoded feature points in the feature map of channel c. Then, at least one encoded feature point in the feature map corresponding to the target channel group is determined. Next, a weighting calculation is performed on at least one feature value of at least one encoded feature point in the feature map corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, to determine at least one probability distribution parameter corresponding to one feature point to be encoded in the feature map of channel c in the target channel group. The feature map corresponding to the target channel group may be the feature maps of k channels included in the target channel group. The estimated information matrix corresponding to the target channel group may be the estimated information matrices of k channels included in the target channel group. Therefore, at least one probability distribution parameter corresponding to the feature points to be encoded in the feature map of channel c may be determined. Then, the unencoded feature points in the feature map of channel c are sequentially determined as the feature points to be encoded, and at least one probability distribution parameter corresponding to each feature point to be encoded in the feature map of channel c is determined.

[0115] Therefore, at least one probability distribution parameter corresponding to each encoding target feature point in the feature map of each channel in the target channel group may be determined.

[0116] In the foregoing method, probability distribution parameters corresponding to the encoding target feature points corresponding to all target channel groups may be determined. For example, at least one probability distribution parameter corresponding to the encoding target feature points corresponding to channel group 1, at least one probability distribution parameter corresponding to the encoding target feature points corresponding to channel group 2,..., at least one probability distribution parameter corresponding to the encoding target feature points corresponding to channel group N may be determined.

[0117] S206: Determining a probability distribution corresponding to the encoding target feature points based on at least one probability distribution parameter corresponding to the encoding target feature points;

[0118] For example, after determining at least one probability distribution parameter corresponding to the encoding target feature points, for each encoding target feature point, a probability distribution corresponding to each encoding target feature point may be determined based on at least one probability distribution parameter corresponding to each encoding target feature point.

[0119] For example, the at least one probability distribution parameter is a Gaussian distribution parameter, and the determined probability distribution corresponding to the encoding target feature points is a Gaussian probability distribution.

[0120] S207: Encoding the encoding target feature points based on the probability distribution corresponding to the encoding target feature points to obtain a bit stream.

[0121] For example, for each encoding target feature point, the feature value of the encoding target feature point may be encoded based on the probability distribution corresponding to each encoding target feature point. After encoding the feature values of all feature points in the feature maps of C channels, the bit stream of the encoding target image may be obtained.

[0122] For example, the encoding side may locally store the bitstream of the image to be encoded, or may transmit the bitstream of the image to be encoded to the decoder side. This is not limited in the present application.

[0123] For example, the encoder side may generate prior information for C channels based on the feature maps of C channels, and then perform reconstruction based on the prior information of C channels to obtain an estimated information matrix for C channels. For example, alternatively, the encoder side may alternatively encode the prior information of C channels to obtain a bitstream of the prior information of C channels, and then store the bitstream of the prior information or transmit the bitstream of the prior information to the decoder side. Subsequently, when decoding the bitstream of the image to be encoded, an estimated information matrix may be determined based on the prior information, and then at least one probability distribution parameter corresponding to the feature points to be decoded may be determined based on the estimated information matrix.

[0124] Compared with the prior art that determines the probability distribution parameter based on the feature values of the encoded feature points of all channels and the estimated information matrix of all channels, in the present application, it is necessary to determine at least one probability distribution parameter corresponding to the feature points to be encoded based only on at least one feature value of at least one encoded feature point in the feature maps of some channels and the estimated information matrix of some channels. Thereby, the computing power for encoding is reduced, and the encoding efficiency can be improved.

[0125] Additionally, compared with the prior art that needs to generate a context feature based on at least one feature value of at least one encoded feature point and then determine at least the probability distribution parameter based on the context feature and the estimated information matrix, in the present application, there is no need to generate a context feature. Thereby, the computing power for encoding is further reduced, and the encoding efficiency is improved.

[0126] Additionally, the correlation between the feature maps of the channels is low, and a large amount of information is memorized during compression. Therefore, in this application, the introduction of invalid information can be reduced, and the encoding performance can be improved.

[0127] FIG. 4A and FIG. 4B are diagrams of an example of the decoding process.

[0128] S401: Receive a bitstream.

[0129] For example, the bitstream received on the decoder side may include the bitstream of the image and the prior information of C channels, and the bitstream corresponding to the image.

[0130] For example, the bitstream of the image may include the encoded data of the feature values of the feature points of C channels, and the bitstream of the prior information of C channels may include the encoded data of the prior information of the feature points of C channels.

[0131] S402: Decode the bitstream to obtain the estimated information matrix of C channels.

[0132] For example, after receiving the bitstream, the bitstream is analyzed to obtain the encoded data of the prior information of the feature points of C channels, and then the encoded data of the prior information of the feature points of C channels is Processing used to obtain the estimated information matrix of C channels.

[0133] For example, FIGS. 4A and 4B show the estimated information matrices of C channels, including the estimated information matrix of channel 1, the estimated information matrix of channel 2, ···, the estimated information matrix of channel c1, the estimated information matrix of channel c2, ···, the estimated information matrix of channel ck, ···, the estimated information matrix of channel C-1, and the estimated information matrix of channel C. Both c1 and ck are positive integers smaller than C.

[0134] S403: Decode the bitstream, and based on the estimated information matrices of the C channels, obtain the eigenvalue of the feature point of the C channels, and obtain the feature map of the C channels.

[0135] For example, in the process of analyzing the bitstream, further analyze the bitstream to obtain the encoded data of the eigenvalue of the feature point of the C channels, and then, based on the estimated information matrices of the C channels, decode the encoded data of the eigenvalue of the feature point of the C channels to obtain the eigenvalue of the feature point of the C channels, that is, the feature map of the C channels. In this application, an example of decoding one decoding target feature point of one channel is used for illustration.

[0136] For example, Decryption The decoding order on the decoder side is the same as the encoding order on the encoder side. For details, refer to the description in the embodiment of FIG. 3c. Details are not described again here.

[0137] For example, in the decoding order corresponding to the encoding order of FIG. 3c, it may be determined to select the decoding target feature point from the undecoded feature points corresponding to the channels. Then, the eigenvalue of the decoding target feature point may be obtained through decoding with reference to the following steps S4031 to S4034.

[0138] S4031: Determine the target channel group to which the channel corresponding to the decoding target feature point belongs from the N channel groups obtained by grouping the C channels.

[0139] For example, alternatively, the decoder side groups the C channels into N channel groups, and each channel group may include k channels. Details are the same as the aforementioned method for the encoder side to group the channel groups. Details are not described again here.

[0140] For example, a target channel group to which a channel corresponding to a feature point to be decoded belongs may be determined. The target channel group to which a channel corresponding to a feature point to be decoded belongs may include k channels of channel c1, channel c2, …, channel ck.

[0141] S4032: Based on at least one feature value of at least one decoded feature point corresponding to a target channel group and an estimated information matrix corresponding to the target channel group, determine at least one probability distribution parameter corresponding to the feature point to be decoded.

[0142] Based on at least one feature value of at least one decoded feature point corresponding to a target channel group and an estimated information matrix corresponding to the target channel group, perform a weighting calculation to determine at least one probability distribution parameter corresponding to the feature point to be decoded. For example, at least one decoded feature point corresponding to a target channel group may be at least one decoded feature point corresponding to the k channels included in the target channel group.

[0143] S4033: Based on at least one probability distribution parameter corresponding to the feature point to be decoded, determine a probability distribution corresponding to the feature point to be decoded.

[0144] For example, after determining at least one probability distribution parameter corresponding to the feature point to be decoded, a probability distribution corresponding to the feature point to be decoded may be determined based on at least one probability distribution parameter corresponding to the feature point to be decoded.

[0145] For example, at least one probability distribution parameter is a Gaussian distribution parameter, and the determined probability distribution corresponding to the feature point to be decoded is a Gaussian probability distribution.

[0146] S4034: Based on the probability distribution corresponding to the feature point to be decoded, decode the feature point to be decoded to obtain a feature value.

[0147] For example, based on the probability distribution corresponding to the feature points to be decoded, the encoded data of the feature values of the feature points to be decoded may be decoded to obtain the feature values of the feature points to be decoded. In this case, the feature points to be decoded become the decoded feature points.

[0148] Therefore, the feature points to be decoded of the channels in all target channel groups may be decoded in the above-described manner.

[0149] S404: Perform reconstruction based on the feature maps of C channels and output a reconstructed image.

[0150] For example, after obtaining the feature maps of C channels, image reconstruction may be performed based on the feature maps of C channels to obtain a reconstructed image.

[0151] Compared with the prior art that determines at least one probability distribution parameter based on the feature values of the decoded feature points of all channels and the estimated information matrices of all channels, in the present application, it is necessary to determine at least one probability distribution parameter corresponding to the feature points to be decoded based only on at least one feature value of at least one decoded feature point in the feature maps of some channels and the estimated information matrices of some channels. Thereby, the computing power for decoding is reduced, and the decoding efficiency can be improved.

[0152] Additionally, compared with the prior art that needs to generate context features based on at least one feature value of at least one decoded feature point and then determine at least one probability distribution parameter based on the context features and the estimated information matrix, in the present application, it is not necessary to generate context features. Thereby, the computing power for decoding is further reduced, and the decoding efficiency is improved.

[0153] FIG. 5 is a diagram of an example of an end-to-end image compression framework.

[0154] Refer to FIG. 5. For example, an encoder network, quantization unit D1, aggregation unit, hyper-encoder network, quantization unit D2, hyper-decoder network, probability estimation unit V1, and probability estimation unit V2 belong to the AI encoder unit in FIG. 1. For example, a decoder network, aggregation unit, hyper-decoder network, probability estimation unit V1, and probability estimation unit V2 belong to the AI decoder unit in FIG. 1.

[0155] For example, entropy encoding unit A1 and entropy encoding unit B1 belong to the entropy encoding unit in FIG. 1.

[0156] For example, entropy decoding unit A2 and entropy decoding unit B2 belong to the entropy decoding unit in FIG. 1.

[0157] For example, the AI encoder unit and the AI decoder unit may perform joint training, and each network and each unit in the AI encoder unit and the AI decoder unit learn corresponding parameters. For example, the aggregation unit, hyper-decoder network, probability estimation unit V1, and probability estimation unit V2 in the AI encoder unit and the aggregation unit, hyper-decoder network, probability estimation unit V1, and probability estimation unit V2 in the AI decoder unit may be shared.

[0158] For example, the encoder network may be configured to perform a spatial transformation on the image to be encoded and transform the image to be encoded into another space. For example, the encoder network may be a convolutional neural network.

[0159] For example, the hyper-encoder network may be configured to extract features. For example, the hyper-encoder network may be a convolutional neural network.

[0160] For example, a quantization unit (including quantization unit D1 and quantization unit D2) may be configured to perform quantization processing.

[0161] For example, the aggregation unit may be configured to determine at least one probability distribution parameter of the feature points to be encoded / decoded.

[0162] For example, a probability estimation unit (including probability estimation unit V1 and probability estimation unit V2) may be configured to estimate a probability and output a probability distribution. Optionally, probability estimation unit V1 may be a discrete probability estimation unit such as a multiplication model, and probability estimation unit V2 may be a discrete probability estimation unit such as an entropy estimation model.

[0163] For example, entropy encoding unit A1 may be configured to perform encoding based on the probability distribution PA1 determined by probability estimation unit V1 to reduce the statistical redundancy of the output features.

[0164] For example, entropy encoding unit B1 may be configured to perform encoding based on the probability distribution PB1 determined by probability estimation unit V2 to reduce the statistical redundancy of the output features.

[0165] For example, entropy decoding unit A2 may be configured to perform decoding based on the probability distribution PA2 determined by probability estimation unit V1.

[0166] For example, entropy decoding unit B2 may be configured to perform decoding based on the probability distribution PB2 obtained by probability estimation unit V2.

[0167] For example, the decoder network may be configured to perform an inverse spatial transformation on the information obtained through entropy decoding and output a reconstructed image. For example, the decoder network may be a convolutional neural network.

[0168] For example, the hyper decoder network may be configured to receive the features extracted by the hyper encoder network Processing and output an estimated information matrix. For example, the hyper decoder network may be a convolutional neural network.

[0169] Continuing to refer to FIG. 5, the encoding process may be as follows.

[0170] For example, an image to be encoded is input into an encoder network, and the encoder network converts the image to be encoded into another space and outputs a feature map matrix Y1. The feature map matrix Y1 is input into a quantization unit D1, and the quantization unit D1 performs quantization processing on the feature map matrix Y1 to output a feature map matrix Y2 (the feature map matrix Y2 includes the feature maps of C channels in the foregoing embodiments), and the feature map Y2

Number

[0171] For example, the quantization unit D1 may perform quantization processing on the feature values of each feature point in each channel's feature map in the feature map matrix Y1 based on a preset quantization step to obtain the feature map matrix Y2.

[0172] For example, after obtaining the feature map matrix Y2, in one aspect, the feature map matrix Y2 is input into a hyper encoder network, and the hyper encoder network performs feature extraction on the feature map matrix Y2 to obtain a feature map matrix Z1, and the feature map matrix Z1 is input into a quantization unit D2. The quantization unit D2 performs quantization processing on the feature map matrix Z1 and outputs a feature map matrix Z2.

[0173] In a possible implementation, the feature map matrix Z2 is input into the probability estimation unit V2, processed by the probability estimation unit V2, and the probability distribution PB1 of each feature point in the feature map matrix Z2 is output to the entropy encoding unit B1. Also, the feature map matrix Z2 is input into the entropy encoding unit B1. The entropy encoding unit B1 encodes the feature map matrix Z2 based on the probability distribution PB1 and outputs the bit stream SB to the entropy decoding unit B2. Next, the probability estimation unit V2 predicts the probability distribution PB2 of the feature points to be decoded in the bit stream SB and inputs the probability distribution PB2 into the entropy decoding unit B2. Next, the entropy decoding unit B2 decodes the feature points to be decoded in the bit stream SB based on the probability distribution PB2 and outputs the feature map matrix Z2 to the hyper decoder network. After obtaining the feature map matrix Z2, the hyper decoder network Processing to obtain the estimated information matrices of C channels, and the estimated information matrices of C channels may be input into the aggregation unit.

[0174] In a possible implementation, the feature map matrix Z2 may be directly input into the hyper decoder network, and the hyper decoder network Processing to obtain the estimated information matrices of C channels and input the estimated information matrices of C channels into the aggregation unit. It should be understood that the method for determining the estimated information matrices of C channels in the encoding process is not limited in this application.

[0175] For example, after obtaining the feature map matrix Y2, in another aspect, the feature map matrix Y2 may be input into the aggregation unit, and the aggregation unit is based on at least one feature value of at least one encoded feature point corresponding to a target channel group including k channels and the estimated information matrix corresponding to the target channel group. At least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group is determined. For this process, refer to the foregoing description. Details will not be described again here.

[0176] For example, after obtaining at least one probability distribution parameter corresponding to the feature point to be encoded, the aggregation unit inputs at least one probability distribution parameter corresponding to the feature point to be encoded to the probability estimation unit V1. The probability estimation unit V1 determines the probability distribution PA1 corresponding to the feature point to be encoded based on at least one probability distribution parameter corresponding to the feature point to be encoded. Then, the probability estimation unit V1 may input the probability distribution PA1 corresponding to the feature point to be encoded to the entropy encoding unit A1.

[0177] For example, after obtaining the feature map matrix Y2, in yet another aspect, the feature map matrix Y2 may be input to the entropy encoding unit A1. The entropy encoding unit A1 encodes the feature value of the feature point to be encoded in the feature map matrix Y2 based on the probability distribution PA1 corresponding to the feature point to be encoded, and obtains the bit stream SA. Then, the encoding of the image to be encoded is completed.

[0178] Note that after the encoding of the image to be encoded is completed, both the bit stream SA obtained by encoding the feature map matrix Y2 and the bit stream SB obtained by encoding the feature map matrix Z2 may be transmitted to the decoder side.

[0179] Continuing, referring to FIG. 5, the decoding process may be as follows:

[0180] For example, after receiving the bit stream SA and the bit stream SB, the decoder side may allocate the bit stream SA to the entropy decoding unit A2 for decoding and allocate the bit stream SB to the entropy decoding unit B2 for decoding.

[0181] For example, the probability estimation unit V2 predicts the probability distribution PB2 of the feature points to be decoded in the bitstream SB, and inputs the probability distribution PB2 to the entropy decoding unit B2. Next, the entropy decoding unit B2 decodes the feature points to be decoded in the bitstream SB based on the probability distribution PB2, and outputs the feature map matrix Z2 to the hyper decoder network. After obtaining the feature map matrix Z2, the hyper decoder network Processing to obtain the estimated information matrices of C channels, and the estimated information matrices of C channels may be input to the aggregation unit.

[0182] For example, the bitstream SA includes the encoded data of the feature values of each feature point in the feature map matrix Y2, and the entropy decoding unit A2 decodes the encoded data of the feature values of each feature point in the bitstream SA to obtain the feature values corresponding to each feature point, so as to obtain the feature map matrix Y2.

[0183] For example, for one feature point to be decoded, the entropy decoding unit A2 inputs at least one feature value corresponding to at least one decoded feature point to the aggregation unit. The aggregation unit determines the target channel group to which the channel corresponding to the feature point to be decoded belongs, and based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, determines at least one probability distribution parameter corresponding to the feature point to be decoded. For details, refer to the foregoing description. Details will not be described again here. Next, at least one probability distribution parameter corresponding to the feature point to be decoded is output to the probability estimation unit V1. Next, the probability estimation unit V1 performs probability estimation based on at least one probability distribution parameter corresponding to the feature point to be decoded, predicts the probability distribution PA2 corresponding to the feature point to be decoded, and inputs the probability distribution PA2 corresponding to the feature point to be decoded to the entropy decoding unit A2. Next, the entropy encoding unit A2 may decode the encoded data of the feature value of the feature point to be decoded based on the probability distribution PA2 corresponding to the feature point to be decoded to obtain the feature value. In this case, the foregoing steps are repeated. The entropy decoding unit A2 decodes the bitstream SA and outputs the feature map matrix Y2 to the decoder network, and the decoder network may perform an inverse spatial transformation on the feature map matrix Y2 to obtain a reconstructed image.

[0184] For example, the entropy encoding unit A1 may perform parallel encoding or sequential encoding on the feature points to be encoded in different target channel groups. This is not limited in this application. Correspondingly, the entropy decoding unit A2 may perform parallel decoding or sequential decoding on the feature points to be decoded in different target channel groups. This is not limited in this application.

[0185] Note that in the encoding process, the feature map matrix Y1 may be input into the hyper-encoder network, and it should be noted that the feature map matrix Z2 is obtained via the hyper-encoder network and the quantization unit D2. This is not limited in this application.

[0186] It should be noted that the network or unit within the right dashed frame in FIG. 5 may alternatively be another network or another unit, and may be specifically set based on requirements. This is not limited in this application.

[0187] It should be noted that the AI encoding unit, AI decoding unit, entropy encoding unit, and entropy decoding unit of this application may further include a network and means configured to generate another estimation information matrix of at least one probability distribution parameter. Then, the another estimation information matrix is input into the aggregation unit. The aggregation unit determines at least one probability distribution parameter of the feature points to be encoded / decoded based on the eigenvalues of the encoded / decoded feature points corresponding to the target channel group including k channels, the estimation information matrix corresponding to the target channel group, and the another estimation information matrix. This is not limited in this application.

[0188] For example, the AI encoding unit and the AI decoding unit (excluding the aggregation unit and the probability estimation unit V1) may be disposed within an NPU (Neural Network Processing Unit, an embedded neural network processing unit) or a GPU (Graphics Processing Unit, a graphics processing unit). For example, the entropy encoding unit, the entropy decoding unit, the aggregation unit, and the probability estimation unit V1 may be disposed within a CPU (Central Processing Unit, a central processing unit). Therefore, compared with the prior art in which the aggregation unit and the probability estimation unit V1 are deployed within a GPU, in the present application, in the decoding process, each time the CPU obtains the feature value of one decoded feature point through decoding, the feature value is directly stored in the memory of the CPU, and the aggregation unit and the probability estimation unit V1 within the CPU determine at least one probability distribution parameter of the feature points to be decoded, thereby avoiding frequent communication between the CPU and the GPU in the decoding process and improving the decoding efficiency.

[0189] In a possible implementation, the estimated information matrix of C channels output by the hyper decoder network of FIG. 5 includes a first feature matrix of C channels and a second feature matrix of C channels. The first feature matrix of C channels may be used to determine a first probability distribution parameter, and the second feature matrix of C channels may be used to determine a second probability distribution parameter. The first feature matrix may include the first features of H*W feature points, and the second feature matrix may include the second features of H*W feature points. In this case, the process of determining at least one probability distribution parameter of the feature points to be encoded may be as follows.

[0190] FIG. 6 is a diagram of an example of the encoding process.

[0191] S601: Obtain the image to be encoded.

[0192] S602: Based on the image to be symbolized, generate feature maps of C channels, where the feature maps include feature values of a plurality of feature points, and C is a positive integer.

[0193] S603: Based on the feature maps of C channels, generate an estimated information matrix of C channels, where the estimated information matrix includes estimated information of a plurality of feature points.

[0194] S604: Group the C channels into N channel groups.

[0195] For example, for S601 to S604, refer to the description of S201 to S204.

[0196] The estimated information matrix of C channels includes a first feature matrix of C channels and a second feature matrix of C channels. The first feature matrix of C channels may be used to determine the first probability distribution parameter, and the second feature matrix of C channels may be used to determine the second probability distribution parameter. The first feature matrix may include the first features of H*W feature points, and the second feature matrix may include the second features of H*W feature points.

[0197] S605: Based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group, determine at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group.

[0198] For example, for S605, refer to the description of S205 above to determine at least one first probability distribution parameter of the feature points to be encoded corresponding to the target channel group. Details will not be described again here.

[0199] S606: Determine at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and a second feature matrix corresponding to the target channel group.

[0200] For example, for S606, refer to the description of S205 above to determine at least one second probability distribution parameter of the feature points to be encoded corresponding to the target channel group. Details will not be described again here.

[0201] For example, at least one probability distribution parameter of the feature points to be encoded corresponding to the target channel group may include a first probability distribution parameter of the feature points to be encoded corresponding to the target channel group and at least one second probability distribution parameter of the feature points to be encoded corresponding to the target channel group.

[0202] In a possible implementation, the first probability distribution parameter is the mean, and the second probability distribution parameter is the variance ( variance ).

[0203] In a possible implementation, the first probability distribution parameter is the variance ( variance ), and the second probability distribution parameter is the mean.

[0204] S607: Determine the probability distribution corresponding to the feature points to be encoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature points to be encoded.

[0205] S608: Encode the feature points to be encoded based on the probability distribution corresponding to the feature points to be encoded to obtain a bit stream.

[0206] For example, regarding S607 and S608, refer to the descriptions of S206 and S207 above. Details will not be described again here.

[0207] Figure 7 is a diagram of an example of the decoding process. The decoding process in the embodiment of Figure 7 corresponds to the encoding process in the embodiment of Figure 6.

[0208] S701: Receive a bitstream.

[0209] For example, the bitstream received on the decoder side may include the bitstream of an image and the prior information of C channels, and the bitstream corresponding to the image.

[0210] For example, the bitstream of the image may include the encoded data of the feature values of the feature points of C channels, and the bitstream of the prior information of C channels may include the encoded data of the prior information of C channels.

[0211] S702: Decode the bitstream to obtain the estimated information matrix of C channels.

[0212] For example, after receiving the bitstream, the bitstream may be analyzed to obtain the encoded data of the prior information of C channels. Then, entropy decoding and hyper decoding are performed on the encoded data of the prior information of C channels to obtain the first feature matrix of C channels and the second feature matrix of C channels.

[0213] S703: Decode the bitstream, obtain the feature values of the feature points of C channels based on the estimated information matrix of C channels, and obtain the feature map of C channels.

[0214] For example, regarding S703, refer to the description of S403 above. Details will not be described again here.

[0215] For example, in the decoding order corresponding to the encoding order of FIG. 3c, it may be determined to determine a decoding target feature point from the undecoded feature points. Subsequently, the feature value of the decoding target feature point may be obtained through decoding with reference to the following steps 7031 to 7035.

[0216] S7031: Determine a target channel group to which the channel corresponding to the decoding target feature point belongs from the N channel groups obtained by grouping the C channels.

[0217] S7032: Determine at least one first probability distribution parameter corresponding to the decoding target feature point based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group.

[0218] S7033: Determine at least one second probability distribution parameter corresponding to the decoding target feature point based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group.

[0219] S7034: Determine the probability distribution corresponding to the decoding target feature point based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the decoding target feature point.

[0220] S7035: Decode the decoding target feature point based on the probability distribution corresponding to the decoding target feature point to obtain the feature value.

[0221] For example, for S7031 to S7035, refer to the description of S4031 to S4034 above. Details are not described again here.

[0222] S704: Perform reconstruction based on the feature maps of the C channels and output the reconstructed image.

[0223] For example, regarding S704, refer to the description of the above S404. Details will not be described again here.

[0224] In a possible implementation, the estimated information matrix of C channels output by the hyper decoder network in FIG. 5 includes a first feature matrix of C channels and a second probability distribution parameter matrix of C channels. The first feature matrix of C channels may be used to determine the first probability distribution parameter, and the first feature matrix may include the first features of H*W feature points. The second probability distribution parameter matrix may include the second probability distribution parameters of H*W feature points. In this case, the process of determining at least one probability distribution parameter of the feature points to be encoded may be as follows.

[0225] FIG. 8 is a diagram of an example of an encoding process.

[0226] S801: Obtain the image to be encoded.

[0227] S802: Based on the image to be encoded, generate feature maps of C channels, where the feature maps include the feature values of a plurality of feature points, and C is a positive integer.

[0228] S803: Based on the feature maps of C channels, generate an estimated information matrix of C channels, where the estimated information matrix includes the estimated information of a plurality of feature points.

[0229] S804: Group C channels into N channel groups.

[0230] For example, regarding S801~S804, refer to the description of S201~S204.

[0231] The estimated information matrix of C channels includes the first feature matrix of C channels and the second probability distribution parameter matrix of C channels. The first feature matrix of C channels may be used to determine the first probability distribution parameter, and the first feature matrix may include the first features of H*W feature points. The second probability distribution parameter matrix may include the second probability distribution parameters of H*W feature points.

[0232] S805: Based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group, determine at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group.

[0233] For example, for S805, refer to the description of S205 above to determine at least one first probability distribution parameter of the feature points to be encoded corresponding to the target channel group. Details will not be described again here.

[0234] In a possible implementation, the first probability distribution parameter is the mean, and the second probability distribution parameter is the variance ( variance ).

[0235] In a possible implementation, the first probability distribution parameter is the variance ( variance ), and the second probability distribution parameter is the mean.

[0236] S806: Based on the second probability distribution parameter matrix corresponding to the target channel group, determine at least one second probability distribution parameter of the feature points to be encoded corresponding to the target channel group.

[0237] For example, one feature point to be encoded in channel c (where c is a positive integer less than or equal to C) in the target channel group is used as an example for explanation. For example, the second probability distribution parameter matrix of channel c may be determined from the second probability distribution parameter matrix of C channels. Then, based on the position of the feature point to be encoded in the feature map of channel c, at least one second probability distribution parameter corresponding to the feature point to be encoded is determined from the second probability distribution parameter matrix of channel c.

[0238] S807: Based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature point to be encoded, determine the probability distribution corresponding to the feature point to be encoded.

[0239] S808: Based on the probability distribution corresponding to the feature point to be encoded, encode the feature point to be encoded to obtain a bitstream.

[0240] For example, for S807 and S808, refer to the descriptions of S206 and S207 above. Details are not described again here.

[0241] FIG. 9 is a diagram of an example of a decoding process. The decoding process in the embodiment of FIG. 9 corresponds to the encoding process in the embodiment of FIG. 8.

[0242] S901: Receive a bitstream.

[0243] For example, for S901, refer to the description of S701 above. Details are not described again here.

[0244] S902: Decode the bitstream to obtain an estimated information matrix of C channels.

[0245] For example, after receiving a bitstream, the bitstream may be analyzed to obtain the encoded data of the prior information of C channels. Next, entropy decoding and hyperdecoding are performed on the encoded data of the prior information of C channels to obtain the first feature matrix of C channels and the second probability distribution parameter matrix of C channels.

[0246] S903: Decode the bitstream, and based on the estimated information matrix of C channels, obtain the eigenvalue of the feature point of C channels, and obtain the feature map of C channels.

[0247] For example, for S903, refer to the description of the above S403. Details will not be described again here.

[0248] For example, in the decoding order corresponding to the encoding order of FIG. 3c, it may be determined to determine the decoding target feature point from the undecoded feature point. Next, the eigenvalue of the decoding target feature point may be obtained by referring to the following steps S9031 to S9034 for decoding.

[0249] S9031: Determine the target channel group to which the channel corresponding to the decoding target feature point belongs from the N channel groups obtained by grouping C channels.

[0250] S9032: Determine at least one first probability distribution parameter corresponding to the decoding target feature point based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group.

[0251] S9033: Determine at least one second probability distribution parameter of the decoding target feature point based on the second probability distribution parameter matrix corresponding to the target channel group.

[0252] For example, assume that the channel corresponding to the feature point to be decoded is channel c. In this case, the second probability distribution parameter matrix of channel c may be determined from the second probability distribution parameter matrices of the C channels. Next, based on the position of the feature point to be decoded, at least one second probability distribution parameter corresponding to the feature point to be decoded is determined from the second probability distribution parameter matrix of channel c.

[0253] S9034: Determine the probability distribution corresponding to the feature point to be decoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature point to be decoded.

[0254] S9035: Decode the feature point to be decoded based on the probability distribution corresponding to the feature point to be decoded, and obtain the eigenvalue.

[0255] For example, for S9031 to S9035, refer to the description of S4031 to S4034 above. Details will not be described again here.

[0256] S904: Perform image reconstruction based on the feature maps of the C channels, and output the reconstructed image.

[0257] For example, for S904, refer to the description of S404 above. Details will not be described again here.

[0258] In a possible implementation, the estimated information matrix of the C channels output by the hyper decoder network in FIG. 5 includes the first probability distribution parameter matrix of the C channels and the second feature matrix of the C channels. The second feature matrix of the C channels may be used to determine the second probability distribution parameter, and the second feature matrix may include the second features of H*W feature points. The first probability distribution parameter matrix may include the first probability distribution parameters of H*W feature points. In this case, the process of determining at least one probability distribution parameter of the feature point to be encoded may be as follows.

[0259] FIG. 10 is a diagram of an example of an encoding process.

[0260] S1001: Obtain the image to be encoded.

[0261] S1002: Based on the image to be encoded, generate feature maps for C channels. The feature maps include feature values of a plurality of feature points, and C is a positive integer.

[0262] S1003: Based on the feature maps for C channels, generate an estimated information matrix for C channels. The estimated information matrix includes estimated information of a plurality of feature points.

[0263] S1004: Group the C channels into N channel groups.

[0264] For example, for S1001 to S1004, refer to the description of S201 to S204.

[0265] The estimated information matrix for C channels includes a first probability distribution parameter matrix for C channels and a second feature matrix for C channels. The second feature matrix for C channels may be used to determine the second probability distribution parameter, and the second feature matrix may include second features of H*W feature points. The first probability distribution parameter matrix may include first probability distribution parameters of H*W feature points.

[0266] S1005: Based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group, determine at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group.

[0267] For example, for S1005, referring to the description of S205 above, at least one second probability distribution parameter of the feature points to be encoded corresponding to the target channel group is determined. Details will not be described again here.

[0268] In a possible implementation, the first probability distribution parameter is the mean, and the second probability distribution parameter is the variance ( variance ).

[0269] In a possible implementation, the first probability distribution parameter is the variance ( variance ), and the second probability distribution parameter is the mean.

[0270] S1006: Based on the first probability distribution parameter matrix corresponding to the target channel group, at least one first probability distribution parameter of the feature points to be encoded corresponding to the target channel group is determined.

[0271] For example, one feature point to be encoded of channel c in the target channel group is used as an example for explanation. For example, the first probability distribution parameter matrix of channel c may be determined from the first probability distribution parameter matrices of C channels. Then, based on the position of the feature point to be encoded in the feature map of channel c, at least one first probability distribution parameter corresponding to the feature point to be encoded is determined from the first probability distribution parameter matrix of channel c.

[0272] S1007: Based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature point to be encoded, the probability distribution corresponding to the feature point to be encoded is determined.

[0273] S1008: Based on the probability distribution corresponding to the feature point to be encoded, the feature point to be encoded is encoded to obtain a bitstream.

[0274] For example, regarding S1007 and S1008, refer to the descriptions of S206 and S207 above. Details will not be explained again here.

[0275] FIG. 11 is a diagram of an example of a decoding process. The decoding process in the embodiment of FIG. 11 corresponds to the encoding process in the embodiment of FIG. 10.

[0276] S1101: Receive a bit stream.

[0277] For example, regarding S1101, refer to the description of S701 above. Details will not be explained again here.

[0278] S1102: Decode the bit stream to obtain an estimated information matrix of C channels.

[0279] For example, after receiving the bit stream, the bit stream may be analyzed to obtain the encoded data of the prior information of C channels. Then, entropy decoding and hyper decoding are performed on the encoded data of the prior information of C channels to obtain a first probability distribution parameter matrix of C channels and a second feature matrix of C channels.

[0280] S1103: Decode the bit stream, and based on the estimated information matrix of C channels, obtain the eigenvalues of the feature points of C channels and obtain a feature map of C channels.

[0281] For example, regarding S1103, refer to the description of S403 above. Details will not be explained again here.

[0282] For example, in the decoding order corresponding to the encoding order of FIG. 3c, it may be determined to determine the decoding target feature point from the undecoded feature points. Then, the eigenvalues of the decoding target feature point may be obtained through decoding with reference to the following steps S11031 to S11034.

[0283] Determine a target channel group to which a channel corresponding to a feature point to be decoded belongs from N channel groups obtained by grouping C channels, where a channel group includes k channels.

[0284] S11032: Determine at least one second probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and a second feature matrix corresponding to the target channel group.

[0285] S11033: Based on a first probability distribution parameter matrix corresponding to the target channel group, Decryption Determine at least one first probability distribution parameter of the target feature point.

[0286] For example, assume that the channel corresponding to the feature point to be decoded is channel c (c is a positive integer less than or equal to C). In this case, a first probability distribution parameter matrix of channel c may be determined from a first probability distribution parameter matrix of C channels. Then, based on the spatial position of the feature point to be decoded, determine at least one first probability distribution parameter corresponding to the feature point to be decoded from the first probability distribution parameter matrix of channel c.

[0287] S11034: Determine a probability distribution corresponding to the feature point to be decoded based on at least one first probability distribution parameter and at least one second probability distribution parameter corresponding to the feature point to be decoded.

[0288] S11035: Decode the feature point to be decoded based on the probability distribution corresponding to the feature point to be decoded to obtain a feature value.

[0289] For example, for S11031 to S11035, refer to the description of S4031 to S4034 above. Details are not described again here.

[0290] Based on the feature maps of C channels, perform image reconstruction and output a reconstructed image.

[0291] For example, for S1104, refer to the description of S404 above. Details will not be described again here.

[0292] Hereinafter, an example will be used to explain how the aggregation unit determines at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group. The first probability distribution parameter is the mean, and the second probability distribution parameter is the variance ( variance ) An example will be used to provide an explanation.

[0293] For example, perform linear weighting on at least one feature value of at least one encoded feature point corresponding to a target channel group including k channels and an estimated information matrix corresponding to the target channel group, and determine at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group. Therefore, the amount of calculation for determining the probability distribution parameter can be reduced from the original tens of thousands of product-sum calculations to at least several times, at most several hundred times of product-sum calculations. As a result, the amount of calculation is significantly reduced.

[0294] For example, the size of the linear weighting window may be preset, for example, ks1*ks2. Then, at least one feature value of at least one encoded feature point that is within the linear weighting window and within the feature map corresponding to the target channel group, and the estimated information of the feature point corresponding to a part of the positions that is within the linear weighting window and within the estimated information matrix corresponding to the target channel group are linearly weighted to determine at least one probability distribution parameter corresponding to the encoding target feature point corresponding to the target channel group. ks1 and ks2 are integers greater than 1, and ks1 and ks2 may or may not be equal. This is not limited in this application. Therefore, at least one probability distribution parameter corresponding to the encoding target feature point can be determined based on the feature values and estimated information of the feature points around the encoding target feature point, and while ensuring the accuracy of the determined probability distribution parameter, the computational amount of the probability distribution parameter can be reduced.

[0295] For example, in the embodiments of FIGS. 12a to 12d and FIGS. 13a and 13b below, at least one feature value of at least one encoded feature point corresponding to a target channel group including k channels and the first feature matrix corresponding to the target channel group are linearly weighted to determine the first probability distribution parameter corresponding to the encoding target feature point corresponding to the target channel group. The process will be described.

[0296] FIG. 12a is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 12a, the number k of channels included in the target channel group is equal to 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c. The target channel group is assumed to include a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, gray blocks represent encoded feature points, white blocks represent unencoded feature points, and hatched blocks represent feature points D to be encoded. In the first feature matrix of channel c1, gray blocks represent encoded positions, white blocks represent unencoded positions, and hatched blocks represent positions L to be encoded. The encoded position is the position of the encoded feature point, the unencoded position is the position of the unencoded feature point, and the position L to be encoded is the position of the feature point D to be encoded.

[0297] Referring to FIG. 12a. For example, in the feature map of channel c1, a first target region Q1 used centered on the feature point D to be encoded may be determined based on the size of the linear weighting window. In the first feature matrix of channel c1, a second target region Q2 used centered on the position L to be encoded is determined based on the size of the linear weighting window. The sizes of the first target region Q1 and the second target region Q2 are the same, both being ks1 * ks2.

[0298] Referring to FIG. 12a. For example, the encoded feature points in the first target region Q1, that is, the feature points corresponding to the gray blocks in the first target region Q1 of FIG. 12a, may be determined as the feature points for linear weighting calculation in the feature map. Assume that the position of the feature point D to be encoded is (c1, w, h) (c1 is an integer from 1 to C, w is an integer from 1 to W, and h is an integer from 1 to H). In this case, the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1).

[0299] For example, the first target position for linear weighting calculation in the first feature matrix of channel c1 may be determined based on positions other than the encoded positions in the second target region Q2. In a possible implementation, the encoding target position L in the second target region Q2 and at least one unencoded position (hereinafter referred to as the first unencoded position) may be determined as the first target position. The first unencoded position is a position other than the encoding target position L among all unencoded positions in the second target region Q2.

[0300] Refer to FIG. 12a. In a possible implementation, positions other than the encoded positions in the second target region Q2 (that is, the encoding target position L and all first unencoded positions in the second target region Q2), that is, the positions corresponding to the hatched blocks and the dotted blocks in the second target region Q2 of FIG. 12a may be determined as the first target positions.

[0301] Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1). In this case, the first target positions include (c1, w, h), (c1, w + 1, h), (c1, w - 1, h + 1), (c1, w, h + 1), (c1, w + 1, h + 1).

[0302] For example, in the training process, a weight matrix (that is, a preset weight matrix) corresponding to each channel and used for linear weighting is learned. The preset weight matrix may include weight maps of k channels, and the size of the weight map is the same as the size of the linear weighting window, for example, ks1 * ks2. In the embodiment of FIG. 12a, the preset weight matrix corresponding to channel c1 includes a weight map of one channel, and the weight map corresponding to channel c1 includes nine weights, that is, ω1, ω2, ω3, ω4, ω5, ω6, ω7, ω8, and ω9.

[0303] For example, based on the weight map corresponding to channel c1, linear weighting may be performed on the feature values of the encoded feature points in the first target region Q1 and the first feature values of the feature points corresponding to the first target position in the second target region Q2 to obtain at least one first probability distribution parameter corresponding to the feature point D to be encoded.

[0304] Assume that the position of the feature point D to be encoded is (c1, w, h), the feature values of the encoded feature points in the first target region Q1 are represented as y[c1][w - 1][h], y[c1][w - 1][h - 1], y[c1][w][h - 1], and y[c1][w + 1][h - 1], and the first features of the feature points corresponding to the first target position in the second target region Q2 are represented as φ[c1][w][h], φ[c1][w + 1][h], φ[c1][w - 1][h + 1], φ[c1][w][h + 1], and φ[c1][w + 1][h + 1]. In this case, at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 =

Equation

[0305] FIG. 12b is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 12b, the number k of channels included in the target channel group is equal to 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c. The target channel group is assumed to include a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, gray blocks represent encoded feature points, white blocks represent unencoded feature points, and hatched blocks represent feature points D to be encoded. In the first feature matrix of channel c1, gray blocks represent encoded positions, white blocks represent unencoded positions, and hatched blocks represent positions L to be encoded. The encoded position is the position of the encoded feature point, the unencoded position is the position of the unencoded feature point, and the position L to be encoded is the position of the feature point D to be encoded.

[0306] For example, the difference between FIG. 12b and FIG. 12a is that the method of determining the first target position for linear weighting calculation in the first feature matrix of FIG. 12b is different from that of FIG. 12a based on positions other than the encoded positions in the second target region Q2.

[0307] Referring to FIG. 12b. In a possible implementation, the position L to be encoded in the second target region Q2 may be determined as the first target position. Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1). In this case, the first target position is (c1, w, h).

[0308] In this case, in the weight map corresponding to channel c1, ω6, ω7, ω8, and ω9 are all equal to 0. Therefore, at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 =

Number

[0309] Hereinafter, using a test set including a plurality of images with different resolutions for testing, the encoding performance of the encoding based on the embodiment of FIG. 12a and the encoding performance of the encoding based on the embodiment of FIG. 12b are compared.

[0310] For example, by comparing the encoding based on the embodiment of FIG. 12a with the prior art encoding using 16 target images for encoding with different resolutions for testing, the rate gain (BD-rate, where the larger the negative value of the BD-rate, the higher the encoding performance corresponding to the encoding based on the embodiment of FIG. 12a) obtained, and the BD-rate obtained by comparing the encoding based on the embodiment of FIG. 12b with the prior art encoding are obtained. Details may be shown in Table 1.

Table 1

[0311] Refer to Table 1. The encoding performance of the encoding based on the embodiment of FIG. 12a is better in the three channels of Y, U, and V than the encoding performance of the encoding based on the embodiment of FIG. 12b. In other words, for the same encoding quality, the bit rate corresponding to the encoding based on the embodiment of FIG. 12a is smaller than the bit rate corresponding to the encoding based on the embodiment of FIG. 12b.

[0312] FIG. 12c is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 12c, the number k of channels included in the target channel group is equal to 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c. The target channel group is assumed to include a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, the gray blocks represent encoded feature points, the white blocks represent unencoded feature points, and the hatched blocks represent feature points D to be encoded. In the first feature matrix of channel c1, the gray blocks represent encoded positions, the white blocks represent unencoded positions, and the hatched blocks represent positions L to be encoded. The encoded position is the position of the encoded feature point, the unencoded position is the position of the unencoded feature point, and the position L to be encoded is the position of the feature point D to be encoded.

[0313] For example, the difference between FIG. 12c and FIG. 12a is that the method of determining the first target position for linear weighting calculation in the first feature matrix of FIG. 12c is different from that of FIG. 12a based on positions other than the encoded positions in the second target area Q2.

[0314] Referring to FIG. 12c. For example, the position L to be encoded and one first unencoded position in the second target area Q2 are determined as the first target position. Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1). In this case, the first target positions are (c1, w, h) and (c1, w + 1, h).

[0315] In this case, in the weight map corresponding to channel c1, ω7, ω8, and ω9 are all equal to 0. Therefore, at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 =

Equation

[0316] It should be understood that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for the linear weighting calculation in the feature map include (c1, w-1, h), (c1, w-1, h-1), (c1, w, h-1), and (c1, w+1, h-1). In this case, in a possible implementation, the first target position is (c1, w, h), (c1, w+1, h), and (c1, w-1, h+1). In a possible implementation, the first target position is (c1, w, h), (c1, w+1, h), (c1, w-1, h+1), and (c1, w, h+1). In a possible implementation, the first target position is (c1, w, h) and (c1, w-1, h+1). In a possible implementation, the first target position is (c1, w, h) and (c1, w, h+1), etc. This is not limited in the present application.

[0317] FIG. 12d is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 12d, the number k of channels included in the target channel group is 2, the target channel group includes two channels, namely, the first channel (hereinafter referred to as channel c1) and the second channel (hereinafter referred to as channel c2), ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c.

[0318] In the feature map of channel c1 and the feature map of channel c2, the gray blocks represent the encoded feature points, and the white blocks represent the unencoded feature points. In the feature map of channel c1, the blocks filled with diagonal lines represent the feature point D1 to be encoded. In the feature map of channel c2, the blocks filled with diagonal lines indicate the feature point D2 corresponding to the position of the feature point D1 to be encoded.

[0319] In the first feature matrix of channel c1 and the first feature matrix of channel c2, the gray blocks represent the encoded positions, and the white blocks represent the unencoded positions. The hatched blocks in the first feature matrix of channel c1 represent the encoding target position L1, and the hatched blocks in the first feature matrix of channel c2 represent the position L2. The encoded positions are the positions of the encoded feature points, the unencoded positions are the positions of the unencoded feature points, the encoding target position L1 is the position of the encoding target feature point D1, and the position L2 is the position corresponding to the encoding target position L1 (i.e., the position of the feature point D2).

[0320] Referring to FIG. 12d. For example, in the feature map of channel c1, the first target region Q11 used centered on the encoding target feature point D1 may be determined based on the size of the linear weighting window, and in the feature map of channel c2, the first target region Q12 used centered on the feature point corresponding to the position of the encoding target feature point D1 is determined based on the size of the linear weighting window. Assume that the position of the encoding target feature point D1 in the feature map of channel c1 is (c1, w, h). In this case, the feature point D2 whose position is (c2, w, h) in the feature map of channel c2 is the feature point corresponding to the position of the encoding target feature point D1.

[0321] Referring to FIG. 12d. For example, in the first feature matrix of channel c1, the second target region Q21 used centered on the encoding target position L1 may be determined based on the size of the linear weighting window, and in the first feature matrix of channel c2, the second target region Q22 used centered on the position corresponding to the encoding target position L1 (i.e., the position L2) is determined based on the size of the linear weighting window.

[0322] The sizes of the first target region Q11, the first target region Q12, the second target region Q21, and the second target region Q22 are the same, all being ks1 * ks2.

[0323] Refer to FIG. 12d. For example, the encoded feature points in the first target region Q11 in the feature map of channel c1, that is, the feature points corresponding to the gray blocks in the first target region Q11 in FIG. 12d, may be determined as the feature points for linear weighting calculation in the feature map of channel c1. Assume that the position of the feature point D1 to be encoded is (c1, w, h). In this case, the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1).

[0324] Refer to FIG. 12d. For example, the encoded feature points in the first target region Q12 in the feature map of channel c2, that is, the feature points corresponding to the gray blocks in the first target region Q12 in FIG. 12d, may be determined as the feature points for linear weighting calculation in the feature map of channel c2. Assume that the position of the feature point D1 to be encoded is (c1, w, h). In this case, the position of the feature point D2 is (c2, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c2 include (c2, w - 1, h), (c2, w - 1, h - 1), (c2, w, h - 1), (c2, w + 1, h - 1).

[0325] For example, the first target position for linear weighting calculation in the first feature matrix of channel c1 may be determined based on positions other than the encoded positions in the second target region Q21 in the first feature matrix of channel c1. In a possible implementation, the encoding target position L1 in the second target region Q21 and at least one first unencoded position may be determined as the first target position. The first unencoded position is a position other than the encoding target position among all unencoded positions in the second target region Q21.

[0326] Refer to FIG. 12d. Positions other than the encoded positions in the second target region Q21 in the first feature matrix of channel c1 (i.e., all the first unencoded positions and the position L1 to be encoded in the second target region Q21) may be determined as the first target positions. Assume that the position of the feature point D1 to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the first feature matrix of channel c1 are (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1). In this case, the first target positions include (c1, w, h), (c1, w + 1, h), (c1, w - 1, h + 1), (c1, w, h + 1), (c1, w + 1, h + 1).

[0327] For example, the first target positions for linear weighting calculation in the first feature matrix of channel c2 may be determined based on positions other than the encoded positions in the second target region Q22 in the first feature matrix of channel c2. In a possible implementation, the position L2 corresponding to the position to be encoded in the second target region Q22 and at least one unencoded position (hereinafter referred to as the second unencoded position) may be determined as the first target positions. The second unencoded position is a position other than the position L2 among all the unencoded positions in the second target region Q22.

[0328] Refer to FIG. 12d. Positions other than the encoded positions in the second target region Q22 in the first feature matrix of channel c2 (i.e., positions corresponding to the positions to be encoded and including position L2 in the second target region Q22 and all second unencoded positions in the second target region Q22) may be determined as the first target positions. Assume that the position of the feature point D1 to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the first feature matrix of channel c2 are (c2, w - 1, h), (c2, w - 1, h - 1), (c2, w, h - 1), and (c2, w + 1, h - 1). In this case, the first target positions include (c2, w, h), (c2, w + 1, h), (c2, w - 1, h + 1), (c2, w, h + 1), (c2, w + 1, h + 1).

[0329] For example, a preset weight matrix corresponding to channel c1 may be determined. As shown in FIG. 12d, this preset weight matrix may include weight map 11 and weight map 12. The size of weight map 11 is 3 * 3, and weight map 11 includes nine weights, namely, ω11, ω12, ω13, ω14, ω15, ω16, ω17, ω18, and ω19. The size of weight map 12 is 3 * 3, and weight map 12 includes nine weights, namely, ω21, ω22, ω23, ω24, ω25, ω26, ω27, ω28, and ω29.

[0330] For example, based on the weight map 11 corresponding to channel c1, linear weighting may be performed on the feature values of the encoded feature points in the first target region Q11 in the feature map of channel c1 and the first feature values of the feature points corresponding to the first target position in the second target region Q21 in the first feature matrix of channel c1. Based on the weight map 12 corresponding to channel c1, linear weighting may be performed on the feature values of the encoded feature points in the first target region Q12 in the feature map of channel c2 and the first feature values of the feature points corresponding to the first target position in the second target region Q22 in the first feature matrix of channel c2, and at least one first probability distribution parameter corresponding to the encoding target feature point D1 in the feature map of channel c1 may be obtained.

[0331] Let the feature values of the encoded feature points in the first target region Q11 in the feature map of channel c1 be represented as y[c1][w - 1][h], y[c1][w - 1][h - 1], y[c1][w][h - 1], y[c1][w][h - 1], and y[c1][w + 1][h + 1], and the first features of the feature points corresponding to the first target position in the second target region Q21 in the first feature matrix of channel c1 be represented as φ[c1][w][h], φ[c1][w + 1][h], φ[c1][w - 1][h + 1], φ[c1][w][h + 1], and φ[c1][w + 1][h + 1]. Let the feature values of the encoded feature points in the first target region Q12 in the feature map of channel c2 be represented as y[c2][w - 1][h], y[c2][w - 1][h - 1], y[c2][w][h - 1], and y[c2][w + 1][h - 1], and the first features of the feature points corresponding to the first target position in the second target region Q22 in the first feature matrix of channel c2 be represented as φ[c2][w][h], φ[c2][w + 1][h], φ[c2][w - 1][h + 1], φ[c2][w][h + 1], and φ[c2][w + 1][h + 1]. In this case, at least one first probability distribution parameter corresponding to the encoding target feature point D1 in the feature map of channel c1 =

Equation

[0332] It should be noted that when the feature point to be encoded is the feature point D2 in channel c2, a preset weight matrix corresponding to channel c2 may be determined. Then, based on the preset weight matrix corresponding to channel c2, the feature value of the encoded feature point in the first target area in the feature map corresponding to the target channel group and the first feature of the feature point corresponding to the first target position in the second target area in the first feature matrix corresponding to the target channel group are linearly weighted to determine at least one first probability distribution parameter corresponding to the feature point D2. The preset weight matrix corresponding to channel c2 is different from the preset weight matrix corresponding to channel c1.

[0333] When determining the encoding target position L1 in the second target area Q21 as the first target position for channel c1 and determining the position L2 in the second target area Q22 as the first target position for channel c2, it should be noted that for the method of determining at least one first probability distribution parameter corresponding to the encoding target feature point D1, refer to the description in the embodiment of FIG. 12b based on FIG. 12d. Details will not be described again here. When determining a part of the first unencoded position and the encoding target position L1 in the second target area Q21 as the first target position for channel c1 and determining the position L2 and a part of the second unencoded position in the second target area Q22 as the first target position for channel c2, for the method of determining at least one first probability distribution parameter corresponding to the encoding target feature point D1, refer to the description of the embodiment of FIG. 12c based on FIG. 12d. Details will not be described again here.

[0334] It should be noted that when the number k of channels included in the target channel group is greater than 2, alternatively, referring to the embodiment of FIG. 12d, at least one first probability distribution parameter corresponding to the feature points to be encoded may be determined. Details will not be described again here.

[0335] FIG. 13a is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 13a, the number k of channels included in the target channel group is 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (2) of FIG. 3c (on the encoder side, in the process of encoding the feature points corresponding to the black blocks, the corresponding probability distribution parameters are determined based on the estimated information matrix, and in the process of encoding the feature points corresponding to the white blocks, the corresponding probability distribution parameters are determined based on S204 of the present application). It is assumed that the target channel group includes a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, the hatched blocks represent the feature points D to be encoded, and the feature points D to be encoded are the feature points in the white checkered pattern. In the first feature matrix of channel c1, the hatched blocks represent the encoding target position L. The encoding target position L is the position of the feature points D to be encoded.

[0336] Referring to FIG. 13a. For example, in the feature map of channel c1, a first target region Q1 used centered on the feature points D to be encoded may be determined based on the size of the linear weighted window, and in the first feature matrix of channel c1, a second target region Q2 used centered on the encoding target position L is determined based on the size of the linear weighted window. The sizes of the first target region Q1 and the second target region Q2 are the same, and both are ks1 * ks2.

[0337] Refer to FIG. 13a. For example, the encoded feature points in the first target region Q1, that is, the feature points corresponding to the black blocks in the first target region Q1 of FIG. 13a, and the upper left and upper right feature points of the feature point D to be encoded in the first target region Q1 may be determined as the feature points for linear weighted calculation in the feature map. Assume that the position of the feature point D to be encoded is (c1, w, h). In this case, the positions of the feature points for linear weighted calculation in the feature map of channel c1 include (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1), (c1, w - 1, h), (c1, w, h + 1), and (c1, w + 1, h).

[0338] For example, the first target position for linear weighted calculation in the first feature matrix of channel c1 may be determined based on the positions other than the encoded positions in the second target region Q2 in the first feature matrix of channel c1. Refer to FIG. 13a. The positions other than the encoded positions in the second target region Q2 in the first feature matrix of channel c1, that is, the hatched blocks and the dotted blocks in the second target region Q2 of FIG. 13a, are determined as the first target positions. Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighted calculation in the feature map of channel c1 include (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1), (c1, w - 1, h), (c1, w, h + 1), and (c1, w + 1, h). In this case, the first target positions include (c1, w, h), (c1, w - 1, h + 1), and (c1, w + 1, h + 1).

[0339] For example, a preset weight matrix corresponding to channel c1 may be determined. The preset weight matrix includes a weight map. The size of the weight map is the same as the size of the linear weighting window and includes the weights of ks1 * ks2 feature points as shown in FIG. 13a. The size of the weight map is 3 * 3, and the weight map includes nine weights, that is, ω1, ω2, ω3, ω4, ω5, ω6, ω7, ω8, and ω9.

[0340] For example, based on the weight map corresponding to channel c1, linear weighting is performed on the feature value of the encoded feature point in the first target region Q1 in the feature map of channel c1 and the first feature value of the feature point corresponding to the first target position in the second target region Q2 in the first feature matrix of channel c1, and at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 may be obtained.

[0341] Assume that the feature values of the encoded feature points in the first target region Q1 in the feature map of channel c1 are represented as y[c1][w - 1][h - 1], y[c1][w][h - 1], y[c1][w + 1][h - 1], y[c1][w - 1][h], y[c1][w][h + 1], and y[c1][w + 1][h], and the first features of the feature points corresponding to the first target position in the second target region Q2 in the first feature matrix of channel c1 are represented as φ[c1][w][h], φ[c1][w - 1][h + 1], and φ[c1][w + 1][h + 1]. In this case, at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 =

Number

[0342] When determining the encoding target position L in the second target area Q2 in the first feature matrix of channel c1 as the first target position, regarding the method of determining at least one first probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1, it should be noted that reference is made to the description of the embodiment in FIG. 12b based on the embodiment in FIG. 13a. Details will not be described again here. When determining a part of the first uncoded position and the encoding target position L in the second target area Q2 in the first feature matrix of channel c1 as the first target position, regarding the method of determining at least one first probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1, reference is made to the description of the embodiment in FIG. 12c based on the embodiment in FIG. 13a. Details will not be described again here.

[0343] When the number k of channels included in the target channel group is greater than 1, it should be noted that at least one first probability distribution parameter corresponding to at least one encoding target feature point D may be determined with reference to the description of the embodiment in FIG. 12d based on FIG. 13a. Details will not be described again here.

[0344] FIG. 13b is a diagram of an example of a process for determining probability distribution parameters. In the embodiment of FIG. 13b, the number k of channels included in the target channel group is 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (2) of FIG. 3c (on the encoder side, corresponding probability distribution parameters are determined based on S204 of the present application in both the process of encoding feature points corresponding to black blocks and the process of encoding feature points corresponding to white blocks). It is assumed that the channel included in the target channel group includes a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, the hatched block represents the feature point D to be encoded, and the feature point D to be encoded is a feature point in the black checkered pattern. In the first feature matrix of channel c1, the hatched block represents the encoding target position L. The encoding target position L is the position of the feature point D to be encoded.

[0345] Referring to FIG. 13b. For example, in the feature map of channel c1, a first target region Q1 used centered on the feature point D to be encoded may be determined based on the size of the linear weighting window, and in the first feature matrix of channel c1, a second target region Q2 used centered on the encoding target position L is determined based on the size of the linear weighting window. The sizes of the first target region Q1 and the second target region Q2 are the same, and both are ks1 * ks2.

[0346] Referring to FIG. 13b. For example, the encoded feature points in the first target region Q1, that is, the feature points corresponding to the black blocks in the first target region Q1 in FIG. 13b, may be determined as the feature points for linear weighting calculation in the feature map. It is assumed that the position of the feature point D to be encoded is (c1, w, h). In this case, the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h - 1) and (c1, w + 1, h + 1).

[0347] For example, the first target position for linear weighting calculation in the first feature matrix of channel c1 may be determined based on positions other than the encoded positions in the second target area Q2. The encoded positions are the positions of the encoded feature points.

[0348] Referring to FIG. 13b, positions other than the encoded positions in the second target area Q2 in the first feature matrix of channel c1, that is, the positions corresponding to the hatched blocks and the dotted blocks in the second target area Q2 of FIG. 13b, may be determined as the first target position. Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w-1, h-1) and (c1, w+1, h-1). In this case, the first target position includes (c1, w, h), (c1, w, h-1), (c1, w-1, h), (c1, w+1, h), (c1, w, h+1), (c1, w-1, h+1), and (c1, w+1, h+1).

[0349] For example, a preset weight matrix corresponding to channel c1 may be determined. The preset weight matrix includes a weight map. The size of the weight map is the same as the size of the linear weighting window, and as shown in FIG. 13b, it includes the weights of ks1*ks2 feature points. The size of the weight map is 3*3, and the weight map includes nine weights, namely, ω1, ω2, ω3, ω4, ω5, ω6, ω7, ω8, and ω9.

[0350] For example, based on the weight map corresponding to channel c1, linear weighting is performed on the feature value of the encoded feature point in the first target area Q1 in the feature map of channel c1 and the first feature value of the feature point corresponding to the first target position in the second target area Q2 in the first feature matrix of channel c1, to obtain at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1.

[0351] Assume that the feature values of the encoded feature points in the first target region Q1 in the feature map of channel c1 are represented as y[c1][w - 1][h - 1] and y[c1][w + 1][h - 1], and the first features of the feature points corresponding to the first target position in the second target region Q2 in the first feature matrix of channel c1 are represented as φ[c1][w][h], φ[c1][w][h - 1], φ[c1][w - 1][h], φ[c1][w + 1][h], φ[c1][w][h + 1], φ[c1][w - 1][h + 1], and φ[c1][w + 1][h + 1]. In this case, at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 =

Number

[0352] Note that when determining the encoding target position L of the second target region Q2 in the first feature matrix of channel c1 as the first target position, regarding the method for determining at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1, refer to the description in the embodiment of FIG. 12b based on the embodiment of FIG. 13b. Details will not be described again here. When determining a part of the first unencoded position and the encoding target position L in the second target region Q2 in the first feature matrix of channel c1 as the first target position, regarding the method for determining at least one first probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1, refer to the description of the embodiment of FIG. 12c based on the embodiment of FIG. 13b. Details will not be described again here.

[0353] It should be noted that when the number k of channels included in the target channel group is greater than 1, at least one first probability distribution parameter corresponding to the feature point D to be encoded may be determined by referring to the description of the embodiment of FIG. 12d based on FIG. 13b. Details will not be described again here.

[0354] For example, in the embodiments of FIGS. 14a and 14d below, for at least one feature value of at least one encoded feature point corresponding to a target channel group including k channels and a second feature matrix corresponding to the target channel group, linear weighting is performed to determine at least one second probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group. The process will be described.

[0355] FIG. 14a is a diagram of an example of a process for determining probability distribution parameters. The embodiment of FIG. 14a describes a process for determining second probability distribution parameters when the second feature matrix of C channels output by the hyper decoder network includes the first feature matrix of C channels and the second feature matrix of C channels.

[0356] In the embodiment of FIG. 14a, the number k of channels included in the target channel group is equal to 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c. It is assumed that the target channel group includes the first channel (hereinafter referred to as channel c1). In the feature map of channel c1, the gray blocks represent encoded feature points, the white blocks represent unencoded feature points, and the blocks filled with diagonal lines represent the feature points D to be encoded. In the second feature matrix of channel c1, the gray blocks represent encoded positions, the white blocks represent unencoded positions, and the blocks filled with diagonal lines represent the positions L to be encoded. The encoded position is the position of the encoded feature point, the unencoded position is the position of the unencoded feature point, and the position L to be encoded is the position of the feature point D to be encoded.

[0357] Refer to FIG. 14a. For example, in the feature map of channel c1, a first target region Q1 used centered on the feature point D to be encoded may be determined based on the size of the linear weighted window. In the second feature matrix of channel c1, a third target region Q3 used centered on the position L to be encoded is determined based on the size of the linear weighted window. The sizes of the first target region Q1 and the second target region Q3 are the same, both being ks1*ks2.

[0358] Refer to FIG. 14a. For example, the encoded feature point in the first target region Q1, that is, the feature point corresponding to the gray block in the first target region Q1 in FIG. 14a, may be determined as the feature point for linear weighted calculation in the feature map. Assume that the position of the feature point D to be encoded is (c1, w, h). In this case, the positions of the feature points for linear weighted calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1).

[0359] For example, the second target position for linear weighted calculation in the second feature matrix of channel c1 may be determined based on the positions other than the encoded position in the third target region Q3 in the second feature matrix of channel c1. In a possible implementation, the encoded position L in the third target region Q3 in the second feature matrix of channel c1 and at least one first unencoded position may be determined as the second target position. The first unencoded position is a position other than the encoded position L among all the unencoded positions in the third target region Q3 in the second feature matrix of channel c1.

[0360] Refer to FIG. 14a. In a possible implementation, positions other than the encoded positions in the third target region Q3 in the second feature matrix of channel c1 (i.e., the positions to be encoded L and all first unencoded positions in the third target region Q3 in the second feature matrix of channel c1), that is, the positions corresponding to the hatched blocks and the dotted blocks in the third target region Q3 of FIG. 14a, may be determined as the second target positions.

[0361] Assume that the position of the feature point D to be encoded is (c1, w, h), and the positions of the feature points for linear weighted calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1). In this case, the second target positions are (c1, w, h), (c1, w + 1, h), (c1, w - 1, h + 1), (c1, w, h + 1), (c1, w + 1, h + 1).

[0362] For example, as shown in the vertically striped blocks in FIG. 14a, at least one difference corresponding to at least one encoded feature point in the first target region Q1 in the feature map of channel c1 may be first determined based on at least one feature value of at least one encoded feature point and at least one corresponding first probability distribution parameter in the first target region Q1 in the feature map of channel c1 (in the manner described in the embodiments of FIGS. 12a - 12d and the embodiments of FIGS. 13a and 13b, at least one first probability distribution parameter corresponding to at least one encoded feature point may be first determined).

[0363] The position of the symbolic target feature point D is (c1, w, h). Assume that the feature values of the encoded feature points in the first target region Q1 in the feature map of channel c1 are represented as y[c1][w - 1][h], y[c1][w - 1][h - 1], y[c1][w][h - 1], and y[c1][w + 1][h - 1], and the first probability distribution parameters corresponding to the encoded feature points in the first target region Q1 in the feature map of channel c1 are represented as m[c1][w - 1][h], m[c1][w - 1][h - 1], m[c1][w][h - 1], and m[c1][w + 1][h - 1]. The difference corresponding to the encoded feature point with the position (c1, w - 1, h) is represented by Diff[c1][w - 1][h], the difference corresponding to the encoded feature point with the position (c1, w - 1, h - 1) is represented by Diff[c1][w - 1][h - 1], the difference corresponding to the encoded feature point with the position (c1, w, h - 1) is represented by Diff[c1][w][h - 1], and the difference corresponding to the encoded feature point with the position (c1, w + 1, h - 1) is represented by Diff[c1][w + 1][h - 1].

[0364] In a possible implementation, the difference may be the difference between at least one feature value of at least one encoded feature point and at least one corresponding first probability distribution parameter.

Number

Number

[0365] In a possible implementation, the difference may be the square of the difference between at least one feature value of at least one encoded feature point and at least one corresponding first probability distribution parameter. Diff[c1][w-1][h] is used as an example, that is, [Number] it is.

[0366] For example, in the training process, a weight matrix (i.e., a preset weight matrix) corresponding to each channel and used for linear weighting is learned. The preset weight matrix may include a weight map of k channels, and the size of the weight map is the same as the size of the linear weighting window, for example, ks1*ks2. In the embodiment of 14 Figure a, the preset weight matrix of channel c1 includes a weight map of one channel, and the weight map corresponding to channel c1 includes nine weights, that is, ω1, ω2, ω3, ω4, ω5, ω6, ω7, ω8, and ω9.

[0367] For example, based on the weight map corresponding to channel c1, at least one difference corresponding to at least one encoded feature point in the first target area Q1 in the feature map of channel c1 and the second feature of the feature point corresponding to the second target position in the third target area Q3 in the second feature matrix of channel c1 are linearly weighted to obtain at least one second probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1.

[0368] Based on the above description, assume that the second feature of the feature point corresponding to the second target position in the third target area Q3 in the second feature matrix of channel c1 is represented as φ[c1][w][h], φ[c1][w + 1][h], φ[c1][w - 1][h + 1], φ[c1][w][h + 1], φ[c1][w + 1][h + 1]. In this case, at least one second probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 = [Number] is as follows.

[0369] Note that when determining the encoding target position L in the third target area Q3 in the second feature matrix of channel c1 as the second target position, for the method of determining at least one second probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1, refer to the description in the embodiment of FIG. 12b based on the embodiment of FIG. 14a. Details will not be described again here. When determining a part of the first unencoded position and the encoding target position L in the third target area Q3 in the second feature matrix of channel c1 as the second target position, for the method of determining at least one second probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1, refer to the description of the embodiment of FIG. 12c based on the embodiment of FIG. 14a. Details will not be described again here.

[0370] Figure 3 c When performing encoding in the order shown in (2) of FIG. 3, it should be noted that based on the embodiment of FIG. 14a, at least one second probability distribution parameter corresponding to the feature point D to be encoded in the feature map of channel c1 may be determined by referring to the descriptions of the embodiments of FIGS. 13a and 13b. Details will not be described again here.

[0371] Note that when the number k of channels included in the target channel group is greater than 1, at least one second probability distribution parameter corresponding to the feature point D to be encoded may be determined with reference to the description of the embodiment of FIG. 12d based on FIG. 14a. Details will not be described again here.

[0372] FIG. 14b is a diagram of an example of a process for determining probability distribution parameters. The embodiment of FIG. 14b will describe the process for determining the second probability distribution parameter when Estimated information matrix it includes a first probability distribution parameter matrix of C channels and a second feature matrix of C channels.

[0373] In the embodiment of FIG. 14b, the number k of channels included in the target channel group is equal to 1, ks1 = ks3 = 3, and the encoding order on the encoder side is shown in (1) of FIG. 3c. Assume that the target channel group includes a first channel (hereinafter referred to as channel c1). In the feature map of channel c1, the gray blocks represent encoded feature points, the white blocks represent unencoded feature points, and the hatched blocks represent the feature points D to be encoded.

[0374] In the embodiment of FIG. 14b, First probability distribution parameter matrix in the and the second feature matrix of channel c1, the gray blocks represent encoded positions, the white blocks represent unencoded positions, and the hatched blocks represent the position L to be encoded. The encoded position is the position of the encoded feature point, the unencoded position is the position of the unencoded feature point, and the position L to be encoded is the position of the feature point D to be encoded.

[0375] Refer to FIG. 14b. For example, a first target region Q1 centered on an encoding target feature point D in the feature map of channel c1 may be determined based on the size of the linear weighting window, and a second target region Q2 centered on an encoding target position L in the first probability distribution parameter matrix of channel c1 may be determined based on the size of the linear weighting window, and a third target region Q3 centered on the encoding target position L in the second feature matrix of channel c1 may be determined based on the size of the linear weighting window. The sizes of the first target region Q1, the second target region Q2, and the third target region Q3 are the same, all being ks1*ks2.

[0376] Refer to FIG. 14b. For example, the encoded feature points in the first target region Q1, that is, the feature points corresponding to the gray blocks in the first target region Q1 in FIG. 14b, may be determined as the feature points for linear weighting calculation in the feature map. Assume that the position of the encoding target feature point D is (c1, w, h). In this case, the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), (c1, w + 1, h - 1).

[0377] Refer to FIG. 14b. For example, the encoded positions in the second target region Q2, that is, the positions corresponding to the gray blocks in the second target region Q2 of FIG. 14b, may be determined. Assume that the encoding target position L is (c1, w, h). In this case, the encoded positions in the second target region Q2 in the first probability distribution parameter matrix of channel c1 are (c1, w - 1, h), (c1, w - 1, h - 1), (c1, w, h - 1), and (c1, w + 1, h - 1).

[0378] For example, as shown in the block filled with vertical stripes in FIG. 14b, at least one difference corresponding to at least one encoded feature point in the first target region Q1 in the feature map of channel c1 may be first determined based on at least one feature value of at least one encoded feature point in the first target region Q1 and at least one first probability distribution parameter of the feature points corresponding to the encoded positions in the second target region Q2. For the method of determining at least one difference corresponding to at least one encoded feature point in the first target region Q1 in the feature map of channel c1, refer to the description of the embodiment in FIG. 14a. Details are not described again here.

[0379] For example, the second target position for the linear weighting calculation in the second feature matrix of channel c1 may be determined based on positions other than the encoded positions in the third target region Q3 in the second feature matrix of channel c1. In a possible implementation, the position to be encoded L and at least one first unencoded position in the third target region Q3 in the second feature matrix of channel c1 may be determined as the second target position. The first unencoded position is a position other than the position to be encoded L among all the unencoded positions in the third target region Q3 in the second feature matrix of channel c1.

[0380] Referring to FIG. 14b. In a possible implementation, positions other than the encoded positions in the third target region Q3 in the second feature matrix of channel c1 (i.e., the position to be encoded L and all the first unencoded positions in the third target region Q3 in the second feature matrix of channel c1), that is, the positions corresponding to the blocks filled with diagonal lines and the blocks filled with dots in the third target region Q3 in FIG. 14b, may be determined as the second target position.

[0381] Assume that the position of the feature point D to be symbolized is (c1, w, h), and the positions of the feature points for linear weighting calculation in the feature map of channel c1 include (c1, w-1, h), (c1, w-1, h-1), (c1, w, h-1), and (c1, w+1, h-1). In this case, the second target positions include (c1, w, h), (c1, w+1, h), (c1, w-1, h+1), (c1, w, h+1), (c1, w+1, h+1).

[0382] For example, in the training process, learn the weight matrix (i.e., the preset weight matrix) corresponding to each channel and used for linear weighting. The preset weight matrix may include weight maps of k channels, and the size of the weight map is the same as the size of the linear weighting window, for example, ks1*ks2. In the embodiment of FIG. 12a, the preset weight matrix of channel c1 includes a weight map of one channel, and the weight map corresponding to channel c1 includes nine weights, namely, ω1, ω2, ω3, ω4, ω5, ω6, ω7, ω8, and ω9.

[0383] For example, based on the weight map corresponding to channel c1, perform linear weighting on at least one difference corresponding to at least one encoded feature point in the first target region Q1 in the feature map of channel c1 and the second feature of the feature point corresponding to the second target position in the third target region Q3 in the second feature matrix of channel c1, to obtain at least one second probability distribution parameter corresponding to the feature point D to be symbolized in the feature map of channel c1.

[0384] From the above description, the difference corresponding to the encoded feature point at the position (c1, w - 1, h) is represented by Diff[c1][w - 1][h], the difference corresponding to the encoded feature point at the position (c1, w - 1, h - 1) is represented by Diff[c1][w][h - 1], the difference corresponding to the encoded feature point at the position (c1, w, h - 1) is represented by Diff[c1][w][h - 1], and the difference corresponding to the encoded feature point at the position (c1, w + 1, h - 1) is represented by Diff[c1][w + 1][h - 1]. The second features of the feature points corresponding to the second target position in the third target region Q3 in the second feature matrix of channel c1 are represented as φ[c1][w][h], φ[c1][w + 1][h], φ[c1][w - 1][h + 1], φ[c1][w][h + 1], φ[c1][w + 1][h + 1]. In this case, at least one second probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1 = [Number] is as follows.

[0385] When determining the encoding target position L in the third target region Q3 in the second feature matrix of channel c1 as the second target position, regarding the method of determining at least one second probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1, it should be noted that reference is made to the description in the embodiment of FIG. 12b based on the embodiment of FIG. 14b. Details will not be described again here. When determining a part of the first unencoded position and the encoding target position L in the third target region Q3 in the second feature matrix of channel c1 as the second target position, regarding the method of determining at least one second probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1, reference is made to the description of the embodiment of FIG. 12c based on the embodiment of FIG. 14b. Details will not be described again here.

[0386] When encoding in the order shown in (2) of FIG. 3, based on the embodiment of FIG. 14b, referring to the description of the embodiments of FIGS. 13a and 13b, it should be noted that at least one second probability distribution parameter corresponding to the encoding target feature point D in the feature map of channel c1 may be determined. Details will not be described again here.

[0387] When the number k of channels included in the target channel group is greater than 1, based on FIG. 14b, referring to the description of the embodiment of FIG. 12d, it should be noted that at least one second probability distribution parameter corresponding to the encoding target feature point D may be determined. Details will not be described again here.

[0388] It should be understood that when the encoder side performs encoding in a different encoding order, the positions of the encoded feature points in the feature map, the first target positions in the first feature matrix, and the second target positions in the second feature matrix may be different from the positions shown in the embodiments of FIGS. 12a to 12d, the embodiments of FIGS. 13a and 13b, and the embodiments of FIGS. 14a and 14b. The positions of the encoded feature points in the feature map, the first target positions in the first feature matrix, and the second target positions in the second feature matrix are not limited in this application.

[0389] In the embodiment of FIG. 5, when the probability distribution model used by the probability estimation unit V1 is a Gaussian distribution model with an average value of 0, in other words, when the probability distribution parameter only includes the second probability distribution parameter (that is, variance ( variance ), it should be noted that the estimated information matrix output by the hyper decoder network may only include the second feature matrix. In this case, the second probability distribution parameter (that is, variance ( variance )) may be determined in the manner described in the embodiments of FIGS. 12a to 12d and the embodiments of FIGS. 13a and 13b.

[0390] It should be understood that the method by which the decoder side determines at least one probability distribution parameter of the feature points to be decoded corresponds to the method by which the encoder side determines at least one probability distribution parameter of the feature points to be encoded. For details, refer to the descriptions of the embodiments in FIGS. 12a to 12d, the descriptions of the embodiments in FIGS. 13a and 13b, and the descriptions of the embodiments in FIGS. 14a and 14b. The details will not be described again here.

[0391] For example, the present invention further provides a bitstream generation method for generating a bitstream by the encoding method in the above-described embodiment.

[0392] For example, the present application further provides a bitstream transmission method for transmitting the bitstream generated by the bitstream generation method in the above-described embodiment.

[0393] For example, the present application further provides a bitstream storage method for storing the bitstream generated by the bitstream generation method in the above-described embodiment.

[0394] In one example, FIG. 15 is a block diagram of an apparatus 1500 according to an embodiment of the present application. The apparatus 1500 may include a processor 1501 and a transceiver / transceiver pin 1502, and optionally may further include a memory 1503.

[0395] The components of the apparatus 1500 are coupled to each other via a bus 1504. In addition to the data bus, the bus 1504 further includes a power bus, a control bus, and a status signal bus. However, for clarity of explanation, the various buses in the figure are referred to as the bus 1504.

[0396] Optionally, the memory 1503 may be configured to store instructions in the embodiments of the foregoing methods. The processor 1501 may be configured to execute instructions in the memory 1503, control the receiving pins to receive signals, and control the transmitting pins to transmit signals.

[0397] The device 1500 may be an electronic device or a chip of an electronic device in the foregoing method embodiments.

[0398] All relevant content of the steps in the foregoing method embodiments may be cited in the functional descriptions of the corresponding functional modules. Details are not described again here.

[0399] One embodiment further provides a computer-readable storage medium. The computer-readable storage medium stores computer instructions. When the computer instructions are executed on an electronic device, the electronic device can perform the foregoing related method steps to implement the encoding and decoding methods in the foregoing embodiments.

[0400] One embodiment further provides a computer program product. When the computer program product is executed on a computer, the computer can perform the foregoing related steps to implement the encoding and decoding methods in the foregoing embodiments.

[0401] Additionally, one embodiment of the present application further provides a device. The device may specifically be a chip, a component, or a module. The device may include a processor and a memory connected to each other. The memory is configured to store computer-executable instructions. When the device is executed, the processor executes the computer-executable instructions stored in the memory, enabling the chip to execute the encoding and decoding methods in the foregoing method embodiments.

[0402] The electronic device, computer-readable storage medium, computer program product, or chip provided in the embodiments is configured to execute the corresponding method provided above. Therefore, for the beneficial effects that can be achieved, refer to the beneficial effects of the corresponding method provided above. Details are not described again here.

[0403] Based on the foregoing description of the implementation, those skilled in the art may understand that, for the purpose of convenience and concise description, the division into the foregoing functional modules is used as an example for illustration. In an actual application, the foregoing functions may be assigned to different functional modules to be implemented according to requirements. In other words, the internal structure of the device is divided into different functional modules to implement all or part of the above functions.

[0404] In some embodiments provided in this application, it should be understood that the disclosed device and method may be implemented in other ways. For example, the described embodiments of the device are merely examples. For example, the division into modules or units is only a logical functional division, and in actual implementation, other divisions may be used. For example, a plurality of units or components may be combined or integrated into another device, some features may be ignored or not executed. Additionally, the disclosed mutual coupling, direct coupling, or communication connection may be implemented through some interfaces. The indirect coupling or communication connection between devices or units may be implemented in an electrical form, a mechanical form, or another form.

[0405] The units described as separate parts may or may not be physically separated. The parts shown as units may be one or more physical units, may be located in one place, or may be distributed in multiple places. Some or all of the units may be selected based on actual requirements to achieve the purpose of the solution of the embodiment.

[0406] Additionally, the functional units in the embodiments of this application may be integrated into one processing unit, each unit may exist physically alone, or two or more units may be integrated into one unit. The integrated unit may be implemented in the form of hardware or in the form of a software functional unit.

[0407] Any content of an embodiment of this application and any content of the same embodiment may be freely combined. Any combination of the foregoing content shall fall within the scope of this application.

[0408] When an integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, the integrated unit may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiment of this application may be essentially implemented in the form of a software product, the part contributing to the prior art may be implemented in the form of a software product, or all or part of the technical solution may be implemented in the form of a software product. The software product includes several instructions stored in a storage medium for instructing a device (which may be a single-chip microcomputer, a chip, etc.) or a processor to execute all or part of the steps of the method described in the embodiment of this application. The foregoing storage medium includes any medium capable of storing program code, such as a USB flash drive, a removable hard disk drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0409] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the foregoing specific implementation. The foregoing specific implementation is merely an example and not restrictive. Those skilled in the art may make more modifications without departing from the purpose of this application and the protection scope of the claims, and all modifications shall fall within the protection scope of this application.

[0410] The methods or algorithms described in combination with the content disclosed in the embodiments of this application may be implemented by hardware or by a processor by executing software instructions. The software instructions may include corresponding software modules. The software modules may be stored in a random access memory (RAM), flash memory, read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), register, hard disk, mobile hard disk, compact disk read only memory (CD-ROM), or any other form of storage medium well known in the art. For example, the storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium may be a component of the processor. The processor and the storage medium may be disposed within an ASIC.

[0411] Those skilled in the art should understand that in one or more of the foregoing examples, the functions described in this application may be implemented by hardware, software, firmware, or any combination thereof. When the functions are implemented by software, the foregoing functions may be stored in a computer-readable medium or transmitted as one or more instructions or codes in a computer-readable medium. The computer-readable medium includes a computer-readable storage medium and a communication medium, and the communication medium includes any medium that enables the transmission of a computer program from one place to another. The storage medium may be any available medium accessible by a general-purpose computer or a dedicated computer.

[0412] The embodiments of the present application have been described above with reference to the accompanying drawings. However, the present application is not limited to the specific implementations described above. The specific implementations described above are merely examples and are not limiting. Based on the concept of the present application, those skilled in the art may make more modifications without departing from the purpose of the present application and the scope of protection of the claims, and all modifications shall fall within the scope of protection of the present application.

Claims

1. A method of encoding, comprising: obtaining an image to be encoded; generating a feature map of C channels based on the image to be encoded, the feature map including feature values of a plurality of feature points, and C being a positive integer; generating an estimated information matrix of the C channels based on the feature maps of the C channels; grouping the C channels into N channel groups, where N is an integer greater than 1, each channel group including k channels, and the number k of channels included in any two channel groups may be the same or different, and k is a positive integer; for at least one target channel group among the N channel groups, determining at least one probability distribution parameter corresponding to an encoding target feature point corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group; determining a probability distribution corresponding to the encoding target feature point based on the at least one probability distribution parameter corresponding to the encoding target feature point; encoding the encoding target feature point based on the probability distribution corresponding to the encoding target feature point.

2. The step of determining at least one probability distribution parameter corresponding to an encoding target feature point corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group comprises: performing linear weighting on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the encoding target feature point corresponding to the target channel group, the method according to claim 1.

3. The estimated information matrix includes the estimated information of a plurality of feature points, and performs linear weighting on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group to determine the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, which is determining a first target area in the feature map corresponding to the target channel group and a second target area in the estimated information matrix corresponding to the target channel group based on the feature point to be encoded performing linear weighting on at least one feature value of at least one encoded feature point in the first target area and the estimated information of at least one feature point in the second target area to obtain the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, the method according to claim 2, comprising

4. When k is greater than 1, determining a first target area in the feature map corresponding to the target channel group and a second target area in the estimated information matrix corresponding to the target channel group based on the feature point to be encoded is determining, as the first target area, an area with a preset size centered on the feature point to be encoded in the feature map of the first channel and an area with a preset size centered on the feature point corresponding to the position of the feature point to be encoded in the feature map of the second channel, wherein the first channel corresponds to the feature point to be encoded, and the second channel is a channel other than the first channel in the target channel group determining, as the second target area, an area with a preset size centered on the encoding target position in the estimated information matrix of the first channel and an area with a preset size centered on the position corresponding to the encoding target position in the estimated information matrix of the second channel, wherein the encoding target position is the position of the feature point to be encoded, the method according to claim 3, comprising

5. performing linear weighting on at least one feature value of at least one encoded feature point in the first target region and on the estimated information of at least one feature point in the second target region, to obtain the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, determining a first target position based on positions other than the encoded positions in the second target region, where the encoded positions are at least one position of the at least one encoded feature point, performing linear weighting on the at least one feature value of the at least one encoded feature point in the first target region and on the estimated information of the feature point corresponding to the first target position, to obtain the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, the method according to claim 3 or 4, comprising:

6. when k is greater than 1, determining a first target position based on positions other than the encoded positions in the second target region, comprising determining, as the first target position, the encoded target position and at least one other unencoded position in the second target region in the estimated information matrix of the first channel and the positions corresponding to the encoded target position and at least one other unencoded position in the second target region in the estimated information matrix of the second channel, where the first channel corresponds to the feature point to be encoded, and the second channel is a channel other than the first channel in the target channel group, the method according to claim 5,

7. when k is greater than 1, determining a first target position based on positions other than the encoded positions in the second target region, comprising determining, as the first target position, the encoded target position in the second target region in the estimated information matrix of the first channel and the position corresponding to the encoded target position in the second target region in the estimated information matrix of the second channel, The method according to claim 5, wherein the first channel corresponds to the feature point to be encoded, and the second channel is a channel other than the first channel in the target channel group.

8. Performing linear weighting on the at least one feature value of the at least one encoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position, to obtain the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, obtaining a preset weight matrix corresponding to the first channel corresponding to the feature point to be encoded, the weight matrix including a weight map of the k channels, performing linear weighting on the at least one feature value of the at least one encoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position based on the weight map of the k channels, to obtain the at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, including the method according to any one of claims 5 to 7.

9. The estimated information matrix of the C channels includes a first feature matrix of the C channels and a second feature matrix of the C channels, the first feature matrix includes the first features of a plurality of feature points, the second feature matrix includes the second features of a plurality of feature points, and the probability distribution parameter includes at least one first probability distribution parameter and at least one second probability distribution parameter, determining at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group, Determining at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group; Determining at least one second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group, the method according to claim 1.

10. The estimated information matrix of the C channels includes a first feature matrix of the C channels and a second probability distribution parameter matrix of the C channels. The first feature matrix includes first features of a plurality of feature points, and the second probability distribution parameter matrix includes second probability distribution parameters of a plurality of feature points. The at least one probability distribution parameter includes at least one first probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group is Including determining at least one first probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature points to be encoded based on the at least one probability distribution parameter corresponding to the feature points to be encoded is Determining the second probability distribution parameter corresponding to the feature points to be encoded corresponding to the target channel group based on the second probability distribution parameter matrix corresponding to the target channel group. determining the probability distribution corresponding to the feature point to be encoded based on the at least one first probability distribution parameter and the at least one second probability distribution parameter corresponding to the feature point to be encoded, the method according to claim 1, comprising:

11. The estimated information matrix of the C channels includes a first probability distribution parameter matrix of the C channels and a second feature matrix of the C channels. The first probability distribution parameter matrix includes first probability distribution parameters of a plurality of feature points, the second feature matrix includes second features of a plurality of feature points, and the at least one probability distribution parameter includes at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group is including determining at least one second probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group based on at least one feature value of at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature point to be encoded based on the at least one probability distribution parameter corresponding to the feature point to be encoded is determining at least one first probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group based on the first probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature point to be encoded based on the at least one first probability distribution parameter and the at least one second probability distribution parameter corresponding to the feature point to be encoded, the method according to claim 1, comprising:

12. Determining at least one second probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group based on the at least one feature value of the at least one encoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group is determining a first target region in the feature map corresponding to the target channel group and a third target region in the second feature matrix corresponding to the target channel group based on the feature point to be encoded; determining at least one difference corresponding to the at least one encoded feature point in the first target region based on the at least one feature value of the at least one encoded feature point in the first target region and at least one corresponding first probability distribution parameter; performing linear weighting on the second feature of the at least one feature point in the third target region and the at least one difference corresponding to the at least one encoded feature point in the first target region to obtain the at least one second probability distribution parameter corresponding to the feature point to be encoded corresponding to the target channel group, the method according to claim 9 or 11.

13. A bitstream generation method configured to generate a bitstream by the encoding method according to any one of claims 1 to 12.

14. A bitstream storage method configured to store the bitstream generated by the bitstream generation method according to claim 13.

15. A bitstream transmission method configured to transmit the bitstream generated by the bitstream generation method according to claim 13.

16. A decoding method, comprising: receiving a bitstream; decoding the bitstream to obtain an estimated information matrix of C channels, where C is a positive integer; Decoding the bitstream based on the estimated information matrix of the C channels to obtain the eigenvalue of the feature point of the C channels, and determining a target channel group to which the channel corresponding to the feature point to be decoded belongs from N channel groups obtained by grouping the C channels for the feature point to be decoded, where each channel group includes k channels, the number k of channels included in any two channel groups may be the same or different, k is a positive integer, and N is an integer greater than 1; determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group; determining the probability distribution corresponding to the feature point to be decoded based on the at least one probability distribution parameter corresponding to the feature point to be decoded; and decoding the feature point to be decoded based on the probability distribution corresponding to the feature point to be decoded to obtain an eigenvalue. Performing reconstruction based on the feature map of the C channels and outputting a reconstructed image. The method includes the above steps.

17. Determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group means that: The method according to claim 16, including performing linear weighting on at least one eigenvalue of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the feature point to be decoded.

18. The estimating information matrix includes the estimating information of a plurality of feature points, and performing a linear weighting on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimating information matrix corresponding to the target channel group to determine at least one probability distribution parameter corresponding to the feature point to be decoded is, determining a first target region in the feature map corresponding to the target channel group and a second target region in the estimating information matrix corresponding to the target channel group based on the feature point to be decoded; performing a linear weighting on at least one feature value of at least one decoded feature point in the first target region and the estimating information of at least one feature point in the second target region to obtain at least one probability distribution parameter corresponding to the feature point to be decoded, the method according to claim 17.

19. When k is greater than 1, determining a first target region in the feature map corresponding to the target channel group and a second target region in the estimating information matrix corresponding to the target channel group based on the feature point to be decoded is, determining, as the first target region, a region with a preset size centered on the feature point to be decoded in the feature map of the first channel and a region with a preset size centered on the feature point corresponding to the position of the feature point to be decoded in the feature map of the second channel, where the first channel corresponds to the feature point to be decoded and the second channel is a channel other than the first channel in the target channel group; determining, as the second target region, a region with a preset size centered on the position to be decoded in the estimating information matrix of the first channel and a region with a preset size centered on the position corresponding to the position to be decoded in the estimating information matrix of the second channel, where the position to be decoded is the position of the feature point to be decoded, the method according to claim 18.

20. Performing linear weighting on at least one feature value of at least one decoded feature point in the first target region and the estimated information of at least one feature point in the second target region to obtain the at least one probability distribution parameter corresponding to the feature point to be decoded, Determining a first target position based on positions other than the decoded position in the second target region, where the decoded position is at least one position of the at least one decoded feature point, Performing linear weighting on the at least one feature value of the at least one decoded feature point in the first target region and the estimated information of the feature point corresponding to the first target position to obtain the at least one probability distribution parameter corresponding to the feature point to be decoded, the method according to claim 18 or 19, including:

21. When k is greater than 1, determining a first target position based on positions other than the decoded position in the second target region, Determining, as the first target position, the position corresponding to the position to be decoded and at least one other undecoded position in the second target region in the estimated information matrix of the first channel and the position corresponding to the position to be decoded and at least one other undecoded position in the second target region in the estimated information matrix of the second channel, The first channel corresponds to the feature point to be decoded, and the second channel is a channel other than the first channel in the target channel group, the method according to claim 20.

22. When k is greater than 1, determining a first target position based on positions other than the decoded position in the second target region, Determining, as the first target position, the position to be decoded in the second target region in the estimated information matrix of the first channel and the position corresponding to the position to be decoded in the second target region in the estimated information matrix of the second channel, The first channel corresponds to the feature point to be decoded, and the second channel is a channel other than the first channel in the target channel group, the method according to claim 20.

23. Performing linear weighting on the at least one feature value of the at least one decoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position to obtain the at least one probability distribution parameter corresponding to the feature point to be decoded is Obtaining a preset weight matrix corresponding to the first channel corresponding to the feature point to be decoded, where the weight matrix includes weight maps of the k channels, and Based on the weight maps of the k channels, performing linear weighting on the at least one feature value of the at least one decoded feature point in the first target area and the estimated information of the feature point corresponding to the first target position to obtain the at least one probability distribution parameter corresponding to the feature point to be decoded, and the method according to any one of claims 20 to 22.

24. The estimated information matrix of the C channels includes a first feature matrix of the C channels and a second feature matrix of the C channels. The first feature matrix includes first features of a plurality of feature points, and the second feature matrix includes second features of a plurality of feature points. The at least one probability distribution parameter includes at least one first probability distribution parameter and at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group is Determining at least one first probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group, and Determining at least one second probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the second feature matrix corresponding to the target channel group, and the method according to claim 16.

25. The estimated information matrix of the C channels includes a first feature matrix of the C channels and a second probability distribution parameter matrix of the C channels. The first feature matrix includes first features of a plurality of feature points, the second probability distribution parameter matrix includes second probability distribution parameters of the plurality of feature points, and the at least one probability distribution parameter includes at least one first probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the estimated information matrix corresponding to the target channel group includes: Determining at least one first probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and the first feature matrix corresponding to the target channel group. Determining the probability distribution corresponding to the feature point to be decoded based on the at least one probability distribution parameter corresponding to the feature point to be decoded includes: Determining at least one second probability distribution parameter of the feature point to be decoded based on the second probability distribution parameter matrix corresponding to the target channel group; and Determining the probability distribution corresponding to the feature point to be decoded based on the at least one first probability distribution parameter and the at least one second probability distribution parameter corresponding to the feature point to be decoded. The method according to claim 16.

26. The estimated information matrix of the C channels includes a first probability distribution parameter matrix of the C channels and a second feature matrix of the C channels. The first probability distribution parameter matrix includes first probability distribution parameters of a plurality of feature points, the second feature matrix includes second features of the plurality of feature points, and the at least one probability distribution parameter includes at least one second probability distribution parameter. Determining at least one probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and an estimated information matrix corresponding to the target channel group is including determining at least one second probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and a second feature matrix corresponding to the target channel group, Determining the probability distribution corresponding to the feature point to be decoded based on the at least one probability distribution parameter corresponding to the feature point to be decoded is determining at least one first probability distribution parameter corresponding to the feature point to be decoded based on a first probability distribution parameter matrix corresponding to the target channel group, and determining the probability distribution corresponding to the feature point to be decoded based on the at least one first probability distribution parameter and the at least one second probability distribution parameter corresponding to the feature point to be decoded, the method according to claim 16.

27. Determining at least one second probability distribution parameter corresponding to the feature point to be decoded based on at least one feature value of at least one decoded feature point corresponding to the target channel group and a second feature matrix corresponding to the target channel group is determining, based on the feature point to be decoded, a first target region in a feature map corresponding to the target channel group and a third target region in the second feature matrix corresponding to the target channel group, and determining at least one difference corresponding to at least one decoded feature point in the first target region based on at least one feature value of at least one decoded feature point in the first target region and a corresponding first probability distribution parameter, Performing linear weighting on the second feature of at least one feature point in the third target region and the at least one difference corresponding to the at least one decoded feature point in the first target region to obtain the at least one second probability distribution parameter corresponding to the feature point to be decoded, the method according to claim 24 or 26.

28. An encoder configured to execute the encoding method according to any one of claims 1 to 12.

29. A decoder configured to execute the decoding method according to any one of claims 16 to 27.

30. An electronic device Including a memory and a processor, the memory being coupled to the processor The memory stores program instructions, and when the program instructions are executed by the processor, the electronic device can execute the method according to any one of claims 1 to 27, an electronic device.

31. A chip including one or more interface circuits and one or more processors, the interface circuits being configured to receive a signal from the memory of an electronic device and transmit the signal to the processor, the signal including computer instructions stored in the memory, and when the processor executes the computer instructions, the electronic device can execute the method according to any one of claims 1 to 27, a chip.

32. A computer-readable storage medium storing a computer program, and when the computer program is executed on a computer or a processor, the computer or the processor can execute the method according to any one of claims 1 to 27, a computer-readable storage medium.

33. A computer program product including a software program, and when the software program is executed by a computer or a processor, the steps of the method according to any one of claims 1 to 27 are executed, a computer program product.

Citation Information

Patent Citations

  • Image processing method and related device

    JP2023512570A

  • Method and device for processing multi-channel feature map images

    US20180350110A1

  • Image processing method and related device

    WO2021155832A1

  • Signaling of feature map data

    WO2022086376A1

Cited By

  • Decoding, encoding methods, apparatus, devices and media

    JP2026512152A

  • Decoding, encoding methods, apparatus, devices and media

    JP7866154B2