Method, apparatus, system, medium and program product for data compression and decompression
By acquiring and utilizing multiple reference probability information and codebook group configurations in the terminal device and performing hierarchical encoding, the problems of high computational complexity and poor encoding efficiency in the prior art are solved, and more efficient data compression and decompression are achieved.
Patent Information
- Application Number
- CN202311501653.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-11-10
- Publication Date
- 2025-05-13
Smart Images

Figure CN119997094A_ABST
Abstract
Description
Technical Field
[0001] The present application generally relates to the field of communications, and more particularly to a method for data compression or data decompression, an electronic device, a communication system, a computer-readable storage medium, and a computer program product. Background Art
[0002] With the development of communication technology, the amount of information that needs to be transmitted and stored has increased significantly. In order to save communication and storage resources, the data carrying information is usually compressed, such as data compression technology. Data compression technology is the process of encoding the original data with less space. It refers to a technical method that reduces the amount of data to reduce storage space without losing useful information, improves its transmission, storage and processing efficiency, or reorganizes the data according to a certain algorithm to reduce data redundancy and storage space. However, data compression technology can be further optimized and enhanced. Summary of the invention
[0003] Embodiments of the present application provide a method, device, system, computer-readable storage medium, and computer program product for data compression or data decompression.
[0004] In the first aspect of the present application, a method is provided. The execution subject of the method may be a terminal device, or a chip applied to the terminal device, or a logic module or software that can realize all or part of the functions of the terminal device. The following description is taken as an example in which the execution subject is a terminal device. In the method, the terminal device obtains multiple reference probability information and corresponding multiple codebook group configurations. In the case of determining that there is target reference probability information in multiple reference probability information, the terminal device performs hierarchical encoding of the data to be compressed based on the first codebook group configuration corresponding to the target reference probability information to generate compressed data. The terminal device sends an indication of the target reference probability information and compressed data. In this way, the construction of multiple hierarchical codebooks (for example, the above-mentioned multiple codebook group configurations) can be pre-configured at the terminal device or implemented by other devices and notified to the terminal device. Furthermore, the terminal device can select the target hierarchical codebook from the construction of multiple hierarchical codebooks and indicate it to the recipient of the compressed data. In this way, the computational complexity at the encoding end (for example, the terminal device) can be significantly reduced.
[0005] In some implementations, the terminal device sends a codeword sequence for hierarchical encoding. In this way, the actual codebook grouping for the compressed data currently being transmitted can be dynamically indicated. In this way, even if there is no appropriate corresponding codebook grouping pre-configured, the transmitting end can notify the receiving end of the actual codebook grouping by sending the codeword sequence.
[0006] In some implementations, the reference probability information in the plurality of reference probability information includes a first number of probability values, the codebook grouping configuration corresponding to the reference probability information is determined by splitting the first number of codewords, and the codewords in the first number of codewords are associated with probability values in the first number of probability values, and the splitting of the first number of codewords is performed based on the first number of probability values. In this way, the codewords in the codebook are associated with the probability values in the reference probability information, and the codebook grouping configuration corresponds to specific reference probability information.
[0007] In some implementations, the order of the first number of probability values includes an order from large to small or an order from small to large. In this way, a codeword can be associated with a probability value based on a position in the ordering.
[0008] In some implementations, receiving multiple reference probability information and codebook grouping configurations includes: receiving reference probability information-codebook set configuration. The reference probability information-codebook set configuration includes multiple reference probability information, multiple codebook grouping configurations, and corresponding multiple configuration indexes, and the above indication of the target reference probability information includes a configuration index corresponding to the target reference probability information. In this way, the reference probability information and the corresponding codebook grouping configuration can be indicated by indicating the configuration index.
[0009] In some implementations, the method further includes, the terminal device obtaining the quantized data to be compressed and the codeword sequence, wherein the criterion for sorting the frequencies of the codewords in the codeword probability information is the same as the criterion for sorting the probability values in the plurality of reference probability information and the order of the codeword sequence corresponds to the order of the probability values in the codeword probability information. In this way, the actual probability information (e.g., the actual probability mass function) of the codewords in the quantized data to be compressed can be determined according to the sorting criterion of the reference probability information, so as to determine the target reference probability information.
[0010] In some implementations, the difference between the target reference probability information and the quantized codeword probability information of the data to be compressed is less than or equal to a threshold. In this way, at least one of the actual probability mass functions of the codewords close to or equal to the quantized data to be compressed can be determined from the pre-configured multiple reference probability information. In this way, the corresponding codeword grouping configuration determined at the receiving end can be reused without the need to perform codebook hierarchical (or codebook grouping) construction at the transmitting end.
[0011] In some implementations, the method further includes, when multiple differences between the multiple reference probability information and the codeword probability information of the quantized data to be compressed are all greater than a threshold, determining that there is no target reference probability information. In this way, hierarchical encoding may not be performed when there is no suitable reference probability information, so that the receiving end can perform accurate decoding.
[0012] In some implementations, the terminal device performs hierarchical encoding of the data to be compressed, including: splitting the above-mentioned codeword sequence based on the above-mentioned first codebook grouping configuration to determine multiple groups of the codeword sequence that conforms to the first codebook grouping configuration. The codewords in the codeword sequence are associated with the probability values in the target reference probability information. The terminal device performs hierarchical encoding of the data to be compressed based on multiple groups of the codeword sequence. In this way, based on the actual probability mass function, the position of the codeword associated with the target reference probability information may be adjusted, and the adjusted association is reflected by the order of the above-mentioned codeword sequence or the position of the codeword therein. In this way, the transmitting end can inform the receiving end of the actual grouping situation and the corresponding probability by transmitting the codeword sequence, so that the receiving end can accurately decode.
[0013] In some implementations, there is at least one group among the plurality of groups, and the number of codewords in the at least one group is different from the number of codewords in the corresponding group in the first codebook group configuration. In this way, when the number of probability values of the probability mass function of the reference probability information and the actual codeword is different, the closest reference probability information is reused.
[0014] In some implementations, the above difference includes KL divergence (Kull-Leibler divergence). In this way, KL divergence can be used to measure the difference between the reference probability information.
[0015] In some implementations, the method further includes determining multiple differences between multiple reference probability information and codeword probability information, and determining multiple differences includes: determining a first probability density function corresponding to the first reference probability information when the number of probability values of the first reference probability information in the multiple reference probability information is different from the number of codewords in the quantized data to be compressed; determining a codeword probability density function corresponding to the codeword probability information; and determining the difference between the first reference probability information and the codeword probability information based on the first probability density function and the codeword probability density function. In this way, when the number of probability values of the probability mass function of the reference probability information and the actual codeword is different, the difference can be measured by curve fitting.
[0016] In some implementations, the first reference probability information is determined as the target reference probability information, the above indication of the target reference probability information includes an indication of the first reference probability information, the above codeword probability information includes a second number of codeword frequency values, and the above first reference probability information includes a third number of probability values. The method also includes: based on the above codeword probability information, selecting a second number of probability values from the above third number of probability values; and sending indication information indicating the second number of probability values in the third number of probability values. In this way, even if the reference probability information and the actual codeword probability mass function have different numbers of probability values, it is possible to indicate to the receiving end which positions of probability values and / or corresponding codewords are adopted in the codebook grouping.
[0017] In some implementations, the method further includes, when it is determined that the target reference probability information does not exist, sending the quantized data to be compressed or another compressed data. The other compressed data is generated by performing entropy coding on the quantized data to be compressed. In this way, hierarchical coding may not be performed when there is no suitable reference probability information, so that the receiving end can perform accurate decoding.
[0018] In some implementations, the method further includes: sending an indication of whether to perform hierarchical coding based on multiple codebook grouping configurations. In this way, it can be explicitly indicated to the receiving end whether the reference probability information in the multiple reference probability information is used.
[0019] In some implementations, the target reference probability information is the first target reference probability information, and the data to be compressed is hierarchically encoded into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on multiple groups of the first codeword sequence that conforms to the first codebook grouping configuration. The method also includes: based on the second codebook grouping configuration corresponding to the second target reference probability information in the multiple reference probability information, splitting the second codeword sequence to determine multiple groups of the second codeword sequence that conforms to the second codebook grouping configuration. The difference between the second target reference probability information and the codeword probability information of the sequence of sub-codebook indexes is less than a threshold, and the second codeword sequence is determined by determining the codeword probability information of the sequence of sub-codebook indexes. In this way, in the case of multi-level hierarchical encoding of the data to be compressed, the reference probability information in multiple reference probability information and the corresponding codebook grouping configuration can also be reused.
[0020] In some implementations, the target reference probability information is the first target reference probability information, and the data to be compressed is hierarchically encoded into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on multiple groups of the first codeword sequence that conforms to the first codebook grouping configuration. The method also includes: based on a third codebook grouping configuration corresponding to the third target reference probability information in the multiple reference probability information, splitting the third codeword sequence to determine multiple groups of the third codeword sequence that conforms to the third codebook grouping configuration. The difference between the third target reference probability information and the codeword probability information of the sequence of codeword positions is less than a threshold value, and the third codeword sequence is determined by determining the codeword probability information of the sequence of codeword positions. In this way, in the case of multi-level hierarchical encoding of the data to be compressed, the reference probability information in the multiple reference probability information and the corresponding codebook grouping configuration can also be reused.
[0021] In some implementations, the sequence of subcodebook indices and the sequence of codeword positions are used for the first layer of hierarchical coding, and the sequence of subcodebook indices is hierarchically obtained based on multiple groups of the second codeword sequence, and the sequence of codeword positions is hierarchically obtained based on multiple groups of the third codeword sequence. Another sequence is used for the second layer of hierarchical coding. The method also includes sending: an indication of the position of the above-mentioned sequence of subcodebook indices and / or the above-mentioned sequence of codeword positions in the first layer; an indication of the second target reference probability information and / or the third target reference probability information; and / or the second codeword sequence and / or the third codeword sequence. In this way, it can be clearly indicated to the receiving end which layer of hierarchical coding uses the reference probability information in the reference probability information and the corresponding grouping configuration.
[0022] In some implementations, the number of quantization bits for the data to be compressed is determined to be N, and the plurality of reference probability information includes one or more reference probability information corresponding to K probability values, where K∈[1,2 N ] and includes [1,2 N In this way, the plurality of reference probability information can have probability mass functions for all possible numbers of probability values.
[0023] In some implementations, the reference probability information in the plurality of reference probability information includes a probability mass function. In this way, a typical probability distribution function can be used to describe the reference probability information.
[0024] In a second aspect of the present application, a method is provided. The execution subject of the method may be a network device, or a chip applied to the network device, or a logic module or software that can implement all or part of the network device. The following description is taken as an example in which the execution subject is a network device. In the method, the network device receives an indication of a target reference probability information in a plurality of reference probability information and compressed data. The above-mentioned compressed data is determined by performing hierarchical encoding of the data to be compressed based on a first codebook grouping configuration in a plurality of codebook grouping configurations, and the plurality of codebook grouping configurations correspond to the plurality of reference probability information and the first codebook grouping configuration corresponds to the target reference probability information. The network device decompresses the compressed data based on the first codebook grouping configuration.
[0025] In some implementations, the network device receives a codeword sequence for hierarchical encoding. In this way, the actual codebook grouping for the compressed data currently being transmitted can be dynamically indicated. In this way, even if there is no pre-configured appropriate corresponding codebook grouping, the transmitter can notify the receiver of the actual codebook grouping by sending the codeword sequence.
[0026] In some implementations, the method further includes: sending multiple reference probability information and multiple codebook group configurations. In this way, the structure of the hierarchical codebook can be determined at the receiving end and notified to the transmitting end. In this way, the computational complexity can be reduced at the transmitting end.
[0027] In some implementations, sending multiple reference probability information and codebook grouping configurations includes: sending reference probability information-codebook set configuration. The reference probability information-codebook set configuration includes multiple reference probability information, multiple codebook grouping configurations, and corresponding multiple configuration indexes. The above indication of the target reference probability information includes a configuration index corresponding to the target reference probability information. In this way, the reference probability information and the corresponding codebook grouping configuration can be indicated by indicating the configuration index.
[0028] In some implementations, the reference probability information in the plurality of reference probability information includes a first number of probability values, the codebook grouping configuration corresponding to the reference probability information is determined by splitting the first number of codewords, and the codewords in the first number of codewords are associated with probability values in the first number of probability values, and the splitting of the first number of codewords is performed based on the first number of probability values. In this way, the codewords in the codebook are associated with the probability values in the reference probability information, and the codebook grouping configuration corresponds to specific reference probability information.
[0029] In some implementations, the order of the first number of probability values includes an order from large to small or an order from small to large. In this way, a codeword can be associated with a probability value based on a position in the order.
[0030] In some implementations, the difference between the target reference probability information and the quantized codeword probability information of the data to be compressed is less than or equal to a threshold. In this way, at least one of the actual probability mass functions of the codewords close to or equal to the quantized data to be compressed can be determined from the pre-configured multiple reference probability information. In this way, the corresponding codeword grouping configuration determined at the receiving end can be reused without the need to perform codebook hierarchical (or codebook grouping) construction at the transmitting end.
[0031] In some implementations, the above difference includes KL divergence (Kull-Leibler divergence). In this way, KL divergence can be used to measure the difference between the reference probability information.
[0032] In some implementations, the method further includes: receiving an indication of whether to perform hierarchical coding based on multiple codebook grouping configurations. In this way, it can be explicitly indicated to the receiving end whether the reference probability information in the multiple reference probability information is used.
[0033] In some implementations, the target reference probability information is the first target reference probability information and the codeword sequence is the first codeword sequence, the data to be compressed is hierarchically divided into a sequence of subcodebook indexes and a sequence of codeword positions corresponding to the subcodebook indexes based on multiple groups of the codeword sequence that conforms to the first codebook grouping configuration, and the sequence of subcodebook indexes and the sequence of codeword positions are the first layer for hierarchical coding. The second codeword sequence is split into multiple groups of a sequence of subcodebook indexes that conform to the second codebook grouping configuration based on the second codebook grouping configuration corresponding to the second target reference probability information. The second codeword sequence and the second target reference probability information are determined by determining the codeword probability information of the sequence of subcodebook indexes. The sequence obtained by hierarchically obtaining the sequence of subcodebook indexes based on multiple groups of the second codeword sequence that conforms to the second codebook grouping configuration is the second layer for hierarchical coding. In this way, in the case of multi-level hierarchical coding of the compressed data, the reference probability information in multiple reference probability information and the corresponding codebook grouping configuration can also be reused.
[0034] In some implementations, the target reference probability information is the first target reference probability information and the codeword sequence is the first codeword sequence, and the above-mentioned data to be compressed is hierarchical into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on multiple groups of the codeword sequence that conforms to the first codebook grouping configuration. The third codeword sequence is split into multiple groups of a third codeword sequence that conforms to the third codebook grouping configuration based on the third codebook grouping configuration corresponding to the third target reference probability information. The three codeword sequences and the third target reference probability information are determined by determining the codeword probability information of the sequence of codeword positions. Another sequence obtained by hierarchically obtaining the sequence of codeword positions based on multiple groups of the third codeword sequence that conforms to the third codebook grouping configuration is the second layer for hierarchical coding. In this way, in the case of multi-level hierarchical coding of the data to be compressed, the reference probability information in multiple reference probability information and the corresponding codebook grouping configuration can also be reused.
[0035] In some implementations, the method further includes receiving: an indication of the position of the sequence of subcodebook indices and / or the sequence of codeword positions in the first layer; an indication of the second target reference probability information and / or the third target reference probability information; and / or the second codeword sequence and / or the third codeword sequence. In this way, it is possible to clearly indicate to the receiving end which layer of hierarchical coding uses the reference probability information in the reference probability information and the corresponding grouping configuration.
[0036] In some implementations, the number of quantization bits for the data to be compressed is determined to be N, and the plurality of reference probability information includes one or more reference probability information corresponding to K probability values, where K∈[1,2 N ] and includes [1,2 N ] In this way, multiple reference probability information can have codeword probability information for all possible numbers of probability values.
[0037] In some implementations, the method further includes: receiving indication information, the indication information indicating the second number of probability values in the third number of probability values of the target reference probability information. In this way, even if the number of probability values in the reference probability information and the actual codeword probability information is different, it is possible to indicate to the receiving end which positions of probability values and / or corresponding codewords are adopted in the codebook grouping.
[0038] In some implementations, the reference probability information in the plurality of reference probability information includes a probability mass function. In this way, a typical probability distribution function can be used to describe the reference probability information.
[0039] In a third aspect of the present application, a communication system is provided, which includes the above-mentioned terminal device and / or network.
[0040] In a fourth aspect of the present application, an electronic device is provided, which includes a processor, configured to execute instructions and / or logic circuits to enable the electronic device to execute any method of the first or second aspect and implementations thereof.
[0041] In some implementations, the electronic device further includes a memory for storing the instructions.
[0042] In a fifth aspect of the present application, a computer-readable storage medium is provided. The computer-readable storage medium stores instructions, which, when executed by an electronic device, cause the electronic device to execute any method of the first or second aspect and its implementation.
[0043] In a sixth aspect of the present application, a computer program product is provided, which includes instructions, and when the instructions are executed by an electronic device, the electronic device executes any method of the first or second aspect and its implementation.
[0044] In the seventh aspect of the application, an electronic device is provided, comprising a module for executing any method of the first or second aspect and its implementation.
[0045] It should be understood that the contents described in the summary of the invention are not intended to limit the key or important features of the present application, nor are they intended to limit the scope of the present application. Other features of the present application will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Embodiments of the present application may be further understood by referring to the following drawings.
[0047] Figure 1 An example communication architecture scenario is shown in which embodiments of the present application can be implemented.
[0048] Figure 2A The signaling process for data compression and transmission according to an embodiment of the present application is shown.
[0049] Figure 2B Another signaling process for data compression and transmission according to an embodiment of the present application is shown.
[0050] Figure 3A Example reference probability information and corresponding codebook grouping configuration according to an embodiment of the present application are shown.
[0051] Figure 3B Another example reference probability information and corresponding codebook grouping configuration according to an embodiment of the present application are shown.
[0052] Figure 4A Reference probability information having a third number of probability values as an example according to an embodiment of the present application is shown.
[0053] Figure 4B Codeword probability information of a codeword sequence having a second number of frequency values as an example according to an embodiment of the present application is shown.
[0054] Figure 5A The fitted probability density function of the codeword probability information of the codeword sequence as an example according to the embodiment of the present application is shown.
[0055] Figure 5B and Figure 5C A fitted probability density function of reference probability information as an example according to an embodiment of the present application is shown.
[0056] Fig. 6A Reference probability information having a third number of probability values and a corresponding codebook grouping configuration according to an embodiment of the present application are shown as an example.
[0057] Figure 6B It shows the application of the second number of codeword frequency values in the reference probability information having the third number of probability values and the corresponding codebook grouping configuration according to an embodiment of the present application.
[0058] Fig. 7A An example of multi-layer hierarchical encoding according to an embodiment of the present application is shown.
[0059] Figure 7B An example of indicating multi-layer hierarchical codes according to an embodiment of the present application is shown.
[0060] Figure 8 An example flow chart of multiplexing a pre-configured codebook structure according to an embodiment of the present application is shown.
[0061] Fig. 9 A flow chart of a method implemented at a terminal device according to an embodiment of the present application is shown.
[0062] Fig.10 A flow chart of a method implemented at a network device according to an embodiment of the present application is shown.
[0063] Fig.11 A simplified block diagram of an example device showing a possible implementation of an embodiment of the present application.
[0064] Fig.12 A simplified block diagram of another example device showing a possible implementation of an embodiment of the present application. DETAILED DESCRIPTION
[0065] The embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be interpreted as being limited to the embodiments described herein. Instead, these embodiments are provided to provide a more thorough and complete understanding of the present application. It should be understood that the drawings and embodiments of the present application are for exemplary purposes and are not intended to limit the scope of protection of the present application.
[0066] In the description of the embodiments of the present application, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0067] The embodiments of the present application may be implemented according to any suitable communication protocol, including but not limited to the fourth generation (4 th generation, 4G), fifth generation (5 th generation, 5G) and the communication protocols that evolve after 5G (for example, the sixth generation (6 th generation, 6G)) and other cellular communication protocols, such as Institute of Electrical and Electronics Engineers (IEEE) 802.11 and other wireless local area network communication protocols, and / or any other protocol currently known or developed in the future.
[0068] The technical solutions of the embodiments of the present application are applied to communication systems that follow any appropriate communication protocols, such as: long term evolution (LTE) systems, frequency division duplex (FDD) systems, time division duplex (TDD) systems, 5G systems (e.g., new radio (NR)) and communication systems evolved after 5G (e.g., sixth generation (6G) systems), etc.
[0069] For the purpose of illustration, the embodiments of the present application are described below with the 5G communication system in 3GPP as the background. However, it should be understood that the embodiments of the present application are not limited to the communication system, but can be applied to any communication system with similar problems, such as wireless local area network (WLAN), wired communication system, or other communication systems developed in the future.
[0070] The term "terminal" or "terminal device" used in this application refers to any terminal device that can communicate with network devices or each other by wire or wirelessly. Terminal devices can sometimes be called user equipment (UE). Terminal devices can be any type of mobile terminal, fixed terminal or portable terminal, smart point of sale (POS) machine, customer-premises equipment (CPE), wireless terminal in industrial control, smart home equipment (e.g., refrigerator, TV, air conditioner, electric meter, etc.), intelligent robot, mechanical arm, workshop equipment, wireless terminal in unmanned driving, wireless terminal in telemedicine, wireless terminal in smart grid (smart grid), wireless terminal in transportation safety, wireless terminal in smart city, or wireless terminal in smart home, flight equipment (e.g., intelligent robot, hot air balloon, drone, airplane), etc. Terminal devices can also be vehicle devices, such as whole vehicle devices, vehicle-mounted modules, vehicle-mounted chips, vehicle-mounted units (on board unit, OBU) or vehicle networking terminal boxes (telematics box, T-BOX), etc., and terminal devices can also be other devices with terminal functions. Terminal devices can be various wireless communication devices with wireless communication functions. With the rise of the Internet of Things (IoT) technology, more and more devices that did not have communication functions before, such as but not limited to household appliances, transportation tools, tools and equipment, service equipment and service facilities, have begun to obtain wireless communication functions by configuring wireless communication units, so that they can access wireless communication networks and accept remote control. Such devices have wireless communication functions because they are configured with wireless communication units, so they also belong to the category of wireless communication devices.As an example, the terminal device may include a mobile cellular phone, a cordless phone, a mobile terminal (mobile terminal, MT), a mobile station, a mobile device, a wireless terminal, a handheld device, a client, a subscription station, a portable subscription station, an Internet node, a communicator, a desktop computer, a laptop computer, a notebook computer, a tablet computer, a personal communication system device, a personal navigation device, a personal digital assistant (personal digital assistant, PDA), a wireless data card, a wireless modem (modulator demodulator, Modem), a positioning device, a radio broadcast receiver, an e-book device, a gaming device, an Internet of Things (IoT) device, a vehicle-mounted device (e.g., a terminal on a car, a bicycle, an electric car, an airplane, a ship, a train, a high-speed railway, etc.), an aircraft, a virtual reality (virtual reality, VR) device, an augmented reality (augmented reality, AR) device, a wearable device (e.g., a smart watch, a smart bracelet, a pedometer, smart glasses, etc.), a terminal device in a 5G network or any terminal device in an evolved public land mobile network (public landmobile network, PLMN), other devices that can be used for communication, or any combination of the above. The embodiments of the present application are not limited to this.
[0071] The term "network node" or "network device" used in this application is an entity or node that can be used to communicate with a terminal device, for example, an access network device. The access network device can be a device deployed in a wireless access network to provide wireless communication functions for mobile terminals, for example, a radio access network (RAN) network device. The access network device may include various types of base stations. The base station is used to provide wireless access services for terminal devices. Specifically, each base station corresponds to a service coverage area, and the terminal device entering the area can communicate with the base station through wireless signals to receive the wireless access service provided by the base station. There may be overlaps between the service coverage areas of the base stations, and the terminal device in the overlapping area can receive wireless signals from multiple base stations, so that multiple base stations can provide services for the terminal device at the same time. Depending on the size of the service coverage area provided, the access network device may include a macro base station providing a macrocell, a micro base station for providing a pico cell, a micro base station for providing a microcell, and a femto base station for providing a femto cell. In addition, the access network equipment may also include various forms of relay stations, access points, remote radio units (RRU), radio heads (RH), remote radio heads (RRH), etc. In systems using different wireless access technologies, the names of access network equipment may be different, such as evolved NodeB (eNB or eNodeB) in the long term evolution (LTE) network, NodeB (NB) in the 3G network, gNB or NR NB in the 5G network, and so on. In some scenarios, the access network equipment may include a central unit (CU) and / or a distributed unit (DU). The CU and DU can be placed in different places, for example: the DU is remote and placed in an area with high traffic volume, and the CU is placed in a central computer room. Alternatively, the CU and DU can also be placed in the same computer room. The CU and DU can also be different components under one rack. For the convenience of description, in the subsequent embodiments of the present application, the above-mentioned devices providing wireless communication functions for mobile terminals are collectively referred to as network devices, and the embodiments of the present application are no longer specifically limited. It can be understood that all or part of the functions of the network devices in the embodiments of the present application can also be implemented by software functions running on hardware, or by virtualization functions instantiated on a platform (such as a cloud platform).
[0072] In the present application, the term "hierarchical coding" refers to dividing the codewords in the total codebook according to a specific grouping configuration to obtain multiple groups, and then further encoding the quantized data to be compressed based on the multiple groups. Additionally, the quantized compressed data is obtained by quantizing the data to be compressed using the total codebook. In this way, the compressed data can be further compressed. The data to be compressed after the above-mentioned hierarchical compression includes two sequences related to each other. Using the codewords in these two sequences and the above-mentioned specific grouping configuration, the corresponding codewords in the total codebook can be addressed and decoded. Without any limitation, one or both of the two sequences obtained after the above-mentioned hierarchical compression can be further hierarchically encoded. Additionally, details about hierarchical coding are also referred to below. Fig. 7A and Figure 7B The embodiments are further described.
[0073] In the present application, the codebook includes one or more codewords, and a codeword is a sequence of bit values having a specific number, and each codeword can be identified by a codeword index or corresponds to a codeword index. Therefore, a data segment in the to-be-compressed data that conforms to a specific bit value sequence can be quantized into a codeword, and the codeword can be identified by a corresponding codeword index. For example, a codeword can be identified by a codeword index c 0 To identify or with c 0 Corresponding.
[0074] In the present application, codeword probability information refers to the probability distribution obtained by sorting the frequency / probability of the codeword according to a certain sorting criterion. The frequency / probability of the codeword refers to the frequency / probability of the codeword appearing in the quantized data to be compressed, or the frequency / probability of the codeword appearing in a specific sequence (for example, a sequence of subcodebook indexes or a sequence of codeword positions corresponding to the subcodebook).
[0075] In this application, probability mass function refers to a function representing one or more probability values of one or more discrete samples. In addition, probability density function refers to a continuous function representing a probability distribution.
[0076] As mentioned above, data compression technology can be further optimized and enhanced. In addition, how to further compress the data required for the calculation complexity between the sending side and the receiving side distribution, and the information required for data decompression between the sending side and the receiving side is also a key aspect.
[0077] For this, a data compression method based on codebook classification is proposed. The ideal codebook classification scheme needs to be determined according to the data to be compressed, but using an algorithm to determine the construction of the hierarchical codebook (or codebook grouping configuration) at the transmitting end will cause additional calculation and additional overhead. Therefore, there are two alternative solutions.
[0078] One alternative is to use random classification at the sending end. This solution has low complexity, but the classification effect is relatively poor, and the effect of further compression is not obvious. Another alternative is to classify based on historical data. However, when the statistical distribution of the data to be compressed changes greatly, the effect of this alternative will also be poor. For example, the effect of entropy coding after classification may be worse than that of direct entropy coding. Therefore, the sending end needs to determine whether to use hierarchical coding. A direct method is to perform hierarchical coding and direct entropy coding at the same time, but deciding based on the output rate will cause a certain amount of additional computation and energy consumption.
[0079] In view of the above analysis and discussion, an embodiment of the present application proposes a technical solution for data compression and transmission. In the technical solution, a terminal device obtains multiple reference probability information and corresponding multiple codebook grouping configurations. In the example, the codebook grouping configuration is determined based on the corresponding reference probability information. Then, when it is determined that there is target reference probability information in the multiple reference probability information, the terminal device performs hierarchical encoding of the data to be compressed based on the first codebook grouping configuration corresponding to the target reference probability information to generate compressed data. The terminal device sends an indication of the target reference probability information and compressed data.
[0080] In this way, the construction of multiple hierarchical codebooks (for example, the above-mentioned multiple codebook group configurations) can be pre-configured at the terminal device or implemented by other devices and notified to the terminal device. Furthermore, the terminal device can select the target hierarchical codebook from the construction of multiple hierarchical codebooks and indicate it to the recipient of the compressed data. In this way, the computational complexity of the encoding end (for example, the terminal device) can be significantly reduced. Therefore, the embodiment of the present application proposes a low-complexity codebook hierarchical construction and a method for determining whether to adopt hierarchical construction, thereby reducing the complexity of the transmitting end.
[0081] Figure 1An example communication architecture scenario 1000 in which an embodiment of the present application can be implemented is shown. The method for data compression and transmission provided in the embodiment of the present application can be applied to the communication architecture scenario 1000. In the communication architecture scenario 1000, multiple devices (e.g., 110a and 110b) that can be collectively referred to as network devices 110 and multiple devices (e.g., 120a, 120b to 120j) that can be collectively referred to as terminal devices 120 are shown. As described above, the terminal device 120 can be any terminal device that can communicate wired or wirelessly with a network device or with each other. The terminal device may sometimes be referred to as user equipment (UE). Without any limitation, the terminal device 120 may also represent any other electronic device having a wireless communication function. In an embodiment of the present application, the network device 110 may be various base stations that provide network access for the terminal device, or may be any other device having a network access function. Without any limitation, the network device 110 may also represent any other electronic device having a wireless communication function. For example, the network device 110 is a node in a radio access network (RAN), which can also be called an access network device, or a RAN node (or device). The network device 110 is used to help the terminal achieve wireless access. The multiple network devices 110 in the communication system 1000 can be nodes of the same type or different types. In some scenarios, the roles of the network device 110 and the terminal 120 are relative, for example, Figure 1 The network element 120i may be a helicopter or a drone, which may be configured as a mobile base station. For the terminals 110 that access the RAN 100 through the network element 120i, the network element 120i is a base station; but for the base station 110a, the network element 120i is a terminal. The network device 110 and the terminal 120 are sometimes referred to as communication devices, for example Figure 1 The network elements 110a and 110b can be understood as communication devices with base station functions, and the network elements 120a-120j can be understood as communication devices with terminal functions. Figure 1 The core network 200 and the Internet 300 are also exemplarily shown.
[0082] In one possible scenario, the network device may be a base station, an evolved NodeB (eNodeB), a transmitting and receiving point (TRP), a transmitting point (TP), a next generation NodeB (gNB), a next generation base station in a sixth generation (6G) mobile communication system, a base station in a future mobile communication system, a satellite, or an access point (AP) in a WiFi system, an integrated access and backhaul (IAB) node, a network device in a mobile switching center non-terrestrial network (NTN) communication system, that is, it can be deployed on a high altitude platform or satellite, etc. The network device may be a macro base station (such as Figure 1 110a in), micro base stations or indoor stations (such as Figure 1 110b in the example), a relay node or a donor node, or a wireless controller in a CRAN scenario. The network device may also be a device that functions as a base station in device-to-device (D2D) communication, Internet of Vehicles communication, drone communication, or machine communication. Optionally, the network device may also be a server, a wearable device, a vehicle or an onboard device, etc. For example, the access network device in the vehicle to everything (V2X) technology may be a road side unit (RSU).
[0083] In another possible scenario, multiple network devices collaborate to assist the terminal in achieving wireless access, and different network devices respectively implement part of the functions of the base station. For example, the network device may be a centralized unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU). The CU and DU may be set separately, or may be included in the same network element, such as a baseband unit (BBU). The RU may be included in a radio frequency device or a radio frequency unit, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). It is understandable that the network device may be a CU node, a DU node, or a device including a CU node and a DU node. In addition, the CU may be divided into a network device in the access network RAN, or the CU may be divided into a network device in the core network CN, without limitation here.
[0084] In different systems, CU (or CU-CP and CU-UP), DU or RU may also have different names, but those skilled in the art can understand their meanings. For example, in the ORAN system, CU may also be called O-CU (open CU), DU may also be called O-DU, CU-CP may also be called O-CU-CP, CU-UP may also be called O-CU-UP, and RU may also be called O-RU. For the convenience of description, CU, CU-CP, CU-UP, DU and RU are described as examples in this application. Any unit of CU (or CU-CP, CU-UP), DU and RU in this application may be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.
[0085] Figure 2A FIG. 2 shows a signaling process 200 for data compression and decompression according to an embodiment of the present disclosure. Figure 2A The first device shown in may be a receiving device for receiving compressed data, and Figure 2A The second device shown may be a sending end device for sending compressed data. Figure 1 Without any limitation, Figure 2A The first device in can be Figure 1 The network device 110 in Figure 2A The second device in can be Figure 1 The terminal device 120 in the embodiment. For the purpose of discussion only, in the following embodiments, the first device may be referred to as the first device 110, and the second device may be referred to as the second device 120. However, it should be understood that the first device 110 may also include other electronic devices, such as terminal devices. Similarly, the second device 120 may also be a network device. In addition, the second device 120 and the first device 110 may also be any other electronic devices with wireless communication capabilities, and the present application does not impose any restrictions on this.
[0086] In the signaling process 200, the second device 120 obtains multiple reference probability information and corresponding multiple codebook grouping configurations. The reference probability information in the multiple reference probability information may indicate multiple probability values. For example, there is a specific number of codewords in the total codebook, and the reference probability information may indicate the specific number of probability values. Without any restriction, the reference probability information may indicate one, two, three or any integer number of probability values. In the example, the reference probability information may be represented by a probability mass function, and the probability mass function may indicate the probability values of multiple samples. Accordingly, the sample representing the probability mass function of the reference probability information may be the corresponding codeword. Without any restriction, the probability information indicating these discrete probability values may also be represented in any other way, for example, a formula or a probability value table for calculating a set of probability values. In the present application, the probability information may also be used interchangeably with the probability mass function.
[0087] In some embodiments, multiple reference probability information corresponds one to one with multiple codebook grouping configurations. Additionally or optionally, multiple reference probability information may also be associated with multiple codebook grouping configurations in other ways, for example, many-to-one or one-to-many ways, and the present application does not impose any restrictions on this. As described above, the reference probability information in the multiple reference probability information includes multiple probability values. In some embodiments, these probability values may be arranged in order from large to small or from small to large. Optionally, these probabilities may also be arranged according to any other predetermined sorting criteria. A codebook grouping configuration corresponding to the reference probability information may indicate a codeword index corresponding to a probability value (or a position of a probability value) in multiple probability values, as well as a grouping configuration indicating multiple codeword indices corresponding to multiple probability values. For clarity of description, refer to Figure 3A To describe the reference probability information and the corresponding codebook grouping configuration.
[0088] Figure 3A Schematic diagram showing example reference probability information and corresponding codebook grouping configuration according to an embodiment of the present application. Figure 3A In , the ordinate represents the probability value (Probability), and the abscissa represents the codeword index (codeword index) associated with the probability value of the position. Figure 3ATaking the following figure in as an example, the four probability values [0.05, 0.1, 0.3, 0.55] sorted from small to large can be one of the reference probability information mentioned above. The codebook grouping configuration corresponding to the reference probability information can indicate a codeword sequence [1, 2, 3, 0], and the elements in the codeword sequence can be the index of the codeword. Since the reference probability information is arranged according to predetermined criteria, the codewords in the codeword sequence can be associated with specific probability values of the codeword probability mass function based on the position of the codeword in the codeword sequence. For example, codeword index 1 is associated with a probability value of 0.05. Optionally, the codebook grouping configuration can also indicate the codeword index corresponding to the probability value in the reference probability information in other ways. In one possible implementation, the codebook grouping configuration also indicates the grouping configuration based on the position of the probability value in the probability mass function. For example, Figure 3A In the example, the codebook grouping configuration indicates that the positions of the first probability value and the third probability value of the probability mass function are one group, and the positions of the second probability value and the fourth probability value are one group. In this case, the grouping of the current codeword sequence [1,2,3,0] corresponding to the reference probability information is: {1,3} and {2,0}. That is, the codewords corresponding to codeword index 1 and codeword index 3 are divided into one group (for example, group 1), and the codewords corresponding to codeword index 2 and codeword index 0 are divided into another group (for example, group 2). In this way, when the order of the indicated codeword sequence changes, or when a new codeword sequence corresponding to the reference probability information is indicated, grouping can still be performed according to the grouping configuration, that is, the new codewords corresponding to the first probability value and the third probability value are divided into one group. Additionally, as described above, in some embodiments, the splitting of the example codeword sequence [1,2,3,0] is implemented or determined based on the probability mass function.
[0089] Referring back to FIG. 2 , in some embodiments, multiple reference probability information and corresponding multiple codebook grouping configurations may be pre-configured at the second device 120 that sends compressed data and the first device 110 that receives compressed data. Additionally or alternatively, the multiple reference probability information and the corresponding multiple codebook grouping configurations may be determined by the first device 110 that receives compressed data, for example, by the network device 110. In this case, the first device 110 may send (201) the multiple reference probability information and the corresponding multiple codebook grouping configurations 203 to the second device 120. Accordingly, the second device 120 receives (205) the multiple reference probability information and the corresponding multiple codebook grouping configurations 203. In some embodiments, the first device 110 may send the multiple reference probability information and the corresponding multiple codebook grouping configurations 203 by sending a reference probability information-codebook set configuration including the multiple reference probability information and the corresponding multiple codebook grouping configurations. The reference probability information-codebook set configuration may also include a configuration index, which may represent one of the multiple reference probability information and the corresponding codebook grouping configuration. Table 1 shows an example of the reference probability information-codebook set configuration.
[0090] Table 1
[0091]
[0092] After acquiring multiple reference probability information and corresponding multiple codebook grouping configurations, if the second device 120 detects that there is data to be compressed to be sent, the second device 120 can determine (212) whether there is target reference probability information close to the statistical information of the data to be compressed in the multiple reference probability information, so as to perform hierarchical coding of the data to be compressed using the grouping configuration corresponding to the target reference probability information. In order to determine the target reference probability information, the second device 120 first determines the statistical information of the data to be compressed. In some embodiments, the second device 120 can quantize the data to be compressed using a total codebook including all codewords to determine the quantized data to be compressed. Furthermore, the second device 120 can determine the frequency of each codeword that appears in the quantized data to be compressed. After determining the frequency of each codeword that appears, the second device 120 can sort the frequency of each codeword according to the same sorting criteria as the multiple reference probability information (for example, from large to small or from small to large) to determine the statistical information of the data to be compressed and the codeword sequence of these codewords. The statistical information can be codeword probability information composed of the frequencies of the sorted codewords. Additionally, the order of the codeword sequence corresponds to the codeword probability information. In the example, if the codeword frequencies of the codewords appearing are arranged in order from small to large, the first codeword in the codeword sequence is the codeword with the lowest frequency, and the last codeword in the codeword sequence is the codeword with the highest frequency. Without any restrictions, the codeword probability information can also be represented by the probability mass function of the codeword. In the present application, the probability mass function of the codeword may also be referred to as the codeword probability mass function. In this case, the number of samples of the codeword probability mass function is equal to the number of codewords appearing in the quantized input data to be compressed. For example, if M codewords in the total codebook including S codewords are used when quantizing the data to be compressed, it is considered that M codewords appear, where S and M are positive integers and M is less than or equal to S. In this case, the number of samples of the codeword probability mass function is equal to M. Then, according to the frequencies of occurrence of the M codewords, the frequency values of the M codewords are sorted according to the same sorting criteria as the reference probability information (e.g., from small to large or from large to small) to determine the codeword probability mass function. Additionally, the sequence of codewords corresponding to the sorted codeword frequency values of the codeword probability mass function is the codeword sequence in the present application. Additionally, in the present application, the codeword probability information can be used interchangeably with the codeword probability mass function without any limitation.
[0093] After determining the statistical information (e.g., codeword probability information) and the corresponding codeword sequence of the data to be compressed, the second device 120 determines whether there is target reference probability information in the multiple reference probability information. In some embodiments, the difference between the target reference probability information and the quantized codeword probability information of the data to be compressed is less than or equal to a threshold. For example, the second device 120 determines multiple differences between multiple reference probability information and the codeword probability information. Then, the second device 120 finds a target difference that is less than or equal to the threshold from the multiple differences. In this case, the second device 120 can select the reference probability information whose difference with the codeword probability information is equal to the target difference as the target reference probability information. Alternatively, the second device 120 can select a reference probability information with the smallest difference with the codeword probability information from multiple reference probability information. If the difference between the one reference probability information and the codeword probability information is less than or equal to the threshold, the one reference probability information is selected as the target reference probability information. In some embodiments, in the case of reference probability information represented by a probability mass function, the above difference can be a KL divergence (Kull-Leibler divergence). That is, the above difference is determined by calculating the KL divergence between the reference probability information and the codeword probability mass function.
[0094] Additionally, in some cases, the number of multiple codewords appearing in the quantized data to be compressed may not match the number of probability values in the reference probability information in the multiple reference probability information. In this case, it is not possible to select the target reference probability information by calculating the difference (or distance) between the codeword probability information (e.g., codeword probability mass function) and the reference probability information (e.g., reference probability mass function). For clarity of description, refer to Figure 4A and Figure 4B The above example of the mismatch in the number of probability values is further described.
[0095] Figure 4A FIG. 4 shows reference probability information having a third number of probability values as an example according to an embodiment of the present application. Figure 4A In , the ordinate represents the probability value (probability), and the abscissa represents the codeword index (codeword index) corresponding to (the position of) the probability value. Figure 4A A reference probability information corresponding to eight codeword indices for three quantization bits is shown in FIG. As shown in 410 , in this example, the third number is equal to 8, without any limitation, and in other reference probability information, the third number may be equal to other values.
[0096] Figure 4B FIG. 4 shows a codeword probability mass function of a codeword sequence having a second number of frequency values as an example according to an embodiment of the present application. Figure 4B In , the ordinate represents the probability value (probability), and the abscissa represents the codeword index (codeword index) corresponding to the probability value (position). As mentioned above, not all codewords may appear in the quantized data to be compressed. Figure 4B In the example of , it is assumed that 3 quantization bits are also used, but only 6 code words may appear in the quantized data to be compressed, as shown in 420. In this case, the probability mass function of the code word can be as follows Figure 4B In this case, the reference probability information may not match the codeword probability mass function corresponding to the codeword index after data compression and quantization at the transmitting end, that is, the number of indices contained in the two is different.
[0097] Back to Figure 2A In this regard, the embodiments of the present application provide two alternative solutions. In the first alternative solution, if the number of quantization bits for the data to be compressed is N, where N is a positive integer, the number of probability values included in the plurality of reference probability information is less than or equal to 2. N Additionally, for the probability mass functions with less than 2 N A specific number of probability values of probability values, there is at least one probability mass function. In the example, the multiple reference probability information includes one or more reference probability information corresponding to K probability values, where K∈[1,2N] and includes all integers in the interval [1,2N]. In another example, if the number of quantization bits is 3 (i.e., corresponding to 8 codeword indices), the size of the reference probability information used by the first device 110 is less than or equal to 8. In this case, the first device 110 sends a set of all reference probability information whose size is less than or equal to 8.
[0098] In the second alternative, the second device 120 may also fit the reference probability information and the quantized codeword probability information of the data to be compressed into continuous functions, and calculate the difference between these continuous functions, so as to select the target reference probability information. In an embodiment of the present application, the continuous function obtained by fitting may also be referred to as a probability density function. In some embodiments, when the number of probability values of the first reference probability information in the plurality of reference probability information is different from the number of codewords appearing in the quantized data to be compressed, the second device 120 may determine the first probability density function corresponding to the first reference probability information (e.g., the first reference probability mass function). In addition, the second device 120 may also determine the codeword probability density function of the quantized codeword probability information (e.g., the codeword probability mass function) of the data to be compressed. In this case, the determination of the above difference may be performed by determining the difference between the first reference probability density function and the codeword probability density function. For example, if the difference between the first reference probability density function and the codeword probability density function is less than or equal to a threshold value, the first reference probability information corresponding to the first probability density function may be determined as the target reference probability information. In the example, if the quantization bit is N, the first device 110 may send a quantization bit of size 2 to the second device 120. N The number of reference probability information is 2, that is, the number of probability values (or the corresponding number of codewords) in the reference probability information is 2. N indivual.
[0099] For the sake of clarity, the embodiments of the probability density function are also referred to Figure 5A-Figure 5C To describe. Figure 5A-Figure 5C In , the ordinate represents the probability value, and the abscissa represents the codeword index corresponding to the probability value.
[0100] Figure 5A The codeword probability information represented by the codeword probability mass function of the codeword sequence as an example according to the embodiment of the present application is shown. In addition, Figure 5A Also shown is the fitting of the codeword probability mass function to a probability density function (PDF). Figure 5A In the example of , the second device 120 fits the codeword probability mass function (discrete function) corresponding to the quantized data to be compressed into a codeword probability density function (i.e., continuous function / curve 510). In addition, the second device 120 also fits each of the multiple reference probability information into a corresponding reference probability density function.
[0101] Figure 5B and Figure 5C FIG. 4 shows a fitted probability density function of reference probability information as an example according to an embodiment of the present application. Figure 5B and Figure 5C As shown in the example of , the second device 120 fits the first reference probability information among the multiple reference probability information to the first reference probability density function 520, and fits the second reference probability information among the multiple reference probability information to the second reference probability density function 530, and so on. In this case, in order to calculate the difference between the multiple reference probability information and the codeword probability mass function, the second device 120 may determine the difference between the codeword probability density function 510 and the multiple reference probability density functions (e.g., reference probability density functions 520 and 530).
[0102] Reference Figure 2A Alternatively, if the target reference probability information does not exist in the multiple reference probability information, the second device 120 can directly send (214) the quantized data to be compressed 216 to the first device 110. Additionally, the second device 120 can also entropy encode the quantized data to be compressed to generate compressed data (in the embodiment of the present application, the compressed data generated by entropy encoding is also referred to as additional compressed data). Then, the second device 120 sends (214) the additional compressed data 216 generated by entropy encoding to the first device 110. Accordingly, the first device 110 can receive (218) the quantized data to be compressed or the additional compressed data 216.
[0103] In turn, if it is determined that there is target reference probability information in multiple reference probability information, the second device 120 performs (220) hierarchical encoding of the data to be compressed to generate compressed data based on the first codebook grouping configuration corresponding to the target reference probability information. In addition, the hierarchical encoding is also based on the codeword sequence generated when determining the quantized codeword probability information of the data to be compressed, that is, the sequence of codewords corresponding to the frequency value position in the codeword probability information. Specifically, the second device 120 splits the codeword sequence based on the first codebook grouping configuration to determine multiple groups of the codeword sequence that conform to the first codebook grouping configuration. Furthermore, the second device 120 uses the multiple groups of the codeword sequence to perform hierarchical encoding of the data to be compressed. For the sake of clarity of description, refer also to Figure 3A and Figure 3B A codeword sequence and a plurality of groups of the codeword sequence conforming to a first codebook grouping configuration are described.
[0104] As mentioned above, Figure 3A The following figure in is a reference probability information among multiple reference probability information. The grouping configuration corresponding to the reference probability information is: grouping the codeword indexes associated with the first and third probability values into one group, and grouping the codeword indexes associated with the second and fourth probability values into one group. As shown in the figure, if the sequence corresponding to the reference probability information is [1,2,3,0], the grouping situations are {1,3} and {2,0}.
[0105] Figure 3A The figure above is the codeword probability mass function of the quantized data to be compressed and the corresponding codeword sequence determined by the second device 120. Assume that the second device 120 selects Figure 3A The reference probability information in the figure below is used as the target reference probability information. In this case, due to the codeword sequence corresponding to the codeword probability mass function (i.e., [c 2 ,c 0 ,c 1 ,c 3 ]) is different from the initial codeword sequence corresponding to the reference probability information (ie, [c 1 ,c 2 ,c 3 ,c 0 ]), the second device 120 needs to indicate the codeword sequence [c 2 ,c 0 ,c 1 ,c 3 ], so that the first device 110 understands the new plurality of groups that conform to the first codebook grouping configuration. For example, when the second device 120 selects Figure 3A After the reference probability information in the figure below is used as the target reference probability information, the second device 120 groups the sequence [2, 0, 1, 3] corresponding to the codeword probability mass function based on the grouping configuration corresponding to the reference probability mass. In this case, multiple groups of the codeword sequence need to conform to: {2, 1} and {0, 3}.
[0106] Figure 3B Another example reference probability information and corresponding codebook grouping configuration according to an embodiment of the present application are shown. Figure 3B In , the abscissa is the codeword index, and the ordinate is the probability value (or codeword frequency value). Figure 3B The left figure in FIG. 1 is target reference probability information determined from multiple reference probability information, and the right figure is a codeword probability mass function of a quantized codeword sequence determined by the second device 120. Figure 3B As shown in the middle left figure, the first codebook grouping configuration corresponding to the target reference probability information indicates that the codeword indexes corresponding to the twelfth probability value and the fifteenth probability value in the sorting can be grouped into one group. Assume that the codeword sequence [c 0 ,c 2 ,c 15 ,…,c 8 ], the codeword corresponding to the twelfth probability value is c 10 , the code word corresponding to the fifteenth probability value is c 8 In this case, the codeword c 10 and c 8In this way, if the second device 120 sends a codeword sequence for hierarchical coding to the first device 110, the first device 110 can understand that the actual grouping situation for hierarchical coding needs to be obtained by splitting the received codeword sequence according to the first codebook grouping configuration.
[0107] For the sake of clarity, a simple example of hierarchical coding is shown. Assume that the quantized data to be compressed is represented by codeword index {2, 3, 3, 1, 0, 1}, and the grouping of the codeword sequence is F 0 ={2,1} and F 1 ={0,3}, where F 0 and F 1 It can also be called a "subcodebook". In this case, the quantized data to be compressed {2,3,3,1,0,1} can be hierarchically encoded into a first-level sequence: {0,1,1,0,1,0}, and a second-level sequence: {0,1,1,1,0,1}, where the first-level sequence can also be called a sequence of subcodebook indexes, and the second-level sequence can also be called a sequence of codeword positions corresponding to the subcodebook. For example, the first element in the first-level sequence indicates the subcodebook F 0 (including codeword 2), the first element in the second-level sequence indicates the 0 In this way, with the help of the first-level sequence and the second-level sequence, the receiving end can restore the quantized codeword of the data to be compressed from the compressed data after hierarchical encoding.
[0108] Furthermore, after generating the compressed data, the second device 120 sends (230) an indication of the target reference probability information and compressed data 235 to the first device 110. Accordingly, the first device 110 receives (240) the indication of the target reference probability information and the compressed data 235. In some embodiments, a default codebook group corresponding to the reference probability information can be pre-configured for each reference probability information. If the second device 120 only sends the indication of the target reference probability information and the compressed data to the first device 110, the first device 110 can use the default codebook group to decode the compressed data. In addition, each reference probability information can correspond to a plurality of default codebook groups, which can be pre-configured on both the transmitting and receiving sides, so that the second device 120 can also send an indication of the default codebook group. Alternatively, the second device 120 can directly send (241) a codeword sequence 242 for hierarchical coding to the first device 110. Accordingly, the first device 110 receives (243) a codeword sequence 242 for hierarchical coding. As described above, the order of the codeword sequence for hierarchical coding (i.e., the codeword sequence determined by determining the codeword probability mass function) is related to the probability value distribution in the target reference probability information. In this way, the first device 110 can determine the actual codebook grouping for hierarchical coding based on the first codebook grouping configuration (as described above, the grouping configuration is indicated by indicating the position of the probability value) and the codeword sequence.
[0109] Additionally, as described above, the second device 120 may select target reference probability information that does not match the codeword probability mass function in terms of the number of probability values. In this case, the second device 120 needs to send (245) additional indication information 246 to indicate which positions in the target probability mass function are adopted, so that the first device 110 can determine the grouping configuration of the codeword sequence. In some embodiments, if the above-mentioned first reference probability information is selected as the target reference probability information, the first indication of the target reference probability information may be an indication of the first reference probability information or a configuration index of the first reference probability information. In addition, since only a second number of codewords (e.g., 6) appear in the quantized data to be compressed, the second device 120 needs to select a second number of probability values from the third number of probability values (e.g., 8) of the first reference probability information as the adopted probability value, so as to perform grouping of the codeword sequence based on the grouping configuration corresponding to the first reference probability information.
[0110] In some embodiments, for the first codeword frequency in the codeword probability mass function, the second device 120 can find the closest first probability value from the third number of the first reference probability information, and record the probability value or the position of the probability value. Furthermore, for the second codeword frequency in the codeword probability mass function, the second device 120 can find the closest second probability value from the third number of the first reference probability information, and the second probability value is different from the first probability value. That is, the second device 120 needs to select the second number of probability values that correspond one-to-one to the codeword frequency value in the codeword probability mass function from the third number of probability values, and record information indicating the second number of probability values.
[0111] Back to Figure 2A , the second device 120 may send (245) indication information 246 indicating the second number of probability values in the third number of probability values to the first device 110. Accordingly, the second device 110 receives (247) indication information 246 indicating the second number of probability values in the third number of probability values. In this way, the second device 110 can group the second number of codeword sequences based on the first codebook grouping configuration corresponding to the target reference probability information, for example, grouping according to the position of the second number of probability values indicated in the third number of probability values. For the sake of clarity, the above indication information also refers to Fig. 6A and Figure 6B Give a description.
[0112] Fig. 6A FIG. 2 shows reference probability information having a third number of probability values and a corresponding codebook grouping configuration as an example according to an embodiment of the present application. Fig. 6A In the example of , a codebook grouping configuration corresponding to the reference probability information having a third number of probability values is shown. In the codebook grouping configuration, the codewords corresponding to the codeword index "6" and the codeword index "0" identified by the probability value position 610 are grouped together, and the codewords corresponding to the codeword index "4" and the codeword index "3" identified by the probability value position 620 are grouped together. In addition, the indication information 244 indicates that the second number of probability values (i.e., the six probability values in the dotted box) in the third number of probability values is selected. For example, for Fig. 6A The second device 120 may upload the configuration index of the selected target reference probability information, the codeword sequence (eg [c 2 ,c 0 ,c 1 ,c 3 ,c 5 ,c 4]) and the position of the codeword in the codeword sequence in the target reference probability information. In the example, the indication information 246 can be represented by a bitmap: [1,1,1,0,1,0,1,1], where 1 represents the selected probability value position in the third number of probability values, and 0 represents the unselected probability value position.
[0113] Figure 6B FIG. 4 shows an example of applying a second number of codeword frequency values and a corresponding codebook grouping configuration in reference probability information having a third number of probability values according to an embodiment of the present application. Fig. 6A As described, the indication information 244 indicates that the second number of probability values (i.e., the six probability values in the dotted box) in the third number of probability values is selected. In this case, the codeword corresponding to the codeword index "0" indicated by the probability value position 630 is grouped separately because the probability value at the probability value position 610 is not selected. Similarly, the codeword at the probability value position 640 is also grouped separately. That is, the second device 120 finds the probability value closest to the frequency value of the codeword probability mass function in the target reference probability information, such as the six probability values marked by the dotted line. Furthermore, according to the grouping of these six probability value positions, the codewords at the second device 120 are grouped.
[0114] Back to Figure 2A As described above, multi-layer hierarchical coding may also be used, for example, the sequence of the sub-codebook index (or the first-level sequence) and / or the sequence of the codeword position corresponding to the sub-codebook index (or the second-level sequence) may be further grouped, and hierarchically encoded based on the further grouping. In this case, the hierarchical coding of the next layer may also reuse multiple reference probability information. In addition, the second device 120 needs to send (252) additional information 254 to the first device 110 to indicate which sequences are further hierarchically encoded, which reference probability information is used, and another codeword sequence corresponding to the reference probability information used. For clarity of description, the embodiments of multi-layer hierarchical coding will refer to Fig. 7A and Figure 7B Give a description.
[0115] Fig. 7A An example of multi-layer hierarchical coding according to an embodiment of the present application is shown. Fig. 7AAs shown in , the original index sequence 710 may be the above-mentioned quantized data to be compressed, the first-level sequence 720 may be the above-mentioned sequence of sub-codebook indexes, and the second-level sequence 730 may be the above-mentioned sequence of codeword positions corresponding to the sub-codebook indexes. In the example, the sequence 720 of the sub-codebook indexes is further hierarchically encoded into a first-level sequence 740 of the second layer and a second-level sequence 750 of the second layer. The sequence 730 of the codeword position is further hierarchically encoded into a first-level sequence 760 and a second-level sequence 770 of the second layer. For clarity of description, in an embodiment of the present application, the codeword sequence corresponding to the codeword probability mass function of the quantized data to be compressed may be referred to as a first codeword sequence, and the above-mentioned target reference probability information may be referred to as first target reference probability information.
[0116] In some embodiments, the second device 120 may determine the codeword probability mass function of the sequence of the subcodebook index, and the second codeword sequence, and the second codeword sequence is determined by determining the codeword probability information of the sequence of the subcodebook index. In other words, the sorting position of the second codeword sequence is associated with the codeword probability information of the sequence of the subcodebook index. Additionally, the codeword probability information of the subcodebook index and the second codeword sequence may be determined in the same manner as determining the codeword probability information of the quantized data to be compressed and the first codeword sequence. For example, the index of the subcodebook that appears in the sequence of the subcodebook index is regarded as a "codeword", and the codeword probability information of the subcodebook index and the second codeword sequence are determined by determining the frequency of the subcodebook index in the sequence of the subcodebook index. Furthermore, the second device 120 may select a second target reference probability information close to the codeword probability mass function of the sequence of the subcodebook index from multiple reference probability information in the same manner as above. After determining the second codeword sequence and the second target reference probability information, the second device 120 may send (252) an indication of the second target reference probability information and the second codeword sequence 254 to the first device 110. In addition, the second device 120 also needs to indicate (254) to the first device 110 the position of the first level sequence 720 in the plurality of layers, for example, indicating position 0 of the first layer.
[0117] Additionally or alternatively, if the sequence 730 of codeword positions is also further hierarchically encoded, the second device 120 may determine the third target reference probability information and the third codeword sequence in the same manner as the sequence 720 of subcodebook indices. Furthermore, the second device 120 may send (252) an indication of the second target reference probability information, the second codeword sequence 254, and an indication 254 of position 1 of the first layer to the first device 110. Accordingly, the first device 110 may receive (256) the above-mentioned indication of the sequence position in one layer of the multi-layer hierarchical encoding, the second codeword sequence and / or the third codeword sequence, and an indication 254 of the second target probability mass function and / or the third probability mass function. Without any limitation, as Fig. 7A As shown in , the second device 120 can further hierarchically encode the sequence in the layer 2, for example, using the same method.
[0118] Figure 7B An example of indicating a multi-layer hierarchical code according to an embodiment of the present application is shown. Figure 7B As shown in , the second device 120 can use a tree diagram to indicate which sequences in which layers are further hierarchically encoded to the first device 110. For example, one bit is used to indicate that the bit at the corresponding position is "1" to indicate that it is further hierarchically encoded, and the bit at the corresponding position is "0" to indicate that it is not further hierarchically encoded.
[0119] In a specific example of multi-layer hierarchical coding, according to the configuration of the number of quantization bits, the first device 110 sends a set of reference probability information corresponding to the number of quantization bits to the second device 120. The set includes two types of information: 1) reference probability information (multiple); 2) codebook grouping indication information corresponding to each reference probability information. Furthermore, after obtaining the quantized data to be compressed (for example, the quantized index sequence), the second device 120 counts the frequency of occurrence of each index in the index sequence. The second device 120 sorts the frequencies in a certain order, for example, from small to large, to obtain the corresponding codeword probability mass function, which can be obtained by The second device 120 calculates the difference between the codeword probability mass function and the distance between the reference probability information in the reference probability information set, such as KL-divergence.
[0120] If there is a reference probability information in the set, it can be obtained by To represent, and the difference is less than the threshold, that is in represents the difference distance between the reference probability information and the codeword probability mass function and thd represents the threshold. Then the second device 120 can use the corresponding codebook grouping configuration to group the codewords at the corresponding positions. If it does not exist, that is, Then the second device 120 can directly entropy encode. Additionally, if the target reference probability information can be found, the second device 120 can also repeat the above operation on the hierarchical index sequence until the current hierarchical index sequence satisfies that the reference probability information that meets the threshold requirement cannot be found (that is, direct entropy encoding can be selected) or the maximum number of hierarchical layers is reached.
[0121] In this case, the second device 120 may send: codebook grouping indication information (for example, Figure 7B The tree diagram in the figure); the reference probability information configuration index (multiple) corresponding to the codebook selected by each level: the codebook group indication information used to indicate which reference probability information configuration is used. For example, if the codebook group indication information configured with different reference probability information is selected by the level of two sequences in the first level, then there are two corresponding probability information configuration indexes; the sorted codeword sequence corresponding to the level of each level; and the position of the level corresponding to each sorted codeword sequence: for example, a sorted codeword sequence corresponds to the level of position 0 in the first level. Reference back Figure 2A After receiving (240) the indication of the target reference probability information, the codeword sequence, and the compressed data 235, the first device 110 can perform a decompression operation (258) on the received data.
[0122] As another example, Figure 2B Another signaling process 260 for data compression and transmission according to an embodiment of the present application is shown. According to an embodiment of the present application, a codebook hierarchical structure (e.g., a codebook group configuration) can be generated offline by an algorithm at a receiving end (e.g., a first device 110), thereby transferring the complexity of the hierarchical codebook structure of the transmitting end to the receiving end. Then, at each communication, the hierarchical scheme is embedded in the statistical information, specifically, embedded in the reference probability information, and then sent 270 to the transmitting end (e.g., the second device 120).
[0123] At the sending end, given a set of data to be compressed The second device 120 uses the total codebook The data is quantized to obtain a corresponding index sequence. Then, the second device 120 counts the frequency of occurrence of each index in the index sequence and sorts the frequencies in a certain order, such as from small to large, to obtain corresponding sorted probability information (orderedstatistic), recorded as The second device 120 calculates the distance difference between the probability information obtained after sorting the codeword frequencies (eg, the probability mass function of the codeword) and the reference probability information in the plurality of reference probability information, such as KL-divergence.
[0124] If there is a reference probability information in the set, it can be obtained by To represent, and the difference is less than the threshold, that is The second device 120 may adopt the codebook grouping configuration corresponding to 280 to group the codewords at the corresponding positions. Then the second device 120 can directly perform 280 entropy coding. In this way, the above embodiment provides a low-complexity judgment method, that is, when to use hierarchical coding. Specifically, the first device 110 can send a reference probability information set including the following items: reference probability information (multiple), and codebook grouping indication information (corresponding to each probability mass function). The second device 120 can upload (290): indication information: an indication of whether to use the codebook grouping configuration of the reference probability information; a sorted codeword sequence; a selected reference probability information number; and data compressed based on the codebook grouping configuration corresponding to the reference probability information.
[0125] Figure 8 FIG. 2 shows an example flow chart of reusing a pre-configured codebook structure according to an embodiment of the present application. Figure 8 As shown in , at 810, codebook grouping information (or codebook grouping configuration) can be embedded in sorting statistical information (or reference probability information). At 820, the base station sends a reference probability information set (including the corresponding grouping method / configuration). At 830, the second device 120 (e.g., UE) determines whether the quantized data to be compressed has the same or similar reference probability value quality function. If so, the grouping configuration corresponding to the same or similar reference probability information is adopted. At 840, UE 110 encodes with a hierarchical codebook and tells the first device 110 (e.g., base station) the codeword sequence used for hierarchical encoding.
[0126] In summary, the embodiment of the present application provides a hierarchical codebook construction indication scheme based on reference probability information, which can effectively reduce the complexity of the encoding end. In addition, the embodiment of the present application also provides a low-complexity and low-power (only one threshold can be used for judgment) compression mode judgment method, which can effectively judge whether to use the hierarchical codebook encoding configured with reference probability information or directly use entropy coding.
[0127] Fig. 9 A flowchart 900 of a method implemented at a second device according to an embodiment of the present application is shown. In one possible implementation, the method 900 may be implemented by a terminal device 120 in the example environment 100. In other possible implementations, the method 900 may also be implemented by other electronic devices independent of the example environment 100. As an example, the method 900 will be described below by taking the method 900 implemented by the terminal device 120 in the example environment 100 as an example.
[0128] At 910, the terminal device 120 obtains a plurality of reference probability information and a corresponding plurality of codebook grouping configurations. At 920, when it is determined that there is target reference probability information in the plurality of reference probability information, the terminal device 120 performs hierarchical encoding of the data to be compressed based on the first codebook grouping configuration corresponding to the target reference probability information to generate compressed data. At 930, the terminal device 120 sends an indication of the target reference probability information, a codeword sequence for hierarchical encoding, and compressed data.
[0129] Fig.10 A flowchart 1000 of a method implemented at a first device according to an embodiment of the present application is shown. In one possible implementation, the method 1000 may be implemented by a network device 110 in the example environment 100. In other possible implementations, the method 1000 may also be implemented by other electronic devices independent of the example environment 100. As an example, the method 1000 will be described below by taking the method 1000 implemented by the network device 110 in the example environment 100 as an example.
[0130] At 1010, the network device 110 receives an indication of target reference probability information among multiple reference probability information, a codeword sequence for hierarchical encoding, and compressed data. The compressed data is determined by performing hierarchical encoding of the data to be compressed based on a first codebook grouping configuration among multiple codebook grouping configurations, the multiple codebook grouping configurations corresponding to the multiple reference probability information and the first codebook grouping configuration corresponding to the target reference probability information. At 1020, the network device decompresses the compressed data based on the first codebook grouping configuration and the codeword sequence.
[0131] Fig.11 and Fig.12 The following is a schematic diagram of the structure of possible communication devices provided in the embodiments of the present application. These communication devices can implement the functions of the sensing device or the server device in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments. In the embodiments of the present application, the communication device can be as follows: Figure 1 Any network element device or terminal device shown may also be a module (such as a chip) applied to the device.
[0132] like Fig.11 As shown, the communication device 1100 includes a transceiver module 1101 and a processing module 1102. The communication device 1100 is used to implement the above Figures 1 to 10 Functions of the first device and the second device in the embodiment shown.
[0133] like Fig.12The communication device 1200 includes a processor 1210 and an interface circuit 1220. The processor 1210 and the interface circuit 1220 are coupled to each other. It is understood that the interface circuit 1220 can be a transceiver or an input-output interface. Optionally, the communication device 1200 may also include a memory 1230 for storing instructions executed by the processor 810 or storing input data required by the processor 1210 to execute instructions or storing data generated after the processor 1210 executes instructions.
[0134] When the communication device 1200 is used to implement the method in the above method embodiment, the processor 1210 is used to execute the function of the above processing module 1102, and the interface circuit 1220 is used to execute the function of the above transceiver module 1101.
[0135] When the above communication device is a chip applied to a terminal device, the terminal device chip implements the functions of the terminal device in the above method embodiment. The terminal device chip receives information from other modules in the terminal device (such as a radio frequency module or an antenna), and the information is sent by the network device to the terminal device; or the terminal device chip sends information to other modules in the terminal device (such as a radio frequency module or an antenna), and the information is sent by the terminal device to the network device.
[0136] When the above communication device is a chip applied to a network device, the network device chip implements the function of the network device in the above method embodiment. The network device chip receives information from other modules in the network device (such as a radio frequency module or an antenna), and the information is sent by the terminal device to the network device; or the network device chip sends information to other modules in the network device (such as a radio frequency module or an antenna), and the information is sent by the network device to the terminal device.
[0137] It is understood that the processor in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. The general-purpose processor may be a microprocessor or any conventional processor.
[0138] The present application embodiment provides a communication system. The communication system may include the above-mentioned Figures 2 to 3. Fig.10Optionally, the network management device in the communication system may execute the steps of FIG. 2 to FIG. Figure 8 Any of the communication methods shown in .
[0139] The present application also provides a circuit that can be coupled to a memory and can be used to execute a process related to a terminal device or a network device in any of the above method embodiments. The chip system may include the chip and other components such as a memory or a transceiver.
[0140] It should be understood that the processor mentioned in the embodiments of the present application may be a CPU, or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.
[0141] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (doubledatarate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (synchlink DRAM, SLDRAM), and direct rambus RAM (DR RAM).
[0142] It should be noted that when the processor is a general-purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, the memory (storage module) is integrated in the processor.
[0143] It should be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0144] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0145] Those of ordinary skill in the art will appreciate that the modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0146] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0147] In the several embodiments provided in the present application, it should be understood that the disclosed communication methods and devices can be implemented in other ways. For example, the device embodiments described above are schematic, for example, the division of the module is a logical function division, and there may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0148] The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0149] In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
[0150] If the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or the part that makes the contribution or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method in each embodiment of the present application. The aforementioned computer-readable storage medium can be any available medium that can be accessed by a computer. By way of example but not limitation, computer-readable media may include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM), universal serial bus flash disk, mobile hard disk, or other optical disk storage, magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer.
[0151] As used herein, the term "including" and similar terms should be understood as open inclusion, i.e., "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. can refer to different or identical objects, and are used to distinguish the objects referred to, without implying a specific spatial order, temporal order, order of importance, etc. of the objects referred to. In some embodiments, values, processes, selected items, determined items, equipment, devices, means, components, assemblies, etc. are referred to as "best", "lowest", "highest", "minimum", "maximum", etc. It should be understood that such descriptions are intended to indicate that a selection can be made among many available functional options, and such selections do not need to be better, lower, higher, smaller, larger or otherwise preferred than other options in other aspects or all aspects. As used herein, the term "determine" can cover a variety of actions. For example, "determine" can include calculation, calculation, processing, export, investigation, search (e.g., search in a table, database or another data structure), ascertainment, etc. Additionally, "determining" may include receiving (eg, receiving information), accessing (eg, accessing data in a memory), etc. Furthermore, "determining" may include resolving, selecting, choosing, establishing, etc.
[0152] The above is only a specific implementation of the present application, but the protection scope of the embodiments of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or replacements within the technical scope disclosed in the embodiments of the present application, which should be included in the protection scope of the embodiments of the present application. Therefore, the protection scope of the embodiments of the present application shall be based on the protection scope of the claims.
Claims
1. A method comprising: Acquire multiple reference probability information and corresponding multiple codebook grouping configurations; In a case where there is target reference probability information among the plurality of reference probability information, performing hierarchical encoding of the data to be compressed based on a first codebook grouping configuration corresponding to the target reference probability information to generate compressed data; as well as An indication of the target reference probability information is sent along with the compressed data.
2. The method according to claim 1, further comprising: A codeword sequence for hierarchical encoding is sent.
3. The method according to claim 1 or 2, wherein: The reference probability information in the plurality of reference probability information includes a first number of probability values, The codebook grouping configuration corresponding to the reference probability information is determined by splitting the first number of codewords, and Codewords of the first number of codewords are associated with probability values of the first number of probability values, and the splitting of the first number of codewords is performed based on the first number of probability values. The method according to claim 3 , wherein the order of the first number of probability values comprises an order from large to small or an order from small to large.
5. The method according to any one of claims 1 to 4, wherein acquiring the plurality of reference probability information and the codebook grouping configuration comprises: A reference probability information-codebook set configuration is received, wherein the reference probability information-codebook set configuration includes the multiple reference probability information, the multiple codebook grouping configurations and the corresponding multiple configuration indexes, wherein the indication of the target reference probability information includes the configuration index corresponding to the target reference probability information.
6. The method according to any one of claims 1 to 5, further comprising: Obtain quantized codeword probability information and a codeword sequence of the data to be compressed, wherein the ordering criteria of the frequencies of the codewords in the codeword probability information are the same as the ordering criteria of the probability values in the multiple reference probability information and the order of the codeword sequence corresponds to the order of the probability values in the codeword probability information. 7 . The method according to claim 6 , wherein the difference between the target reference probability information and the quantized codeword probability information of the to-be-compressed data is less than or equal to a threshold.
8. The method according to claim 7, wherein performing the hierarchical encoding of the data to be compressed comprises: Splitting the codeword sequence based on the first codebook grouping configuration to determine a plurality of groups of the codeword sequence that conform to the first codebook grouping configuration, wherein codewords in the codeword sequence are associated with probability values in the target reference probability information; as well as The hierarchical encoding of the data to be compressed is performed based on the multiple groups of the codeword sequence.
9. The method according to claim 8, wherein there is at least one group among the plurality of groups, the number of codewords in the at least one group being different from the number of codewords in the corresponding group in the first codebook grouping configuration.
10. The method according to any one of claims 7 to 9, wherein the dissimilarity comprises KL divergence (Kull-Leibler divergence).
11. The method according to any one of claims 1 to 10, further comprising: In the case where it is determined that the target reference probability information does not exist, sending the quantized data to be compressed or other compressed data, The additional compressed data is generated by performing entropy coding on the quantized data to be compressed.
12. The method according to any one of claims 1 to 11, further comprising: An indication of whether to perform hierarchical encoding based on the plurality of codebook grouping configurations is transmitted.
13. The method according to any one of claims 1 to 12, wherein the target reference probability information is first target reference probability information, and the to-be-compressed data is hierarchically encoded into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on a plurality of groups of a first codeword sequence conforming to the first codebook grouping configuration, the method further comprising: Based on a second codebook grouping configuration corresponding to second target reference probability information in the plurality of reference probability information, splitting the second codeword sequence to determine a plurality of groups of the second codeword sequence conforming to the second codebook grouping configuration, The difference between the second target reference probability information and the codeword probability information of the sequence indexed by the sub-codebook is less than a threshold, and the second codeword sequence is determined by determining the codeword probability information of the sequence indexed by the sub-codebook.
14. The method according to any one of claims 1 to 13, wherein: The target reference probability information is first target reference probability information, and the to-be-compressed data is hierarchically encoded into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on a plurality of groups of a first codeword sequence conforming to the first codebook grouping configuration, and the method further includes: splitting the third codeword sequence based on a third codebook grouping configuration corresponding to third target reference probability information in the plurality of reference probability information to determine a plurality of groups of the third codeword sequence conforming to the third codebook grouping configuration, The difference between the third target reference probability information and the codeword probability information of the sequence of codeword positions is less than a threshold, and the third codeword sequence is determined by determining the codeword probability information of the sequence of codeword positions.
15. The method according to claim 13 or 14, wherein the sequence of subcodebook indexes and the sequence of codeword positions are a first layer for hierarchical coding, a sequence obtained by hierarchically obtaining the sequence of subcodebook indexes based on multiple groups of the second codeword sequence and another sequence obtained by hierarchically obtaining the sequence of codeword positions based on multiple groups of the third codeword sequence are a second layer for hierarchical coding, and the method further comprises sending: an indication of a position of the sequence of subcodebook indices and / or the sequence of codeword positions at the first layer; an indication of the second target reference probability information and / or the third target reference probability information; and / or The second codeword sequence and / or the third codeword sequence.
16. The method according to any one of claims 1 to 15, wherein the number of quantization bits for the to-be-compressed data is determined to be N, the plurality of reference probability information comprises one or more reference probability information corresponding to K probability values, and wherein K∈[1,2 N ] and includes [1,2 N ] all integers in the interval. 17 . The method according to claim 1 , wherein the reference probability information in the plurality of reference probability information comprises a probability mass function.
18. A method comprising: receiving an indication of target reference probability information among a plurality of reference probability information and compressed data, wherein the compressed data is determined by performing the hierarchical encoding of the to-be-compressed data based on a first codebook grouping configuration among a plurality of codebook grouping configurations, the plurality of codebook grouping configurations corresponding to the plurality of reference probability information and the first codebook grouping configuration corresponding to the target reference probability information; as well as The compressed data is decompressed based on the first codebook grouping configuration.
19. The method according to claim 18, further comprising: A codeword sequence for hierarchical encoding is received.
20. The method of claim 18, further comprising: The plurality of reference probability information and the plurality of codebook grouping configurations are transmitted.
21. The method according to claim 20, wherein sending the plurality of reference probability information and the codebook grouping configuration comprises: Sending a reference probability information-codebook set configuration, wherein the reference probability information-codebook set configuration includes the multiple reference probability information, the multiple codebook grouping configurations and the corresponding multiple configuration indexes, wherein the indication of the target reference probability information includes the configuration index corresponding to the target reference probability information.
22. A method according to any one of claims 18 to 21, wherein: The reference probability function in the plurality of reference probability information includes a first number of probability values, The codebook grouping configuration corresponding to the reference probability information is determined by splitting the first number of codewords, and Codewords of the first number of codewords are associated with probability values of the first number of probability values, and the splitting of the first number of codewords is performed based on the first number of probability values.
23. The method according to claim 22, wherein the order of the first number of probability values comprises an order from large to small or an order from small to large.
24. The method according to any one of claims 18 to 23, wherein the difference between the target reference probability information and the quantized codeword probability information of the data to be compressed is less than or equal to a threshold.
25. The method of claim 24, wherein the variability comprises Kull-Leibler divergence.
26. The method according to any one of claims 18 to 25, further comprising: An indication of whether to perform hierarchical encoding based on the plurality of codebook grouping configurations is received.
27. A method according to any one of claims 18 to 26, wherein: The target reference probability information is first target reference probability information, The to-be-compressed data is hierarchically classified into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on a plurality of groups of the first codeword sequence conforming to the first codebook grouping configuration, The sequence of subcodebook indices and the sequence of codeword positions are used for the first layer of hierarchical coding, The second codeword sequence is split into a plurality of groups of the sequence of subcodebook indexes conforming to the second codebook grouping configuration based on the second codebook grouping configuration corresponding to the second target reference probability information, wherein the second codeword sequence and the second target reference probability information are determined by determining the codeword probability information of the sequence of subcodebook indexes, and A sequence of the subcodebook indexes is hierarchically obtained based on multiple groups of the second codeword sequence conforming to the second codebook grouping configuration, and is a second layer for hierarchical coding.
28. A method according to any one of claims 18 to 27, wherein: The target reference probability information is first target reference probability information, The to-be-compressed data is hierarchically classified into a sequence of sub-codebook indexes and a sequence of codeword positions corresponding to the sub-codebook indexes based on a plurality of groups of the first codeword sequence conforming to the first codebook grouping configuration, The third codeword sequence is split into a plurality of groups of the third codeword sequence conforming to the third codebook grouping configuration based on a third codebook grouping configuration corresponding to third target reference probability information, wherein the third codeword sequence and the third target reference probability information are determined by determining the codeword probability information of the sequence of codeword positions, and Another sequence obtained by hierarchically obtaining the sequence of codeword positions based on a plurality of groups of the third codeword sequence conforming to the second codebook grouping configuration is a second layer for hierarchical encoding.
29. The method of claim 27 or 28, further comprising receiving: an indication of a position of the sequence of subcodebook indices and / or the sequence of codeword positions at the first layer; an indication of the second target reference probability information and / or the third target reference probability information; and / or A sequence of the subcodebook indexes and / or a sequence of the codeword positions.
30. The method according to any one of claims 18 to 29, wherein the number of quantization bits for the to-be-compressed data is determined to be N, the plurality of reference probability information comprises one or more reference probability information corresponding to K probability values, and wherein K∈[1,2 N ] and includes [1,2 N ] all integers in the interval.
31. The method according to any one of claims 18 to 30, further comprising: Indication information is received, wherein the indication information indicates a second number of probability values in a third number of probability values of the target reference probability information.
32. The method according to any one of claims 18 to 31, wherein the reference probability information in the plurality of reference probability information comprises a probability mass function.
33. An electronic device, comprising a processor, configured to execute instructions and / or logic circuits so that the electronic device performs the method according to any one of claims 1-17 or claims 18-32.
34. The electronic device according to claim 33, characterized in that: Also included is a memory for storing the instructions.
35. A communication system, comprising at least one of a first device and a second device, the first device being configured to perform the method according to any one of claims 1-17, and the second device being configured to perform the method according to any one of claims 18-32.
36. A computer-readable storage medium storing instructions, which, when executed by an electronic device, cause the electronic device to perform the method according to any one of claims 1-17 or claims 18-32.
37. A computer program product comprising instructions which, when executed by an electronic device, cause the electronic device to perform the method according to any one of claims 1-17 or claims 18-32.
38. An electronic device, comprising a module for executing the method of any one of claims 1-17, or comprising a module for executing the method of any one of claims 18-32.
Citation Information
Cited By
Communication method, electronic equipment and computer readable storage medium
CN121842754A
Communication method, electronic device, and computer-readable storage medium
CN121842754B