Encoding method and apparatus, decoding method and apparatus, bitstream, and computer-readable storage medium

By encoding the distribution characteristics of the original radar data, encoding residual values ​​based on the target prediction mode, and transmitting mode identification information, the problem of bandwidth pressure in high-resolution radar data transmission is solved, achieving efficient code rate reduction and decoding accuracy.

WO2025227972A1PCT designated stage Publication Date: 2025-11-06HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/083154
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-30
Filing Date
2025-03-18
Publication Date
2025-11-06

AI Technical Summary

Technical Problem

In intelligent driving, the transmission and storage requirements of high-resolution radar data lead to excessive pressure on transmission bandwidth, and existing technologies are unable to effectively reduce bit rate overhead.

Method used

By acquiring the radar's raw data, determining its distribution characteristics, encoding residual values ​​based on the target prediction pattern, and using pattern identification information to transmit the prediction pattern, the code rate overhead is reduced.

Benefits of technology

It achieves efficient compression of radar data, reduces transmission and storage requirements, ensures accuracy at the decoding end, and is suitable for radar data with different distribution characteristics.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025083154_06112025_PF_FP_ABST
    Figure CN2025083154_06112025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present application are an encoding method and apparatus, a decoding method and apparatus, a bitstream, and a computer-readable storage medium. The decoding method comprises: receiving a bitstream; decoding the bitstream to obtain mode identification information, and reconstruction values of residuals of a plurality of attributes, wherein a target prediction mode corresponds to distribution characteristics of original data of a radar; determining a first prediction value for each of the plurality of attributes; determining a second prediction value for each of the plurality of attributes on the basis of the mode identification information and the first prediction values of the plurality of attributes; and determining a reconstruction value for each of the plurality of attributes on the basis of the second prediction values of the plurality of attributes and the reconstruction values of the residuals of the plurality of attributes. In this way, a bitstream obtained by means of encoding original data of a radar that has different distribution characteristics can be accurately decoded. An encoding end also uses a target prediction mode, which corresponds to the distribution characteristics of the original data of the radar, to determine second prediction values, such that the obtained second prediction values are more accurate, and the bitrate overheads can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Coding and decoding method, device, code stream and computer readable storage medium

[0001] The present application claims priority to the Chinese patent application No. 202410544781.4, filed on April 30, 2024, and entitled "Coding and decoding method, device, code stream and computer readable storage medium", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the field of coding and decoding, and in particular, to a coding and decoding method, device, code stream and computer readable storage medium. BACKGROUND

[0003] In recent years, with the evolution of radar technology, the durability of radar has been greatly improved, and the unit price of radar has also fallen to a market acceptable level. Therefore, more and more vehicles are equipped with radars to apply radar data to intelligent driving to improve the reliability and safety of intelligent driving.

[0004] In some specific scenarios, intelligent driving data (such as sensing data, which can include radar data, image data collected by a camera, etc.) needs to be uploaded to a server. With the pursuit of high-resolution point clouds, the number of lines of a laser radar is continuously increasing, and only the raw data of the radar can require a transmission bandwidth of more than 100 Mbps, which brings greater pressure on data transmission and storage. In order to meet the needs of laser radar data in transmission and storage, an efficient compression algorithm is indispensable. SUMMARY

[0005] Therefore, the present application provides a coding and decoding method, device, code stream and computer readable storage medium to reduce the code rate overhead.

[0006] In a first aspect, the present application provides a coding method, which comprises: first, obtaining raw data of a radar, the raw data of the radar comprising raw values of a plurality of attributes; then, determining a first prediction value of each attribute in the plurality of attributes; thereafter, determining a second prediction value of each attribute in the plurality of attributes based on a target prediction mode and the first prediction value of the plurality of attributes, the target prediction mode corresponding to a distribution characteristic of the raw data of the radar; subsequently, encoding mode identification information and residual values of the plurality of attributes to obtain a code stream, the mode identification information indicating the target prediction mode, and for each attribute in the plurality of attributes, the residual value of the attribute being a difference between the raw value of the attribute and the second prediction value of the attribute.

[0007] Since the distribution characteristics (or distribution rules) of the raw data of different radars are different, in the encoding process, the second prediction value determined based on the prediction mode (i.e., the target prediction mode) corresponding to the distribution characteristics of the raw data of the radar is more accurate (i.e., closer to the original value); accordingly, the residual value determined based on the second prediction value of the attribute and the original value is smaller, so that the distribution of the residual value is more concentrated, and the code rate required for encoding the residual value of the attribute can be smaller, thereby reducing the code rate overhead.

[0008] Secondly, compared with the point cloud data of the radar (converted from the raw data of the radar), the information in the raw data of the radar is more concentrated; therefore, the raw data of the radar is more convenient for prediction (or the prediction value obtained by prediction is more accurate); further, compared with encoding the point cloud data of the radar, the raw data of the radar is encoded in the present application, and the compression rate is higher, which can reduce the code rate overhead.

[0009] Thirdly, the encoding end transmits the identification information of the target prediction mode to the decoding end by carrying the mode identification information of the target prediction mode in the code stream, so that the decoding end can also use the same target prediction mode as the encoding end for prediction, ensuring the accuracy of decoding; in this way, the decoding end can also decode the raw data of the radar with different distribution characteristics.

[0010] In addition, the encoding method of the present application can also be used to encode other data (other sensor data or log information).

[0011] Exemplarily, the original values of the plurality of attributes include the original values of each attribute in the plurality of attributes.

[0012] Exemplarily, "determining the second prediction value of each attribute in the plurality of attributes based on the target prediction mode and the first prediction value of the plurality of attributes" can include multiple schemes: (1) determining the second prediction value of a first part of the plurality of attributes based on the target prediction mode; and determining the second prediction value of a second part of the plurality of attributes based on the target prediction mode and the first prediction value of the second part of the plurality of attributes; (2) determining the second prediction value of each attribute in the plurality of attributes based on the target prediction mode and the first prediction value of each attribute in the plurality of attributes.

[0013] Exemplarily, the plurality of attributes can include but are not limited to: distance / radius, intensity, azimuth angle, elevation, etc.; the present application does not limit this.

[0014] Exemplarily, the distribution feature of the raw data of the radar can include a relationship between original values of different attributes in the raw data of the radar; for example, the distribution feature of the raw data of the radar can be that when the original value of the distance is 0, the original value of the signal strength is 0. For another example, the distribution feature of the raw data of the radar can be that when the original value of the passive light intensity is 0, the original value of the active light intensity is 0; and when the original value of the active light intensity is 0, the original value of the distance is 0.

[0015] In a possible manner, the mode identification information can be encoded first, and then the residual values of the plurality of attributes can be encoded. Exemplarily, "encoding the mode identification information" can mean that the mode identification information is entropy encoded, or the mode identification information is directly written into a bitstream without entropy encoding. Exemplarily, "encoding the residual values of the plurality of attributes" can mean that the residual values of part or all of the plurality of attributes are entropy encoded.

[0016] Exemplarily, the mode identification information can be regarded as global information (or regarded as metadata of the radar), that is, after the mode identification information is encoded once, the raw data of multiple frames of the radar can be encoded (that is, the raw data of each frame of the radar in the raw data of the multiple frames of the radar includes the residual values of the plurality of attributes).

[0017] According to the first aspect, the plurality of attributes includes a first part of attributes and a second part of attributes, and the second prediction value of each attribute in the plurality of attributes is determined based on the target prediction mode and the first prediction value of the plurality of attributes, including: determining the second prediction value of each attribute in the first part of attributes based on the target prediction mode, and determining, for each attribute in the second part of attributes, the first prediction value of the attribute as the second prediction value of the attribute.

[0018] That is, the second prediction value of each attribute in the first part of attributes is other values, and the second prediction value of each attribute in the second part of attributes is equal to the first prediction value.

[0019] In which, each attribute contained in the first part of attributes can be regarded as an attribute whose original value has a strong correlation (or dependency) with the original value of another attribute in the first part of attributes or the original value of each attribute in the second part of attributes; therefore, the other values determined based on the target prediction mode corresponding to the distribution feature of the raw data of the radar (which can be determined as the second prediction value of each attribute contained in the first part of attributes) are more reliable (or more accurate) than the first prediction values of the attributes contained in the first part of attributes.

[0020] The second part of the attribute contains each attribute, which can be regarded as an original value and the original value of other attributes in the second part of the attribute or the original value of each attribute in the first part of the attribute has no correlation or weak correlation. At this time, the reliability of the first prediction value of each attribute in the second part of the attribute is high, so the first prediction value of each attribute in the second part of the attribute can be determined as the second prediction value of each attribute in the second part of the attribute.

[0021] In this way, a more reliable (or more accurate) second prediction value can be determined for each attribute.

[0022] Exemplarily, the first part of the attribute can include one or more attributes, and the second part of the attribute can include one or more attributes.

[0023] According to the first aspect or any one of the implementation forms of the above first aspect, the target prediction mode indicates that for each attribute in the first part of the attribute, when the reconstructed value of the reference attribute corresponding to the attribute is 0, the second prediction value of the attribute is 0; and the second prediction value of each attribute in the first part of the attribute is determined based on the target prediction mode, including: for each attribute in the first part of the attribute, when the reconstructed value of the reference attribute corresponding to the attribute is 0, 0 is determined as the second prediction value of the attribute.

[0024] In this case, the distribution feature corresponding to the target prediction mode can be that for each attribute in the first part of the attribute, when the original value of the reference attribute corresponding to the attribute is 0, the original value of the attribute is 0. In this way, the residual value of each attribute in the first part of the attribute is 0, which can make the distribution of the residual value more concentrated, and thus the code rate overhead can be reduced.

[0025] Exemplarily, each attribute in the first part of the attribute is different from the category (or type, or mode) of the corresponding reference attribute.

[0026] According to the first aspect or any one of the implementation forms of the above first aspect, the first part of the attribute includes a first attribute, the second part of the attribute includes a second attribute, and the second attribute is the reference attribute corresponding to the first attribute; when the reconstructed value of the second attribute is 0, 0 is determined as the second prediction value of the first attribute, including: when the reconstructed value of the second attribute is 0, 0 is determined as the second prediction value of the first attribute; and for each attribute in the second part of the attribute, the first prediction value of the attribute is determined as the second prediction value of the attribute, including: the first prediction value of the second attribute is determined as the second prediction value of the second attribute.

[0027] In this case, the distribution feature corresponding to the target prediction mode can be that the original value of the first attribute is 0 in the case that the original value of the second attribute is 0. In this way, the residual value of the second attribute obtained is 0, which can make the distribution of the residual value more concentrated, and thus the code rate overhead can be reduced.

[0028] Exemplarily, the categories (or types, or modalities) of the first attribute and the second attribute are different. For example, the second attribute is active light intensity, and the first attribute is distance. Correspondingly, the distribution feature corresponding to the target prediction mode can be that the original value of the distance is 0 in the case that the original value of the active light intensity is 0.

[0029] According to the first aspect, or any one of the implementations of the above first aspect, the first part of attributes includes the first attribute and the second attribute, and the second part of attributes includes the third attribute, the third attribute being a reference attribute corresponding to the second attribute, and the second attribute being a reference attribute corresponding to the first attribute; for each attribute in the first part of attributes, when the reconstructed value of the reference attribute corresponding to the attribute is 0, 0 is determined as the second prediction value of the attribute, including: when the reconstructed value of the third attribute is 0, 0 is determined as the second prediction value of the second attribute; and when the reconstructed value of the second attribute is 0, 0 is determined as the second prediction value of the first attribute; for each attribute in the second part of attributes, the first prediction value of the attribute is determined as the second prediction value of the attribute, including: the first prediction value of the third attribute is determined as the second prediction value of the third attribute.

[0030] In this case, the distribution feature corresponding to the target prediction mode is that the original value of the second attribute is 0 in the case that the original value of the third attribute is 0, and the original value of the first attribute is 0 in the case that the original value of the second attribute is 0. In this way, the residual value of the second attribute obtained and the residual value of the first attribute obtained are both 0, which can make the distribution of the residual value more concentrated, and thus the code rate overhead can be reduced.

[0031] Exemplarily, the categories (or types, or modalities) of the first attribute, the second attribute, and the third attribute are different. For example, the first attribute is distance, the second attribute is active light intensity, and the third attribute is passive light intensity. Correspondingly, the distribution feature corresponding to the target prediction mode is that the original value of the passive light intensity is 0 in the case that the original value of the active light intensity is 0, and the original value of the distance is 0 in the case that the original value of the active light intensity is 0.

[0032] According to the first aspect, or any one of the implementations of the above first aspect, the target prediction mode indicates that, for each attribute in the plurality of attributes, the second prediction value of the attribute is equal to the first prediction value of the attribute.

[0033] In this case, the distribution characteristic corresponding to the target prediction mode is that the original values of various attributes are weakly or not associated. For the original data of the radar with this kind of distribution characteristic, the reliability of the first prediction value of each attribute in the various attributes is high, and thus the first prediction value of each attribute can be determined as the second prediction value of each attribute.

[0034] According to a first aspect, or any possible implementation mode of the above first aspect, the target prediction mode indicates that, for each attribute in the various attributes, the second prediction value of the attribute is obtained by performing an AND operation on the first prediction value of the attribute and the mode identification information. This prediction mode can be suitable for hardware encoders and software encoders.

[0035] For example, the mode identification information can include a plurality of bit positions corresponding to the various attributes respectively; for each attribute, an AND operation can be performed on the first prediction value of the attribute and the values of the plurality of bit positions corresponding to the attribute in the mode identification information, to obtain the second prediction value of the attribute.

[0036] For example, the various attributes include a first attribute, a second attribute and a third attribute, the first part of attributes includes the first attribute, the second part of attributes includes the second attribute and the third attribute, and the second attribute is a reference attribute corresponding to the first attribute; the first prediction value of the first attribute occupies 16 bits, the first prediction value of the second attribute occupies 8 bits, and the first prediction value of the third attribute occupies 8 bits. Assuming that the mode identification information is "0xff0000ff", and the high bits are in front and the low bits are in back, the first prediction value of the second attribute corresponds to the 32nd bit to the 25th bit (i.e., "ff" marked by the underlined in "0xff0000ff") in "0xff0000ff", the first prediction value of the first attribute corresponds to the 24th bit to the 9th bit (i.e., "0000" marked by the underlined in "0xff0000ff") in "0xff0000ff", and the first prediction value of the third attribute corresponds to the 8th bit to the 1st bit (i.e., "ff" marked by the underlined in "0xff0000ff") in "0xff0000ff". Performing an AND operation on the first prediction value of each attribute in the various attributes and the values of the corresponding bit positions in the corresponding mode identification information can achieve that, in the case that the reconstructed value of the second attribute is 0, 0 is determined as the second prediction value of the first attribute, and the first prediction value of the second attribute is determined as the second prediction value of the second attribute, and the first prediction value of the third attribute is determined as the second prediction value of the third attribute.

[0037] According to a first aspect, or any possible implementation mode of the above first aspect, the determining the first prediction value of each attribute of the plurality of attributes comprises: selecting an optimal second type prediction mode from a plurality of second type prediction modes, the second type prediction mode comprising a spatial prediction mode or a temporal prediction mode; and predicting the plurality of attributes by using the optimal second type prediction mode to obtain the first prediction value of each attribute of the plurality of attributes.

[0038] Exemplarily, the spatial prediction mode can comprise a plurality of prediction modes, and the temporal prediction mode can comprise a plurality of prediction modes.

[0039] Exemplarily, the spatial prediction mode can also be referred to as an intra prediction mode, and the temporal prediction mode can also be referred to as an inter prediction mode.

[0040] According to a second aspect, the present application provides a decoding method, which comprises: first, receiving a code stream, the code stream comprising encoding data of residual values of a plurality of attributes in original data of a radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution characteristic of the original data of the radar; then, decoding the code stream to obtain the mode identification information and reconstructed values of the residual values of the plurality of attributes; subsequently, determining first prediction values of the plurality of attributes; and determining second prediction values of the plurality of attributes based on the mode identification information and the first prediction values of the plurality of attributes; and then, determining reconstructed values of the plurality of attributes based on the second prediction values of the plurality of attributes and the reconstructed values of the residual values of the plurality of attributes.

[0041] In this way, the code stream obtained by encoding the original data of the radar with different distribution characteristics can be accurately decoded.

[0042] In addition, the decoding method of the present application can also decode code streams of other data (such as other sensing data, log information), which is not limited by the present application.

[0043] Exemplarily, the reconstructed data of the radar can comprise at least one of reconstructed data of the original data of the radar or reconstructed data of point cloud data of the radar.

[0044] Exemplarily, the decoding of the code stream to obtain the mode identification information can also be referred to as the parsing of the code stream to obtain the mode identification information in some cases. One implementation mode of the decoding of the code stream to obtain the mode identification information can be reading the mode identification information from the code stream. Another implementation mode of the decoding of the code stream to obtain the mode identification information can be reading encoding data of the mode identification information from the code stream, and entropy decoding the encoding data of the mode identification information to obtain the mode identification information.

[0045] Exemplarily, the implementation manner of "decoding the code stream to obtain the reconstructed values of the residual values of the multiple attributes" can be: reading the coded data of the residual values of each attribute in the multiple attributes from the code stream, and entropy decoding the coded data of the residual values of each attribute in the multiple attributes to obtain the reconstructed values of the residual values of each attribute in the multiple attributes.

[0046] According to a second aspect, the multiple attributes include a first part of attributes and a second part of attributes, and the determining the second prediction value of each attribute in the multiple attributes based on the target prediction mode and the first prediction value of the multiple attributes includes: determining the second prediction value of each attribute in the first part of attributes based on the target prediction mode, and determining the first prediction value of each attribute in the second part of attributes as the second prediction value of the attribute.

[0047] According to the second aspect, or any of the implementation manners of the second aspect, the target prediction mode indicates that, for each attribute in the first part of attributes, when the reconstructed value of the reference attribute corresponding to the attribute is 0, the second prediction value of the attribute is 0, and the determining the second prediction value of each attribute in the first part of attributes based on the target prediction mode includes: for each attribute in the first part of attributes, when the reconstructed value of the reference attribute corresponding to the attribute is 0, determining 0 as the second prediction value of the attribute.

[0048] According to the second aspect, or any of the implementation manners of the second aspect, the first part of attributes includes a first attribute, and the second part of attributes includes a second attribute, and the second attribute is the reference attribute corresponding to the first attribute, and the determining 0 as the second prediction value of each attribute in the first part of attributes when the reconstructed value of the reference attribute corresponding to the attribute is 0 includes: determining 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0, and the determining the first prediction value of each attribute in the second part of attributes as the second prediction value of the attribute includes: determining the first prediction value of the second attribute as the second prediction value of the second attribute.

[0049] According to the second aspect, or any of the implementation manners of the second aspect, the first part of attributes includes a first attribute and a second attribute, the second part of attributes includes a third attribute, the third attribute is the reference attribute corresponding to the second attribute, and the second attribute is the reference attribute corresponding to the first attribute, the determining 0 as the second prediction value of each attribute in the first part of attributes when the reconstructed value of the reference attribute corresponding to the attribute is 0 includes: determining 0 as the second prediction value of the second attribute when the reconstructed value of the third attribute is 0, and determining 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0, and the determining the first prediction value of each attribute in the second part of attributes as the second prediction value of the attribute includes: determining the first prediction value of the third attribute as the second prediction value of the third attribute.

[0050] According to a second aspect, or any possible implementation mode of the second aspect, the target prediction mode indicates, for each of the plurality of attributes, that the second prediction value of the attribute is equal to the first prediction value of the attribute.

[0051] According to a second aspect, or any possible implementation mode of the second aspect, the target prediction mode indicates, for each of the plurality of attributes, that the second prediction value of the attribute is obtained by operating the first prediction value of the attribute and the mode identification information. In this way, there is no need to perform the operation of selecting the target prediction mode from the plurality of first-type prediction modes, and for a hardware decoder, there is no need to harden the plurality of first-type prediction modes, reducing hardware cost.

[0052] This way can also be used for a software decoder.

[0053] The second aspect and any possible implementation mode of the second aspect correspond to the first aspect and any possible implementation mode of the first aspect respectively. The technical effects of the second aspect and any possible implementation mode of the second aspect can refer to the technical effects of the first aspect and any possible implementation mode of the first aspect, which will not be repeated here.

[0054] In a third aspect, the present application provides a bitstream, the bitstream comprising encoded data of raw data of a radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution characteristic of the raw data of the radar.

[0055] Exemplarily, the raw data of the radar can comprise raw values of a plurality of attributes, and the encoded data of the raw data of the radar can comprise encoded data of residual values of some or all of the plurality of attributes (also referred to as encoded residual values of the plurality of attributes); wherein the residual value of each attribute can be determined according to the second prediction value and the raw value of the attribute.

[0056] Exemplarily, the bitstream can further comprise other information such as header information, configuration parameters (such as prediction method, quantization parameter, information arrangement mode) and the like, which are not limited by the present application.

[0057] Exemplarily, the present application does not limit the specific representation form of the mode identification information. For example, the mode identification information can be “0” or “0xff0000ff”.

[0058] According to the third aspect, the bitstream comprises encoded data of raw data of a plurality of frames of radars, the encoded data of raw data of one frame of radars comprising encoded data of a plurality of attributes, and the encoded data of raw data of the plurality of frames of radars comprising encoded data of the plurality of attributes arranged in attribute units.

[0059] For example, the encoding data of the first frame distance, the encoding data of the second frame distance, and the encoding data of the Xth frame distance are arranged in sequence in the code stream; and after the encoding data of the Xth frame distance, the encoding data of the first signal strength, the encoding data of the second signal strength, and the encoding data of the Xth signal strength are arranged in sequence.

[0060] The encoding data of the original data of the multi-frame radar can also be arranged in units of frames. For example, the encoding data of the original data of the second frame radar is arranged after the encoding data of the original data of the first frame radar, and the encoding data of the original data of the third frame radar is arranged after the encoding data of the original data of the second frame radar.

[0061] According to a third aspect, or any possible implementation of the third aspect, the mode identification information is arranged before the encoding data of the original data of the radar.

[0062] For example, the mode identification information is arranged before the encoding data of the original data of the multi-frame radar.

[0063] In a fourth aspect, the present application provides an encoding device, which comprises:

[0064] The obtaining module is configured to obtain the original data of the radar, the original data of the radar comprising original values of a plurality of attributes;

[0065] The prediction module is configured to determine first prediction values of the plurality of attributes, and determine second prediction values of the plurality of attributes based on a target prediction mode and the first prediction values of the plurality of attributes, the target prediction mode corresponding to a distribution feature of the original data of the radar;

[0066] The encoding module is configured to encode mode identification information and residual values of the plurality of attributes to obtain a code stream, the mode identification information indicating the target prediction mode, and for each attribute in the plurality of attributes, the residual value of the attribute being a difference between the original value of the attribute and the second prediction value of the attribute.

[0067] For example, the encoding device of the fourth aspect can also be configured to execute the method in the first aspect or any possible implementation of the first aspect.

[0068] For example, the encoding device of the fourth aspect can further comprise other modules such as a communication module and the like, which are not limited in the present application.

[0069] In a fifth aspect, the present application provides a decoding device, which comprises:

[0070] The receiving module is configured to receive a code stream, the code stream comprising encoding data of residual values of a plurality of attributes in the original data of the radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution feature of the original data of the radar;

[0071] a decoding module configured to decode the bitstream to obtain the mode identification information and the reconstructed values of the residual values of the multiple attributes;

[0072] a prediction module configured to determine first prediction values of the multiple attributes, determine second prediction values of the multiple attributes based on the mode identification information and the first prediction values of the multiple attributes, and determine reconstructed values of the multiple attributes based on the second prediction values of the multiple attributes and the reconstructed values of the residual values of the multiple attributes.

[0073] For example, the decoding apparatus of the fifth aspect can further be configured to perform the method in the second aspect or any possible implementation of the second aspect.

[0074] For example, the decoding apparatus of the fifth aspect can further include other modules such as a communication module and the like, which are not limited in the present application.

[0075] In a sixth aspect, the present application provides an encoder, including a memory and a processor, the memory being coupled with the processor; the memory storing program instructions, when the program instructions are executed by the processor, causing the encoder to perform the method in the first aspect or any possible implementation of the first aspect.

[0076] In a seventh aspect, the present application provides a decoder, including a memory and a processor, the memory being coupled with the processor; the memory storing program instructions, when the program instructions are executed by the processor, causing the decoder to perform the method in the second aspect or any possible implementation of the second aspect.

[0077] In an eighth aspect, the present application provides a chip, including one or more interface circuits and one or more processors; the one or more processors receiving or sending data through the one or more interface circuits, when the one or more processors execute computer instructions, causing the electronic device to perform the method in the first aspect or any possible implementation of the first aspect.

[0078] In a ninth aspect, the present application provides a chip, including one or more interface circuits and one or more processors; the one or more processors receiving or sending data through the one or more interface circuits, when the one or more processors execute computer instructions, causing the electronic device to perform the method in the second aspect or any possible implementation of the second aspect.

[0079] In a tenth aspect, the present application provides a computer readable storage medium, the computer readable storage medium storing a computer program, when the computer program runs on a computer or a processor, causing the computer or the processor to perform the method in the first aspect or any possible implementation of the first aspect.

[0080] In an eleventh aspect, the present application provides a computer readable storage medium, which stores a computer program. When the computer program is executed on a computer or a processor, the computer or the processor performs the method in the second aspect or any possible implementation manner of the second aspect.

[0081] The eleventh aspect and any possible implementation manner of the eleventh aspect correspond to the second aspect and any possible implementation manner of the second aspect respectively. For the technical effects of the eleventh aspect and any possible implementation manner of the eleventh aspect, refer to the technical effects of the second aspect and any possible implementation manner of the second aspect, which will not be described here.

[0082] In a twelfth aspect, the present application provides a computer program product, which includes computer instructions. When the computer instructions are executed by a computer or a processor, the computer or the processor performs the method in the first aspect or any possible implementation manner of the first aspect.

[0083] In a thirteenth aspect, the present application provides a computer program product, which includes computer instructions. When the computer instructions are executed by a computer or a processor, the computer or the processor performs the method in the second aspect or any possible implementation manner of the second aspect.

[0084] In a fourteenth aspect, the present application provides a computer readable storage medium, which stores a code stream in the third aspect or any possible implementation manner of the third aspect.

[0085] In a fifteenth aspect, the present application provides an encoder, which includes processing circuitry. The processing circuitry can be used to perform the method in the first aspect or any possible implementation manner of the first aspect.

[0086] In a sixteenth aspect, the present application provides a decoder, which includes processing circuitry. The processing circuitry can be used to perform the method in the second aspect or any possible implementation manner of the second aspect.

[0087] In a seventeenth aspect, the present application provides an apparatus for storing a code stream, which includes a receiver and at least one storage medium. The receiver is used to receive the code stream. The at least one storage medium is used to store the code stream. The code stream is generated according to the third aspect and any possible implementation manner of the third aspect.

[0088] In an eighteenth aspect, the present application provides an apparatus for transmitting a code stream, which includes a transmitter and at least one storage medium. The at least one storage medium is used to store the code stream. The code stream is generated according to the third aspect and any possible implementation manner of the third aspect. The transmitter is used to obtain the code stream from the storage medium and transmit the code stream to an end-side device through a transmission medium.

[0089] In a nineteenth aspect, the present application provides a system for distributing a code stream, the system comprising: at least one storage medium configured to store at least one code stream, the at least one code stream being generated according to the third aspect and any one of the implementations of the third aspect; and a streaming device configured to obtain a target code stream from the at least one storage medium and send the target code stream to an end-side device, wherein the streaming device comprises a content server or a content distribution server.

[0090] The electronic device, the computer readable storage medium, the computer program product, the chip or codec, the system and the like provided in the embodiments of the present application are used to execute the corresponding method provided in the above, and thus the beneficial effects achieved thereby can refer to the beneficial effects of the corresponding method provided in the above. BRIEF DESCRIPTION OF DRAWINGS

[0091] FIG. 1A is a schematic diagram of an application scenario according to an embodiment of the present application;

[0092] FIG. 1B is a schematic diagram of another application scenario according to an embodiment of the present application;

[0093] FIG. 1C is a schematic diagram of still another application scenario according to an embodiment of the present application;

[0094] FIG. 2A is a schematic diagram of a transmission framework 200 of raw data of a radar according to an embodiment of the present application;

[0095] FIG. 2B is a schematic diagram of a structure of an encoder 211 according to an embodiment of the present application;

[0096] FIG. 2C is a schematic diagram of a structure of a decoder 221 according to an embodiment of the present application;

[0097] FIG. 3A is a schematic diagram of an encoding process 300 according to an embodiment of the present application;

[0098] FIG. 3B is a schematic diagram of a format of message data according to an embodiment of the present application;

[0099] FIG. 3C is a schematic diagram of a structure of a code stream according to an embodiment of the present application;

[0100] FIG. 3D is a schematic diagram of a matrix according to an embodiment of the present application;

[0101] FIG. 3E is a schematic diagram of an encoding order according to an embodiment of the present application;

[0102] FIG. 4 is a schematic diagram of a decoding process 400 according to an embodiment of the present application;

[0103] FIG. 5 is a schematic diagram of an encoding process 500 according to an embodiment of the present application;

[0104] FIG. 6A is a schematic diagram of a decoding process 600 according to an embodiment of the present application;

[0105] FIG. 6B is a schematic diagram of a decoding process of a data block according to an embodiment of the present application;

[0106] FIG. 7 is a schematic diagram of an encoding process 700 according to an embodiment of the present application;

[0107] FIG. 8A is a schematic diagram of a decoding process 800 according to an embodiment of the present application;

[0108] FIG. 8B is a schematic diagram of a decoding process of a data block according to an embodiment of the present application;

[0109] FIG. 9 is a schematic diagram of an encoding process 900 according to an embodiment of the present application;

[0110] FIG. 10A is a schematic diagram of a decoding process 1000 according to an embodiment of the present application;

[0111] FIG. 10B is a schematic diagram of a decoding process of a data block according to an embodiment of the present application;

[0112] FIG. 11 is a schematic diagram of an encoding process 1100 according to an embodiment of the present application;

[0113] FIG. 12A is a schematic diagram of a decoding process 1200 according to an embodiment of the present application;

[0114] FIG. 12B is a schematic diagram of a decoding process of a data block according to an embodiment of the present application;

[0115] FIG. 13 is a schematic diagram of an encoding process 1300 according to an embodiment of the present application;

[0116] FIG. 14 is a schematic diagram of a decoding process 1400 according to an embodiment of the present application;

[0117] FIG. 15 is a schematic diagram of an encoding process 1500 according to an embodiment of the present application;

[0118] FIG. 16 is a schematic diagram of a decoding process 1600 according to an embodiment of the present application;

[0119] FIG. 17 is a schematic diagram of an encoding apparatus 1700 according to an embodiment of the present application;

[0120] FIG. 18 is a schematic diagram of a decoding apparatus 1800 according to an embodiment of the present application;

[0121] FIG. 19 is a schematic diagram of a structure of an apparatus according to an embodiment of the present application. DETAILED DESCRIPTION

[0122] With reference to the drawings and the embodiments of the present application, the technical solutions in the embodiments of the present application will be described clearly and completely. Obviously, the described embodiments are some of the embodiments of the present application but not all of the embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by a person of ordinary skill in the art without creative effort are within the scope of the present application.

[0123] The term "and / or" used in the present application is only used to describe an association relationship of associated objects, and means that three relationships can exist, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone.

[0124] The terms "first" and "second" and the like in the description and claims of the embodiments of the present application are used to distinguish different objects, and are not used to describe a specific order of the objects. For example, the first target object and the second target object are used to distinguish different target objects, and are not used to describe a specific order of the target objects.

[0125] In the embodiments of the present application, the words "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design presented as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or advantageous than other embodiments or design solutions. Rather, the use of "exemplary" or "for example" is intended to present concepts in a particular manner. The embodiments of the present application are not limited to the embodiments or design solutions presented as "exemplary" or "for example".

[0126] In the description of the embodiments of the present application, unless otherwise specified, "a plurality of" means two or more. For example, a plurality of processing units means two or more processing units; a plurality of systems means two or more systems.

[0127] In the embodiments of the present application, the modules / components shown in the frame diagram (or structure diagram or system diagram) are only one example of the present application, and an actual frame (or structure or system) can include more or fewer modules / components than those shown in the diagram or can have a different configuration of components. In addition, the various components / modules shown in the diagram can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits.

[0128] First, the related terms involved in the embodiments of the present application are described:

[0129] Raw data of the radar: refers to the data collected by the radar.

[0130] Exemplarily, the raw data of the radar can include header information and measurement data of multiple transmissions. The header information can include a timestamp and the like, and the measurement data of each transmission can include distance / radius, signal intensity, azimuth angle, elevation, and the like. Embodiments of the present application do not limit this.

[0131] One transmission: the process of transmitting all laser beams and receiving reflections is called one transmission. For example, one transmission of a 32-line radar can refer to the process of transmitting 32 laser beams and receiving 32 reflections.

[0132] Exemplarily, after collecting the raw data of the radar, the raw data of the radar can be stored in the message format supported by the radar. Exemplarily, one frame of raw data of the radar can be stored as one or more messages. One frame of raw data of the radar refers to the data collected by one scan of the radar. The angle corresponding to “one scan” can refer to the field of view (FOV) of the radar. For example, if the FOV is 180°, the angle corresponding to one scan is 180°. For another example, if the FOV is 360°, the angle corresponding to one scan is 360°, and the like.

[0133] Exemplarily, when the radar needs to output the raw data of the radar, the message data can be encapsulated according to the User Datagram Protocol (UDP) to obtain a UDP datagram; then, the radar can output the UDP datagram. The message data can be obtained by analyzing and arranging the UDP datagram.

[0134] Exemplarily, when the raw data of the radar needs to be used (such as intelligent driving, model training, problem analysis, and the like), the raw data of the radar can be converted into point cloud data of the radar; then, the point cloud data of the radar can be analyzed and operated.

[0135] Point cloud of the radar: the point cloud data of the radar can be obtained by inputting the raw data of the radar into a calibration algorithm (or referred to as a point cloud conversion algorithm) and performing calibration (or referred to as conversion). The point cloud data of the radar contains rich information, such as three-dimensional coordinates (x, y, z) of points, color, signal intensity, and the like. The three-dimensional coordinates (x, y, z) can be converted from distance / radius and angle (including azimuth angle and elevation).

[0136] Exemplarily, the radar involved in the embodiments of the present application can include, but is not limited to, a microwave radar, an infrared radar, an ultrasonic radar, a laser radar (Light Detection and Ranging, LiDAR), a millimeter wave radar, and the like. The present application takes the laser radar as an example for illustration.

[0137] FIGS. 1A-1C are schematic diagrams of different application scenarios provided by the embodiments of the present application.

[0138] FIG. 1A shows an application scenario of model training. Specifically, the vehicle-mounted system reads the raw data of the radar; then, the raw data of the radar is uploaded to the server. After that, the server first converts the raw data of the radar into the point cloud data of the radar; then, the server uses the point cloud data of the radar to perform model training on a neural network model (such as neural network model 1, neural network model 2, …, neural network model N (N is a positive integer)). In this way, the time and cost of collecting training data can be saved, and the efficiency of model training can be improved.

[0139] The embodiments of the present application do not limit the number of parameters and the structure of the neural network model. For example, the neural network model can be a large model. The large model can refer to a machine learning model with large-scale parameters and complex computational structure. These models are usually constructed by deep neural networks and have tens of billions or even hundreds of billions of parameters. The purpose of designing the large model is to improve the expression ability and prediction performance of the model, and to be able to handle more complex tasks and data; for example, a multimodal large language model (MM-LLM) and the like.

[0140] FIG. 1B shows an application scenario of scene reconstruction (or referred to as environment scene). Specifically, the vehicle-mounted system reads the raw data of the radar; then, the raw data of the radar is uploaded to the server. After that, the server first converts the raw data of the radar into the point cloud data of the radar; then, the server uses the point cloud data of the radar to perform scene reconstruction, and obtains the scene reconstruction result of the vehicle driving environment (such as the 3D scene of a parking lot, the 3D scene of a residential area, etc.). In this way, the time and cost of collecting data required for scene reconstruction can be saved, and the efficiency of scene reconstruction can be improved.

[0141] FIG. 1C shows an application scenario of problem analysis. Specifically, after completing intelligent driving (which includes intelligent cruise and intelligent parking), system freezing during intelligent driving, or after the intelligent driving system is taken over by a human, the vehicle (or vehicle-mounted system) can upload intelligent driving data (which includes sensor data (such as raw data of a radar, images, etc.), vehicle control signals, etc.) to a server. Alternatively, the vehicle-mounted system uploads intelligent driving data to the server in response to user operations (such as an operation of uploading intelligent driving data, an intelligent driving feedback operation, etc.). Then, the server performs problem analysis based on the intelligent driving data to obtain an analysis result; subsequently, the server can determine an optimization / solution according to the analysis result. For raw data of a radar, the server first converts the raw data of the radar into point cloud data of the radar, and then performs problem analysis based on the point cloud data of the radar and other intelligent driving data to obtain an analysis result. For example, intelligent cruise problem analysis is performed based on the point cloud data of the radar and other intelligent driving data to determine problems and causes in the intelligent cruise process, etc.; for another example, intelligent parking problem analysis is performed based on the point cloud data of the radar and other intelligent driving data to determine problems and causes in the intelligent parking process, etc.; then, the intelligent driving algorithm can be optimized according to the problems and causes in the intelligent cruise / intelligent parking process; in this way, the intelligent driving algorithm can be continuously optimized to improve the reliability and safety of intelligent driving.

[0142] The raw data of the radar of the embodiments of the present application can also be applied to other scenarios.

[0143] Exemplarily, the specific implementation form of the server in the embodiments of the present application can be a cloud server, a physical (independent) server, a cluster server, etc.

[0144] Exemplarily, the vehicle in the embodiments of the present application can be replaced by other devices equipped with a radar, such as a flight device (such as a drone), a robot, etc.

[0145] FIG. 2A is a schematic diagram of a raw data transmission framework 200 of a radar provided by the embodiments of the present application.

[0146] Referring to FIG. 2A, exemplarily, the raw data transmission framework 200 of the radar can include a first device 210, a second device 220, and a wired or wireless communication device 230.

[0147] Exemplarily, the first device 210 can be a vehicle, a flight device, a robot, etc. The first device 210 can also be referred to as an encoding end.

[0148] Exemplarily, the first device 210 can include an encoder 211, a packaging module 212 and a sending module 213. It should be noted that the packaging module 212 can be integrated in the encoder 211, or can be independent of the encoder 211.

[0149] Exemplarily, the second device 220 can be a server, a terminal device or the like. The second device 220 can also be referred to as a decoding end.

[0150] Exemplarily, the second device 220 can include a decoder 221, an unpackaging module 222 and a receiving module 223. Exemplarily, the transmission process of the raw data of the radar can be as follows: after the first device 210 obtains the raw data of the radar, the raw data of the radar is input to the encoder 211, the raw data of the radar is encoded by the encoder 211, and the code stream is output to the packaging module 212. Then, the packaging module 212 encapsulates the code stream according to the transmission protocol, obtains the encapsulated code stream, and outputs the encapsulated code stream to the sending module 213. Subsequently, the sending module 213 sends the encapsulated code stream to the second device 220 through the wired or wireless communication device 230.

[0151] After the receiving module 223 of the second device 220 receives the encapsulated code stream, the encapsulated code stream is output to the unpackaging module 222, and the unpackaging module 222 encapsulates the encapsulated code stream according to the transmission protocol, obtains the code stream and outputs the code stream to the decoder 221. Then, the decoder 221 decodes the code stream to obtain the reconstructed data of the radar.

[0152] It should be noted that the reconstructed data of the radar output by the decoder 221 can include at least one of the reconstructed data of the raw data of the radar or the reconstructed data of the point cloud data of the radar.

[0153] FIG. 2B is a structural schematic diagram of an encoder 211 provided by an embodiment of the present application.

[0154] Referring to FIG. 2B, exemplarily, the encoder 211 can include a preprocessing module 2111, a prediction module 2112 and an entropy encoding module 2113.

[0155] The preprocessing module 2111 can be used for preprocessing, for example, data analysis and arrangement, block processing, quantization processing, data reorganization and the like, to output intermediate data (or referred to as preprocessed raw data).

[0156] The prediction module 2112 can be used for prediction to obtain prediction data; then, the difference between the intermediate data and the prediction data is calculated to obtain residual data and output the residual data.

[0157] The entropy encoding module 2113 can perform entropy encoding and output a bitstream. The embodiments of the present application do not limit the entropy encoding algorithm used by the entropy encoding module 2113, which may, for example, include but is not limited to a Finite State Entropy (FSE) encoding algorithm, an Asymmetric Numeral Systems (ANS) encoding algorithm, an arithmetic encoding algorithm, a Huffman encoding algorithm, and the like.

[0158] FIG. 2C is a structural schematic diagram of a decoder 221 provided by an embodiment of the present application.

[0159] Referring to FIG. 2C, the decoder 221 may, for example, include an entropy decoding module 2211, a prediction module 2212, and a post-processing module 2213.

[0160] The entropy decoding module 2211 may, for example, perform entropy decoding and output reconstructed data of residual data. It should be noted that the reconstructed data of residual data and the residual data may be the same or different. The entropy decoding algorithm used by the entropy decoding module 2211 corresponds to the entropy encoding algorithm used by the entropy encoding module 2113.

[0161] The prediction module 2212 may, for example, predict to obtain prediction data, and then calculate the sum of the reconstructed data of residual data and the prediction data to obtain reconstructed data of intermediate data (or reconstructed data of predicted original data) and output the same.

[0162] The post-processing module 2213 may, for example, perform post-processing, such as splicing processing, inverse quantization processing, data reconstruction, and the like, on the reconstructed data of intermediate data and output reconstructed data of the radar.

[0163] The encoding and decoding processes are described below.

[0164] FIG. 3A is a schematic diagram of an encoding process 300 provided by an embodiment of the present application. The encoding process 300 can be performed by the above-described encoder 211.

[0165] S301, original data of a radar is obtained, the original data of the radar including original values of multiple attributes.

[0166] The original data of the radar obtained by the encoder 211 can be a UDP datagram or message data. When the original data obtained by the encoder 211 is a UDP datagram, the preprocessing module 2111 of the encoder 211 can parse and arrange the UDP datagram to obtain message data, and then perform the subsequent S302-S303. When the original data obtained by the encoder 211 is message data, the subsequent S302-S303 can be directly performed.

[0167] FIG. 3B is a schematic diagram of a format of message data according to an embodiment of the present application.

[0168] As shown in FIG. 3B, the message data can include header information (may also be referred to as additional information) and measurement data.

[0169] The header information can include a global positioning system (GPS) timestamp, a return, coordinated universal time, and the like; the header information can also include other information.

[0170] The measurement data can include a plurality of (10 are shown in the figure) Blocks. Each Block corresponds to one emission of the laser radar, and one Block includes raw values of various attributes corresponding to a plurality of (40 are shown in the figure) modules (that is, laser emission modules); the attributes can include, but are not limited to, azimuth angle, elevation, radius / distance, and intensity, and the like. The raw values of various attributes received by each module in the plurality of modules include raw values of various attributes received for 1 laser in one emission process.

[0171] It should be noted that when the 40-line laser radar includes only 20 laser emission modules, each laser emission module can emit 2 lines of laser in one emission process; in this way, one Block can include raw values of various attributes received by 20 modules, and the raw values of various attributes received by each module in the 20 modules include raw values of various attributes received for 2 lasers in one emission process.

[0172] The plurality of attributes included in the raw data of the radar can refer to a plurality of attributes of different types (or said types, or said modalities).

[0173] S302, determining first prediction values of the plurality of attributes.

[0174] The encoder can predict the plurality of attributes to obtain the first prediction values of the plurality of attributes.

[0175] Exemplarily, the encoder can predict the plurality of attributes based on a second type of prediction mode to obtain the first prediction values of the plurality of attributes. The second type of prediction mode can be a spatial prediction mode or a temporal prediction mode. The spatial prediction mode can also be referred to as an intra prediction mode, and the temporal prediction mode can be referred to as an inter prediction mode.

[0176] Specifically, for each of the plurality of attributes, the second type of prediction mode can be used to predict the attribute to obtain a first prediction value of the attribute. For part of the plurality of attributes, the second type of prediction mode can also be used to predict the part of the attributes to obtain a first prediction value of the part of the attributes. That is, obtaining the first prediction values of the plurality of attributes includes obtaining the first prediction value corresponding to each of the plurality of attributes, and can also include obtaining the first prediction value corresponding to each of the part of the plurality of attributes.

[0177] In S303, a second prediction value of the plurality of attributes is determined based on the target prediction mode and the first prediction values of the plurality of attributes; wherein the target prediction mode corresponds to a distribution characteristic of the raw data of the radar.

[0178] Since the distribution characteristics (or distribution rules) of the raw data of the radar collected by different radars are different, a plurality of first type of prediction modes can be set in advance according to the distribution characteristics of the raw data of the radar collected by different radars; wherein one first type of prediction mode corresponds to one distribution characteristic. As an example, the first type of prediction mode can be a cross-modal prediction mode, that is, a prediction mode for predicting one or more attributes based on one or more attributes.

[0179] It should be understood that there can be two different radars collecting the raw data of the radar with the same distribution characteristics. In this case, one first type of prediction mode can be determined according to the distribution characteristics of the raw data of the radar collected by the two different radars.

[0180] The distribution characteristics of the raw data of the radar can include the relationship between the original values of different attributes in the raw data of the radar; for example, the distribution characteristics of the raw data of the radar can be that when the original value of the signal strength is 0, the original value of the distance is 0. For another example, the distribution characteristics of the raw data of the radar can be that when the original value of the passive light intensity is 0, the original value of the active light intensity is 0; when the original value of the active light intensity is 0, the original value of the distance is 0.

[0181] One of the first type of prediction modes corresponding to the distribution characteristics of the raw data of the radar obtained in S302 can be selected as the target prediction mode from the plurality of first type of prediction modes. Then, the second prediction value of each of the plurality of attributes can be determined based on the target prediction mode and the first prediction values of the plurality of attributes.

[0182] It should be noted that in one possible manner, the encoder can select one first type prediction mode corresponding to the distribution feature of the original radar data obtained in S302 as the target prediction mode from the plurality of first type prediction modes in the encoding process. In one possible manner, the encoder can pre-select one first type prediction mode corresponding to the distribution feature of the original radar data obtained in S302 as the target prediction mode from the plurality of first type prediction modes; in this way, the encoder directly determines the second prediction values of the plurality of attributes based on the target prediction mode and the first prediction values of the plurality of attributes in the encoding process, thereby saving the time for selecting the target prediction mode.

[0183] In one possible manner, the second prediction values of the plurality of attributes can be determined based on the prediction manner indicated by the target prediction mode and the first prediction values of the plurality of attributes; the specific process is described later.

[0184] In one possible manner, the second prediction values of the plurality of attributes can be obtained by performing operations based on the mode identification information of the target prediction mode and the first prediction values of the plurality of attributes; the specific process is described later.

[0185] S304, encode the mode identification information and the residual values of the plurality of attributes to obtain a bitstream, the mode identification information indicating the target prediction mode, and for each attribute of the plurality of attributes, the residual value of the attribute being the difference between the original value of the attribute and the second prediction value of the attribute.

[0186] A mode identification information can be set for each first type prediction mode in advance; in this way, the mode identification information of the target prediction mode can be encoded in the encoding process. Specifically, the entropy encoding module 2113 can entropy encode the mode identification information of the target prediction mode, or not entropy encode the mode identification information of the target prediction mode but directly write the mode identification information of the target prediction mode into the bitstream. The entropy encoding manner of the mode identification information of the target prediction mode is not limited in the present application.

[0187] For each attribute of the plurality of attributes, the prediction module 2112 can calculate the difference between the original value of the attribute and the second prediction value of the attribute to obtain the residual value of the attribute; then, the entropy encoding module 2113 can entropy encode the residual value of the attribute.

[0188] The encoder can encode the mode identification information of the target prediction mode first, and then encode the residual values of the multiple attributes; in this way, the decoding end can first decode the mode identification information of the target prediction mode, and then determine the second prediction values of the multiple attributes based on the first prediction mode corresponding to the mode identification information. The encoding of the residual values of the multiple attributes can be the encoding of the residual values of all attributes in the multiple attributes, or the encoding of the residual values of part of the attributes in the multiple attributes, and the part of the attributes has the corresponding first prediction values.

[0189] It should be noted that the mode identification information can be regarded as global information (or regarded as metadata of the radar), that is, the original data of multiple frames of radar can be encoded after the mode identification information is encoded once (that is, the original data of each frame of radar in the original data of multiple frames of radar includes residual values of multiple attributes).

[0190] In this way, the prediction values (that is, the second prediction values) used to calculate the residual values of the multiple attributes are more accurate (that is, closer to the original values); accordingly, the residual values determined based on the second prediction values of the attributes and the original values are smaller, which can make the distribution of the residual values more concentrated, and thus the code rate required for encoding the residual values of the attributes can be smaller, thereby reducing the code rate overhead.

[0191] Secondly, the encoding end transmits the identification information of the target prediction mode to the decoding end by carrying the mode identification information of the target prediction mode in the code stream, so that the decoding end can also use the same target prediction mode as the encoding end for prediction, ensuring the accuracy of decoding; in this way, the decoding end can also decode the original data of the radar with different distribution characteristics.

[0192] FIG. 3C is a structure diagram of a code stream provided by an embodiment of the present application.

[0193] In FIGS. 3C(1) and 3C(2), the code stream includes the mode identification information and the encoded data of the original data of X (X is a positive integer) frames of radar, and the mode identification information is arranged before the encoded data of the original data of the X frames of radar. The code stream can also include other information such as configuration parameters (such as prediction method, quantization parameter, information arrangement mode), which is not limited by the present application. Among them, the configuration parameters can be arranged before the mode identification information.

[0194] In a possible manner, the encoded data of the original data of X frames of radar in the code stream is arranged in units of frames, as shown in FIG. 3C(1): the encoded data of the original data of the 2nd frame of radar is arranged after the encoded data of the original data of the 1st frame of radar, and the encoded data of the original data of the 3rd frame of radar is arranged after the encoded data of the original data of the 2nd frame of radar.

[0195] The encoded data of the original data of the 1st frame radar can include encoded data of multiple attributes, such as encoded data of a 1st frame distance, encoded data of a 1st frame signal strength, and the like (the encoded data of the original data of the 1st frame radar can also include encoded data of 1st frame header information, which is not shown in FIG. 3C(1)).

[0196] The encoded data of the 1st frame distance can be obtained by encoding a residual value of the 1st frame distance (or referred to as encoded data of the residual value of the 1st frame distance, or referred to as encoded residual value of the 1st frame distance), the encoded data of the 1st frame signal strength can be obtained by encoding a residual value of the 1st frame signal strength (or referred to as encoded data of the residual value of the 1st frame signal strength, or referred to as encoded residual value of the 1st frame signal strength), and the like.

[0197] The embodiments of the present application do not limit the arrangement order of the encoded data of various attributes in the code stream.

[0198] In a possible manner, the encoded data of the original data of X frames of radar in the code stream is arranged in units of attributes, as shown in FIG. 3C(2): the encoded data of the 1st frame distance, the encoded data of the 2nd frame distance, and the encoded data of the Xth frame distance are arranged in sequence; after the encoded data of the Xth frame distance, the encoded data of the 1st frame signal strength, the encoded data of the 2nd frame signal strength, and the encoded data of the Xth frame signal strength are arranged in sequence. Further, the encoded data of the 1st frame header information, the encoded data of the 2nd frame header information, and the encoded data of the Xth frame header information can also be arranged in sequence, which is not shown in FIG. 3C(2).

[0199] Optionally, before S302 is performed, the original data of the radar can be arranged into a matrix.

[0200] It should be noted that arranging the original data of the radar into a matrix refers to arranging the original values of multiple attributes of the radar into a matrix, and does not involve header information. The following is described by taking arranging the original data of the radar included in a message data into a matrix as an example.

[0201] In a possible manner, the original data of the radar can be arranged into a matrix according to a scanning manner of the radar.

[0202] Exemplarily, the original data of the radar can be arranged into a matrix (i.e., data reorganization) by the preprocessing module 2111 of the encoder 211. The size of the matrix can be represented as C*H*W, where C is the number of channels, H is the height of the matrix, and W is the width of the matrix; or in other words, the matrix can include C sub-matrices (one channel of the matrix is one sub-matrix), and each sub-matrix has a height of H and a width of W.

[0203] Exemplarily, the original values of various properties received by one module for one laser in one transmission process can be regarded as one data group; thus, the measurement data of one transmission can include multiple data groups.

[0204] Exemplarily, the original values of the same property in multiple data groups of multiple transmission processes can be arranged into R sub-matrices according to the scanning mode of the radar; wherein R is a positive integer less than C.

[0205] Taking FIG. 3B as an example, the message data in FIG. 3B includes the measurement data of 10 transmission processes, the measurement data of one transmission process includes 40 data groups, and the measurement data of 10 transmission processes includes 400 data groups. Specifically, the original values of one property can be selected from the 400 data groups; then, the 400 original values of the selected property are arranged into R sub-matrices according to the scanning mode of the radar. For example, the original values of the active light intensity can be selected from the 400 data groups, and 400 original values of the active light intensity can be obtained; then, the 400 original values of the active light intensity can be arranged into R sub-matrices with a height of 40 and a width of 10 according to the scanning mode of the radar. For another example, the original values of the distance can be selected from the 400 data groups, and 400 original values of the distance can be obtained; then, the 400 original values of the distance can be arranged into R sub-matrices with a height of 40 and a width of 10 according to the scanning mode of the radar. For another example, the original values of the passive light intensity can be selected from the 400 data groups, and 400 original values of the passive light intensity can be obtained; then, the 400 original values of the passive light intensity can be arranged into R sub-matrices with a height of 40 and a width of 10 according to the scanning mode of the radar.

[0206] R can be determined according to the byte length occupied by the original values of the property and the byte length configured for each position of the sub-matrix. Assuming that the byte length configured for each position of the sub-matrix is 8 Bytes, if the original value of the active light intensity is 8 Bytes, the 400 original values of the active light intensity can be arranged into one sub-matrix with a height of 40 and a width of 10 according to the scanning mode of the radar. If the original value of the distance is 16 Bytes, the 400 original values of the distance can be arranged into two sub-matrices with a height of 40 and a width of 10 according to the scanning mode of the radar. If the original value of the passive light intensity is 8 Bytes, the 400 original values of the passive light intensity can be arranged into one sub-matrix with a height of 40 and a width of 10 according to the scanning mode of the radar.

[0207] The following takes the scanning mode of the radar as an example, i.e., scanning from top to bottom and from left to right, to illustrate the process of arranging the original data of the radar into a matrix.

[0208] Suppose the number of laser strips emitted by the radar is denoted by X1 (X1 is a positive integer), and the number of Blocks included in the message data is denoted by X2 (X2 is a positive integer). Specifically, the original value of the attribute A of the first laser strip of each of the first Block to the X2th Block can be arranged from left to right in turn to obtain the first row of channel i (i.e., the i-th submatrix), i being a positive integer less than or less than C; the original values of the attribute A of the first laser strip to the 40th laser strip in the first Block can be arranged from top to bottom to obtain the first column of channel i. In this way, other rows or other columns of channel i are generated.

[0209] FIG. 3D is a schematic diagram of a matrix provided by an embodiment of the present application.

[0210] Suppose the number of laser strips emitted by the radar is X1 = 40, and the number of Blocks included in the message data is X2 = 10, and the configured byte length of each position of each submatrix is 8 bytes.

[0211] Exemplarily, the original value (occupying 8 bytes) of the active light intensity of the first laser strip of each of the first Block to the 10th Block can be arranged from left to right in turn to obtain the first row of channel 1 (i.e., the first submatrix); the original values of the active light intensity of the first laser strip to the 40th laser strip in the first Block can be arranged from top to bottom to obtain the first column of channel 1, and so on. In FIG. 3D, the first row and the first column of channel 1 correspond to the original value of the active light intensity of the first laser strip in the first Block, the 40th row and the 10th column of channel 1 correspond to the original value of the active light intensity of the 40th laser strip in the 10th Block, and the original values of the attributes corresponding to other positions of channel 1 are generated in this way.

[0212] Exemplarily, the high 64 bits (occupying 8 bytes) of the original value (occupying 16 bytes, a total of 128 bits) of the distance of the first laser strip of each of the first Block to the 10th Block can be arranged from left to right in turn to obtain the first row of channel 2 (i.e., the second submatrix); the high 64 bits of the original value of the distance of the first laser strip to the 40th laser strip in the first Block can be arranged from top to bottom to obtain the first column of channel 2, and so on. In FIG. 3D, the first row and the first column of channel 2 correspond to the high 64 bits of the original value of the distance of the first laser strip in the first Block, and the 40th row and the 10th column of channel 2 correspond to the high 64 bits of the original value of the distance of the 40th laser strip in the 10th Block; the original values of the attributes corresponding to other positions of channel 2 are generated in this way.

[0213] For example, the low 64 bits of the original value of the distance of the first laser in each of the first to tenth Blocks can be arranged from left to right in sequence to obtain the first row of channel 3 (i.e., submatrix 3); the low 64 bits of the original value of the distance of the first to fortieth lasers in the first Block can be arranged from top to bottom to obtain the first column of channel 3, and so on. In FIG. 3D, the low 64 bits of the original value of the distance of the first laser in the first Block is in the first row and the first column of channel 3, and the low 64 bits of the original value of the distance of the fortieth laser in the tenth Block is in the fortieth row and the tenth column of channel 3; the original values of the other properties in channel 3 are arranged in a similar manner.

[0214] For example, the original value of the passive light intensity of the first laser in each of the first to tenth Blocks (occupying 8 bytes) can be arranged from left to right in sequence to obtain the first row of channel 4 (i.e., submatrix 4); the original value of the passive light intensity of the first to fortieth lasers in the first Block can be arranged from top to bottom to obtain the first column of channel 4, and so on. In FIG. 3D, the original value of the passive light intensity of the first laser in the first Block is in the first row and the first column of channel 4, and the original value of the passive light intensity of the fortieth laser in the tenth Block is in the fortieth row and the tenth column of channel 4; the original values of the other properties in channel 4 are arranged in a similar manner.

[0215] The original values of other properties can also be arranged into one or more submatrices in the manner shown in FIG. 3D for the original values of the active light intensity, the distance, or the passive light intensity.

[0216] In one possible manner, the original data of the radar can be arranged into a matrix according to the scanning angle of the radar.

[0217] For example, the original values of the same property in multiple data groups of multiple transmissions can be arranged into R submatrices according to the scanning angle; wherein one data group corresponds to one set of scanning angles.

[0218] For example, the original value of the property arranged in position (x1, y1) in a submatrix corresponds to a pitch angle that is greater than the pitch angle corresponding to the original value of the property arranged in position (x2, y1); and the azimuth angle corresponding to the original value of the property arranged in position (x1, y1) is less than the azimuth angle corresponding to the original value of the property arranged in position (x1, y2). The manner of arranging the original values of the same property in multiple data groups of multiple transmissions into R submatrices according to the scanning angle can include multiple manners.

[0219] In a possible implementation, before arranging the raw data of the radar into a matrix, the preprocessing module 2111 can also quantize the raw value of each attribute in the raw data to obtain a quantized value of each attribute.

[0220] In a possible implementation, after arranging the raw data of the radar into a matrix, the preprocessing module 2111 can also quantize the raw value of each position in the matrix.

[0221] Optionally, after obtaining the matrix and before S302, the matrix can also be divided into a plurality of data blocks. The preprocessing module 2111 can also perform block processing on the matrix to obtain a plurality of data blocks; wherein the number of channels of each data block is C, the height of the data block is h1 (h1 is a positive integer less than H), the width of the data block is w1 (w1 is a positive integer less than W), or in other words, each data block includes C sub-blocks (one channel of the data block is one sub-block), the height of the sub-block is h1, and the width of the sub-block is w1. Then, each data block is encoded in turn, that is, S302-S303 are executed, to obtain a second prediction value of each data block.

[0222] The implementation of S302 can be that a first prediction value of the current data block is obtained by predicting the current data block; wherein each attribute can correspond to one or more channels of the current data block. For one channel (i.e., one sub-block) of the current data block, a position is selected from the channel in turn as a current position according to the order in FIG. 3E; then, the first prediction value of the current position is obtained by predicting the current position.

[0223] The implementation of S303 can be that a second prediction value of the current data block is determined based on the target prediction mode and the first prediction value of the current data block. For one channel of the current data block, a position is selected from the channel in turn as a current position according to the order in FIG. 3E; then, the second prediction value of the current position is determined based on the target prediction mode and the first prediction value of the current data block.

[0224] The implementation of “encoding the residual values of the plurality of attributes” in S304 can be that the residual value of the current data block is encoded. For one channel of the current data block, a position is selected from the channel in turn as a current position according to the order in FIG. 3E; then, a difference between the raw value and the second prediction value of the current position is determined as the residual value of the current position; subsequently, the residual value of the current position is encoded.

[0225] After the mode identification information is encoded, the residual values of the plurality of data blocks (which can refer to the plurality of data blocks included in the plurality of matrices) can be encoded.

[0226] FIG. 4 is a schematic diagram of a decoding process 400 provided by an embodiment of the present application. The decoding process 400 is performed by the decoder 221, and the decoding process 400 corresponds to the encoding process 300.

[0227] S401, receiving a code stream, the code stream including encoding data of residual values of multiple attributes in original data of a radar and mode identification information, the mode identification information indicating a target prediction mode corresponding to a distribution characteristic of the original data of the radar.

[0228] S402, decoding the code stream to obtain the mode identification information and reconstructed values of the residual values of the multiple attributes.

[0229] For example, the decoder 221 can first decode (or parse) configuration parameters from the code stream; the configuration parameters can include a position of the mode identification information and a byte length occupied by the mode identification information, etc.; then, the mode identification information can be decoded from the code stream according to the position of the mode identification information and the byte length occupied by the mode identification information, etc.

[0230] One implementation manner of decoding the mode identification information from the code stream can be reading the mode identification information from the code stream. Another implementation manner of decoding the mode identification information from the code stream can be reading encoding data of the mode identification information from the code stream, and entropy decoding the encoding data of the mode identification information to obtain the mode identification information.

[0231] For the convenience of subsequent distinction, the mode identification information of the target prediction mode is referred to as first mode identification information.

[0232] The decoder 221 can start to read each bit from the code stream from a bit position after the mode identification information (i.e., the first mode identification information), and read until an end identifier is read; at this time, the encoding data of the residual values of one attribute received by the module 1 in the Block 1 can be obtained. Then, the encoding data of the residual values of the attribute can be entropy decoded to obtain reconstructed values of the residual values of the attribute. Subsequently, reading each bit from the code stream can start from a bit position after the end identifier of the last reading, and read until an end identifier is read; at this time, the encoding data of the residual values of another attribute received by the module 1 in the Block 1 can be obtained; then, the encoding data of the residual values of the attribute can be entropy decoded to obtain reconstructed values of the residual values of the attribute; and so on.

[0233] In a possible solution, the configuration parameter can further include a position corresponding to the encoded data of the residual value of the attribute received by each module in each Block and a byte length occupied; in this way, the encoded data of the residual value of the attribute received by each module in each Block can be read from the bitstream according to the position corresponding to the encoded data of the residual value of the attribute received by each module in each Block and the byte length occupied; then, the encoded data of the residual value of the attribute received by each module in each Block can be entropy decoded to obtain the reconstructed value of the residual value of the attribute received by each module in each Block. That is, the embodiments of the present application do not limit the type of information contained in the configuration parameter, nor the manner of reading the mode identification information from the bitstream and reading the encoded residual value of each attribute received by each module in each Block.

[0234] It should be understood that the present application can also first read the encoded data of the residual value of all attributes from the bitstream; then, the encoded data of the residual value of all attributes can be entropy decoded to obtain the reconstructed value of the residual value of all attributes.

[0235] S403, determining the first prediction value of each attribute in the plurality of attributes.

[0236] In a possible solution, the encoder and the decoder can agree on the second prediction mode in advance, so that the decoder can use the same second prediction mode as the encoder to predict each attribute in the plurality of attributes to obtain the first prediction value of each attribute in the plurality of attributes.

[0237] In a possible solution, the bitstream can further carry mode identification information (hereinafter referred to as second mode identification information) for indicating the second prediction mode; in this way, the decoder can also decode the second mode identification information from the bitstream; then, the second prediction mode indicated by the second mode identification information is used to predict each attribute in the plurality of attributes to obtain the first prediction value of each attribute in the plurality of attributes.

[0238] S404, determining the second prediction value of each attribute in the plurality of attributes based on the mode identification information and the first prediction value of the plurality of attributes.

[0239] In a possible solution, the second prediction value of each attribute in the plurality of attributes can be determined based on the prediction mode indicated by the target prediction mode and the first prediction value of the plurality of attributes; the specific process is described below.

[0240] In a possible solution, the second prediction value of each attribute in the plurality of attributes can be obtained by performing operation based on the mode identification information of the target prediction mode and the first prediction value of the plurality of attributes; the specific process is described below.

[0241] S405, determine the reconstructed value of the plurality of attributes based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of the plurality of attributes.

[0242] For each of the plurality of attributes, the second prediction value of the attribute can be added to the reconstructed value of the residual value of the attribute to obtain the reconstructed value of the attribute.

[0243] Subsequently, the reconstructed data of the radar can be obtained by processing the reconstructed values of the plurality of attributes. The reconstructed data of the radar can include at least one of the reconstructed data of the original data of the radar or the reconstructed data of the point cloud data of the radar.

[0244] In the case of encoding a plurality of data blocks at the encoding end, S402-S405 can be decoded in units of data blocks. S402 can be decoding a code stream to obtain the reconstructed value of the residual value of the current data block; S403 can be predicting the current data block to obtain the first prediction value of the current data block; S403 can be determining the second prediction value of the current data block based on the mode identification information and the first prediction value of the current data block; S405 can be reconstructing the current data block based on the second prediction value of the current data block and the reconstructed value of the residual value of the current data block to obtain the reconstructed current data block. Subsequently, the reconstructed data of the radar can be generated based on a matrix composed of a plurality of reconstructed data blocks.

[0245] In one possible manner, the post-processing module 2213 can perform matrix reorganization on all the reconstructed data blocks to obtain a matrix (which can be referred to as a reconstructed matrix). For example, the configuration parameters of the code stream can further include a blocking manner, so that the post-processing module 2213 can determine the position of each reconstructed data block based on the blocking manner; and then perform matrix reorganization on all the reconstructed data blocks based on the positions of all the reconstructed data blocks to obtain the matrix. The encoding end can synchronize the blocking manner with the decoding end in advance, so that the blocking manner does not need to be carried in the code stream.

[0246] In one possible manner, after the prediction module 2212 obtains the reconstructed current data block, the position of the current data block can be determined according to the blocking manner; and then the reconstructed current data block is stored according to the position of the current data block, so that the reconstructed matrix can be obtained after the prediction module 2212 obtains all the reconstructed data blocks.

[0247] Subsequently, data is read from the reconstructed matrix, and the reconstructed data of the radar is generated by using the data read from the reconstructed matrix. For example, the data can be read from the reconstructed matrix according to the scanning manner or the scanning angle of the radar, and the specific manner of reading data from the reconstructed matrix corresponds to the encoding end.

[0248] The following exemplary shows four first-type prediction modes:

[0249] First-type prediction mode 1: the second attribute is the reference attribute of the first attribute, and the second prediction value of the first attribute is 0 in the case that the reconstructed value of the second attribute is 0.

[0250] Exemplarily, the distribution feature corresponding to the first-type prediction mode 1 can be that the original value of the first attribute is 0 in the case that the original value of the second attribute is 0.

[0251] Suppose that the second attribute corresponds to channel 1, the first attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4; then the first-type prediction mode 1 can be understood as that the second prediction value of the first attribute of channel 2 and channel 3 is 0 in the case that the reconstructed value of the second attribute of channel 1 is 0; the second prediction value of the third attribute of channel 4 is the same as the first prediction value; and the second prediction value of the second attribute of channel 1 is the same as the first prediction value.

[0252] For example, the second attribute is active light intensity, the first attribute is distance, and the third attribute is passive light intensity. That is, the distribution feature corresponding to the first-type prediction mode 1 can be that the original value of the distance is 0 in the case that the original value of the active light intensity is 0.

[0253] First-type prediction mode 2: the third attribute is the reference attribute of the second attribute, and the second attribute is the reference attribute of the first attribute; the second prediction value of the second attribute is 0 in the case that the reconstructed value of the third attribute is 0; and the second prediction value of the first attribute is 0 in the case that the reconstructed value of the second attribute is 0.

[0254] Exemplarily, the distribution feature corresponding to the first-type prediction mode 2 is that the original value of the second attribute is 0 in the case that the original value of the third attribute is 0; and the original value of the first attribute is 0 in the case that the original value of the second attribute is 0.

[0255] Suppose that the third attribute corresponds to channel 1, the second attribute corresponds to channel 2, and the first attribute corresponds to channel 3 and channel 4; then the first-type prediction mode 2 can be understood as that the second prediction value of the second attribute of channel 2 is 0 in the case that the reconstructed value of the third attribute of channel 1 is 0; and the second prediction value of the first attribute of channel 3 and channel 4 is 0 in the case that the reconstructed value of the second attribute of channel 2 is 0.

[0256] For example, the first attribute is distance, the second attribute is active light intensity, and the third attribute is passive light intensity. That is, the distribution feature corresponding to the first-type prediction mode 2 is that the original value of the active light intensity is 0 in the case that the original value of the passive light intensity is 0; and the original value of the distance is 0 in the case that the original value of the active light intensity is 0.

[0257] The second prediction value of each of the plurality of attributes is equal to the first prediction value of the attribute.

[0258] Exemplarily, the distribution feature corresponding to the first prediction mode 3 is that the original values of the plurality of attributes are weakly or not associated.

[0259] The first prediction mode 4: the first attribute is a reference attribute of the second attribute and the third attribute; in the case that the residual value of the first attribute at the first position is greater than a threshold value, the second prediction value of the second attribute at the second position is the reconstructed value of the second attribute at the first target reference position, and the second prediction value of the third attribute at the third position is the reconstructed value of the third attribute at the second target reference position.

[0260] The first position, the second position and the third position are the same position in different channels. For example, assuming that the first attribute corresponds to channel 1, the second attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4; if the first position is (c1, x1, y1), the second position can include (c2, x1, y1) and (c3, x1, y1), and the third position can be (c4, x1, y1).

[0261] The first target reference position can refer to the position in the matrix of channel 2 and channel 3 corresponding to the intermediate reference position. The intermediate reference position refers to the position in the already encoded position of channel 1, in which the reconstructed value of the first attribute is closest to the first prediction value of the first attribute at the current position. For example, the intermediate reference position is (c1, x3, y3), and the first target reference position can include (c2, x3, y3) and (c3, x3, y3).

[0262] The second target reference position can refer to the position in the matrix of channel 4 corresponding to the intermediate reference position. For example, the intermediate reference position is (c1, x3, y3), and the second target reference position is (c4, x3, y3).

[0263] That is, the first target reference position and the second target reference position are the same position in different channels.

[0264] The distribution feature corresponding to the first prediction mode 4 is that, in the case that the residual value of the first attribute at the current position is greater than a threshold value, the second attribute at the current position is close to or identical to the reconstructed value of the second attribute at the first target reference position, and the third attribute at the current position is close to or identical to the reconstructed value of the third attribute at the second target reference position.

[0265] Assuming that the first attribute corresponds to channel 1, the second attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4, and the intermediate reference position is (c1, x3, y3); the first type of prediction mode 4 can be understood as: in the case that the residual value of the first attribute at the first position (c1, x1, y1) is greater than the threshold value, the second prediction value of the second attribute at the second position (c2, x1, y1) is equal to the reconstructed value of the second attribute at the first target reference position (c2, x3, y3), the second prediction value of the second attribute at the third position (c3, x1, y1) is equal to the reconstructed value of the second attribute at the first target reference position (c3, x3, y3), and the second prediction value of the third attribute at the fourth position (c4, x1, y1) is equal to the reconstructed value of the third attribute at the second target reference position (c4, x3, y3). For example, the first attribute is active light intensity, the second attribute is distance, and the third attribute is passive light intensity.

[0266] The following describes the encoding process when the target prediction mode is a different first type of prediction mode.

[0267] When the target prediction mode is the first type of prediction mode 1 or the first type of prediction mode 2, one possible implementation of S303 can be: determining the second prediction value of the first part of attributes based on the target prediction mode, and determining the first prediction value of the second part of attributes as the second prediction value of the second part of attributes.

[0268] One implementation of determining the second prediction value of the first part of attributes based on the target prediction mode can be: when the reconstructed value of the reference attribute corresponding to the first part of attributes is 0, determining 0 as the second prediction value of the first part of attributes.

[0269] In one possible implementation, when the target prediction mode is the first type of prediction mode 1, the first part of attributes includes the first attribute, the second part of attributes includes the second attribute, the second attribute is the reference attribute of the first attribute, and the category of the first attribute and the category of the second attribute are different. The implementation process of S303 can refer to the following encoding process 500.

[0270] In one possible implementation, when the target prediction mode is the first type of prediction mode 2, the first part of attributes includes the first attribute and the second attribute, the second part of attributes includes the third attribute, the third attribute is the reference attribute corresponding to the second attribute, the second attribute is the reference attribute corresponding to the first attribute, and the category of the first attribute, the category of the second attribute, and the category of the third attribute are all different. The implementation process of S303 can refer to the following encoding process 700.

[0271] FIG. 5 is a schematic diagram of an encoding process 500 provided by an embodiment of the present application. In the encoding process 500, the target prediction mode is the first type of prediction mode 1, and the original data of the radar includes original values of three attributes.

[0272] S501, obtaining raw data of a radar, the raw data of the radar including raw values of three attributes.

[0273] The raw data of the radar includes raw values of three attributes, which are respectively: a first attribute, a second attribute and a third attribute.

[0274] S502, predicting the three attributes to obtain a first predicted value of each of the three attributes.

[0275] Suppose the second attribute corresponds to channel 1, the first attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4, then the first predicted values of the three attributes can be represented as {r1, r2, r3, r4}, wherein r1 represents the first predicted value of the second attribute (which can include the first predicted value of the second attribute of H*W positions), r2 represents the high G (G is a positive integer, G = 8*R, R is the byte length configured for each position of the matrix) bits of the first predicted value of the first attribute (which can include the high G bits of the first predicted value of the first attribute of H*W positions), r3 represents the low G bits of the first predicted value of the first attribute (which can include the low G bits of the first predicted value of the first attribute of H*W positions), and r4 represents the first predicted value of the third attribute (which can include the first predicted value of the third attribute of H*W positions).

[0276] The above S303 can include the following S503-S507:

[0277] S503, when the target prediction mode is the first type of prediction mode 1, determining the first predicted value of the second attribute as the second predicted value of the second attribute.

[0278] After obtaining the first predicted value of the second attribute, the first predicted value of the second attribute can be determined as the second predicted value of the second attribute.

[0279] S504, judging whether the reconstructed value of the second attribute is 0.

[0280] After obtaining the second predicted value of the second attribute, the difference between the intermediate data (i.e., the preprocessed raw value) of the second attribute and the second predicted value can be calculated to obtain the residual value of the second attribute; then, the sum of the residual value of the second attribute and the second predicted value is calculated to obtain the reconstructed value of the intermediate data of the second attribute; then, the reconstructed value of the intermediate data of the second attribute is post-processed to obtain the reconstructed value of the second attribute. Subsequently, it is judged whether the reconstructed value of the second attribute is 0. When the reconstructed value of the second attribute is 0, S505 can be executed; when the reconstructed value of the second attribute is not 0, S506 can be executed.

[0281] S505, determining 0 as the second predicted value of the first attribute.

[0282] S506, determining the first prediction value of the first attribute as the second prediction value of the first attribute.

[0283] S507, determining the first prediction value of the third attribute as the second prediction value of the third attribute when the target prediction mode is the first type of prediction mode 1.

[0284] The embodiments of the present application do not limit the execution order of S503 and S507.

[0285] Suppose the first prediction values of the three attributes are {r1, r2, r3, r4}, then when the reconstructed value of the second attribute is 0, the second prediction values of the three attributes are {r1, 0, 0, r4}; when the reconstructed value of the first attribute is not 0, the second prediction values of the three attributes are {r1, r2, r3, r4}.

[0286] After S505 and S507 are executed, or after S506 and S507 are executed, S508 can be executed.

[0287] S508, encoding the mode identification information of the first type of prediction mode 1 and encoding the residual values of the multiple attributes to obtain a bitstream.

[0288] S508 can be described according to the description of S304.

[0289] Suppose the mode identification information of the first type of prediction mode 1 is "0", then the mode identification information "0" of the first type of prediction mode 1 is converted into binary representation "00" and written into the bitstream.

[0290] FIG. 6A is a schematic diagram of a decoding process 600 provided by an embodiment of the present application. The decoding process 600 corresponds to the encoding process 500.

[0291] S601, receiving a bitstream.

[0292] S602, decoding the bitstream to obtain mode identification information and reconstructed values of residual values of each attribute of the three attributes.

[0293] The mode identification information obtained by S602 is first mode identification information.

[0294] S603, predicting the three attributes to obtain first prediction values of each attribute of the three attributes.

[0295] S601-S603 can refer to the description of S401-S403.

[0296] S604, determining the first prediction value of the second attribute as the second prediction value of the second attribute when the first type of prediction mode 1 is selected as the target prediction mode from the multiple first types of prediction modes based on the mode identification information.

[0297] S605, judging whether the reconstructed value of the second attribute is 0.

[0298] The sum of the reconstructed value of the residual value of the second attribute and the second prediction value of the second attribute can be calculated to obtain intermediate data of the second attribute; then, the intermediate data of the second attribute is post-processed to obtain the reconstructed value of the second attribute. Subsequently, it is judged whether the reconstructed value of the second attribute is 0. When the reconstructed value of the second attribute is 0, S606 can be executed; when the reconstructed value of the second attribute is not 0, S607 can be executed.

[0299] S606, determining 0 as the second prediction value of the first attribute.

[0300] S607, determining the first prediction value of the first attribute as the second prediction value of the first attribute.

[0301] S608, when the first prediction mode 1 is selected as the target prediction mode from the plurality of first prediction modes based on the mode identification information, determining the first prediction value of the third attribute as the second prediction value of the third attribute.

[0302] The embodiments of the present application do not limit the execution order of S604 and S608.

[0303] After S606 and S608 are executed, or after S607 and S608 are executed, S609 can be executed.

[0304] S609, determining the reconstructed value of each attribute of the plurality of attributes based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of each attribute of the plurality of attributes.

[0305] S609 can be described as above S405.

[0306] FIG. 6B is a schematic diagram of a decoding process of a data block provided by an embodiment of the present application.

[0307] The data block in FIG. 6B includes four channels, and the data block of each channel has a height of 4 and a width of 4; the second attribute corresponds to channel 1, the first attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4. "O" is a decoded position, "P" is a to-be-decoded position, which can also be referred to as a current position, and "X" is an undecoded position.

[0308] Firstly, the position P in the channel 1 is predicted to obtain a predicted value Pre1=r1 of the position P in the channel 1 (the first predicted value); the position P in the channel 2 is predicted to obtain a predicted value Pre2=r2 of the position P in the channel 2 (the first predicted value); the position P in the channel 3 is predicted to obtain a predicted value Pre3=r3 of the position P in the channel 3 (the first predicted value); and the position P in the channel 4 is predicted to obtain a predicted value Pre4=r4 of the position P in the channel 4 (the first predicted value).

[0309] Further, the reconstructed value of the residual value of the position P in the channel 1 is decoded as Δk1, the reconstructed value of the residual value of the position P in the channel 2 is decoded as Δk2, the reconstructed value of the residual value of the position P in the channel 3 is decoded as Δk3, and the reconstructed value of the residual value of the position P in the channel 4 is decoded as Δk4.

[0310] Then, the reconstructed value of the residual value of the position P in the channel 1 is added to the first predicted value r1 of the position P in the channel 1 to obtain the reconstructed value D1 of the position P in the channel 1, i.e. D1=r1+Δk1; and the reconstructed value of the residual value of the position P in the channel 4 is added to the first predicted value r4 of the position P in the channel 4 to obtain the reconstructed value D4 of the position P in the channel 4, i.e. D4=r4+Δk4.

[0311] Subsequently, it is determined whether D1 is equal to 0.

[0312] When D1 is not equal to 0, the reconstructed value of the residual value of the position P in the channel 2 is added to the first predicted value r2 of the position P in the channel 2 to obtain the reconstructed value D2 of the position P in the channel 2, i.e. D2=r2+Δk2; and the reconstructed value of the residual value of the position P in the channel 3 is added to the first predicted value r3 of the position P in the channel 3 to obtain the reconstructed value D3 of the position P in the channel 3, i.e. D3=r3+Δk3.

[0313] When D1 is equal to 0, 0 is determined as the second predicted value of the position P in the channel 2, i.e. the predicted value Pre2 of the position P in the channel 2 is 0 (the second predicted value); and 0 is determined as the second predicted value of the position P in the channel 3, i.e. the predicted value Pre3 of the position P in the channel 3 is 0 (the second predicted value). Then, the reconstructed value D2 of the position P in the channel 2 is determined as Δk2, and the reconstructed value D3 of the position P in the channel 3 is determined as Δk3.

[0314] FIG. 7 is a schematic diagram of an encoding process 700 provided by an embodiment of the present application. In the encoding process 700, the target prediction mode is the first type of prediction mode 2; and the original data of the radar includes original values of three attributes.

[0315] S701, obtaining the original data of the radar, the original data of the radar including original values of three attributes.

[0316] S702, predicting the three attributes to obtain a first prediction value of each of the three attributes.

[0317] S701-S702 can refer to the description of S501-S502 described above.

[0318] Suppose the third attribute corresponds to channel 1, the second attribute corresponds to channel 2, and the first attribute corresponds to channel 3 and channel 4, the first prediction value of the three attributes can be represented as {r1, r2, r3, r4}, wherein r1 represents the first prediction value of the third attribute (which can include the first prediction value of the third attribute of H*W positions), r2 represents the first prediction value of the second attribute (which can include the first prediction value of the second attribute of H*W positions), r3 represents the first prediction value of the first attribute High G (G is a positive integer, G=8*R, R is the byte length configured for each position of the matrix) bits (which can include the first prediction value of the first attribute of H*W positions High G bits), and r4 represents the first prediction value of the first attribute Low G bits (which can include the first prediction value of the first attribute of H*W positions Low G bits).

[0319] The above S303 can include the following S703-S707:

[0320] S703, when the target prediction mode is the first type of prediction mode 2, the first prediction value of the third attribute is determined as the second prediction value of the third attribute.

[0321] After obtaining the first prediction value of the third attribute, the first prediction value of the third attribute can be determined as the second prediction value of the third attribute.

[0322] S704, judge whether the reconstructed value of the third attribute is 0.

[0323] S704 can refer to the description of S504 described above. When the reconstructed value of the third attribute is 0, S705 can be executed; when the reconstructed value of the third attribute is not 0, S706 can be executed.

[0324] S705, determine 0 as the second prediction value of the second attribute.

[0325] S706, determine the first prediction value of the second attribute as the second prediction value of the second attribute.

[0326] After S705 or S706 is executed, S707 can be executed.

[0327] S707, judge whether the reconstructed value of the second attribute is 0.

[0328] S707 can refer to the description of S504. When the reconstructed value of the second attribute is 0, S708 can be performed; when the reconstructed value of the second attribute is not 0, S709 can be performed.

[0329] S708, determining 0 as the second prediction value of the first attribute.

[0330] S709, determining the first prediction value of the first attribute as the second prediction value of the first attribute.

[0331] Suppose the first prediction values of the three attributes are {r1, r2, r3, r4}, when the reconstructed value of the third attribute is 0 and the reconstructed value of the second attribute is 0, the second prediction values of the three attributes are {r1, 0, 0, 0}; when the reconstructed value of the third attribute is 0 and the reconstructed value of the second attribute is not 0, the second prediction values of the three attributes are {r1, 0, r3, r4}; when the reconstructed value of the third attribute is not 0 and the reconstructed value of the second attribute is 0, the second prediction values of the three attributes are {r1, r2, 0, 0}; when the reconstructed value of the third attribute is not 0 and the reconstructed value of the second attribute is not 0, the second prediction values of the three attributes are {r1, r2, r3, r4}.

[0332] After S708 or S709 is performed, S710 can be performed.

[0333] S710, encoding the mode identification information of the first type of prediction mode 2 and the residual values of each attribute of the multiple attributes to obtain a bitstream.

[0334] S710 can refer to the description of S304.

[0335] Suppose the mode identification information of the first type of prediction mode 2 is “1”, the mode identification information “1” of the first type of prediction mode 2 is converted into binary representation “01” and written into the bitstream.

[0336] FIG. 8A is a schematic diagram of a decoding process 800 provided by an embodiment of the present application. The decoding process 800 corresponds to the encoding process 700.

[0337] S801, receiving a bitstream.

[0338] S802, decoding the bitstream to obtain the mode identification information and the reconstructed values of the residual values of each attribute of the three attributes.

[0339] The mode identification information obtained by S802 is the first mode identification information.

[0340] S803, predicting the three attributes to obtain the first prediction values of each attribute of the three attributes.

[0341] S801-S803 can refer to the description of S401-S403.

[0342] S804, when the first prediction mode 2 is selected as the target prediction mode from the plurality of first prediction modes based on the mode identification information, the first prediction value of the third attribute is determined as the second prediction value of the third attribute.

[0343] S805, judging whether the reconstructed value of the third attribute is 0.

[0344] S805 can refer to the description of S605. When the reconstructed value of the third attribute is 0, S806 can be executed; when the reconstructed value of the third attribute is not 0, S807 can be executed.

[0345] S806, determining 0 as the second prediction value of the second attribute.

[0346] S807, determining the first prediction value of the second attribute as the second prediction value of the second attribute.

[0347] After S806 or S807 is executed, S808 can be executed.

[0348] S808, judging whether the reconstructed value of the second attribute is 0.

[0349] When the reconstructed value of the second attribute is 0, S809 can be executed; when the reconstructed value of the second attribute is not 0, S810 can be executed.

[0350] S809, determining 0 as the second prediction value of the first attribute.

[0351] S810, determining the first prediction value of the first attribute as the second prediction value of the first attribute.

[0352] After S809 or S810 is executed, S811 can be executed.

[0353] S811, determining the reconstructed value of each attribute in the plurality of attributes based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of each attribute in the plurality of attributes.

[0354] S811 can refer to the description of S405.

[0355] FIG. 8B is a schematic diagram of a decoding process of a data block according to an embodiment of the present application.

[0356] The data block in FIG. 8B includes four channels, and the data block of each channel has a height of 4 and a width of 4. The third attribute corresponds to channel 1, the second attribute corresponds to channel 2, and the third attribute corresponds to channel 3 and channel 4. “O” is a decoded position, “P” is a to-be-decoded position, which can also be referred to as a current position, and “X” is an undecoded position.

[0357] First, the position P in the channel 1 is predicted to obtain the predicted value Pre1=r1 of the position P in the channel 1 (the first predicted value); the position P in the channel 2 is predicted to obtain the predicted value Pre2=r2 of the position P in the channel 2 (the first predicted value); the position P in the channel 3 is predicted to obtain the predicted value Pre3=r3 of the position P in the channel 3 (the first predicted value); and the position P in the channel 4 is predicted to obtain the predicted value Pre4=r4 of the position P in the channel 4 (the first predicted value).

[0358] And the reconstructed value Ak1 of the residual value of the position P in the channel 1, the reconstructed value Ak2 of the residual value of the position P in the channel 2, the reconstructed value Ak3 of the residual value of the position P in the channel 3, and the reconstructed value Ak4 of the residual value of the position P in the channel 4 are decoded.

[0359] Then, the reconstructed value Ak1 of the residual value of the position P in the channel 1 is added to the first predicted value r1 of the position P in the channel 1 to obtain the reconstructed value D1 of the position P in the channel 1, i.e. D1=r1+Ak1.

[0360] Subsequently, it is judged whether D1 is equal to 0.

[0361] When D1 is not equal to 0, the reconstructed value Ak2 of the residual value of the position P in the channel 2 is added to the first predicted value r2 of the position P in the channel 2 to obtain the reconstructed value D2 of the position P in the channel 2, i.e. D2=r2+Ak2.

[0362] When D1 is equal to 0, 0 is determined as the second predicted value of the position P in the channel 2, i.e. the predicted value Pre2 of the position P in the channel 2 is equal to 0 (the second predicted value). Then, the reconstructed value D2 of the position P in the channel 2 can be determined as Ak2.

[0363] After that, it is judged whether D2 is equal to 0.

[0364] When D2 is not equal to 0, the reconstructed value Ak3 of the residual value of the position P in the channel 3 is added to the first predicted value r3 of the position P in the channel 3 to obtain the reconstructed value D3 of the position P in the channel 3, i.e. D3=r3+Ak3; and the reconstructed value Ak4 of the residual value of the position P in the channel 4 is added to the first predicted value r4 of the position P in the channel 4 to obtain the reconstructed value D4 of the position P in the channel 4, i.e. D4=r4+Ak4.

[0365] When D2 is equal to 0, 0 is determined as the second prediction value of the position P in the channel 3, i.e., the prediction value Pre3 of the position P in the channel 3 is equal to 0 (the second prediction value). Then, the reconstruction value D3 of the position P in the channel 3 can be determined as Δk3. And 0 is determined as the second prediction value of the position P in the channel 4, i.e., the prediction value Pre4 of the position P in the channel 4 is equal to 0 (the second prediction value). Then, the reconstruction value D4 of the position P in the channel 4 can be determined as Δk4.

[0366] FIG. 9 is a schematic diagram of an encoding process 900 according to an embodiment of the present application. In the encoding process 900, the target prediction mode is the third first prediction mode; and the original data of the radar includes original values of three attributes.

[0367] S901, obtaining original data of a radar, the original data of the radar including original values of multiple attributes.

[0368] S902, predicting the three attributes to obtain a first prediction value of each of the three attributes.

[0369] S901-S902 can refer to the description of S501-S502 above.

[0370] S303 above can include the following S903-S907:

[0371] S903, when the target prediction mode is the first prediction mode 3, determining the first prediction value of the first attribute as the second prediction value of the first attribute, determining the first prediction value of the second attribute as the second prediction value of the second attribute, and determining the first prediction value of the third attribute as the second prediction value of the third attribute.

[0372] S904, encoding mode identification information of the first prediction mode 3, and encoding a residual value of each of the multiple attributes to obtain a bitstream; wherein for each of the multiple attributes, the residual value of the attribute is a difference between the original value of the attribute and the second prediction value of the attribute.

[0373] S904 can refer to the description of S304 above.

[0374] Suppose the mode identification information of the first prediction mode 3 is "2", then the mode identification information "2" of the first prediction mode 3 is converted into binary representation "10" and written into the bitstream.

[0375] FIG. 10A is a schematic diagram of a decoding process 1000 according to an embodiment of the present application. The decoding process 1000 corresponds to the encoding process 900.

[0376] S1001, receiving a bitstream.

[0377] S1002, decode the code stream to obtain the mode identification information and the reconstructed value of the residual value of each of the three attributes.

[0378] The mode identification information obtained in S1002 is first mode identification information.

[0379] S1003, predict the three attributes to obtain the first prediction value of each of the three attributes.

[0380] S1001-S1003 can refer to the description of S401-S403.

[0381] S1004, when the first prediction mode 3 is selected as the target prediction mode from the plurality of first prediction modes based on the mode identification information, the first prediction value of the first attribute is determined as the second prediction value of the first attribute, the first prediction value of the second attribute is determined as the second prediction value of the second attribute, and the first prediction value of the third attribute is determined as the second prediction value of the third attribute.

[0382] S1005, determine the reconstructed value of each of the plurality of attributes based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of each of the plurality of attributes.

[0383] S1005 can be described as above S405.

[0384] FIG. 10B is a schematic diagram of a decoding process of a data block provided by an embodiment of the application.

[0385] The data block in FIG. 10B includes four channels, and the data block of each channel has a height of 4 and a width of 4; the third attribute corresponds to channel 1, the second attribute corresponds to channel 2, and the third attribute corresponds to channel 3 and channel 4. “O” is a decoded position, “P” is a to-be-decoded position, which can also be referred to as a current position, and “X” is an undecoded position.

[0386] First, the position P in channel 1 is predicted to obtain the prediction value Pre1=r1 (first prediction value) of the position P in channel 1; the position P in channel 2 is predicted to obtain the prediction value Pre2=r2 (first prediction value) of the position P in channel 2; the position P in channel 3 is predicted to obtain the prediction value Pre3=r3 (first prediction value) of the position P in channel 3; and the position P in channel 4 is predicted to obtain the prediction value Pre4=r4 (first prediction value) of the position P in channel 4.

[0387] Then, the reconstructed value of the residual value of the position P in the channel 1, △k1, and the first predicted value of the position P in the channel 1, r1, are added to obtain the reconstructed value of the position P in the channel 1, D1, that is, D1=r1+△k1. The reconstructed value of the residual value of the position P in the channel 2, △k2, and the first predicted value of the position P in the channel 2, r2, are added to obtain the reconstructed value of the position P in the channel 2, D2, that is, D2=r2+△k2. The reconstructed value of the residual value of the position P in the channel 3, △k3, and the first predicted value of the position P in the channel 3, r3, are added to obtain the reconstructed value of the position P in the channel 3, D3, that is, D3=r3+△k3. The reconstructed value of the residual value of the position P in the channel 4, △k4, and the first predicted value of the position P in the channel 4, r4, are added to obtain the reconstructed value of the position P in the channel 4, D4, that is, D4=r4+△k4.

[0388] FIG. 11 is a schematic diagram of an encoding process 1100 provided by an embodiment of the present application. In the encoding process 1100, the target prediction mode is the first type of prediction mode 4; and the original data of the radar includes original values of three attributes.

[0389] S1101, obtaining original data of a radar, the original data of the radar including original values of three attributes.

[0390] S1102, predicting the three attributes to obtain a first predicted value of each of the three attributes.

[0391] S1101-S1102 can refer to the description of S501-S502 above.

[0392] S303 above can include S1103-S1107 as follows:

[0393] S1103, when the target prediction mode is the first type of prediction mode 4, determining the first predicted value of the first attribute as the second predicted value of the first attribute.

[0394] S1104, judging whether the residual value of the first attribute of the first position is greater than a threshold value.

[0395] When the residual value of the first attribute of the first position is greater than the threshold value, S1105 and S1106 can be executed; and when the residual value of the first attribute of the first position is less than or equal to the threshold value, S1107 and S1108 can be executed.

[0396] The threshold value can be set according to requirements, which is not limited in the present application.

[0397] The first prediction values of the three attributes can be represented as {r1, r2, r3, r4}, where r1 represents the first prediction value of the second attribute (which can include the first prediction value of the second attribute of H*W positions), r2 represents the high G bits of the first prediction value of the first attribute (which can include the high G bits of the first prediction value of the first attribute of H*W positions), r3 represents the low G bits of the first prediction value of the first attribute (which can include the low G bits of the first prediction value of the first attribute of H*W positions), and r4 represents the first prediction value of the third attribute (which can include the first prediction value of the third attribute of H*W positions).

[0398] S1105, the reconstructed value of the second attribute of the first target reference position is determined as the second prediction value of the second attribute of the second position.

[0399] S1106, the reconstructed value of the third attribute of the second target reference position is determined as the second prediction value of the third attribute of the third position.

[0400] The first position, the second position, and the third position are the same positions of different channels. For example, assuming that the first attribute corresponds to channel 1, the second attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4; if the first position is (c1, x1, y1), the second position can include (c2, x1, y1) and (c3, x1, y1), and the third position can be (c4, x1, y1).

[0401] The first target reference position, the second target reference position, and the intermediate reference position are the same positions of different channels. For example, the intermediate reference position is (c1, x3, y3), the first target reference position can include (c2, x3, y3) and (c3, x3, y3), and the second target reference position is (c4, x3, y3).

[0402] The embodiments of the present application do not limit the execution order of S1106 and S1107.

[0403] S1107, the first prediction value of the second attribute of the second position is determined as the second prediction value of the second attribute of the second position.

[0404] S1108, the first prediction value of the third attribute of the third position is determined as the second prediction value of the third attribute of the third position.

[0405] The embodiments of the present application do not limit the execution order of S1107 and S1108.

[0406] Suppose the first prediction value of the three attributes is {r1, r2, r3, r4}, the reconstructed value of (c2, x3, y3) is v1, the reconstructed value of (c3, x3, y3) is v2, and the reconstructed value of (c4, x3, y3) is v3; if the residual value of the first attribute at the first position is greater than the threshold, the second prediction value of the three attributes is {r1, v1, v2, v3}; if the residual value of the first attribute at the first position is less than or equal to the threshold, the second prediction value of the three attributes is {r1, r2, r3, r4}.

[0407] After S1105 and S1106 are executed, or after S1107 and S1108 are executed, S1109 can be executed.

[0408] S1109 encodes the mode identification information of the first type of prediction mode 4, and encodes the residual value of each attribute in the multiple attributes, to obtain a bitstream; wherein for each attribute in the multiple attributes, the residual value of the attribute is the difference between the original value of the attribute and the second prediction value of the attribute.

[0409] S1109 can be described as above in S304.

[0410] Suppose the mode identification information of the first type of prediction mode 4 is "3", the mode identification information "3" of the first type of prediction mode 4 is converted into binary representation "11" and written into the bitstream.

[0411] FIG. 12 is a schematic diagram of a decoding process 1200 provided by an embodiment of the present application. The decoding process 1200 corresponds to the encoding process 1100.

[0412] S1201 receives a bitstream.

[0413] S1202 decodes the bitstream to obtain the reconstructed value of the mode identification information and the residual value of each attribute in the three attributes.

[0414] The mode identification information obtained by S1202 is the first mode identification information.

[0415] S1203 predicts the three attributes to obtain the first prediction value of each attribute in the three attributes.

[0416] S1201-S1203 can be described as above in S401-S403.

[0417] S1204, when the first type of prediction mode 4 is selected as the target prediction mode from the multiple first type of prediction modes based on the mode identification information, the first prediction value of the first attribute is determined as the second prediction value of the first attribute.

[0418] S1205 judges whether the residual value of the first attribute at the first position is greater than the threshold.

[0419] When the residual value of the first attribute of the first position is greater than the threshold value, S1206 and S1207 can be performed; when the residual value of the first attribute of the first position is less than or equal to the threshold value, S1208 and S1209 can be performed.

[0420] S1206, the reconstructed value of the second attribute of the first target reference position is determined as the second prediction value of the second attribute of the second position.

[0421] S1207, the reconstructed value of the third attribute of the second target reference position is determined as the second prediction value of the third attribute of the third position.

[0422] Embodiments of the present application do not limit the execution order of S1206 and S1207.

[0423] S1208, the first prediction value of the second attribute of the second position is determined as the second prediction value of the second attribute of the second position.

[0424] S1209, the first prediction value of the third attribute of the third position is determined as the second prediction value of the third attribute of the third position.

[0425] Embodiments of the present application do not limit the execution order of S1208 and S1209.

[0426] After S1208 and S1209 are executed, or after S1206 and S1207 are executed, S1210 can be executed.

[0427] S1210, based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of each attribute in the plurality of attributes, the reconstructed value of each attribute in the plurality of attributes is determined.

[0428] S1210 can be described as above S406.

[0429] FIG. 12B is a schematic diagram of a decoding process of a data block provided by an embodiment of the present application.

[0430] The data block in FIG. 12B includes four channels, and the data block of each channel has a height of 4 and a width of 4; the third attribute corresponds to channel 1, the second attribute corresponds to channel 2, and the third attribute corresponds to channel 3 and channel 4. “O” is a decoded position, “P” is a to-be-decoded position, which can also be referred to as a current position, and “X” is an undecoded position.

[0431] First, the position P in the channel 1 is predicted to obtain a predicted value Pre1=r1 of the position P in the channel 1 (a first predicted value); the position P in the channel 2 is predicted to obtain a predicted value Pre2=r2 of the position P in the channel 2 (a first predicted value); the position P in the channel 3 is predicted to obtain a predicted value Pre3=r3 of the position P in the channel 3 (a first predicted value); and the position P in the channel 4 is predicted to obtain a predicted value Pre4=r4 of the position P in the channel 4 (a first predicted value).

[0432] Suppose the intermediate reference position is the position where the gray circle in the channel 1 is located, then the first target reference position includes the position where the gray circle in the channel 2 is located and the position where the gray circle in the channel 3 is located, and the second target reference position includes the position where the gray circle in the channel 4 is located.

[0433] Suppose the reconstructed value of the position where the gray circle in the channel 2 is located is v1, the reconstructed value of the position where the gray circle in the channel 3 is located is v2, and the reconstructed value of the position where the gray circle in the channel 4 is located is v3, then the predicted value Pre2 of the position P in the channel 2 is updated to v1 (a second predicted value), the predicted value Pre3 of the position P in the channel 3 is updated to v2 (a second predicted value), and the predicted value Pre4 of the position P in the channel 4 is updated to v3 (a second predicted value).

[0434] Then, the reconstructed value Δk2 of the residual value of the position P in the channel 2 is added to the predicted value Pre2=v1 of the position P in the channel 2 to obtain the reconstructed value D2 of the position P in the channel 2, i.e., D2=v1+Δk2. The reconstructed value Δk3 of the residual value of the position P in the channel 3 is added to the predicted value Pre3=v2 of the position P in the channel 3 to obtain the reconstructed value D3 of the position P in the channel 3, i.e., D3=v2+Δk3. The reconstructed value Δk4 of the residual value of the position P in the channel 4 is added to the predicted value Pre4=v3 of the position P in the channel 4 to obtain the reconstructed value D4 of the position P in the channel 4, i.e., D4=v3+Δk4.

[0435] The encoders performing the encoding processes 300, 500, 700, 900 and 1100 can be software encoders, and the decoders performing the decoding processes 400, 600, 800, 1000 and 1200 can be software decoders. In this case, the embodiments of the present application do not limit the specific representation of the mode identification information of the target prediction mode.

[0436] When the encoding process is performed by a hardware encoder, and the decoding process is performed by a software encoder, the mode identification information of the first type of prediction mode can be used to perform an AND operation with the first prediction value, and the second prediction value obtained by the AND operation satisfies the second prediction value indicated by the first type of prediction mode. For example, the mode identification information of the first type of prediction mode 1 can be 0xff0000ff, and the mode identification information of the first type of prediction mode 3 can be 0xffffffff. In this case, the determination of the second prediction value of each attribute based on the target prediction mode and the first prediction value of the plurality of attributes can refer to the description of the encoding process 1300.

[0437] FIG. 13 is a schematic diagram of an encoding process 1300 provided by an embodiment of the present application. The encoder performing the encoding process 1300 can be a hardware encoder; the original data of the radar includes original values of three attributes.

[0438] S1301, obtaining original data of a radar, the original data of the radar including original values of a plurality of attributes.

[0439] S1302, predicting the three attributes to obtain a first prediction value of each attribute of the three attributes.

[0440] S1301-S1302 can refer to the description of S501-S502 above.

[0441] If the second attribute corresponds to channel 1, the first attribute corresponds to channel 2 and channel 3, and the third attribute corresponds to channel 4, the first prediction values of the three attributes can be represented as {r1, r2, r3, r4}, where r1 represents the first prediction value of the second attribute (which can include the first prediction value of the second attribute at H*W positions), r2 represents the high G bits of the first prediction value of the first attribute (which can include the high G bits of the first prediction value of the first attribute at H*W positions), r3 represents the low G bits of the first prediction value of the first attribute (which can include the low G bits of the first prediction value of the first attribute at H*W positions), and r4 represents the first prediction value of the third attribute (which can include the first prediction value of the third attribute at H*W positions).

[0442] The above S303 can include the following S1103-S1107:

[0443] S1303, performing an AND operation between the first prediction values of the plurality of attributes and the identification information of the target prediction mode to obtain a second prediction value of each attribute of the plurality of attributes.

[0444] The mode identification information can include a plurality of bit positions corresponding to the plurality of attributes respectively; for each attribute, the first prediction value of the attribute can be ANDed with the values of the plurality of bit positions corresponding to the attribute in the mode identification information to obtain the second prediction value of the attribute.

[0445] Suppose the mode identification information is "0xff0000ff", and the high bits are in front and the low bits are in back, the first prediction value of the second attribute corresponds to the 32nd bit to the 25th bit in "0xff0000ff" (i.e. "ff" marked by underlining in "0xff0000ff"), the first prediction value of the first attribute corresponds to the 24th bit to the 9th bit in "0xff0000ff" (i.e. "0000" marked by underlining in "0xff0000ff"), and the first prediction value of the third attribute corresponds to the 8th bit to the 1st bit in "0xff0000ff" (i.e. "ff" marked by underlining in "0xff0000ff").

[0446] Since "0" and any binary number are equal to "0" when performing AND operation, and "1" and any binary number are equal to the binary number itself when performing AND operation, when the target prediction mode is the first type of prediction mode 1, if the reconstruction value of the second attribute is 0, performing AND operation between the first prediction value of the multiple attributes and 0xff0000ff can determine 0 as the second prediction value of the first attribute, the first prediction value of the second attribute as the second prediction value of the first attribute, and the first prediction value of the third attribute as the second prediction value of the third attribute.

[0447] When the target prediction mode is the first type of prediction mode 3, performing AND operation between the first prediction value of the multiple attributes and 0xffffffff can determine the first prediction value of the third attribute as the second prediction value of the third attribute, the first prediction value of the second attribute as the second prediction value of the second attribute, and the first prediction value of the first attribute as the second prediction value of the first attribute.

[0448] S1304, encode the mode identification information of the target prediction mode, and encode the residual value of each attribute in the multiple attributes to obtain a bitstream.

[0449] S1304 can be described according to the description of S304.

[0450] Suppose the target prediction mode is the first type of prediction mode 1, the binary representation corresponding to "0xff0000ff" can be written into the bitstream. Suppose the target prediction mode is the first type of prediction mode 3, the binary representation corresponding to "0xffffffff" can be written into the bitstream.

[0451] FIG. 14 is a schematic diagram of a decoding process 1400 provided by an embodiment of the present application. The decoding process 1400 corresponds to the encoding process 1300.

[0452] S1401, receiving a bitstream.

[0453] S1402, decode the code stream to obtain the mode identification information and the reconstructed value of the residual value of each attribute of the three attributes.

[0454] The mode identification information obtained in S1402 is first mode identification information.

[0455] S1403, predict the three attributes to obtain the first prediction value of each attribute of the three attributes.

[0456] S1401-S1403 can refer to the description of S401-S403.

[0457] S1404, perform an AND operation between the first prediction value of the multiple attributes and the mode identification information to obtain the second prediction value of each attribute of the multiple attributes.

[0458] S1405, determine the reconstructed value of each attribute of the multiple attributes based on the second prediction value of the multiple attributes and the reconstructed value of the residual value of each attribute of the multiple attributes.

[0459] In one possible manner, only one second type of prediction mode (a pre-set second type of prediction mode) can be used to predict the multiple attributes to obtain the first prediction value of each attribute of the multiple attributes.

[0460] In one possible manner, the optimal second type of prediction mode can be selected from a plurality of second type of prediction modes, and the optimal second type of prediction mode is used to predict the multiple attributes to obtain the first prediction value of each attribute of the multiple attributes; the specific process can refer to the following encoding process 1500. Wherein, the number of second type of prediction modes can be represented by K, K is a positive integer greater than 1.

[0461] When the second type of prediction mode is a spatial prediction mode, the second type of prediction mode can include the following four subtypes: a first subtype prediction mode, a second subtype prediction mode, a third subtype prediction mode or a fourth subtype prediction mode; wherein:

[0462] The first subtype prediction mode indicates that a fixed value is determined as the prediction value of the current position in the current data block;

[0463] The second subtype prediction mode indicates that the reconstructed value of the coded position is determined as the prediction value of the current position in the current data block;

[0464] The third subtype prediction mode indicates that the fusion value of the reconstructed values of a plurality of coded positions is determined as the prediction value of the current position in the current data block;

[0465] The fourth sub-class prediction mode indicates that one of the reconstructed values of the plurality of coded positions is selected as the prediction value of the current position in the current data block based on a size relationship of the reconstructed values of the plurality of coded positions and / or a size relationship of a combination of the reconstructed values of the plurality of decoded positions.

[0466] The fusion value of the reconstructed values of the plurality of coded positions can refer to a linear combination value or a nonlinear combination value of the reconstructed values of the plurality of coded positions.

[0467] Exemplarily, the size relationship of the reconstructed values of the plurality of coded positions can be understood as a size relationship between the reconstructed value of each coded position in the plurality of coded positions and the reconstructed values of other coded positions.

[0468] Exemplarily, the size relationship of the combination of the reconstructed values of the plurality of decoded positions can be understood as a size relationship between an operation result (such as a difference value) between the reconstructed value of the first coded position in the plurality of coded positions and the reconstructed value of the reference position (also a coded position) and an operation result (such as a difference value) between the reconstructed value of the second coded position and the reconstructed value of the reference position (also a coded position) and an operation result (such as a difference value) between the reconstructed value of the third coded position and the reconstructed value of the reference position (also a coded position).

[0469] The plurality of coded positions includes a first position, a second position and a third position; and the fourth sub-class prediction mode indicates that the reconstructed value of the first position and the reconstructed value of the second position, which has the smallest difference value with the reconstructed value of the third position, is determined as the prediction value of the current position in the current data block. For example, the first position is a left position of the current position, the second position is an upper position of the current position, and the third position is a top-left position of the current position. For another example, the first position is a top-left position of the current position, the second position is a top-right position of the current position, and the third position is an upper position of the current position. It should be noted that the first position, the second position or the third position can be determined according to the distribution characteristics of the raw data of the radar (the distribution characteristics of the raw data of the radar can include an association relationship between the raw values of the same attribute received by different modules for one transmission, and / or an association relationship between the raw values of the same attribute received by the same module for multiple transmissions, and / or an association relationship between raw values of different attributes). In addition, one of the reconstructed values of the plurality of coded positions can be selected as the prediction value of the current position in the current data block according to other size relationships.

[0470] Each sub-class prediction mode contains a mode and a corresponding prediction manner, which can refer to Table 1 as follows:

[0471] Table 1

[0472] FIG. 15 is a schematic diagram of an encoding process 1500 according to an example of the present application. The encoding process 1500 is performed by the encoder 211.

[0473] S1501, obtaining raw data of the radar, the raw data of the radar including raw values of a plurality of attributes.

[0474] S1502, predicting the plurality of attributes using an i-th second prediction mode to obtain i-th first prediction values of the plurality of attributes; wherein an initial value of i is 1, and i is a positive integer less than or equal to K.

[0475] The K second prediction modes can be traversed, and each time a second prediction mode is used to predict the plurality of attributes to obtain a first prediction value of the plurality of attributes.

[0476] For each attribute of the plurality of attributes, the i-th second prediction mode can be used to predict the attribute to obtain an i-th first prediction value of the attribute.

[0477] That is, the i-th first prediction value of the plurality of attributes includes an i-th first prediction value of each attribute of the plurality of attributes.

[0478] S1503, determining i-th candidate prediction values of the plurality of attributes based on the target prediction mode and the i-th first prediction values of the plurality of attributes.

[0479] For each attribute of the plurality of attributes, the i-th candidate prediction value of the attribute can be determined by referring to the descriptions in the encoding process 300, the encoding process 500, the encoding process 700, the encoding process 900, and the encoding process 1100.

[0480] That is, the i-th candidate prediction value of the plurality of attributes includes an i-th candidate prediction value of each attribute of the plurality of attributes.

[0481] S1504, determining i-th residual values of the plurality of attributes based on the i-th candidate prediction values and the raw values of the plurality of attributes.

[0482] For each attribute of the plurality of attributes, a difference between the i-th candidate prediction value and the raw value of the attribute can be determined as the i-th residual value of the attribute.

[0483] That is, the i-th residual value of the plurality of attributes includes an i-th residual value of each attribute of the plurality of attributes.

[0484] S1505, determining an i-th residual cost based on the i-th residual values of the plurality of attributes.

[0485] In one possible manner, the i-th residual cost can be determined based on the i-th residual value of the plurality of attributes and a preset residual weight. A corresponding residual weight can be preset for each value. For example, 256 values from 0 to 255 are respectively provided with a corresponding residual weight. For example, the corresponding residual weight of the value "1" is set as 1, the corresponding residual weight of the value "64" is set as 7, the corresponding residual weight of the value "255" is set as 1, and so on. The greater the residual weight is, the higher the probability of the value appearing is.

[0486] Then, the i-th residual value of the plurality of attributes and the corresponding residual weight can be weighted to obtain the i-th residual cost.

[0487] The i-th residual cost can also be determined in other manners. For example, an independent entropy is determined according to the i-th residual value of the plurality of attributes, and a joint entropy is determined according to the i-th residual value of the plurality of attributes and a historical candidate residual value. The independent entropy and the joint entropy are weighted to obtain the i-th residual value.

[0488] S1506, it is determined whether the i-th residual value is the minimum residual cost.

[0489] When i is equal to 1, it is determined that the i-th residual cost is the minimum residual cost. At this time, S1507 can be executed. When i is greater than 1, it is determined whether the i-th residual cost is less than the minimum residual cost determined last time. If yes, it is determined that the i-th residual cost is the minimum residual cost, and S1507 can be executed. If no, it is determined that the i-th residual cost is not the minimum residual cost, and S1508 can be executed.

[0490] S1507, the minimum residual cost is updated to the i-th residual cost.

[0491] After S1507 is executed, S1508 can be executed.

[0492] S1508, it is determined whether i is less than K.

[0493] When i is less than K, S1509 is executed. When i is not less than K (i.e., i is equal to K), S1510 is executed.

[0494] S1509, i is increased by 1.

[0495] After S1509 is executed, S1502 can be executed.

[0496] S1510, the candidate prediction value corresponding to the minimum residual cost is determined as the second prediction value of the plurality of attributes.

[0497] The second type of prediction mode corresponding to the minimum residual cost (i.e., the second type of prediction mode corresponding to the minimum residual cost) is the optimal second type of prediction mode.

[0498] S1511 encodes the first mode identification information and the second mode identification information, and encodes the residual values of the plurality of attributes to obtain a bitstream.

[0499] S1511 can be performed according to the description of S304.

[0500] The first mode identification information indicates the target prediction mode, and the second mode identification information indicates the second type of prediction mode corresponding to the plurality of attributes, i.e., the optimal second type of prediction mode.

[0501] The manner of encoding the second mode identification information is similar to the manner of encoding the first mode identification information.

[0502] FIG. 16 is a schematic diagram of a decoding process 1600 provided by an embodiment of the present application. The decoding process 1600 corresponds to the encoding process 1500.

[0503] S1601 receives a bitstream.

[0504] S1602 decodes the bitstream to obtain the first mode identification information, the second mode identification information, and the reconstructed values of the residual values of each attribute of the plurality of attributes.

[0505] S1601-S1602 can be performed according to the description of S401-S402.

[0506] S1603 predicts the plurality of attributes using the second type of prediction mode indicated by the second mode identification information to obtain the first prediction values of each attribute of the plurality of attributes.

[0507] S1604 determines the second prediction values of each attribute of the plurality of attributes based on the first mode identification information and the first prediction values of the plurality of attributes.

[0508] S1604 can be performed according to the description of the decoding process 400, the decoding process 600, the decoding process 800, the decoding process 1000, and the decoding process 1200.

[0509] S1605 determines the reconstructed values of each attribute of the plurality of attributes based on the second prediction values of the plurality of attributes and the reconstructed values of the residual values of each attribute of the plurality of attributes.

[0510] S1605 can be performed according to the description of S405.

[0511] Optionally, the embodiment of the present application can also write type identification information into the bitstream; wherein the type identification information is used to indicate the type of the radar. Since different types of radars generate radar original data containing different attributes, and different types of radars generate radar original data with different data formats and different ways of converting radar original data into radar point cloud data; therefore, the decoding end can decode the bitstream according to the type of the radar indicated by the type identification information, can know the attributes contained in the radar original data generated by various types of radars, and obtain the reconstructed values of these attributes; and according to the type of the radar indicated by the type identification information, the reconstructed data of the radar original data consistent with the data format of the radar original data can be obtained, or the reconstructed data of the correct radar point cloud data can be obtained. Further, the bitstream obtained by encoding the radar original data generated by different types of radars can be accurately decoded.

[0512] FIG. 17 is a schematic diagram of an encoding device 1700 provided by an embodiment of the present application. The encoding device 1700 can be used to execute the method of the foregoing embodiments, and therefore, the beneficial effects that can be achieved thereby can refer to the beneficial effects provided in the corresponding method, which will not be described herein again.

[0513] The encoding device 1700 can include:

[0514] The obtaining module 1701 is configured to obtain radar original data, wherein the radar original data includes original values of a plurality of attributes;

[0515] The prediction module 1702 is configured to determine first prediction values of the plurality of attributes, and determine second prediction values of the plurality of attributes based on a target prediction mode and the first prediction values of the plurality of attributes, wherein the target prediction mode corresponds to a distribution feature of the radar original data.

[0516] The encoding module 1703 is configured to encode mode identification information and residual values of the plurality of attributes to obtain a bitstream, wherein the mode identification information indicates the target prediction mode, and for each attribute in the plurality of attributes, the residual value of the attribute is a difference between the original value of the attribute and the second prediction value of the attribute.

[0517] In one possible manner, the encoding module 1703 can be the entropy encoding module 2113 described above.

[0518] The plurality of attributes includes a first part of attributes and a second part of attributes, and the prediction module 1702 is configured to determine, based on the target prediction mode, the second prediction value of each attribute in the first part of attributes, and for each attribute in the second part of attributes, determine the first prediction value of the attribute as the second prediction value of the attribute.

[0519] The target prediction mode indicates that, for each attribute in the first part of attributes, when a reconstructed value of a reference attribute corresponding to the attribute is 0, a second prediction value of the attribute is 0; and the prediction module 1702 is configured to determine 0 as the second prediction value of the attribute when the reconstructed value of the reference attribute corresponding to the attribute is 0.

[0520] The first part of attributes includes a first attribute, and the second part of attributes includes a second attribute, the second attribute being a reference attribute corresponding to the first attribute; the prediction module 1702 is configured to determine 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0; and determine the first prediction value of the second attribute as the second prediction value of the second attribute.

[0521] The first part of attributes includes a first attribute and a second attribute, and the second part of attributes includes a third attribute, the third attribute being a reference attribute corresponding to the second attribute, and the second attribute being a reference attribute corresponding to the first attribute; the prediction module 1702 is configured to determine 0 as the second prediction value of the second attribute when the reconstructed value of the third attribute is 0; determine 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0; and determine the first prediction value of the third attribute as the second prediction value of the third attribute.

[0522] The target prediction mode indicates that, for each attribute in the plurality of attributes, the second prediction value of the attribute is equal to the first prediction value of the attribute.

[0523] The target prediction mode indicates that, for each attribute in the plurality of attributes, the second prediction value of the attribute is obtained by performing an operation on the first prediction value of the attribute and the mode identification information.

[0524] The prediction module 1702 is configured to select an optimal second-type prediction mode from a plurality of second-type prediction modes, the second-type prediction mode including a spatial prediction mode or a temporal prediction mode; and perform prediction on the plurality of attributes by using the optimal second-type prediction mode to obtain the first prediction values of the plurality of attributes.

[0525] FIG. 18 is a schematic diagram of a decoding apparatus 1800 provided in an embodiment of the present application. The decoding apparatus 1800 can be used to execute the method of the foregoing embodiments, and therefore, the beneficial effects that can be achieved by the decoding apparatus 1800 can refer to the beneficial effects provided in the corresponding method, which will not be described herein again.

[0526] The decoding apparatus 1800 can include:

[0527] The receiving module 1801 is configured to receive a bitstream, the bitstream including encoded data of residual values of a plurality of attributes in original data of a radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution characteristic of the original data of the radar.

[0528] The decoding module 1802 is configured to decode the code stream to obtain mode identification information and a reconstructed value of a residual value of each attribute of the plurality of attributes.

[0529] The prediction module 1803 is configured to determine a first prediction value of the plurality of attributes, determine a second prediction value of the plurality of attributes based on the mode identification information and the first prediction value of the plurality of attributes, and determine a reconstructed value of the plurality of attributes based on the second prediction value of the plurality of attributes and the reconstructed value of the residual value of the plurality of attributes.

[0530] In a possible implementation, the decoding module 1802 can be the entropy decoding module 2213.

[0531] The prediction module 1803 is configured to select a target prediction mode from a plurality of first-type prediction modes based on the mode identification information, each first-type prediction mode corresponding to a distribution characteristic, and determine a second prediction value of the plurality of attributes based on the target prediction mode and the first prediction value of the plurality of attributes.

[0532] The plurality of attributes include a first part of attributes and a second part of attributes, and the prediction module 1803 is configured to determine the second prediction value of each attribute of the first part of attributes based on the target prediction mode, and determine, for each attribute of the second part of attributes, the first prediction value of the attribute as the second prediction value of the attribute.

[0533] The target prediction mode indicates that, for each attribute of the first part of attributes, the second prediction value of the attribute is 0 when a reconstructed value of a reference attribute corresponding to the attribute is 0, and the prediction module 1803 is configured to determine, for each attribute of the first part of attributes, 0 as the second prediction value of the attribute when the reconstructed value of the reference attribute corresponding to the attribute is 0.

[0534] The first part of attributes includes a first attribute, and the second part of attributes includes a second attribute, the second attribute being a reference attribute corresponding to the first attribute, the prediction module 1803 is configured to determine 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0, and determine the first prediction value of the second attribute as the second prediction value of the second attribute.

[0535] The first part of attributes includes a first attribute and a second attribute, the second part of attributes includes a third attribute, the third attribute being a reference attribute corresponding to the second attribute, and the second attribute being a reference attribute corresponding to the first attribute, the prediction module 1803 is configured to determine 0 as the second prediction value of the second attribute when the reconstructed value of the third attribute is 0, determine 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0, and determine the first prediction value of the third attribute as the second prediction value of the third attribute.

[0536] The target prediction mode indicates that, for each attribute of the plurality of attributes, the second prediction value of the attribute is equal to the first prediction value of the attribute.

[0537] The target prediction mode indication indicates that, for each of a plurality of properties, a second prediction value of the property is obtained by operating a first prediction value of the property and mode identification information.

[0538] In one example, FIG. 19 shows a schematic block diagram of an apparatus 1900 according to an embodiment of the present application. The apparatus 1900 can include a processor 1901 and a transceiver 1902, and optionally further include a memory 1903.

[0539] The various components of the apparatus 1900 are coupled together by a bus 1904, which can include a data bus, a power bus, a control bus, and a state signal bus. For the sake of clarity, the various buses are illustrated in FIG. 19 as the bus 1904, although the different buses can be embodied by discrete buses or can be embodied by the same bus.

[0540] The memory 1903 can be used to store instructions from the aforementioned method embodiments. The processor 1901 can be used to execute the instructions in the memory 1903, and control the transceiver 1902 to receive signals and control the transceiver 1902 to send signals.

[0541] The apparatus 1900 can be an electronic device or a chip of an electronic device in the aforementioned method embodiments. The electronic device can be a server or a terminal device.

[0542] All relevant content of each step involved in the aforementioned method embodiments can be cited to the function description of the corresponding function module.

[0543] The embodiments of the present application also provide a chip, including one or more interface circuits and one or more processors; the one or more processors receive or send data through the one or more interface circuits, and when the one or more processors execute computer instructions, the above-mentioned related method steps are executed to implement the steps of the method in the above-mentioned embodiments. The interface circuit is the transceiver 1902.

[0544] The embodiments also provide a computer readable storage medium, which stores computer instructions, and when the computer instructions run on an electronic device, the electronic device executes the above-mentioned related method steps to implement the method in the above-mentioned embodiments. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various storage program codes.

[0545] The embodiment also provides a computer program product, which contains computer instructions, and when the computer instructions are executed by a computer or a processor, the computer executes the related steps to realize the method in the above embodiment.

[0546] In addition, the embodiment of the present application also provides a device, which can be a chip, a component or a module, and the device can include a processor and a memory connected to each other, wherein the memory is used to store computer execution instructions, and when the device is running, the processor can execute the computer execution instructions stored in the memory to enable the chip to execute the method in each method embodiment.

[0547] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, and the division of the modules or units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another device, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interfaces, devices or units, and can be electrical, mechanical or other forms.

[0548] The units described as separate components can or can not be physically separate, and the components shown as units can be one physical unit or multiple physical units, that is, can be located in one place or can be distributed to multiple different places. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.

[0549] In addition, the functional units in each embodiment of the present application can be integrated into a processing unit, or each unit can exist physically, or two or more units can be integrated into one unit. The integrated unit can be realized in the form of hardware or software functional units.

[0550] Any content of each embodiment of the present application and any content of the same embodiment can be freely combined. Any combination of the above is within the scope of the present application.

[0551] The embodiments of the present application are described above in combination with the drawings, but the present application is not limited to the above specific embodiments, and the above specific embodiments are only illustrative, not restrictive, and those skilled in the art can make many forms under the inspiration of the present application without departing from the scope of the present application and the scope protected by the claims.

Claims

1. A decoding method, comprising: The method comprises: receiving a code stream, the code stream comprising encoded data of residual values of a plurality of attributes in raw data of a radar and mode identification information, the mode identification information indicating a target prediction mode corresponding to a distribution characteristic of the raw data of the radar; decoding the code stream to obtain the mode identification information and reconstructed values of the residual values of the plurality of attributes; determining first prediction values of the plurality of attributes; determining second prediction values of the plurality of attributes based on the mode identification information and the first prediction values of the plurality of attributes; determining reconstructed values of the plurality of attributes based on the second prediction values of the plurality of attributes and the reconstructed values of the residual values of the plurality of attributes.

2. The method of claim 1, wherein, The determining of the second prediction values of the plurality of attributes based on the mode identification information and the first prediction values of the plurality of attributes comprises: selecting the target prediction mode from a plurality of first-type prediction modes based on the mode identification information, each first-type prediction mode corresponding to a distribution characteristic; determining the second prediction value of each attribute in the plurality of attributes based on the target prediction mode and the first prediction values of the plurality of attributes.

3. The method of claim 2, wherein, The plurality of attributes comprises a first part of attributes and a second part of attributes, and the determining of the second prediction values of the plurality of attributes based on the target prediction mode and the first prediction values of the plurality of attributes comprises: determining the second prediction value of each attribute in the first part of attributes based on the target prediction mode, and determining the first prediction value of each attribute in the second part of attributes as the second prediction value of the attribute.

4. The method of claim 3, wherein, The target prediction mode indicates that, for each attribute in the first part of attributes, the second prediction value of the attribute is 0 when the reconstructed value of a reference attribute corresponding to the attribute is 0. The determining of the second prediction value of each attribute in the first part of attributes based on the target prediction mode comprises: for each attribute in the first part of attributes, determining 0 as the second prediction value of the attribute when the reconstructed value of a reference attribute corresponding to the attribute is 0.

5. The method of claim 4, wherein, The first part of attributes comprises a first attribute, and the second part of attributes comprises a second attribute, the second attribute being a reference attribute corresponding to the first attribute. The determining of 0 as the second prediction value of the first attribute when the reconstructed value of the second attribute is 0 comprises: The determining of the first prediction value of the second attribute as the second prediction value of the second attribute comprises: determining the first prediction value of the second attribute as the second prediction value of the second attribute. The first part of attributes comprises a first attribute and a second attribute, the second part of attributes comprises a third attribute, the third attribute being a reference attribute corresponding to the second attribute, and the second attribute being a reference attribute corresponding to the first attribute.

6. The method of claim 4, wherein, ​ The method comprises: The method comprises: The method comprises: The method comprises: The method comprises:

7. The method of claim 2, wherein, The method comprises:

8. The method of claim 1, wherein, The method comprises:

9. An encoding method characterized by comprising: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises:

10. The method of claim 9, wherein, The method comprises: The method comprises:

11. The method of claim 10, wherein, The method comprises: The method comprises: The method comprises:

12. The method of claim 11, wherein, The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The method comprises: The first prediction value of the second attribute is determined as the second prediction value of the second attribute.

13. The method of claim 11, wherein, The first part of attributes includes a first attribute and a second attribute, and the second part of attributes includes a third attribute, the third attribute being a reference attribute corresponding to the second attribute, and the second attribute being a reference attribute corresponding to the first attribute; The second prediction value of each attribute in the first part of attributes is determined as follows: when the reconstruction value of the reference attribute corresponding to the attribute is 0, 0 is determined as the second prediction value of the attribute. When the reconstruction value of the third attribute is 0, 0 is determined as the second prediction value of the second attribute. When the reconstruction value of the second attribute is 0, 0 is determined as the second prediction value of the first attribute. The second prediction value of each attribute in the second part of attributes is determined as follows: the first prediction value of the attribute is determined as the second prediction value of the attribute. The first prediction value of the third attribute is determined as the second prediction value of the third attribute.

14. The method of claim 9, wherein, The target prediction mode indicates that, for each attribute in the plurality of attributes, the second prediction value of the attribute is equal to the first prediction value of the attribute.

15. The method of claim 9, wherein, The target prediction mode indicates that, for each attribute in the plurality of attributes, the second prediction value of the attribute is obtained by performing an operation on the first prediction value of the attribute and the mode identification information.

16. The method according to any one of claims 9 to 15, characterized in that, The determination of the first prediction values of the plurality of attributes includes: An optimal second-type prediction mode is selected from a plurality of second-type prediction modes, the second-type prediction mode including a spatial prediction mode or a temporal prediction mode; The plurality of attributes are predicted by using the optimal second-type prediction mode to obtain the first prediction values of the plurality of attributes.

17. A bitstream, characterized by, The code stream includes encoded data of original data of a radar and mode identification information, the mode identification indicating a target prediction mode, the target prediction mode corresponding to a distribution feature of the original data of the radar.

18. The bitstream of claim 17, wherein, The code stream includes encoded data of original data of a plurality of frames of radars, and the encoded data of original data of one frame of radars includes encoded data of a plurality of attributes, the encoded data of the plurality of attributes included in the encoded data of original data of the plurality of frames of radars being arranged in attribute units.

19. The bitstream of claim 17 or 18, wherein, The mode identification information is arranged before the encoded data of the original data of the radar.

20. A decoding apparatus, comprising: The decoding apparatus includes: A receiving module configured to receive a code stream, the code stream including encoded data of residual values of a plurality of attributes in original data of a radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution feature of the original data of the radar; A decoding module configured to decode the code stream to obtain the mode identification information and reconstruction values of the residual values of the plurality of attributes; A prediction module configured to determine first prediction values of the plurality of attributes, determine second prediction values of the plurality of attributes based on the mode identification information and the first prediction values of the plurality of attributes, and determine reconstruction values of the plurality of attributes based on the second prediction values of the plurality of attributes and the reconstruction values of the residual values of the plurality of attributes.

21. An encoding apparatus, comprising: The encoding apparatus includes: An obtaining module configured to obtain original data of a radar, the original data of the radar including original values of a plurality of attributes; The prediction module is configured to determine a first prediction value of the plurality of attributes, and determine a second prediction value of the plurality of attributes based on a target prediction mode and the first prediction value of the plurality of attributes, the target prediction mode corresponding to a distribution feature of the original data of the radar. The encoding module is configured to encode mode identification information and residual values of the plurality of attributes to obtain a bitstream, the mode identification information indicating the target prediction mode, and for each attribute of the plurality of attributes, the residual value of the attribute being a difference between an original value of the attribute and the second prediction value of the attribute.

22. A decoder, comprising: The method comprises: a memory and a processor, the memory being coupled to the processor; the memory stores program instructions, when the program instructions are executed by the processor, the encoder executes the method in any one of claims 1 to 8.

23. An encoder comprising: The method comprises: a memory and a processor, the memory being coupled to the processor; the memory stores program instructions, when the program instructions are executed by the processor, the decoder executes the method in any one of claims 9 to 16.

24. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, when the computer program runs on a computer or a processor, the computer or the processor executes the method in any one of claims 1 to 16.

25. A computer program product, characterised in that, The computer program product contains computer instructions, when the computer instructions are executed by a computer or a processor, the steps of the method in any one of claims 1 to 16 are executed.

26. A chip, characterized by The computer program product contains computer instructions, when the computer instructions are executed by a computer or a processor, the steps of the method in any one of claims 1 to 16 are executed.

27. A computer-readable storage medium, characterized in that, The computer program product contains computer instructions, when the computer instructions are executed by a computer or a processor, the steps of the method in any one of claims 1 to 16 are executed.

28. A bitstream, characterized by, The computer readable storage medium stores the bitstream in any one of claims 17 to 19. The bitstream comprises residual values of a plurality of attributes in original data of a radar and mode identification information, the mode identification information indicating a target prediction mode, the target prediction mode corresponding to a distribution feature of the original data of the radar, and the mode identification information being used to obtain a second prediction value of the plurality of attributes based on a first prediction value of the plurality of attributes.

Citation Information

Patent Citations

  • Radar data compression method based on autoregressive model frame prediction

    CN108390871A

  • Radar data compression method and device

    CN114244907A

  • Classification method and device based on microwave and laser radar observation data association features

    CN115423011A

  • Techniques for radar data compression

    US20210208236A1