Radar reflectivity encoding method, apparatus, device, and storage medium
Patent Information
- Application Number
- CN202611287060.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-24
- Publication Date
- 2026-10-13
AI Technical Summary
[0005]本申请的主要目的在于提供一种雷达反射率编码方法、装置、设备及存储介质,旨在解决现有激光雷达反射率编码时将落到同一个像素位置的三维点云点进行合并或丢弃导致的编码结果数据缺失,无法实现对雷达反射率无损压缩的技术问题
本申请提出了一种雷达反射率编码方法、装置、设备及存储介质,该方法在获取需要进行编码的激光雷达的第一点云数据后,首先基于各所述点云点的三维坐标信息对第一点云数据中的各点云点进行笛卡尔确定性排序,消除激光雷达传感器获取的第一点云数据的随机时序,得到第二点云数据。再确定第二点云数据的范围图索引,以第二点云数据中各点云点的范围图索引对各点云点进行行排序,且在行排序的过程中对所有的点云点进行保留,不删除存在范围图索引相同的各点云点,不做任何点云点的融合、去重操作,以使行排序后得到的第三点云数据保留完整的点云点及其携带的数据。在第三点云数据完整的基础上,再对第三点云数据进行反射强度概率分布的确定,进而基于反射强度概率分布对第三点云数据中各点云点的真实反射强度值进行编码,以得到无损编码的第四点云数据。
Smart Images

Figure CN122901809A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of radar signal processing technology, and in particular to a radar reflectivity encoding method, apparatus, device, and storage medium. Background Technology
[0002] LiDAR point clouds are widely used in scenarios such as autonomous driving, mobile robots, 3D perception, environmental mapping, and vehicle-to-everything (V2X) communication. Each frame of a LiDAR point cloud typically contains 3D geometric coordinates and reflection intensity attributes. Geometric coordinates are used to express spatial location, while reflection intensity reflects information such as material, surface morphology, target edges, and highly reflective targets, playing a crucial role in the identification of targets such as vehicles, pedestrians, cyclists, road markings, and traffic facilities. With the continuous increase in sensor line count, sampling frequency, and deployment scale, the pressure on storing, transmitting, and processing reflection intensity attribute data has increased significantly. Therefore, there is a need for efficient, low-latency, and deployable lossless compression of LiDAR reflection intensity data.
[0003] Existing point cloud attribute compression techniques are mainly based on two-dimensional range maps or spherical projection methods. These methods merge multiple three-dimensional points into the same pixel or discard duplicate projection points, which can easily disrupt the one-to-one correspondence between input points and reconstructed points and make it difficult to strictly support lossless encoding of point-by-point reflection intensity.
[0004] Therefore, there is an urgent need for a radar reflectivity encoding method that can maintain the scanning structure of lidar and the point-to-point lossless correspondence, in order to solve the above-mentioned problems existing in the current technology. Summary of the Invention
[0005] The main purpose of this application is to provide a radar reflectivity encoding method, apparatus, device and storage medium, which aims to solve the technical problem that the encoding result data is missing due to the merging or discarding of three-dimensional point cloud points that fall at the same pixel position in the existing lidar reflectivity encoding, and thus cannot achieve lossless compression of radar reflectivity.
[0006] To achieve the above objectives, this application proposes a radar reflectivity coding method, which includes: Acquire the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each of which carries the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; The first point cloud data is sorted by Cartesian deterministic order based on the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data. Determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; Determine the probability distribution of the reflection intensity of the third point cloud data; The true reflection intensity value of the third point cloud data is encoded according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
[0007] In one feasible embodiment, determining the range map index of the second point cloud data includes: Obtain the vertical field-of-view boundary parameters and range map resolution of the lidar; Calculate the horizontal angle and the downward angle of each point cloud point based on the three-dimensional coordinate information of each point cloud point; Under the constraints of the vertical field of view boundary parameters and the range map resolution, the horizontal angle and the top angle of each point cloud point are mapped to obtain the range map index of each point cloud point; wherein, each range map index includes: a height index and a width index.
[0008] In one feasible embodiment, determining the probability distribution of the reflection intensity of the third point cloud data includes: Geometric prior features are extracted from the third point cloud data to obtain the geometric prior features of the third point cloud data. The third point cloud data is subjected to recursive binary division to obtain several target point cloud groups under the recursive binary division structure, and the reflection intensity probability distribution of each target point cloud group is determined based on the geometric prior features; wherein, each target point cloud group contains several uniformly distributed point cloud points.
[0009] In one feasible embodiment, the third point cloud data includes the normalized distance of each point cloud point; wherein the normalized distance is determined based on the three-dimensional coordinate information of the point cloud points; The geometric prior feature extraction of the third point cloud data, to obtain the geometric prior features of the third point cloud data, includes: For each point cloud point, a first geometric feature is determined based on the height index, a second geometric feature is determined based on the width index, and a third geometric feature is determined based on the normalized distance. The geometric prior features are determined based on the first geometric features, the second geometric features, and the third geometric features of each point cloud point.
[0010] In a feasible embodiment, the recursive binary search processing of the third point cloud data to obtain several target point cloud groups under the recursive binary search structure includes: Select several sparsely and uniformly distributed point cloud points from the third point cloud data, and mark each selected point cloud point as an anchor point. Encode each anchor point to obtain the target point cloud group in the initial stage. Based on the target point cloud group of the initial stage, target point cloud groups for each subsequent stage are generated recursively. In each recursive generation of the target point cloud group for the current stage, several uniformly distributed non-anchor point cloud points are selected from the middle of each anchor point in the target point cloud group of the previous stage, and each of the selected point cloud points is marked as the anchor points selected in the current stage. The anchor points selected in the current stage are encoded to obtain the target point cloud group for the current stage. The target point cloud groups at each stage are used as the target point cloud groups of the third point cloud data; Specifically, when encoding each anchor point selected in the current stage at any stage, encoding is performed through a preset radar reflectivity compression encoding module; the preset radar reflectivity compression encoding module includes several bidirectional feature extractors, each of which is configured with a back-out depth; during encoding, the number of bidirectional feature extractors actually participating in encoding in the preset radar reflectivity compression encoding module is determined based on the back-out depth of each bidirectional feature extractor, the predicted encoding time, and the actual encoding time.
[0011] In a feasible embodiment, determining the reflection intensity probability distribution of each of the target point cloud groups based on the geometric prior features includes: For the target point cloud group corresponding to the initial stage, the reflection intensity probability distribution of the target point cloud group corresponding to the initial stage is determined based on the geometric prior features of each point cloud point contained in the target point cloud group. For the target point cloud groups corresponding to each stage other than the initial stage, the context features of the target point cloud group corresponding to the current stage are determined based on the actual reflection intensity values of each point cloud point in all target point cloud groups corresponding to each preceding stage of the current stage. Based on the context features of the target point cloud group corresponding to the current stage and the geometric prior features of each point cloud point contained in the target point cloud group corresponding to the current stage, the probability distribution of reflection intensity of the target point cloud group corresponding to the current stage is determined.
[0012] In a feasible embodiment, encoding the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data includes: The fourth point cloud data is obtained by encoding the probability distribution of reflection intensity and the actual reflection intensity value of each point cloud point in the third point cloud data according to a preset encoding method; wherein, the preset encoding method includes: arithmetic encoding, interval encoding and asymmetric digital interval encoding.
[0013] In addition, to achieve the above objectives, this application also proposes a radar reflectivity encoding device, which includes: a point cloud data acquisition module, a first sorting module, a second sorting module, a priori information determination module, and a point cloud encoding module. The point cloud data acquisition module is used to acquire the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each point cloud point carrying the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; The first sorting module is used to perform Cartesian deterministic sorting on the first point cloud data according to the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data. The second sorting module is used to determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; The prior information determination module is used to determine the probability distribution of the reflection intensity of the third point cloud data; The point cloud encoding module is used to encode the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
[0014] In addition, to achieve the above objectives, this application also proposes a radar reflectivity encoding device, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the radar reflectivity encoding method as described above.
[0015] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the radar reflectivity encoding method described above.
[0016] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the radar reflectivity encoding method described above.
[0017] One or more technical solutions proposed in this application have at least the following technical effects: This application proposes a radar reflectivity encoding method, apparatus, device, and storage medium. After acquiring first point cloud data from a lidar sensor to be encoded, the method first performs Cartesian deterministic sorting on the point cloud points based on their three-dimensional coordinates, eliminating the random temporal order of the first point cloud data acquired by the lidar sensor, thus obtaining second point cloud data. Next, it determines the range map index of the second point cloud data and sorts the point cloud points by row using this index. During the row sorting process, all point cloud points are retained, without deleting points with the same range map index, and without performing any point cloud point fusion or deduplication operations. This ensures that the third point cloud data obtained after row sorting retains complete point cloud points and their associated data. Based on the completeness of the third point cloud data, it further determines the reflection intensity probability distribution and then encodes the true reflection intensity values of each point cloud point based on this probability distribution, resulting in lossless encoded fourth point cloud data. Attached Figure Description
[0018] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0019] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is a flowchart illustrating the first embodiment of the radar reflectivity encoding method of this application. Figure 2 This is a schematic diagram of the module structure of the radar reflectivity encoding device according to an embodiment of this application; Figure 3 This is a schematic diagram of the device structure of the hardware operating environment involved in the radar reflectivity encoding method in this application embodiment.
[0021] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0022] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.
[0023] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.
[0024] The main solution in this application's embodiments is: In this embodiment, for ease of description, the following description will focus on the control device that identifies the lidar sensor.
[0025] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or an electronic device or a control device for a lidar sensor capable of performing the above functions. The following description uses a control device for a lidar sensor as an example to illustrate this embodiment and the subsequent embodiments.
[0026] LiDAR point clouds are widely used in scenarios such as autonomous driving, mobile robots, 3D perception, environmental mapping, and vehicle-to-everything (V2X) communication. Each frame of a LiDAR point cloud typically contains 3D geometric coordinates and reflection intensity attributes. Geometric coordinates are used to express spatial location, while reflection intensity reflects information such as material, surface morphology, target edges, and highly reflective targets, playing a crucial role in the identification of targets such as vehicles, pedestrians, cyclists, road markings, and traffic facilities. With the continuous increase in sensor line count, sampling frequency, and deployment scale, the pressure on storing, transmitting, and processing reflection intensity attribute data has increased significantly. Therefore, there is a need for efficient, low-latency, and deployable lossless compression of LiDAR reflection intensity data.
[0027] Since existing point cloud attribute compression techniques are mainly based on two-dimensional range maps or spherical projection methods, these methods will merge multiple three-dimensional points into the same pixel or discard duplicate projection points, which can easily destroy the one-to-one correspondence between input points and reconstructed points and make it difficult to strictly support lossless encoding of point-by-point reflection intensity.
[0028] This application provides a solution that, after acquiring the first point cloud data of a lidar sensor to be encoded, firstly, based on the three-dimensional coordinate information of each point cloud point, performs Cartesian deterministic sorting on the points in the first point cloud data to eliminate the random temporal sequence of the first point cloud data acquired by the lidar sensor, thus obtaining the second point cloud data. Next, the range map index of the second point cloud data is determined, and the points are row-sorted using the range map index. During the row sorting process, all points are retained, points with the same range map index are not deleted, and no point fusion or deduplication operations are performed, so that the third point cloud data obtained after row sorting retains complete points and their carried data. Based on the completeness of the third point cloud data, the reflection intensity probability distribution of the third point cloud data is determined, and then the true reflection intensity value of each point in the third point cloud data is encoded based on the reflection intensity probability distribution to obtain lossless encoded fourth point cloud data.
[0029] This application provides a radar reflectivity encoding method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the radar reflectivity encoding method of this application.
[0030] In this embodiment, the radar reflectivity encoding method includes steps S10 to S50: Step S10: Obtain the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each of which carries the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; Specifically, a frame of point cloud data corresponding to the lidar is obtained from the lidar sensor as the first point cloud data mentioned above. The first point cloud data is the original point cloud data corresponding to the lidar. The first point cloud data is composed of multiple point cloud points arranged in a disordered manner. Each point cloud point carries its own three-dimensional coordinate information and true reflection intensity.
[0031] It should be noted that in the complete processing flow of lidar encoding and decoding, the lidar point cloud data is the data reflected back to the lidar sensor after the lidar sensor emits laser light, which is then received by the lidar sensor. Therefore, the reflected intensity it carries is the true reflected intensity, which is the data that needs to be losslessly compressed. The encoder receives the point cloud data output by the lidar, compresses and encodes the geometric information and true reflected intensity of the point cloud data, and generates a bitstream; the decoder receives the encoded bitstream, performs decoding processing, and recovers the reconstructed point cloud data. The purpose of this application is to ensure that the encoder does not discard or deduplicate point cloud data during the compression process, so as to ensure that the bitstream obtained after compression and encoding carries complete point cloud data, so that the decoder can reconstruct the complete point cloud data based on the bitstream, thereby achieving lossless compression and lossless decoding of point cloud data.
[0032] Step S20: Perform Cartesian deterministic sorting on the first point cloud data according to the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data; Specifically, based on the three-dimensional coordinate information of each point cloud point contained in the first point cloud data, Cartesian deterministic sorting is performed on each point cloud point contained in the first point cloud data. The point cloud points are sorted according to a preset Cartesian deterministic sorting rule to obtain the point cloud points sorted according to the preset Cartesian deterministic sorting rule. The point cloud data with Cartesian deterministic sorting is then used as the second point cloud data.
[0033] For example, suppose there is a preset Cartesian deterministic sorting rule: first, sort by ascending X coordinates; if X values are the same, sort by ascending Y coordinates; if both X and Y values are the same, sort by ascending Z coordinates. The first point cloud data contains four unordered point cloud points, with the following 3D coordinates: P1 (2,8,1), P2 (1,5,3), P3 (2,3,4), and P4 (1,5,2). When sorting these four point cloud points according to the preset Cartesian deterministic sorting rule, first, the X values of each point are compared; P2 and P4, with X=1, are sorted first. Since P2 and P4 have the same X and Y values, their Z values are compared; P4, with Z=2, is sorted before P2, with Z=3. Then, P1 and P3, with X=2, are processed; P3, with Y=3, is sorted before P1, with Y=8. After sorting, the order of the points in the second point cloud data is P4, P2, P3, and P1. The Cartesian deterministic sorting rule is fixed during the setting process and is written to both the encoder and decoder after the setting is completed. Writing the set rule to both the encoder and decoder simultaneously allows the encoder and decoder to share the same set of rules, ensuring a high degree of consistency between the decoder's decoding process and the encoder's encoding process.
[0034] Step S30: Determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; Specifically, based on the second point cloud data after the Cartesian deterministic sorting, the range map index of the second point cloud data is determined. It should be noted that the range map index is used to perform row-first reordering of the point cloud points according to the virtual pixel positions corresponding to the point cloud points, ensuring that both the encoding and decoding ends can generate a consistent one-dimensional point sequence.
[0035] In one feasible implementation, the step of "determining the range map index of the second point cloud data" in step S30 may include steps A11 to A13: Step A11: Obtain the vertical field-of-view boundary parameters and range map resolution of the lidar; Specifically, the preset vertical field-of-view boundary parameters and range map resolution of the lidar sensor are obtained. The vertical field-of-view boundary parameters include the upper boundary f_up and the lower boundary f_down. The upper boundary characterizes the maximum pitch angle that the lidar can effectively detect, limiting the upper limit of the vertical angle of the detection area. The lower boundary characterizes the minimum pitch angle that the lidar can effectively detect, limiting the lower limit of the vertical angle of the detection area. The range map resolution is the pixel size of the two-dimensional range map, composed of the vertical resolution H and the horizontal resolution W, used to discretize and map angles to the width and height indices of the range map.
[0036] Preferably, in this application, the horizontal resolution W is 2048; for a 64-line lidar, the vertical resolution H is 80; and for a 32-line lidar, H is 40. In actual implementation of this method, the range map resolution parameters can be adjusted according to the sensor line count and angular resolution.
[0037] Step A12: Calculate the horizontal angle and the top angle of each point cloud point based on the three-dimensional coordinate information of each point cloud point; Specifically, for each point cloud point P_i=(x_i,y_i,z_i), spherical coordinates are calculated based on the three-dimensional coordinate information of the point cloud point to obtain the spherical coordinates of the point cloud point, which includes the original physical distance r_i, the horizontal angle theta_i, and the pitch angle phi_i.
[0038] Step A13: Under the constraints of the vertical field of view boundary parameters and the range map resolution, the horizontal angle and the top angle of each point cloud point are mapped to obtain the range map index of each point cloud point; wherein, each range map index includes: a height index and a width index.
[0039] Specifically, under the constraints of the vertical field-of-view boundary parameters and the range map resolution, the horizontal angle theta_i and the pitch angle phi_i in the spherical coordinates of each point cloud point are mapped. The horizontal angle theta_i is mapped to the width index w_i of the range map index, and the pitch angle phi_i is mapped to the height index h_i of the range map index. Based on the width index w_i and the height index h_i, a range map index (h_i, w_i) is constructed for each point cloud point. Here, the width index w_i represents the horizontal rotation order within the LiDAR channel, and the height index h_i represents the LiDAR channel or scan line.
[0040] A stable row-first sort is performed based on the range map index of each point cloud point to obtain a one-dimensional point sequence that maintains the scan adjacency relationship. This one-dimensional point sequence is used as the third point cloud data mentioned above. It should be noted that when performing row-first sorting on each point cloud point based on the range map index, this application does not deduplicate or merge point cloud points with the same range map index, so that multiple point cloud points with the same range map index correspond to the same virtual pixel position.
[0041] Preferably, the range map index and spherical coordinate data of each determined point cloud point need to be written into the decoder to ensure that the decoder can obtain a completely consistent one-dimensional sequence under the same geometric coordinate conditions.
[0042] By executing steps S20 and S30 above, deterministic sorting can be performed first in Cartesian coordinate space, followed by spherical transformation and stable row priority sorting, so that the encoding end and the decoding end obtain a completely consistent one-dimensional sequence under the same geometric coordinate conditions.
[0043] Step S40: Determine the probability distribution of the reflection intensity of the third point cloud data; Specifically, after completing the serialization process of the point cloud data and obtaining the serialized third point cloud data, it is necessary to further determine the probability distribution of the reflection intensity of the third point cloud data.
[0044] In one feasible implementation, step S40 may include steps B11-B12: Step B11: Extract geometric prior features from the third point cloud data to obtain the geometric prior features of the third point cloud data; Specifically, geometric prior features are extracted from each point in the third point cloud data to determine the geometric prior features corresponding to each point. The geometric prior features consist of the spatial location, neighbor relationships, and projection location information of each point in the point cloud data, and are used to characterize the spatial structural relationships of the point cloud data.
[0045] In one feasible implementation, step B11 may include steps C11-C12: Step C11: For each point cloud point, determine a first geometric feature based on the height index, a second geometric feature based on the width index, and a third geometric feature based on the normalized distance. Specifically, the original physical distance r_i in the spherical coordinates of each point in the third point cloud data needs to be normalized to obtain the normalized distance r. For each point, the height index is input into the embedding layer of the encoder, and the first geometric feature associated with the height index is output through the embedding layer; the width index is input into the embedding layer of the encoder, and the second geometric feature associated with the width index is output through the embedding layer; the normalized distance is input into the linear layer of the encoder, and the third geometric feature associated with the distance is output through the linear layer.
[0046] Step C12: Determine the geometric prior features based on the first geometric features, the second geometric features, and the third geometric features of each point cloud point.
[0047] Specifically, the first, second, and third geometric features are concatenated to obtain concatenated geometric features. These concatenated geometric features are then input into a pre-observed bidirectional feature extractor, which outputs geometric prior features. The bidirectional feature extractor includes a forward feature extraction branch and a backward feature extraction branch. The forward feature extraction branch processes the input concatenated geometric features sequentially to obtain a forward output. The backward feature extraction branch flips the point sequence corresponding to the third point cloud data, processes the corresponding concatenated geometric features, and then flips them back to their original order to obtain a backward output. Finally, the input concatenated geometric features, forward output, and backward output are added or fused to obtain geometric prior features that simultaneously contain dependencies between the previous and subsequent scans.
[0048] Step B12: Perform recursive binary division on the third point cloud data to obtain several target point cloud groups under the recursive binary division structure, and determine the reflection intensity probability distribution of each target point cloud group based on the geometric prior features; wherein, each target point cloud group contains several uniformly distributed point cloud points.
[0049] Specifically, a recursive binary search is performed on the point sequence corresponding to the third point cloud data to obtain several target point cloud groups under the recursive binary search structure. The number of target point cloud groups generated is determined based on the sequence length of the point sequence corresponding to the third point cloud data and the number of recursive stages. To ensure that the sequence length of the point sequence is divisible during the recursive binary search, the sequence length needs to be verified before performing the recursive binary search. Let the sequence length of the point sequence corresponding to the third point cloud data be N, the point index set of the point sequence be I={1,2,...,N}, and the total number of recursive stages be K. Determine whether N is divisible by 2^(K-1). If N is not divisible by 2^(K-1), the point index set is padded with zeros so that the length of the padded point sequence is divisible by 2^(K-1). At the same time, the positions of the padded zeros are marked in the point index set. All padded zeros only participate in the point cloud point division of the target point cloud group and do not participate in the calculation of the reflection intensity probability distribution corresponding to the target point cloud group.
[0050] In a feasible implementation, step B12, "performing a recursive binary search on the third point cloud data to obtain several target point cloud groups under the recursive binary search structure," may include steps D11-D13: Step D11: Select several sparsely and uniformly distributed point cloud points from the third point cloud data, mark each selected point cloud point as an anchor point, encode each anchor point, and obtain the target point cloud group in the initial stage. Specifically, from the point sequence corresponding to the third point cloud data, multiple sparsely and uniformly distributed point cloud points are selected, and each of these selected points is used as an anchor point. Each anchor point is encoded using a pre-set radar reflectivity compression coding module. Based on these encoded anchor points, an initial stage (stage 0 is the initial stage) of the target point cloud group is constructed. It should be noted that the purpose of selecting sparsely and uniformly distributed point cloud points in constructing the initial stage target point cloud group is to provide basic reference information using the intermittently distributed anchor points in the sequence. This provides a prediction benchmark for subsequent levels to select new points between adjacent anchor points and construct new target point cloud groups, gradually selecting and supplementing all point cloud points layer by layer. By constructing target point cloud groups for each stage through layered point selection from sparse to dense, a prediction benchmark is first established using sparse anchor points, and then the remaining points are supplemented layer by layer between the anchor points, achieving layered and progressive attribute prediction and reducing the prediction difficulty.
[0051] Step D12: Based on the target point cloud group of the initial stage, the target point cloud groups of each subsequent stage are recursively generated. In each recursive generation of the target point cloud group of the current stage, several uniformly distributed non-anchor point cloud points are selected from the middle of each anchor point in the target point cloud group of the previous stage, and each of the selected point cloud points is marked as the anchor points selected in the current stage. The anchor points selected in the current stage are encoded to obtain the target point cloud group of the current stage. Step D13: The target point cloud groups of each stage are taken as the target point cloud groups of the third point cloud data. Specifically, the encoding of each target point cloud group is performed based on a preset radar reflectivity compression encoding module. The preset radar reflectivity compression encoding module includes several bidirectional feature extractors, each of which has a set back-out depth. During encoding, the number of bidirectional feature extractors actually participating in the encoding in the preset radar reflectivity compression encoding module is determined based on the back-out depth of each bidirectional feature extractor, the prediction time of encoding for each target point cloud group, and the actual time of encoding for each target point cloud group.
[0052] Specifically, the target point cloud groups for each subsequent stage are generated recursively, using the point cloud points (encoded point cloud points) marked as anchor points in the target point cloud group of the initial stage as reference nodes.
[0053] When the total number of recursive stages is K, based on the anchor points contained in the target point cloud group of stage 0 in step D11 as reference points, during the construction of the target point cloud group in stage 1, several uniformly distributed non-anchor point cloud points are selected from the middle of each anchor point in the target point cloud group of the previous stage (stage 0) to construct the target point cloud group of stage 1. Each point cloud point in the target point cloud group is encoded, and the selected encoded point cloud points are marked as anchor points. Then, the construction of the target point cloud group in stage 2 is executed. This step is repeated until the total number of recursive stages is reached. When the target point cloud group of stage K-1 is generated, the division of the target point cloud group under the recursive binary structure of the third point cloud data is completed. At this time, the target point cloud groups of each stage have a recursive binary structure of 1:1:2:4:...
[0054] When encoding the target point cloud groups at each of the above stages, encoding is performed based on the preset radar reflectivity compression coding module in the encoder. It should be noted that the preset radar reflectivity compression coding module includes several bidirectional feature extractors, each of which has a preset back-out depth. The number of bidirectional feature extractors included in the preset radar reflectivity compression coding module is the same when encoding each stage.
[0055] Before performing recursive binary search on the third point cloud data, the encoder obtains the target encoding time for the third point cloud data. During encoding at any of the above stages, the number of bidirectional feature extractors participating in the current encoding at each stage needs to be determined based on the relationship between the remaining time budget and the predicted encoding time. It should be noted that during encoding at each stage, multiple encoding operations are performed using the bidirectional feature extractors in the preset radar reflectivity compression encoding module.
[0056] During encoding at each stage, to determine the number of bidirectional feature extractors involved in the encoding, in each encoding process except the first encoding of the current stage, the predicted encoding time required for the current encoding is first calculated using a lightweight linear model. After the current encoding is completed, the actual encoding time is obtained, and the remaining time budget is calculated based on the actual encoding time and the target encoding time. If the remaining time budget is not less than the predicted encoding time, the bidirectional feature extractors are invoked to execute the next encoding; if the remaining time budget is less than the predicted encoding time, the remaining bidirectional feature extractors are not invoked to execute the next encoding, and the encoding of the current stage is completed. At the same time, each bidirectional feature extractor not involved in the current stage of encoding executes an early-retreat mechanism according to its early-retreat depth. This enables adaptive adjustment of the number of bidirectional feature extractors involved in encoding at each stage according to the target encoding time, achieving adaptive complexity encoding for LiDAR point cloud data of different complexities corresponding to different target encoding times.
[0057] By introducing an early termination mechanism during the grouping and encoding of target point clouds, the encoder can adapt to the dynamically changing target encoding time in real-time systems. During encoding, the encoder will prioritize allocating the bidirectional feature extractors required for shallow computation at each stage, and then gradually execute deeper bidirectional feature extractors according to the remaining time budget.
[0058] In one feasible implementation, the step of "determining the reflection intensity probability distribution of each target point cloud group based on the geometric prior features" in step B12 may include steps E11 to E13: Step E11: For the target point cloud group corresponding to the initial stage, determine the reflection intensity probability distribution of the target point cloud group corresponding to the initial stage based on the geometric prior features of each point cloud point contained in the target point cloud group. Specifically, since there is no encoded reflection intensity context in the initial stage (stage 0), for the target point cloud group corresponding to the initial stage (stage 0), the reflection intensity probability distribution corresponding to the target point cloud group can be obtained by using the geometric prior features of each point cloud point contained in the target point cloud group through the encoder's classifier and Softmax.
[0059] Step E12: For the target point cloud groups corresponding to each stage other than the initial stage, determine the context features of the target point cloud group corresponding to the current stage based on the actual reflection intensity values of each point cloud point in all target point cloud groups corresponding to each preceding stage of the current stage. Specifically, starting from the next stage (stage 1) after the initial stage (stage 0), subsequent stages need to select point cloud points based on anchor points in the target point cloud groups of previous stages when constructing the target point cloud group. Therefore, except for the initial stage (stage 0), all other stages have encoded reflection intensity contexts, and the encoded reflection intensity context of the current stage is composed of the encoded / decoded reflection intensity contexts of the previous stages. For example, for stage k (any stage from 0 to k-1 is stage k), it is influenced by the encoded / decoded reflection intensity contexts of stages 0 to k-1 (stages 0 to k-1 are the preceding stages of stage k), and the reflection intensity context of stage k is composed of the encoded reflection intensity contexts of stages 0 to k-1. That is, the context features of the target point cloud group corresponding to stage k are determined based on the encoded reflection intensity contexts of stages 0 to k-1.
[0060] Step E13: Determine the reflection intensity probability distribution of the target point cloud group corresponding to the current stage based on the context features of the target point cloud group corresponding to the current stage and the geometric prior features of each point cloud point contained in the target point cloud group corresponding to the current stage.
[0061] Specifically, after obtaining the context features of the target point cloud group corresponding to each stage, for each target point cloud group, the context features and the geometric prior features of each point cloud point contained in the target point cloud group are fused to obtain fused features. These fused features are then input into the encoder's bidirectional feature extractor for conditional feature modeling. The modeled conditional features are then transmitted to the classifier, which outputs the reflection intensity probability distribution of the target point cloud group corresponding to the current stage.
[0062] Step S50: Encode the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
[0063] In one feasible implementation, step S50 may include step F11: Step F11: Encode the probability distribution of reflection intensity and the true reflection intensity value of each point in the third point cloud data according to a preset encoding method to obtain the fourth point cloud data; wherein, the preset encoding method includes: arithmetic encoding, interval encoding and asymmetric digital interval encoding.
[0064] Specifically, for each target point cloud group, the true reflection intensity value of each target point cloud group is encoded according to the preset encoding method and the probability distribution of the reflection intensity of each target point cloud group. The encoding method used can be any one of arithmetic encoding, interval encoding and asymmetric digital interval encoding. After the above encoding, the encoder outputs the encoded bit stream, which is the fourth point cloud data mentioned above.
[0065] Preferably, after encoding is completed and the bitstream is obtained, the stage information of each stage, the early-retreat position edge information of each stage, and the bitstream should be written together into the compressed file corresponding to the first point cloud data of the LiDAR. The early-retreat position edge information of each stage is determined according to the number of bidirectional feature extractors actually participating in the encoding of each stage. The role of the early-retreat position edge information of each stage is to adapt to the dynamically changing target encoding time in the real-time system. During encoding, the encoder will prioritize allocating the bidirectional feature extractors required for shallow computation to each stage, and then gradually execute deeper bidirectional feature extractors according to the remaining time budget.
[0066] The encoder writes the early-retreat position edge information used in each encoding stage into the bitstream. If there are S grouping stages, and each stage uses 4 bits to represent the early-retreat position, then the edge information overhead is approximately 4S bits, which is very small compared to the amount of point-by-point reflection intensity data. The decoder does not re-determine the early-retreat position, but strictly follows the early-retreat position in the bitstream to ensure consistent execution efficiency between the encoder and decoder.
[0067] When decoding the compressed file, the decoder performs an initial decompression to obtain stage information, early retreat position edge information, and bitstream for each stage. Following the same recursive binary search process, Cartesian deterministic sorting, and range graph indexing rules as the encoder, the decoder reconstructs the stage order of each target point cloud group in reverse, combining the stage information and early retreat position edge information, and recovers the true reflection intensity value of each target point cloud group stage by stage.
[0068] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the radar reflectivity coding method of this application. Any simple transformations based on this technical concept are all within the protection scope of this application.
[0069] This application also provides a radar reflectivity encoding device, please refer to... Figure 2 The radar reflectivity encoding device includes: a point cloud data acquisition module, a first sorting module, a second sorting module, a priori information determination module, and a point cloud encoding module; The point cloud data acquisition module 10 is used to acquire the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each point cloud point carrying the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; The first sorting module 20 is used to perform Cartesian deterministic sorting on the first point cloud data according to the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data. The second sorting module 30 is used to determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; The prior information determination module 40 is used to determine the probability distribution of the reflection intensity of the third point cloud data. The point cloud encoding module 50 is used to encode the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
[0070] The radar reflectivity encoding device provided in this application, employing the radar reflectivity encoding method in the above embodiments, can solve the technical problem that the prior art cannot perform lossless compression of point cloud data of lidar. Compared with the prior art, the beneficial effects of the radar reflectivity encoding device provided in this application are the same as those of the radar reflectivity encoding method provided in the above embodiments, and other technical features in the radar reflectivity encoding device are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.
[0071] This application provides a radar reflectivity encoding device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to execute the radar reflectivity encoding method in Embodiment 1 above.
[0072] The following is for reference. Figure 3 The diagram illustrates a structural schematic of a radar reflectivity encoding device suitable for implementing embodiments of this application. The radar reflectivity encoding device in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 3 The radar reflectivity encoding device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0073] like Figure 3 As shown, the radar reflectivity encoding device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.) that can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 into a random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the radar reflectivity encoding device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touchscreen, touchpad, keyboard, mouse, image sensor, microphone, accelerometer, gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1003 including, for example, magnetic tape, hard disk, etc.; and communication devices 1009. Communication device 1009 allows the radar reflectivity coding device to communicate wirelessly or wiredly with other devices to exchange data. Although radar reflectivity coding devices with various systems are shown in the figures, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.
[0074] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.
[0075] The radar reflectivity encoding device provided in this application, employing the radar reflectivity encoding method in the above embodiments, can solve the technical problem that the prior art cannot perform lossless compression of point cloud data of lidar. Compared with the prior art, the beneficial effects of the radar reflectivity encoding device provided in this application are the same as those of the radar reflectivity encoding method provided in the above embodiments, and other technical features in this radar reflectivity encoding device are the same as those disclosed in the previous embodiment method, and will not be repeated here.
[0076] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.
[0077] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0078] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the radar reflectivity encoding method in the above embodiments.
[0079] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.
[0080] The aforementioned computer-readable storage medium may be included in the radar reflectivity coding device; or it may exist independently and not assembled into the radar reflectivity coding device.
[0081] The aforementioned computer-readable storage medium carries one or more programs, which, when executed by the radar reflectivity encoding device, cause the radar reflectivity encoding device to perform a radar reflectivity encoding method.
[0082] Computer program code for performing the operations of this application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, and C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0083] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0084] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.
[0085] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the radar reflectivity encoding method described above. This solves the technical problem that existing technologies cannot perform lossless compression of point cloud data from lidar. Compared with existing technologies, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the radar reflectivity encoding method provided in the above embodiments, and will not be elaborated upon here.
[0086] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the radar reflectivity encoding method described above.
[0087] The computer program product provided in this application can solve the technical problem that the prior art cannot perform lossless compression of point cloud data of lidar. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the radar reflectivity encoding method provided in the above embodiments, and will not be repeated here.
[0088] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.
Claims
1. A radar reflectivity coding method, characterized in that, The radar reflectivity encoding method includes: Acquire the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each of which carries the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; The first point cloud data is sorted by Cartesian deterministic order based on the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data. Determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; Determine the probability distribution of the reflection intensity of the third point cloud data; The true reflection intensity value of the third point cloud data is encoded according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
2. The radar reflectivity coding as described in claim 1, characterized in that, Determining the range map index of the second point cloud data includes: Obtain the vertical field-of-view boundary parameters and range map resolution of the lidar; Calculate the horizontal angle and the downward angle of each point cloud point based on the three-dimensional coordinate information of each point cloud point; Under the constraints of the vertical field of view boundary parameters and the range map resolution, the horizontal angle and the top angle of each point cloud point are mapped to obtain the range map index of each point cloud point; wherein, each range map index includes: a height index and a width index.
3. The radar reflectivity coding as described in claim 2, characterized in that, Determining the probability distribution of the reflection intensity of the third point cloud data includes: Geometric prior features are extracted from the third point cloud data to obtain the geometric prior features of the third point cloud data. The third point cloud data is subjected to recursive binary division to obtain several target point cloud groups under the recursive binary division structure, and the reflection intensity probability distribution of each target point cloud group is determined based on the geometric prior features; wherein, each target point cloud group contains several uniformly distributed point cloud points.
4. The radar reflectivity coding as described in claim 3, characterized in that, The third point cloud data includes the normalized distance of each point cloud point; wherein the normalized distance is determined based on the three-dimensional coordinate information of the point cloud points; The geometric prior feature extraction of the third point cloud data, to obtain the geometric prior features of the third point cloud data, includes: For each point cloud point, a first geometric feature is determined based on the height index, a second geometric feature is determined based on the width index, and a third geometric feature is determined based on the normalized distance. The geometric prior features are determined based on the first geometric features, the second geometric features, and the third geometric features of each point cloud point.
5. The radar reflectivity coding as described in claim 3, characterized in that, The recursive binary search process performed on the third point cloud data yields several target point cloud groups under the recursive binary search structure, including: Select several sparsely and uniformly distributed point cloud points from the third point cloud data, and mark each selected point cloud point as an anchor point. Encode each anchor point to obtain the target point cloud group in the initial stage. Based on the target point cloud group of the initial stage, target point cloud groups for each subsequent stage are generated recursively. In each recursive generation of the target point cloud group for the current stage, several uniformly distributed non-anchor point cloud points are selected from the middle of each anchor point in the target point cloud group of the previous stage, and each of the selected point cloud points is marked as the anchor points selected in the current stage. The anchor points selected in the current stage are encoded to obtain the target point cloud group for the current stage. The target point cloud groups at each stage are taken as the target point cloud groups of the third point cloud data; Specifically, when encoding each anchor point selected in the current stage at any stage, encoding is performed through a preset radar reflectivity compression encoding module; the preset radar reflectivity compression encoding module includes several bidirectional feature extractors, each of which is configured with a back-out depth; during encoding, the number of bidirectional feature extractors actually participating in encoding in the preset radar reflectivity compression encoding module is determined based on the back-out depth of each bidirectional feature extractor, the predicted encoding time, and the actual encoding time.
6. The radar reflectivity coding as described in claim 5, characterized in that, Determining the reflection intensity probability distribution of each target point cloud group based on the geometric prior features includes: For the target point cloud group corresponding to the initial stage, the reflection intensity probability distribution of the target point cloud group corresponding to the initial stage is determined based on the geometric prior features of each point cloud point contained in the target point cloud group. For the target point cloud groups corresponding to each stage other than the initial stage, the context features of the target point cloud group corresponding to the current stage are determined based on the actual reflection intensity values of each point cloud point in all target point cloud groups corresponding to each preceding stage of the current stage. Based on the context features of the target point cloud group corresponding to the current stage and the geometric prior features of each point cloud point contained in the target point cloud group corresponding to the current stage, the probability distribution of reflection intensity of the target point cloud group corresponding to the current stage is determined.
7. The radar reflectivity coding as described in claim 1, characterized in that, The step of encoding the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data includes: The fourth point cloud data is obtained by encoding the probability distribution of reflection intensity and the actual reflection intensity value of each point cloud point in the third point cloud data according to a preset encoding method; wherein, the preset encoding method includes: arithmetic encoding, interval encoding and asymmetric digital interval encoding.
8. A radar reflectivity encoding device, characterized in that, The device includes: a point cloud data acquisition module, a first sorting module, a second sorting module, a priori information determination module, and a point cloud encoding module; The point cloud data acquisition module is used to acquire the first point cloud data of the lidar; wherein, the first point cloud data includes: a plurality of point cloud points, each point cloud point carrying the three-dimensional coordinate information and the actual reflection intensity value of the current point cloud point; The first sorting module is used to perform Cartesian deterministic sorting on the first point cloud data according to the three-dimensional coordinate information of each point cloud point to obtain the second point cloud data. The second sorting module is used to determine the range map index of the second point cloud data, and sort the second point cloud data by row according to the range map index to obtain the third point cloud data; wherein, when sorting the second point cloud data by row, point cloud points with the same range map index are retained; The prior information determination module is used to determine the probability distribution of the reflection intensity of the third point cloud data; The point cloud encoding module is used to encode the true reflection intensity value of the third point cloud data according to the reflection intensity probability distribution to obtain the encoded fourth point cloud data.
9. A radar reflectivity encoding device, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the radar reflectivity coding method as described in any one of claims 1 to 7.
10. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the radar reflectivity encoding method as described in any one of claims 1 to 7.