A method and apparatus for transmitting point cloud data
Patent Information
- Application Number
- CN202510504466.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-21
- Publication Date
- 2026-10-23
AI Technical Summary
[0041]上述第二方面至第八方面所能达到的技术效果请参照上述第一方面所能达到的技术效果,这里不再重复赘述。
Smart Images

Figure CN122970236A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a method and apparatus for transmitting point cloud data. Background Technology
[0002] With the increasing diversity of wireless communication applications, wireless communication can be applied to more novel scenarios, such as object detection, autonomous driving, and environmental reconstruction. For example, in environmental reconstruction, multiple terminals can scan the environment and send the acquired point cloud data to a base station, which can then construct a complete environmental map based on the received point cloud data.
[0003] Since scenarios such as environmental reconstruction involve the transmission of a large amount of point cloud data, reducing the transmission overhead of point cloud data is an important issue. Summary of the Invention
[0004] This application provides a method and apparatus for transmitting point cloud data, which reduces the transmission overhead of point cloud data.
[0005] In a first aspect, embodiments of this application provide a method for transmitting point cloud data. This method can be executed by a first communication device. The method includes: performing gridding processing on the point cloud data to obtain M grids, where M is an integer greater than 1; sending first information, where the first information is used to indicate N grids, where N grids are determined based on the distribution of multiple sensing data points of the point cloud data in the M grids, and N is an integer less than or equal to M.
[0006] In the above point cloud transmission method, the first communication device may refer to a terminal, a wireless access network device (such as a base station), a core network device, or an Internet device (such as a server), or it may refer to a component in the above device (such as a communication module, processor, chip, or chip system), or it may refer to a logic module or software that can realize all or part of the functions of the above device.
[0007] In this embodiment, after the point cloud data is processed into a grid, the sending end (i.e., the first communication device) can send first information based on the distribution of multiple sensing data points in M grids to replace the transmission of the specific data content of the point cloud data. The receiving end can reconstruct the point cloud data based on the first information (e.g., by inserting sensing data points into the N grids indicated by the first information). In this way, the transmission of the first information indicating the N grids can replace the transmission of the specific data content of the point cloud data between the sending end and the receiving end, thereby reducing the overhead of point cloud data transmission.
[0008] In one possible design, before performing meshing on the point cloud data, the method further includes: receiving second information, the second information indicating the viewpoint requirement for rotating the point cloud data; and rotating the point cloud data according to the viewpoint requirement. The meshing of the point cloud data includes performing meshing on the rotated point cloud data. Those skilled in the art will understand that when the viewpoint corresponding to the point cloud data meets the viewpoint requirement of the point cloud data, rotational transformation of the point cloud data is not necessary.
[0009] Through the above design, the first communication device can perform rotation transformation processing on the point cloud data before performing mesh processing, according to the viewing angle requirements of the point cloud data receiving end. This allows the point cloud data reconstructed by the receiving end based on the first information to meet the viewing angle requirements of the receiving end. This is beneficial for the receiving end to reconstruct objects based on the point cloud data, or to perform point cloud registration and other operations such as point cloud registration between the point cloud data from the first communication device and point cloud data from other communication devices.
[0010] In one possible design, before or after meshing the point cloud data, the method further includes: sending meshing parameters for meshing the point cloud data, the meshing parameters including at least one of the following: mesh start position, mesh 3D width, mesh interval, mesh arrangement, translation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system, or rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system.
[0011] The above design allows the receiving end of point cloud data to know the gridding parameters used for gridding the point cloud data, which helps the receiving end to recover the M grids obtained from the gridding of the point cloud data, thereby reconstructing the point cloud data.
[0012] In one possible design, after the point cloud data is meshed, the method further includes: sending third information, which indicates the location of representative points in N grids; wherein any grid in the N grids corresponds to at least one representative point, and the at least one representative point is used to represent the sensed data points in the grid.
[0013] The above design enables the receiving end of point cloud data to know the distribution of sensing data points in the grid, which helps the receiving end to determine the location of sensing data points in the grid when reconstructing point cloud data.
[0014] In one possible design, any grid among the N grids satisfies the following: the number of sensed data points distributed in any grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
[0015] With the above design, for grids where the number of distributed sensing data points is less than the first threshold, the first communication device does not instruct the receiving end of the point cloud data, that is, it does not instruct the receiving end that there are sensing data points in the grid. This can eliminate the discrete noise in the point cloud data and make the object surface reconstructed based on the point cloud data smoother.
[0016] In one possible design, before performing meshing processing on the point cloud data, the method further includes: receiving fourth information, the fourth information indicating the task type for applying the point cloud data; determining meshing parameters for meshing the point cloud data based on the task type and the association between the task type and the meshing parameters; the aforementioned meshing processing of the point cloud data includes: performing meshing processing on the point cloud data based on the meshing parameters.
[0017] Through the above design, the first communication device can determine the meshing parameters according to the task type indicated by the receiving end of the point cloud data, so that the meshing parameters used by the first communication device meet the needs of the receiving end for task processing of the point cloud data, and can reduce the overhead of the receiving end indicating the required meshing parameters to the first communication device.
[0018] In one possible design, after sending the first information, the method further includes: receiving a fifth message, which indicates incremental transmission of point cloud data; performing gridding processing on the point cloud data to obtain P grids, where P is an integer greater than M; and sending a sixth message, which indicates Q grids, where Q grids are determined based on the distribution of multiple sensing data points in the P grids, where Q is an integer less than or equal to P.
[0019] Through the above design, the first communication device can perform finer-grained grid division according to the needs of the point cloud data receiver, and transmit more details of the point cloud data to the point cloud data receiver, thus meeting the point cloud data receiver's need for more detailed point cloud data.
[0020] In one possible design, after sending the first information, the method further includes: receiving a seventh message, which indicates incremental transmission of point cloud data to R grids out of N grids, where R is an integer less than or equal to N; dividing the R grids into S grids, where S is an integer greater than R; and sending an eighth message, which indicates T grids, where T grids are determined based on the distribution of multiple sensing data points in the S grids, where T is an integer less than or equal to S.
[0021] Through the above design, the first communication device can perform finer-grained grid division of local point cloud data according to the needs of the point cloud data receiving end, and transmit more details of the point cloud data to the point cloud data receiving end, thus meeting the needs of the point cloud data receiving end for more detailed local point cloud data.
[0022] Secondly, embodiments of this application provide a method for transmitting point cloud data. This method can be executed by a second communication device. The method includes: receiving first information, the first information being used to indicate N grids, the N grids being determined based on the distribution of multiple sensing data points of the point cloud data in M grids, where M is an integer greater than 1 and N is an integer less than or equal to M; and reconstructing the point cloud data based on the first information.
[0023] In the above point cloud transmission method, the second communication device may refer to a terminal, a wireless access network device (such as a base station), a core network device, or an Internet device (such as a server), or it may refer to a component in the above-mentioned device (such as a communication module, processor, chip, or chip system), or it may refer to a logic module or software that can realize all or part of the functions of the above-mentioned device.
[0024] In one possible design, before receiving the first information, the method further includes sending a second information, which indicates the viewpoint requirement for rotating the point cloud data. Those skilled in the art will understand that when the viewpoint corresponding to the point cloud data meets the viewpoint requirement of the point cloud data, rotational transformation of the point cloud data is not necessary.
[0025] In one possible design, before reconstructing the point cloud data based on the first information, the method further includes: receiving meshing parameters, which include at least one of the following: mesh start position, mesh 3D width, mesh interval, mesh arrangement, translation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system, or rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system; and reconstructing the point cloud data based on the first information, including: reconstructing the point cloud data based on the first information and the meshing parameters.
[0026] In one possible design, before reconstructing the point cloud data based on the first information, the method further includes: receiving third information, the third information being used to indicate the location of representative points in N grids, wherein any grid in the N grids corresponds to at least one representative point, and the at least one representative point is used to represent a sensed data point in the grid; and reconstructing the point cloud data based on the first information, including: reconstructing the point cloud data based on the first information and the third information.
[0027] In one possible design, any grid among the N grids satisfies the following: the number of sensed data points distributed in any grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
[0028] In one possible design, before receiving the first information, the method further includes sending a fourth message, which indicates the task type of applying point cloud data.
[0029] In one possible design, after reconstructing the point cloud data based on the first information, the method further includes: sending a fifth message, which indicates incremental transmission of the point cloud data; receiving a sixth message, which indicates Q grids, which are determined based on the distribution of multiple sensing data points in P grids, where P is an integer greater than M and Q is an integer less than or equal to P; and reconstructing the point cloud data based on the sixth message.
[0030] In one possible design, after reconstructing the point cloud data based on the first information, the method further includes: sending a seventh message, which indicates incremental transmission of point cloud data to R grids out of N grids, where R is an integer less than or equal to N; receiving an eighth message, which indicates T grids, where T grids are determined based on the distribution of multiple sensing data points in S grids, where S grids are obtained by dividing the R grids, where S is an integer greater than R and T is an integer less than or equal to S; and reconstructing the point cloud data based on the first and eighth messages.
[0031] Thirdly, embodiments of this application provide a communication device that has the function of implementing the methods of the first or second aspect described above. The function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules (or units) corresponding to the above functions, such as an interface unit and a processing unit.
[0032] In one possible design, the device can be a chip or an integrated circuit.
[0033] In one possible design, the device includes a memory and a processor, the memory for storing computer programs or instructions executed by the processor, and when the computer programs or instructions are executed by the processor, the device can perform the method of either the first or second aspect described above.
[0034] Fourthly, embodiments of this application provide a communication device, which includes an interface circuit and a processor, with the processor and the interface circuit coupled to each other. The interface circuit is used for inputting and / or outputting signals, and the processor uses logic circuits or executing instructions to implement the methods of the first or second aspect described above. It is understood that the interface circuit can be a transceiver, a transceiver device, or an input / output interface.
[0035] Optionally, the communication device may also include a memory for storing instructions executed by the processor, or storing input data required by the processor to execute instructions, or storing data generated after the processor executes instructions. The memory may be a physically independent unit, or it may be coupled to the processor, or the processor may include the memory (i.e., the processor and the memory are integrated together).
[0036] In one possible implementation, the communication device is a chip.
[0037] Fifthly, embodiments of this application provide a communication system, which includes a first communication device and a second communication device. The first communication device is used to implement the method described in the first aspect, and the second communication device is used to implement the method described in the second aspect.
[0038] Sixthly, embodiments of this application provide a computer-readable storage medium storing a computer program or instructions, which, when executed by a processor, can implement the method of either the first or second aspect described above.
[0039] In a seventh aspect, embodiments of this application also provide a computer program product, including a computer program or instructions, which, when executed by a processor, can implement the method of either the first or second aspect described above.
[0040] Eighthly, embodiments of this application also provide a chip system including a processor, the processor being coupled to a memory, the memory being used to store programs or instructions, and when the program or instructions are executed by the processor, the methods of either the first or second aspect described above can be implemented.
[0041] The technical effects achievable by aspects two through eight above are similar to those achievable by aspect one above, and will not be repeated here. Attached Figure Description
[0042] Figure 1 This is a schematic diagram of the architecture of the communication system provided in the embodiments of this application;
[0043] Figure 2 This is a schematic diagram of an environment reconstruction scenario provided in an embodiment of this application;
[0044] Figure 3 , Figure 11 This is a schematic diagram of a point cloud data transmission method provided in an embodiment of this application;
[0045] Figure 4 , Figure 5 , Figure 7 This is a schematic diagram of mesh division provided for an embodiment of this application;
[0046] Figure 6 This is a schematic diagram illustrating the point cloud data perspective adjustment provided in an embodiment of this application.
[0047] Figure 8 This is a schematic diagram of an octree indicator grid provided in an embodiment of this application;
[0048] Figure 9This is a schematic diagram of the distribution of representative points provided in the embodiments of this application;
[0049] Figure 10 This is a schematic diagram of an octree provided in an embodiment of this application;
[0050] Figure 12 This is a schematic diagram of coordinate system transformation provided in an embodiment of this application;
[0051] Figure 13 , Figure 14 This is a schematic diagram of the point cloud data incremental transmission method provided in the embodiments of this application;
[0052] Figure 15A This is a schematic diagram illustrating the point cloud data transmission process provided in an embodiment of this application.
[0053] Figure 15B Visual effect simulation diagram provided for embodiments of this application;
[0054] Figure 16 , Figure 17 , Figure 18 and Figure 19 This is a schematic diagram of the structure of the communication device provided in the embodiments of this application. Detailed Implementation
[0055] The technology provided in this application can be applied to various communication systems, such as Universal Mobile Telecommunications System (UMTS), Wireless Local Area Network (WLAN), Wireless Fidelity (WiFi) system, 4th generation (4G) mobile communication system such as Long Term Evolution (LTE) system, 5th generation (5G) mobile communication system such as New Radio (NR) system, and future communication systems, etc.
[0056] Figure 1 This is a schematic diagram of the architecture of a communication system provided in an embodiment of this application. Figure 1 As shown, the communication system 1000 includes a radio access network (RAN) 100, wherein the RAN 100 includes at least one RAN node (e.g., Figure 1 110a and 110b, collectively referred to as 110, may also include at least one terminal (such as...). Figure 1RAN100, denoted as RAN100, comprises RAN nodes 120a-120j, collectively referred to as RAN120. RAN100 may also include other RAN nodes, such as wireless relay equipment and / or wireless backhaul equipment. Figure 1 (Not shown in the image). Terminal 120 is wirelessly connected to RAN node 110. Terminals and RAN nodes can be interconnected via wired or wireless means. Communication system 1000 may also include core network 200. RAN node 110 is connected to core network 200 via wireless or wired means. The core network equipment in core network 200 and RAN node 110 in RAN 100 can be independent physical devices, or they can be the same physical device integrating the logical functions of core network equipment and RAN node. Communication system 1000 may also include Internet 300.
[0057] RAN100 can be an evolved universal terrestrial radio access (E-UTRA) system, an NR system, or a future radio access system as defined in the 3rd generation partnership project (3GPP), or a WiFi system, etc. RAN100 can also include two or more of the above-mentioned different radio access systems. RAN100 can also be an open RAN (O-RAN).
[0058] RAN nodes, also known as radio access network devices, RAN entities, or access nodes, are used to help terminals access communication systems wirelessly. In one application scenario, an RAN node can be a base station, an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB) in a 5G mobile communication system, a base station in a future mobile communication system, or an access node in a WiFi system. RAN nodes can also be macro base stations (such as...) Figure 1 110a in the text), can also be a micro base station or an indoor station (such as... Figure 1 110b in the middle can also be a relay node or a donor node.
[0059] In another application scenario, multiple RAN nodes can collaborate to help terminals achieve wireless access, with different RAN nodes implementing different functions of the base station. For example, a RAN node can be a central unit (CU), a distributed unit (DU), or a radio unit (RU). Here, the CU performs the functions of the base station's Radio Resource Control (RRC) and Packet Data Convergence Protocol (PDCP), and can also perform the functions of the Service Data Adaptation Protocol (SDAP). The DU performs the functions of the base station's Radio Link Control (RANC) and Medium Access Control (MAC) layers, and can also perform some or all of the physical layer functions. For specific descriptions of these protocol layers, refer to the relevant 3GPP technical specifications. The RU can be used to implement radio frequency signal transmission and reception. The CU and DU can be two independent RAN nodes or integrated into the same RAN node, such as within a baseband unit (BBU). The RU can be included in radio frequency equipment, such as in a remote radio unit (RRU) or an active antenna unit (AAU). The CU can be further divided into two types of RAN nodes: CU-control plane and CU-user plane.
[0060] In different systems, RAN nodes may have different names. For example, in an O-RAN system, a CU can be called an open CU (O-CU), a DU can be called an open DU (O-DU), and an RU can be called an open RU (O-RU). The RAN nodes in the embodiments of this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules. For example, a RAN node can be a server loaded with the corresponding software modules. The embodiments of this application do not limit the specific technology or device form used in the RAN nodes. For ease of description, a base station is used as an example of a RAN node in the following description.
[0061] A terminal is a device with wireless transceiver capabilities, capable of sending signals to or receiving signals from a base station. Terminals can also be called terminal equipment, user equipment (UE), mobile station, mobile terminal, etc. Terminals can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminals can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, airplanes, ships, robots, robotic arms, smart home devices, etc. The embodiments of this application do not limit the specific technology or device form used in the terminal.
[0062] Base stations and terminals can be fixed or mobile. They can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; and they can be deployed on aircraft, balloons, and satellites. The embodiments of this application do not limit the application scenarios of the base stations and terminals.
[0063] The roles of base stations and terminals can be relative, for example, Figure 1 The helicopter or drone 120i can be configured as a mobile base station. For terminals 120j accessing the wireless access network 100 via 120i, terminal 120i is a base station; however, for base station 110a, 120i is a terminal, meaning that 110a and 120i communicate via a wireless air interface protocol. Of course, 110a and 120i can also communicate via a base station-to-base station interface protocol; in this case, 120i is also a base station relative to 110a. Therefore, both base stations and terminals can be collectively referred to as communication devices. Figure 1 The 110a and 110b in the text can be referred to as communication devices with base station functions. Figure 1 The 120a-120j in the text can be referred to as communication devices with terminal functions.
[0064] Communication between base stations and terminals, between base stations, and between terminals can be conducted using licensed spectrum, unlicensed spectrum, or both simultaneously. Communication can be conducted using spectrum below 6 GHz, spectrum above 6 GHz, or both simultaneously. The embodiments of this application do not limit the spectrum resources used for wireless communication.
[0065] In the embodiments of this application, the functions of the base station can be executed by modules (such as chips) within the base station, or by a control subsystem that includes base station functions. This control subsystem, including base station functions, can be a control center in the aforementioned application scenarios such as smart grids, industrial control, intelligent transportation, and smart cities. Similarly, the functions of the terminal can be executed by modules (such as chips or modems) within the terminal, or by a device that includes terminal functions.
[0066] In this application, the base station sends downlink signals or downlink information to the terminal, with the downlink information carried on the downlink channel; the terminal sends uplink signals or uplink information to the base station, with the uplink information carried on the uplink channel. To communicate with the base station, the terminal needs to establish a radio connection on a cell controlled by the base station. The cell with which the terminal has established a radio connection is called the terminal's serving cell. When the terminal communicates with this serving cell, it is also susceptible to interference from signals from neighboring cells.
[0067] based on Figure 1 The communication system architecture shown is as follows: Figure 2 This example illustrates an environmental reconfiguration scenario to which embodiments of this application are applicable. Figure 2 Taking a base station and multiple terminals (terminal 1 to terminal 3) as an example, the multiple terminals can scan objects in the environment, obtain point cloud data and upload it to the base station. The base station can construct an environmental map based on the point cloud data reported by the multiple terminals.
[0068] To facilitate understanding by those skilled in the art, some terms used in this application are explained below.
[0069] 1) Point cloud (PC) data.
[0070] Point cloud data can refer to a collection of data from multiple sensor data points on the surface of one or more objects. The objects can be, for example, one or more of the following: objects, animals, and people. The data for a single sensor data point includes its coordinates and may also include brightness parameters. For example, point cloud data can include the coordinates and / or brightness parameters of multiple sensor data points on the surface of one or more objects. The coordinates of a sensor data point can be its coordinates in a Cartesian coordinate system or a world coordinate system. For example, point cloud data can be three-dimensional (3D) point cloud data. The coordinates of the points included in 3D point cloud data can be three-dimensional coordinates, such as including information on the horizontal axis (x-axis), vertical axis (y-axis), and depth axis (z-axis). The brightness of a sensor data point refers to the brightness of the sensor data point as determined by detection. For example, in point cloud data acquired by a lidar system, the brightness of a specific sensing data point can be understood as the intensity of the radar signal reflected by that sensing data point, determined through detection. Similarly, in point cloud data acquired using synthetic aperture radar (SAR) technology, the brightness of a specific sensing data point can be determined by analyzing the echo signal of that sensing data point, which is the scattering coefficient of that point. Optionally, the point cloud data may also include color parameters for multiple sensing data points. Color parameters may be, for example, color data in red, green, and blue (RGB) format.
[0071] In some embodiments, point cloud data may also be referred to as point cloud, sensing data, scanning data, imaging data, etc.
[0072] 2) Sending information.
[0073] In this application, "sending information" can be understood as one device sending information to another device, or as one logic module within a device sending information to another logic module. For example, "device A sending information" can be understood as device A sending information to another device (device B), or as logic module 1 in device A sending information to logic module 2 in device A. In this application, "receiving information" can be understood as one device receiving information from another device, or as one logic module within a device receiving information from another logic module. For example, "device A receiving information" can be understood as device A receiving information from another device (such as device B), or as logic module 1 in device A receiving information from logic module 2 in device A. In this application, "sending information to… (e.g., device B)" or the related illustrations in the accompanying drawings can be understood as the destination of the information being device B. This can include sending information directly or indirectly to device B. The phrases "receiving information from... (e.g., device A)," "receiving information from... (e.g., device A)," or "receiving information sent by (e.g., device A)," or the relevant illustrations in the accompanying drawings, can be understood as indicating that the source of the information is device A, which may include receiving information directly or indirectly from device A. The information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be interpreted similarly and will not be repeated here.
[0074] Furthermore, in the description of this application, terms such as "first" and "second" are used only to distinguish multiple objects and are not used to limit the size, content, order, sequence, priority, or importance of the multiple objects. For example, "first information" and "second information" do not indicate a difference in priority or importance between the two pieces of information.
[0075] In this application embodiment, the number of nouns, unless otherwise specified, refers to "singular nouns or plural nouns," that is, "one or more." "At least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, or B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. For example, A / B means: A or B. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c means: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single or multiple.
[0076] The terms "comprising" and "having," and any variations thereof, used in the following description of embodiments of this application are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or device that includes a series of steps or units is not limited to the listed steps or units, but may optionally include other steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or devices. It should be noted that in embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any method or design described as "exemplary" or "for example" in embodiments of this application should not be construed as preferred or advantageous over other methods or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
[0077] In the embodiments of this application, "of", "corresponding (relevant)" and "corresponding" can sometimes be used interchangeably. It should be noted that when their differences are not emphasized, their meanings are consistent.
[0078] Currently, the transmission of point cloud data typically employs either direct transmission or transmission schemes that downsample the point cloud data before transmission. While downsampling the point cloud data before transmission can compress the data volume to some extent, the large data volume and high transmission overhead remain issues because point cloud data consists of a large number of sensing data points (such as 3D coordinates).
[0079] Based on this, embodiments of this application provide a method and apparatus for transmitting point cloud data, aiming to replace the transmission of the specific data content of the point cloud data with the distribution information of multiple sensing data points in a grid, thereby reducing the overhead of point cloud data transmission. The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0080] The sensing data transmission method provided in this application embodiment can be executed by a first communication device and a second communication device, wherein the first communication device and the second communication device are different communication devices. The first communication device (or the second communication device) can refer to a terminal, access network equipment (such as a base station, CU, or DU, etc.), core network equipment, or Internet equipment (such as a server), etc., or it can refer to components in the above-mentioned equipment (such as communication modules, processors, chips, or chip systems, etc.), or it can refer to logic modules or software that can realize all or part of the functions of the above-mentioned equipment. The first communication device can act as the sending end of point cloud data, and the second communication device can act as the receiving end of point cloud data.
[0081] Figure 3 This is one of the schematic diagrams of a point cloud data transmission method provided in an embodiment of this application. The method includes:
[0082] S301: The first communication device performs gridding processing on the point cloud data to obtain M grids, where M is an integer greater than 1.
[0083] In this application embodiment, the first communication device can be a point cloud data acquisition device, which scans a certain area through sensors (such as a visual sensor, an electromagnetic wave sensor (or antenna), or one or more of lidar, etc.) to acquire point cloud data; or, the first communication device can also acquire point cloud data from other devices. This application does not limit the method by which the first communication device acquires point cloud data.
[0084] Point cloud data can refer to a collection of data from multiple sensor data points on the surface of one or more objects, such as objects, animals, and people. The data of a sensor data point can include the three-dimensional coordinates of the sensor data point, as well as information such as the brightness parameters of the sensor data point.
[0085] After acquiring point cloud data, the first communication device can perform gridding processing on the point cloud data to obtain M grids. The gridding parameters for the first communication device to perform gridding processing on the point cloud data, such as the grid starting position, the three-dimensional width of the grid, and the grid spacing, can be determined by the first communication device or indicated to the first communication device by the second communication device.
[0086] The grid starting position can refer to the starting point of the point cloud data for gridding; the grid 3D width can refer to the width (or length) of the area (which is a rectangle) of the point cloud data for gridding in the x-axis direction, the width in the y-axis direction, and the width in the z-axis direction; the grid spacing can refer to the side length of any grid obtained after gridding.
[0087] As an example: After acquiring point cloud data, the first communication device can determine the circumscribed rectangle containing the point cloud data (i.e., multiple sensing data points containing the point cloud data), wherein the three sides of this rectangle in different directions (such as the length, width, and height of the rectangle) are parallel to the x-axis, y-axis, and z-axis of the coordinate system where the point cloud data is located, respectively. The rectangle can be divided into M grids according to the grid interval (which can be determined by the first communication device). The grid starting position can refer to the starting position of the rectangle (i.e., the rectangle composed of M grids) (for example, the point with the smallest three-dimensional coordinates in the rectangle), the three-dimensional width of the grid can refer to the width of the rectangle (i.e., the rectangle composed of M grids) in the x-axis direction, the y-axis direction, and the z-axis direction, and the grid interval can refer to the side length of any one of the M grids.
[0088] In some embodiments, for ease of mesh division, the three-dimensional width of the mesh (such as the width of the outer rectangle containing point cloud data in the x-axis direction, the width in the y-axis direction, and the width in the z-axis direction) is an integer multiple of the mesh interval.
[0089] It is understandable that when the three-dimensional width of the grid is equal, that is, when the width of the rectangle composed of M grids in the x-axis direction, the width in the y-axis direction, and the width in the z-axis direction are equal, the rectangle composed of M grids is a cube.
[0090] Figure 4 The following is a schematic diagram of grid division provided in an embodiment of this application. The starting position of the rectangle containing multiple sensing data points of point cloud data is (0, 0, 0). The width in the x-axis direction, the width in the y-axis direction, and the width in the z-axis direction are all 30cm. The grid interval is 10cm. The rectangle containing multiple sensing data points of point cloud data can be divided into 3*3*3=27 grids (or cubes).
[0091] The above example, which uses a rectangle whose starting position and 3D width are determined based on multiple sensing data points including point cloud data, illustrates that the configuration of meshing parameters can also be decoupled from point cloud data, i.e., it can be unrelated to the distribution of point cloud data.
[0092] As an example: the first communication device uses by default the following meshing parameters to perform meshing processing on point cloud data: the mesh start position is (x1, y1, z1), the three-dimensional mesh width is w1 (corresponding to the x-axis), w2 (corresponding to the y-axis) and w3 (corresponding to the z-axis), and the mesh interval is s1.
[0093] For the obtained M grids, the first communication device can also arrange the M grids according to a certain grid arrangement method, and can determine the number (or index) of the M grids according to the grid arrangement method.
[0094] Reference Figure 5 The diagram showing the division of M grids, taking M=27 as an example, shows that the M grids can be arranged in the following order: first the positive x-axis direction, then the positive y-axis direction, and finally the positive z-axis direction. The numbering of the M grids can be determined according to this grid arrangement.
[0095] It should be noted that the above arrangement of the grid along the positive x-axis, then the positive y-axis, and finally the positive z-axis is only one possible grid arrangement. Other possible arrangements include the positive x-axis, then the positive z-axis, and finally the positive y-axis, or vice versa, etc. This application does not limit the specific arrangement. Furthermore, in the subsequent description of the embodiments in this application, the grid arrangement along the positive x-axis, then the positive y-axis, and finally the positive z-axis will be used as an example for explanation.
[0096] In some embodiments, for the purpose of visualizing three-dimensional objects or the perspective requirements of the second communication device for point cloud data, the first communication device may also perform rotation transformation on the point cloud data before performing meshing processing, so that the perspective corresponding to the point cloud data meets the requirements of the first communication device for visualizing three-dimensional objects, or meets the perspective requirements of the second communication device for point cloud data.
[0097] The viewpoint requirement for point cloud data can be understood as the requirement to rotate and transform the point cloud data, or the viewpoint requirement for rotating and transforming the point cloud data. The second communication device can send second information indicating the viewpoint requirement for the point cloud data to the first communication device. The first communication device can then determine the rotation parameters based on the viewpoint requirement and perform rotation and transformation on the point cloud data. The rotation parameters represent the type of rotation performed, and there are various ways to express rotation parameters, such as rotation matrix and rotation angle. Taking the rotation angle as an example, it can be represented by two degrees of freedom (i.e., rotation angles along two of the coordinate axes: x-axis, y-axis, and z-axis). Figure 6In the illustrated rotation transformation diagram, taking the rotation angle along the x-axis as θ1 and the rotation angle along the y-axis as φ1 as an example, the rotation angle can be denoted as (θ1, φ1). The values of θ1 and φ1 range from 0° to 360°. Rotating the x-axis by θ1 means rotating the x-axis clockwise by θ1 when looking directly at the positive x-axis (or when the positive x-axis points towards the eyes); similarly, rotating the y-axis by φ1 means rotating the y-axis clockwise by φ1 when looking directly at the positive y-axis (or when the positive y-axis points towards the eyes). It can be understood that when the viewpoint corresponding to the point cloud data meets the viewpoint requirements for the point cloud data, the rotation angle can be denoted as (0°, 0°) or (0, 0), and in this case, no rotation transformation of the point cloud data is required.
[0098] In one possible implementation, the second information can indicate the viewing angle requirement for the point cloud data by carrying a rotation angle, and the first communication device can perform rotation transformation on the point cloud data according to the rotation angle carried by the second information.
[0099] As an example: the second information carries rotation angles (θ1, φ1), where θ1 and φ1 range from 0° to 360°. θ1 represents the angle of rotation along the x-axis, and φ1 represents the angle of rotation along the y-axis. Therefore, before performing meshing processing on the point cloud data, the first communication device can perform rotation transformation on the point cloud data based on the rotation angles (θ1, φ1). It is understandable that when the viewpoint corresponding to the point cloud data meets the viewpoint requirements of the point cloud data, there is no need to perform rotation transformation on the point cloud data; in this case, the rotation angle can be represented as (0°, 0°) or (0, 0).
[0100] In another possible implementation, the second information can indicate the viewpoint requirement for the point cloud data by carrying view information. The first communication device can determine the rotation angle based on the view information carried by the second information and perform rotation transformation on the point cloud data.
[0101] As an example: Referring to Table 1, the second information includes two bits used to indicate view information. When these two bits are 00, it indicates the front view; when they are 01, it indicates the top view; and when they are 11, it indicates the left view. Taking the setting that the front view and top view follow the negative x-axis direction as the front view direction and the negative y-axis direction as the top view direction as the top view direction, the rotation angle (θ1, φ1) corresponding to the front view (negative x-axis direction) is (0°, 0°), and similarly, the rotation angle (θ1, φ1) corresponding to the left view (negative z-axis direction) is (0°, 90°), and the rotation angle (θ1, φ1) corresponding to the top view (negative y-axis direction) is (90°, -90°).
[0102] Table 1
[0103] Bit Perspective requirements 00 Front view 01 Top view 10 Left side view … …
[0104] In some embodiments, the first communication device may determine the viewing angle requirement as a front view or a top view, and perform rotation transformation on the point cloud data.
[0105] S302: The first communication device sends first information, and correspondingly, the second communication device receives the first information. The first information is used to indicate N grids, which are determined based on the distribution of multiple sensing data points of the point cloud data in M grids, where N is an integer less than or equal to M.
[0106] The following section uses different implementation examples to illustrate how the first communication device determines N grids based on the distribution of multiple sensing data points of point cloud data in M grids.
[0107] To achieve A1: Determine N grids from M grids based on whether there are sensing data points distributed in the grid. Any one of the N grids must satisfy the condition that there are sensing data points distributed in the grid.
[0108] As an example: M grids include grid 1, grid 2, ..., grid M. If there are sensing data points distributed in grid 1, the first communication device can determine that grid 1 belongs to N grids; if there are no sensing data points distributed in grid 2, the first communication device can determine that grid 2 does not belong to N grids; ...; if there are sensing data points distributed in grid M, the first communication device can determine that grid M belongs to N grids.
[0109] To achieve A2: Determine N grids from M grids based on whether the number of sensing data points distributed in the grid is greater than or equal to a first threshold. Any one of the N grids satisfies the following: the number of sensing data points distributed in the grid is greater than or equal to the first threshold, where the first threshold is a positive integer.
[0110] As an example: M grids include grid 1, grid 2, ..., grid M. If the number of sensing data points distributed in grid 1 is greater than or equal to a first threshold, the first communication device can determine that grid 1 belongs to N grids; if the number of sensing data points distributed in grid 2 is less than the first threshold, the first communication device can determine that grid 2 does not belong to N grids; ...; if the number of sensing data points distributed in grid M is greater than or equal to the first threshold, the first communication device can determine that grid M belongs to N grids.
[0111] By implementing A2 as described above, discrete noise in point cloud data can be eliminated, resulting in a smoother object surface reconstructed from point cloud data.
[0112] Implement A3: Determine N grids from M grids based on whether the number of sensing data points located in the center region of the grid is greater than or equal to a second threshold. For any of the N grids, the number of sensing data points located in the center region of the grid must be greater than or equal to the second threshold, where the second threshold is a positive integer.
[0113] In this embodiment, the sensing data point located in the center region of the grid can refer to a sensing data point whose Euclidean distance from the grid center point is less than or equal to a first length threshold, and / or a sensing data point whose minimum distance from the grid boundary (such as the six faces of the grid) is greater than or equal to a second length threshold. The first and second length thresholds can be determined based on the grid interval. For example, the first length threshold could be 1 / 3 or 1 / 4 of the grid interval, and the second length threshold could be 1 / 5 or 1 / 6 of the grid interval, etc.
[0114] As an example: M grids include grid 1, grid 2, ..., grid M. If the number of sensing data points located in the center region of grid 1 is greater than or equal to a second threshold, the first communication device can determine that grid 1 belongs to N grids; if the number of sensing data points located in the center region of grid 2 is less than the second threshold, the first communication device can determine that grid 2 does not belong to N grids; ...; if the number of sensing data points located in the center region of grid M is greater than or equal to the second threshold, the first communication device can determine that grid M belongs to N grids.
[0115] By implementing A3 as described above, interference from edge points of objects across the grid (such as the boundary between a wall and the ground) can be avoided, improving the accuracy of object reconstruction based on point cloud data. It can also eliminate residual edge points caused by object movement.
[0116] To implement A4: Based on whether a grid satisfies a first condition and / or a second condition, determine N grids from M grids. Each of the N grids satisfies both the first and / or second conditions. The first condition is that the number of sensed data points distributed within the grid is greater than or equal to a third threshold. The second condition is that the number of grids satisfying the first condition within the grid's neighborhood is greater than or equal to a fourth threshold. The third and fourth thresholds are positive integers. The third threshold can be the same as or different from the first threshold; this application does not impose any restrictions on this.
[0117] The neighborhood of a grid can refer to the 4-neighborhood (the four neighboring grids located above, below, to the left, and to the right of the grid); the 6-neighborhood (the six neighboring grids located above, below, to the left, to the right, and in front of / back); or the 26-neighborhood (the 26 neighboring grids centered on the grid). The value of the fourth threshold can vary depending on the neighborhood range. For example, if the neighborhood range is 4, the fourth threshold can be 2; if the neighborhood range is 6, the fourth threshold can be 3; if the neighborhood range is 26, the fourth threshold can be 10, and so on.
[0118] As an example: M grids include grid 1, grid 2, ..., grid M. If grid 1 meets a first condition, the first communication device can determine that grid 1 belongs to N grids; if grid 2 does not meet the first condition, the first communication device can determine that grid 2 does not belong to N grids; ...; if grid M meets the first condition, the first communication device can determine that grid M belongs to N grids.
[0119] After determining the grids that meet the first condition, for grids that do not meet the first condition, the first communication device can also determine whether the grid meets the second condition. If the grid meets the second condition (i.e., the number of grids that meet the first condition within the neighborhood of the grid is greater than or equal to the fourth threshold), the first communication device can also determine that the grid belongs to N grids.
[0120] By implementing A4, not only can discrete noise in point cloud data be eliminated, making the surface of objects reconstructed based on point cloud data smoother, but object boundaries can also be repaired, sparse point cloud data can be completed, and potential objects can be preserved when point cloud data is collected at low density over long distances.
[0121] To achieve A5: Based on whether a grid satisfies the third condition, determine N grids from M grids. Any one of the N grids satisfies the third condition, which may include one or more of the following: the number of sensing data points distributed in the grid is greater than or equal to a fifth threshold (e.g., 2); the number of grids satisfying the first condition within the grid's neighborhood is greater than or equal to a sixth threshold (e.g., 1); the ratio of the number of sensing data points located in the grid's central region to the number of sensing data points in the grid is greater than or equal to a seventh threshold (e.g., 80%). The fifth and sixth thresholds are positive integers, and the seventh threshold is a value greater than 0 and less than or equal to 1.
[0122] The above implementation of A5 ensures the continuity of the reconstructed object surface in scenarios where point cloud data is applied to high-precision 3D modeling, and balances the performance of noise suppression and detail preservation in scenarios where point cloud data is applied to dynamic environment perception.
[0123] It should be noted that the above implementations A1-A5 are merely examples of determining N grids based on the distribution of multiple sensing data points of point cloud data in M grids. The embodiments of this application do not limit the implementation method of determining N grids based on the distribution of multiple sensing data points of point cloud data in M grids.
[0124] For N grids out of M grids, in one possible implementation, the first information can indicate the N grids by carrying their serial numbers (or indices).
[0125] As an example: Reference Figure 5 The diagram shown illustrates the grid division, where N grids include grid 1, grid 4, grid 6, ..., grid 27. The first information can carry the serial numbers 1, 4, 6, ..., 27 of these N grids to indicate them.
[0126] In one possible implementation, the first information may include a bitmap indicating N grids out of M grids.
[0127] As an example: Reference Figure 7 The grid division diagram shown illustrates the arrangement of M grids according to the following order: first the positive x-axis, then the positive y-axis, and finally the positive z-axis. The bitmap can contain M bits, each corresponding one-to-one with one of the M grids arranged in the above grid pattern. Each of the M bits indicates whether the corresponding grid belongs to any of the N grids. For example, a bitmap of 100101011… indicates that grid 1 belongs to N grids, grid 2 does not belong to N grids, grid 3 does not belong to N grids, grid 4 belongs to N grids, grid 5 does not belong to N grids, grid 6 belongs to N grids, grid 7 does not belong to N grids, grid 8 belongs to N grids, grid 9 belongs to N grids, and so on.
[0128] In one possible implementation, the first information may include spatial tree information, which indicates N grids out of M grids.
[0129] Taking an octree as an example, an octree is a method of representing a space tree by breaking it down into smaller scales, with each level representing a different scale. In the context of a grid, "octree" means that each large-scale grid can be equally divided along the x, y, and z axes, forming eight smaller-scale grids. That is, a grid can be divided into eight sub-grids along the x, y, and z axes. Using M=64 as an example, refer to... Figure 8The diagram shows an octree indicating a grid. The octree has a scale of 3 (or 3 levels). Each node in the octree corresponds to a grid, where leaf nodes correspond to the smallest-scale grid, and non-leaf nodes correspond to non-smallest-scale grids (i.e., grids that can be further subdivided). M (M=64) grids can be one-to-one corresponded to the 1*8*8=64 leaf nodes of the octree; that is, the M grids are the 64 smallest-scale grids corresponding to the octree. The bits of each node in the octree can indicate whether there exists a grid belonging to N grids within a smaller-scale grid divided based on the grid corresponding to that node (which is not the smallest-scale grid), or whether the grid corresponding to that node (which is the smallest-scale grid) belongs to N grids. Figure 8 In this context, a bit of 1 for each node indicates that there exists a grid belonging to N grids within a smaller-scale grid based on the grid corresponding to that node (which is not the smallest-scale grid), or indicates that the grid corresponding to that node (which is the smallest-scale grid) belongs to N grids; a bit of 0 indicates that there is no grid belonging to N grids within a smaller-scale grid based on the grid corresponding to that node (which is not the smallest-scale grid), or indicates that the grid corresponding to that node (which is the smallest-scale grid) does not belong to N grids.
[0130] In some embodiments, to further reduce signaling overhead, the first communication device may also encode the bit stream (such as a bitmap) of the first information using an encoding method such as entropy coding. The second communication device may then use a corresponding decoding method to recover the first information.
[0131] S303: The second communication device reconstructs the point cloud data based on the first information.
[0132] The second communication device can determine M grids in the same way as the first communication device (e.g., by sampling the same gridding parameters), and can determine N grids from the M grids based on the received first information. The point cloud data can be reconstructed by sampling sensing data points from the N grids.
[0133] The second communication device may sample sensing data points in N grids in the same or different ways, and this application does not limit this.
[0134] As an example: For N grids, the second communication device can sample the center points of these N grids as sensing data points to reconstruct point cloud data; or for N grids, the second communication device can sample the top-left and bottom-right points of these N grids as sensing data points to reconstruct point cloud data; or for N grids, the second communication device samples the center points of some grids as sensing data points, and samples the top-left and bottom-right points of the remaining grids as sensing data points to reconstruct point cloud data; or for N grids, the second communication device can randomly sample at least one point in any grid as a sensing data point to reconstruct point cloud data.
[0135] It is understandable that, since the second communication device that receives the first information usually samples sensing data points in N grids when reconstructing point cloud data based on the first information, the above-mentioned grid belonging to N grids can also be represented as the presence of sensing data points within that grid.
[0136] In one possible implementation, the first communication device can also send third information to the second communication device. This third information indicates the locations of representative points across N grids, where each of the N grids corresponds to at least one representative point, and this at least one representative point represents a sensed data point within that grid. The second communication device can also reconstruct the point cloud data based on the first and third information.
[0137] Reference Figure 9 The schematic diagram showing the distribution of representative points illustrates that, for any of the N grids, the representative points of that grid include the center point (point c), the top-left corner point (point a), and the bottom-right corner point (point b). The second communication device can sample the center point, top-left corner point, and bottom-right corner point of any of the N grids indicated by the first information as sensing data points to reconstruct the point cloud data.
[0138] It should be understood that the representative point positions of the N grids indicated by the third information may be the same or different, and this application does not limit this. The first communication device may send the third information before, after, or together with the first information.
[0139] In some embodiments, the third information and the first information can be the same information, that is, the first information (or the third information) can not only indicate the N grids, but also indicate the position of the representative point of the N grids.
[0140] As an example: the first information may include a bitmap, which may include 2M bits. Every 2 bits are used to indicate whether a grid belongs to N grids (or whether there are sensing data points in the grid) and the position of the representative point in the grid. Referring to the correspondence between bit values and representative point positions shown in Table 2, when the value of 2 bits is 00, it means that the grid corresponding to the 2 bits does not belong to N grids (or there are no sensing data points in the grid) and has no representative point; when the value of 2 bits is 01, it means that the grid corresponding to the 2 bits belongs to N grids (or there are sensing data points in the grid) and the representative point is the center point; when the value of 2 bits is 10, it means that the grid corresponding to the 2 bits belongs to N grids (or there are sensing data points in the grid) and the representative points are the top left and bottom right points; when the value of 2 bits is 11, it means that the grid corresponding to the 2 bits belongs to N grids (or there are sensing data points in the grid) and the representative points are the center point, the top left point, and the bottom right point.
[0141] Table 2
[0142]
[0143]
[0144] Similarly, refer to Figure 10 The diagram of the octree shown can also use 2 bits to indicate the grid corresponding to each leaf node. For each leaf node, the value of the 2 bits corresponding to the leaf node can be used to determine whether the grid corresponding to the leaf node belongs to N grids, and the position of the representative point when it belongs to N grids. The implementation of the indication can be referred to Table 2 above, and will not be described again.
[0145] The gridding parameters for gridding point cloud data can be sent from the first communication device to the second communication device, or they can be pre-configured in the first and second communication devices, or determined by the second communication device based on the gridding parameter requirements sent to the first communication device.
[0146] Taking the meshing parameters for meshing point cloud data being sent from the first communication device to the second communication device as an example, Figure 11 This is a second schematic diagram of a point cloud data transmission method provided in an embodiment of this application. The method includes:
[0147] S1101: The first communication device performs gridding processing on the point cloud data to obtain M grids, where M is an integer greater than 1.
[0148] S1102: The first communication device sends first information, and correspondingly, the second communication device receives the first information. The first information is used to indicate N grids, which are determined based on the distribution of multiple sensing data points of the point cloud data in M grids, where N is an integer less than or equal to M.
[0149] S1103: The first communication device sends meshing parameters to the second communication device, and the second communication device receives the meshing parameters accordingly.
[0150] The meshing parameters may include at least one of the following: mesh start position, mesh 3D width, mesh arrangement, and mesh interval.
[0151] It is understood that this application does not limit the order in which steps S1103 is executed with respect to steps S1101 and S1102. For example, step S1103 may be executed before step S1101, or after step S1101 and before step S1102.
[0152] The gridding parameters for gridding point cloud data can be pre-configured in the first communication device, or determined autonomously by the first communication device, such as determining the grid starting position, grid three-dimensional width, etc., based on the distribution of the point cloud data.
[0153] In some embodiments, in order to further ensure that the point cloud data reconstructed by the second communication device meets the application performance requirements of the second communication device for point cloud data, the second communication device may also send a meshing parameter requirement to the first communication device. The meshing parameter requirement may include at least one of the following: the starting position of the mesh, the three-dimensional width of the mesh, the mesh interval, or the mesh arrangement method required by the second communication device. The first communication device may also determine the meshing parameters according to the meshing parameter requirement from the second communication device and perform meshing processing on the point cloud data.
[0154] As an example, the second communication device can send a meshing parameter request to the first communication device via signaling such as uplink control information (UCI), downlink control information (DCI), medium access control (MAC) control element (CE), radio resource control (RRC), or non-access stratum (NAS). The meshing parameter request may include at least one of the following: the starting position of the mesh, the three-dimensional width of the mesh, the mesh spacing, or the mesh arrangement method required by the second communication device. The first communication device can also determine the meshing parameters based on the meshing parameter request from the second communication device and perform meshing processing on the point cloud data based on the meshing parameters.
[0155] For meshing parameters, the first communication device can also send the meshing parameters to the second communication device via signaling such as UCI, DCI, MAC CE, RRC, or NAS. It is understood that if the meshing parameters are determined based on the meshing parameter requirements from the second communication device, the first communication device may not report the meshing parameters to the second communication device, allowing the second communication device to determine the meshing parameters based on the meshing parameter requirements.
[0156] S1104: The second communication device reconstructs the point cloud data based on the first information.
[0157] The implementation of steps S1101, S1102 and S1104 can be referred to the implementation of steps S401, S402 and S403 above. The repeated parts will not be described again.
[0158] In some embodiments, considering that the coordinate system in which the point cloud data is located (i.e., the coordinate system in which the point cloud data is acquired) may be different from the global coordinate system used by the second communication device to reconstruct the point cloud data, when the coordinate system in which the point cloud data is located is different from the global coordinate system, the meshing parameters may also include translation parameters of the coordinate system in which the point cloud data is located relative to the global coordinate system, and / or rotation parameters of the coordinate system in which the point cloud data is located relative to the global coordinate system, for the second communication device to translate and / or rotate the point cloud data to transform the point cloud data into the global coordinate system.
[0159] The global coordinate system can be the coordinate system used by the second communication device, such as the world coordinate system or the geodetic coordinate system. The global coordinate system can be pre-configured in the first and second communication devices, or it can be determined by the second communication device and configured for the first communication device.
[0160] The translation parameters of the coordinate system containing the point cloud data relative to the global coordinate system and the rotation parameters of the coordinate system containing the point cloud data relative to the global coordinate system can be determined based on the three-dimensional coordinates of at least three points in space in the coordinate system containing the point cloud data and the three-dimensional coordinates of each point in the global coordinate system.
[0161] Reference Figure 12 As shown, translation parameters can typically be represented as the difference in three-dimensional coordinates between the origin of the point cloud data's coordinate system and the origin of the global coordinate system, formally denoted as (Δx, Δy, Δz). Rotation parameters represent how the coordinate system containing the point cloud data has rotated relative to the x-axis, y-axis, and z-axis of the global coordinate system. Rotation parameters can be expressed in various ways, such as rotation matrices or rotation angles. Taking rotation angles as an example, the rotation of the point cloud data's coordinate system relative to the x-axis, y-axis, and z-axis can be identified using two degrees of freedom (i.e., rotation angles along two of the x, y, and z axes). Figure 12 Taking the rotation angle θ2 along the x-axis and the rotation angle φ2 along the y-axis as an example, the rotation angle can be denoted as (θ2, φ2). The translation and rotation parameters can be combined and denoted as the spatial position (Δx, Δy, Δz, θ2, φ2).
[0162] In some embodiments, the first communication device may also perform translation and / or rotation on the point cloud data based on the translation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system and / or the rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system, and then perform meshing on the point cloud data to align the coordinate system where the point cloud data is located with the global coordinate system.
[0163] In some embodiments, when the coordinate system of the point cloud data is different from the global coordinate system, if the first communication device receives second information from the second communication device indicating a viewpoint requirement for rotating the point cloud data, before performing a rotation transformation on the point cloud data based on the second information (e.g., before performing a rotation transformation on the point cloud data based on (θ1, φ1) determined based on the second information),
[0164] The first communication device can perform rotation transformation on the point cloud data according to the rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system (such as (θ2, φ2) mentioned above), and first correct the viewpoint of the point cloud data to the global coordinate system.
[0165] After reconstructing the point cloud data, the second communication device can perform various tasks based on the point cloud data, such as object reconstruction and target tracking. For example, the second communication device can apply AI models (such as PointNet model, PointNet++ model, etc.) to process the point cloud data and complete point cloud data processing tasks such as object reconstruction and target tracking.
[0166] Considering that different types of point cloud data processing tasks may require different meshing parameters (for example, AI models require different meshing parameters for different types of point cloud data processing tasks), in this embodiment of the application, the second communication device may also send fourth information to the first communication device to indicate the task type of the point cloud data being processed. The first communication device determines the meshing parameters for meshing the point cloud data based on the task type of the point cloud data being processed and the relationship between the task type and the meshing parameters, and performs meshing processing on the point cloud data based on the meshing parameters.
[0167] Table 3 shows the relationship between task type and meshing parameters provided in the embodiments of this application. The parameter number corresponding to the task type object reconstruction is 1, and the corresponding meshing parameters include the starting position (x1, y1, z1), mesh interval 10cm, 3D width 100cm (Table 3 takes the width in the x-axis direction, the width in the y-axis direction, and the width in the z-axis direction as equal as an example), rotation parameters (θ1, φ1), translation parameters (Δx1, Δy1, Δz1), etc. The parameter number corresponding to the task type target tracking is 2, and the corresponding meshing parameters include the starting position (x2, y2, z2), mesh interval 20cm, 3D width 200cm, rotation parameters (θ2, φ2), translation parameters (Δx2, Δy2, Δz2), etc.
[0168] Table 3
[0169]
[0170] It should be understood that the relationship between task types and gridding parameters shown in Table 3 is only a possible example. When applying it, you can use only some of the relationship between task types and gridding parameters in Table 3, or you can combine some of the relationship between task types and gridding parameters in Table 3 with other relationship between task types and gridding parameters, or you can apply it to different relationship between task types and gridding parameters in Table 3.
[0171] In some embodiments, after the second communication device reconstructs the point cloud data based on the first information, if more detailed point cloud data is needed, the second communication device may also request the first communication device to incrementally transmit the point cloud data to obtain more detailed information about the point cloud data.
[0172] The second communication device can request the first communication device to perform incremental transmission of the point cloud data as a whole, or it can request incremental transmission of a portion of the point cloud data. The following section will explain... Figure 13 and Figure 14 A schematic diagram of the point cloud data incremental transmission method is provided to illustrate the overall incremental transmission and local incremental transmission.
[0173] Figure 13 This application provides a schematic diagram of a point cloud data incremental transmission method, applicable to the overall incremental transmission of point cloud data. The method includes:
[0174] S1301: The second communication device sends a fifth message to the first communication device, and the first communication device receives the fifth message accordingly. The fifth message is used to indicate incremental transmission of point cloud data.
[0175] S1302: The first communication device performs gridding processing on the point cloud data to obtain P grids, where P is an integer greater than M.
[0176] S1303: The first communication device sends the sixth information, and correspondingly, the second communication device receives the sixth information. The sixth information is used to indicate Q grids, which are determined based on the distribution of multiple sensing data points of the point cloud data in P grids, where Q is an integer less than or equal to P.
[0177] As an example: After the second communication device reconstructs the point cloud data based on the first information, if more refined point cloud data is needed, the second communication device can send a fifth message to the first communication device, instructing incremental transmission of point cloud data. Upon receiving the instruction from the second communication device to incrementally transmit point cloud data, the first communication device can use a second grid interval smaller than the first grid interval to perform gridding processing on the point cloud data, obtaining P grids, where the first grid interval refers to the grid interval used when determining M grids. Furthermore, a sixth message can be used to instruct the second communication device to select Q grids from the P grids, where the Q grids can be determined based on the distribution of multiple sensing data points of the point cloud data within the P grids. Specifically, the implementation of determining Q grids based on the distribution of multiple sensing data points of the point cloud data within the P grids can be referenced to the above implementation of determining N grids based on the distribution of multiple sensing data points of the point cloud data within the M grids, and will not be elaborated further.
[0178] The second grid interval used for incremental transmission can be predefined and configured in the first and second communication devices. For example, the second grid interval can be predefined as 1cm, 2cm, etc., or the second grid interval can be predefined as 1 / 2, 1 / 3 of the first grid interval, etc.
[0179] In some embodiments, the second grid interval used for incremental transmission may also be indicated by the second communication device. As an example, the fifth information may also carry the second grid interval, or carry the scaling of the second grid interval relative to the first grid interval.
[0180] S1304: The second communication device reconstructs the point cloud data based on the sixth information.
[0181] As an example: After receiving the sixth information, the second communication device can recover the point cloud data by sampling sensing data points in the Q grids indicated by the sixth information.
[0182] In some embodiments, the second communication device can also reconstruct point cloud data based on the first information and the sixth information.
[0183] As an example: After receiving the sixth information, the second communication device can reconstruct the point cloud data by sampling sensing data points in the N grids indicated by the first information and sampling sensing data points in the Q grids indicated by the sixth information.
[0184] Figure 14 This is a schematic diagram of another point cloud data incremental transmission method provided in an embodiment of this application, which can be applied to the partial incremental transmission of point cloud data. The method includes:
[0185] S1401: The second communication device sends a seventh message to the first communication device, and correspondingly, the first communication device receives the seventh message. The seventh message indicates the incremental transmission of point cloud data to R grids out of N grids, where R is an integer less than or equal to N.
[0186] S1402: The first communication device divides R grids into S grids, where S is an integer greater than R.
[0187] S1403: The first communication device sends the eighth information, and correspondingly, the second communication device receives the eighth information. The eighth information is used to indicate T grids, which are determined based on the distribution of multiple sensing data points of the point cloud data in S grids, where T is an integer less than or equal to S.
[0188] As an example: After the second communication device reconstructs the point cloud data based on the first information, if it needs more refined point cloud data locally (e.g., in R grids out of N grids), the second communication device can send a seventh message to the first communication device. This seventh message can instruct incremental transmission of point cloud data to R grids out of N grids. Upon receiving the seventh message from the second communication device, the first communication device can further divide the R grids into S grids using a third grid interval smaller than the first grid interval, where the first grid interval refers to the grid interval used when determining M grids. It can also instruct the second communication device to select T grids out of the S grids via an eighth message, where the T grids can be determined based on the distribution of multiple sensing data points of the point cloud data within the S grids. Specifically, the implementation of determining T grids based on the distribution of multiple sensing data points of the point cloud data within the S grids can be referenced to the above implementation of determining N grids based on the distribution of multiple sensing data points of the point cloud data within M grids, and will not be repeated here.
[0189] The third grid interval used for incremental transmission can be predefined and configured in the first and second communication devices. For example, the third grid interval can be predefined as 1cm, 2cm, etc., or the third grid interval can be predefined as 1 / 2, 1 / 3 of the first grid interval, etc.
[0190] In some embodiments, the third grid interval used for incremental transmission may also be indicated by the second communication device. As an example, the third grid interval, or the ratio of the third grid interval to the first grid interval, may also be carried in the seventh information.
[0191] S1404: The second communication device reconstructs the point cloud data based on the first information and the eighth information.
[0192] As an example: After receiving the eighth information, the second communication device can reconstruct the point cloud data by sampling sensing data points in the N grids indicated by the first information and sampling sensing data points in the T grids indicated by the eighth information.
[0193] Reference Figure 15A The diagram illustrates the point cloud data transmission process. The first communication device (sender) can perform gridding on the point cloud data to obtain M grids. Based on the distribution of the sensing data points in the M grids, it instructs the second communication device via first information to sample and reconstruct the sensing data points from N grids (or grids containing sensing data points). The second communication device can then reconstruct the point cloud data by sampling the sensing data points from the N grids indicated by the first communication device. This eliminates the need to transmit the actual point cloud data content, achieving a higher data compression rate compared to directly transmitting the specific content, thus effectively reducing the overhead of point cloud data transmission.
[0194] In addition, when determining N grids, the first communication device can also make the N grids satisfy the condition that the number of sensing data points distributed in any grid is greater than or equal to a first threshold (refer to the above implementations A1-A5), thereby further achieving the effect of eliminating noise in the point cloud data and making the object surface reconstructed based on the point cloud data smoother.
[0195] Reference Figure 15B The visual effect simulation diagram shown shows that, under the condition that the data volume of the first information is compressed by more than 70 times (~70x) relative to the original data volume of the point cloud data, and any grid in the N grids indicated by the first information satisfies that the number of perception data points distributed in the grid is greater than or equal to the first threshold, the point cloud data transmission method provided in this application embodiment does not lose the performance of using point cloud data to reconstruct objects, and can make the reconstructed object surface smoother.
[0196] It is understood that, in order to achieve the functions in the above embodiments, the first communication device and the second communication device include hardware structures and / or software modules corresponding to each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0197] Figure 16 and Figure 17 The diagram illustrates the possible structures of communication devices provided in embodiments of this application. These communication devices can be used to implement the functions of the first or second communication device in the above method embodiments, and thus also achieve the beneficial effects of the above method embodiments. In the embodiments of this application, the communication device can be as follows: Figure 1 The terminal 120 shown can also be as follows: Figure 1 The access network device 110 shown can also be a module (such as a chip) applied to a terminal or access network device.
[0198] Please see Figure 16 , Figure 16 This is a schematic diagram of a communication device according to an embodiment of this application. The communication device may include units or modules corresponding to all or part of the steps in the above method embodiments, and can be used to execute the steps executed by the first communication device or the second communication device in the above embodiments. Please refer to the relevant descriptions in the above method embodiments for details.
[0199] like Figure 16As shown, the communication device 1600 includes a processing unit 1610 and an interface unit 1620, wherein the processing unit 1610 may be a processor or a processing circuit, and the interface unit 1620 may be a transceiver unit or an input / output interface. The communication device 1600 can be used to implement the steps performed by the first communication device or the second communication device in the above embodiments.
[0200] When the communication device 1600 is used to implement the steps performed by the first communication device in the above embodiments:
[0201] The processing unit 1610 is used to perform gridding processing on the point cloud data to obtain M grids, where M is an integer greater than 1;
[0202] Interface unit 1620 is used to send first information, which is used to indicate N grids. The N grids are determined according to the distribution of multiple sensing data points of point cloud data in M grids, where N is an integer less than or equal to M.
[0203] In one possible design, the interface unit 1620 is further configured to receive second information before the processing unit 1610 performs meshing processing on the point cloud data. This second information indicates the viewpoint requirement for rotating the point cloud data. The processing unit 1610 is further configured to perform rotational transformation on the point cloud data according to the viewpoint requirement. Specifically, when the processing unit 1610 performs meshing processing on the point cloud data, it performs meshing processing on the rotated point cloud data. It is understood that when the viewpoint corresponding to the point cloud data meets the viewpoint requirement of the point cloud data, rotational transformation of the point cloud data is unnecessary.
[0204] In one possible design, before or after the processing unit 1610 performs meshing processing on the point cloud data, the interface unit 1620 is also used to send meshing parameters for meshing the point cloud data. The meshing parameters include at least one of the following: mesh start position, mesh 3D width, mesh interval, mesh arrangement, translation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system, or rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system.
[0205] In one possible design, after the processing unit 1610 performs gridding processing on the point cloud data, the interface unit 1620 is also used to send third information, which is used to indicate the position of representative points of N grids; wherein, any grid in the N grids corresponds to at least one representative point, and at least one representative point is used to represent the sensing data points in the grid.
[0206] In one possible design, any grid among the N grids satisfies the following: the number of sensed data points distributed in the grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
[0207] In one possible design, before the processing unit 1610 performs meshing processing on the point cloud data, the interface unit 1620 is also used to receive fourth information, which indicates the task type of applying the point cloud data; the processing unit 1610 is also used to determine the meshing parameters for meshing the point cloud data based on the task type and the relationship between the task type and the meshing parameters; when the processing unit 1610 performs meshing processing on the point cloud data, it is specifically used to perform meshing processing on the point cloud data based on the above-mentioned meshing parameters.
[0208] In one possible design, after sending the first information, the interface unit 1620 is also used to receive the fifth information, which is used to indicate incremental transmission of point cloud data; the processing unit 1610 is also used to perform gridding processing on the point cloud data to obtain P grids, where P is an integer greater than M; the interface unit 1620 is also used to send the sixth information, which is used to indicate Q grids, where Q grids are determined according to the distribution of multiple sensing data points in the P grids, and Q is an integer less than or equal to P.
[0209] In one possible design, after sending the first information, the interface unit 1620 is also used to receive the seventh information, which is used to indicate the incremental transmission of point cloud data to R grids out of N grids, where R is an integer less than or equal to N; the processing unit 1610 is also used to divide the R grids into S grids, where S is an integer greater than R; the interface unit 1620 is also used to send the eighth information, which is used to indicate T grids, where T grids are determined based on the distribution of multiple sensing data points in the S grids, where T is an integer less than or equal to S.
[0210] When the communication device 1600 is used to implement the steps performed by the second communication device in the above embodiments:
[0211] Interface unit 1620 is used to receive first information, which is used to indicate N grids. The N grids are determined according to the distribution of multiple sensing data points of point cloud data in M grids, where M is an integer greater than 1 and N is an integer less than or equal to M.
[0212] The processing unit 1610 is used to reconstruct point cloud data based on the first information.
[0213] In one possible design, before receiving the first information, the interface unit 1620 is also used to send a second information, which indicates the viewing angle requirement for rotating the point cloud data. It is understood that when the viewing angle corresponding to the point cloud data meets the viewing angle requirement of the point cloud data, there is no need to rotate the point cloud data, and the rotation angle can be represented as (0°, 0°) or (0, 0).
[0214] In one possible design, before the processing unit 1610 reconstructs the point cloud data based on the first information, the interface unit 1620 is also used to receive meshing parameters, which include at least one of the following: mesh starting position, mesh 3D width, mesh interval, mesh arrangement, translation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system, or rotation parameters of the coordinate system where the point cloud data is located relative to the global coordinate system; when the processing unit 1610 reconstructs the point cloud data based on the first information, it is specifically used to reconstruct the point cloud data based on the first information and the meshing parameters.
[0215] In one possible design, before the processing unit 1610 reconstructs the point cloud data based on the first information, the interface unit 1620 is also used to receive third information, which indicates the position of representative points of N grids, wherein any grid in the N grids corresponds to at least one representative point, and at least one representative point is used to represent the sensing data points in the grid; when the processing unit 1610 reconstructs the point cloud data based on the first information, it is specifically used to reconstruct the point cloud data based on the first information and the third information.
[0216] In one possible design, any grid among the N grids satisfies the following: the number of sensed data points distributed in the grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
[0217] In one possible design, the interface unit 1620 is also used to send a fourth message before receiving the first message, the fourth message being used to indicate the task type of the application point cloud data.
[0218] In one possible design, after the processing unit 1610 reconstructs the point cloud data based on the first information, the interface unit 1620 is also used to send fifth information, which is used to indicate incremental transmission of point cloud data; and to receive sixth information, which is used to indicate Q grids, the Q grids being determined based on the distribution of multiple sensing data points in P grids, where P is an integer greater than M and Q is an integer less than or equal to P; the processing unit 1610 is also used to reconstruct the point cloud data based on the sixth information.
[0219] In one possible design, after the processing unit 1610 reconstructs the point cloud data based on the first information, the interface unit 1620 is also used to send a seventh information, which is used to indicate incremental transmission of point cloud data to R grids out of N grids, where R is an integer less than or equal to N; and to receive an eighth information, which is used to indicate T grids, where T grids are determined based on the distribution of multiple sensing data points in S grids, and S grids are obtained by dividing R grids, where S is an integer greater than R and T is an integer less than or equal to S; the processing unit 1610 is also used to reconstruct the point cloud data based on the first information and the eighth information.
[0220] like Figure 17 As shown, this application also provides a communication device 1700, including a processor 1710 and a communication interface 1720. The processor 1710 and the communication interface 1720 are coupled to each other. It is understood that the communication interface 1720 can be a transceiver, input / output interface, input interface, output interface, interface circuit, communication port, etc. Optionally, the communication device 1700 may further include a memory 1730 for storing instructions executed by the processor 1710, or storing input data required by the processor 1710 to execute instructions, or storing data generated after the processor 1710 executes instructions. The memory 1730 can be a physically independent unit, or it can be coupled to the processor 1710, or the processor 1710 may include the memory 1730.
[0221] When the communication device 1700 is used to implement the steps executed by the first communication device or the second communication device in the above embodiments, the processor 1710 can be used to implement the function of the processing unit 1610, and the communication interface 1720 can be used to implement the function of the interface unit 1620.
[0222] This application also provides a communication device 1800, which can be a terminal, a terminal processor (circuit), or a chip. The communication device 1800 can be used to perform the operations performed by the first or second communication device in the above method embodiments.
[0223] When the communication device 1800 is a terminal Figure 18 A simplified schematic diagram of a terminal is shown. (For example...) Figure 18 As shown, the terminal includes a processor and a transceiver. The transceiver includes a transmitter 1831, a receiver 1832, radio frequency circuitry (not shown in the figure), an antenna 1833, and input / output devices (not shown in the figure).
[0224] Optionally, the terminal may also include a memory that can store computer program code and / or data.
[0225] The processor is primarily used for processing communication protocols and data, controlling the terminal, executing software programs, and processing data from those programs. The memory is mainly used to store software programs and data. The radio frequency (RF) circuitry is primarily used for converting baseband signals to RF signals and processing RF signals. The antenna is primarily used for transmitting and receiving RF signals in the form of electromagnetic waves. Input / output devices, such as touchscreens, displays, and keyboards, are mainly used to receive user input and output data to the user. It should be noted that some types of terminals may not have input / output devices.
[0226] When data needs to be sent, the processor performs baseband processing on the data to be sent and outputs the baseband signal to the radio frequency (RF) circuit. The RF circuit then processes the baseband signal and transmits it outward as electromagnetic waves through the antenna. When data is sent to the terminal, the RF circuit receives the RF signal through the antenna, converts it into a baseband signal, and outputs the baseband signal to the processor. The processor then converts the baseband signal back into data and processes it. For ease of explanation, Figure 18 Only one memory, processor, and transceiver are shown in the illustration. In actual terminal products, there may be one or more processors and one or more memories. Memory can also be called storage medium or storage device, etc. Memory can be set up independently of the processor or integrated with the processor; this application does not limit this.
[0227] In the embodiments of this application, the antenna and radio frequency circuit with transceiver function can be regarded as the communication unit of the terminal, and the processor with processing function can be regarded as the processing unit of the terminal.
[0228] like Figure 18 As shown, the terminal includes a processor 1810, a memory 1820, and a transceiver 1830. The processor 1810 can also be referred to as a processing unit, processing board, processing module, processing device, etc. The transceiver 1830 can also be referred to as a transceiver unit, transceiver, transceiver device, etc.
[0229] Optionally, the device in transceiver 1830 used for receiving can be considered a receiving module, and the device in transceiver 1830 used for transmitting can be considered a transmitting module. That is, transceiver 1830 includes a receiver and a transmitter. A transceiver is sometimes also called a transceiver unit, transceiver module, or transceiver circuit. A receiver is sometimes also called a receiver unit, receiver module, or receiver circuit. A transmitter is sometimes also called a transmitter, transmitter module, or transmitter circuit.
[0230] The processor 1810 is used to perform the processing actions on the terminal side in the above embodiment, and the transceiver 1830 is used to perform the sending and receiving actions on the terminal side in the above embodiment.
[0231] It should be understood that Figure 18 This is merely an example and not a limitation; the terminal described above, which includes a communication unit and a processing unit, may not depend on... Figure 18 or Figure 18 The structure shown.
[0232] When the communication device 1800 is a chip, the chip includes a processor and a transceiver. The transceiver can be an input / output circuit or a communication interface; the processor can be a processing module integrated on the chip, a microprocessor, or an integrated circuit. Optionally, the chip may also include a memory. In the above method embodiments, the terminal's sending operation can be understood as the chip's output, and the terminal's receiving operation in the above method embodiments can be understood as the chip's input.
[0233] This application also provides a communication device 1900, which can be an access network device, a processor (circuit) of the access network device, or a chip. The communication device 1900 can be used to perform the operations performed by the access network device in the method embodiments described above.
[0234] When the communication device 1900 is an access network device, such as a base station. Figure 19 A simplified schematic diagram of a base station structure is shown. The base station includes part 1910 and part 1930. Part 1910 is mainly used for baseband processing and base station control; part 1910 is usually the control center of the base station, often referred to as a processor, used to control the base station to perform the processing operations on the access network equipment side in the above method embodiments. Part 1930 is mainly used for the transmission and reception of radio frequency signals and the conversion between radio frequency signals and baseband signals; part 1930 is often referred to as a transceiver module, transceiver, transceiver circuit, or transceiver unit. The transceiver module of part 1930, also referred to as a transceiver or transceiver unit, includes antenna 1933 and radio frequency circuitry (not shown in the figure), where the radio frequency circuitry is mainly used for radio frequency processing. Optionally, the device in part 1930 used to implement the receiving function can be regarded as a receiver, and the device used to implement the transmitting function can be regarded as a transmitter, that is, part 1930 includes receiver 1932 and transmitter 1931. A receiver can also be called a receiving module, receiver, or receiving circuit, while a transmitter can be called a transmitting module, transmitter, or transmitting circuit. Optionally, a base station may also include a 1920 section, which is mainly used to store computer program code and / or data.
[0235] Sections 1910 and 1920 may include one or more circuit boards, each of which may include one or more processors and one or more memories. The processors are used to read and execute programs from the memories to implement baseband processing functions and control the base station. If multiple circuit boards exist, they can be interconnected to enhance processing capabilities. As an alternative implementation, multiple circuit boards may share one or more processors, multiple circuit boards may share one or more memories, or multiple circuit boards may simultaneously share one or more processors.
[0236] For example, the transceiver module in section 1930 is used to execute the transceiver-related processes performed by the access network device in the above embodiments. The processor in section 1910 is used to execute the processing-related processes performed by the access network device in the above embodiments.
[0237] It should be understood that Figure 19 This is for illustrative purposes only and not as a limitation. The access network devices described above, including processors, memory, and transceivers, may not rely on... Figure 19 or Figure 19 The structure shown.
[0238] When the communication device 1900 is a chip, the chip includes a transceiver and a processor. The transceiver can be an input / output circuit or a communication interface; the processor can be an integrated processor, a microprocessor, or an integrated circuit on the chip. Optionally, the chip may also include a memory. In the above method embodiments, the transmitting operation of the access network device can be understood as the chip's output, and the receiving operation of the access network device in the above method embodiments can be understood as the chip's input.
[0239] This application also provides a computer-readable storage medium storing a computer program or instructions for implementing the method executed by the first communication device or the second communication device in the above method embodiments.
[0240] For example, when the computer program or instructions are executed by a processor, the processor can implement the method executed by the first communication device or the second communication device in the above method embodiments.
[0241] This application also provides a computer program product containing a computer program or instructions, which, when executed by a processor, causes the processor to implement the method executed by the first communication device or the second communication device in the above method embodiments.
[0242] This application also provides a communication system, which includes the first communication device and the second communication device described in the above embodiments.
[0243] In this application embodiment, the processor can be one or more central processing units (CPUs). If the processor is a CPU, it can be a single-core CPU or a multi-core CPU. The processor can also be one or a combination of several of the following: CPU, general-purpose processor, application-specific integrated circuit (ASIC), digital signal processor, microprocessor, microcontroller, graphics processor, field-programmable gate array or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, artificial intelligence processor, or neural network processor. The processor can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
[0244] In this application embodiment, the memory may include, but is not limited to, cache, read-only memory (ROM), random access memory, synchronous dynamic random access memory, hard disk or solid-state hard disk, erasable programmable read-only memory, or compact disc read-only memory (CD-ROM), etc. Memory is any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited to this. The memory in this application embodiment may also be a circuit or any other device capable of implementing storage functions for storing computer programs or instructions, and / or data.
[0245] It is understood that the method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Additionally, the ASIC can reside in an access network device or terminal. Alternatively, the processor and storage medium can exist as discrete components in the access network device or terminal.
[0246] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, an access network device, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer program or instructions can be transmitted from one access network device, terminal, computer, server, or data center to another access network device, terminal, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium may be a volatile or non-volatile storage medium, or may include both types of storage media.
[0247] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0248] Additionally, it should be understood that in the embodiments of this application, the term "exemplary" is used to indicate that it is an example, illustration, or description. Any embodiment or design scheme described as "exemplary" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "exemplary" is intended to present the concept in a concrete manner.
[0249] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The order of the process numbers described above does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.
Claims
1. A method for transmitting point cloud data, characterized in that, include: The point cloud data is processed into a grid to obtain M grids, where M is an integer greater than 1; Send a first message, which is used to indicate N grids, the N grids being determined based on the distribution of multiple sensing data points of the point cloud data in the M grids, where N is an integer less than or equal to M.
2. The method as described in claim 1, characterized in that, Before performing gridding processing on the point cloud data, the method further includes: Receive second information, which is used to indicate the viewpoint requirement for rotating and transforming the point cloud data; The point cloud data is rotated and transformed according to the required perspective. The gridding process for point cloud data includes: The point cloud data after the rotation transformation is then processed into a grid.
3. The method as described in claim 1 or 2, characterized in that, Before or after the point cloud data is meshed, the method further includes: Sending meshing parameters for meshing the point cloud data, wherein the meshing parameters include at least one of the following: The grid starting position, grid 3D width, grid interval, grid arrangement, translation parameters of the coordinate system containing the point cloud data relative to the global coordinate system, or rotation parameters of the coordinate system containing the point cloud data relative to the global coordinate system.
4. The method according to any one of claims 1-3, characterized in that, After performing gridding processing on the point cloud data, the method further includes: Send a third message, which is used to indicate the position of the representative point of the N grids; In this context, any one of the N grids corresponds to at least one representative point, and the at least one representative point is used to represent the sensing data points in the grid.
5. The method according to any one of claims 1-4, characterized in that, Any one of the N grids satisfies the following condition: the number of sensing data points distributed in any one grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
6. The method according to any one of claims 1-5, characterized in that, Before performing gridding processing on the point cloud data, the method further includes: Receive fourth information, the fourth information being used to indicate the task type for applying the point cloud data; Based on the task type and the relationship between the task type and the meshing parameters, determine the meshing parameters for meshing the point cloud data; The gridding process for point cloud data includes: The point cloud data is processed into a grid according to the gridding parameters.
7. The method according to any one of claims 1-6, characterized in that, After sending the first information, the method further includes: Receive the fifth information, which is used to indicate incremental transmission of point cloud data; The point cloud data is processed into a grid to obtain P grids, where P is an integer greater than M; A sixth message is sent, which is used to indicate Q grids, the Q grids being determined based on the distribution of the plurality of sensing data points in the P grids, where Q is an integer less than or equal to P.
8. The method according to any one of claims 1-6, characterized in that, After sending the first information, the method further includes: Receive a seventh message, which is used to instruct incremental transmission of point cloud data to R grids out of the N grids, where R is an integer less than or equal to N; The R grids are divided into S grids, where S is an integer greater than R; Send an eighth message, which is used to indicate T grids, the T grids being determined based on the distribution of the plurality of sensing data points in the S grids, where T is an integer less than or equal to S.
9. A method for transmitting point cloud data, characterized in that, include: Receive first information, the first information is used to indicate N grids, the N grids are determined according to the distribution of multiple sensing data points of point cloud data in M grids, M is an integer greater than 1, and N is an integer less than or equal to M; Based on the first information, reconstruct the point cloud data.
10. The method as described in claim 9, characterized in that, Before receiving the first information, the method further includes: Send a second message, which indicates the viewpoint requirement for rotating and transforming the point cloud data.
11. The method as described in claim 9 or 10, characterized in that, Before reconstructing the point cloud data based on the first information, the method further includes: Receive meshing parameters, which include at least one of the following: mesh start position, mesh 3D width, mesh interval, mesh arrangement, translation parameter of the coordinate system where the point cloud data is located relative to the global coordinate system, or rotation parameter of the coordinate system where the point cloud data is located relative to the global coordinate system. The step of reconstructing point cloud data based on the first information includes: Based on the first information and the meshing parameters, the point cloud data is reconstructed.
12. The method according to any one of claims 9-11, characterized in that, Before reconstructing the point cloud data based on the first information, the method further includes: Receive third information, the third information being used to indicate the position of representative points in the N grids, wherein each of the N grids corresponds to at least one representative point, and the at least one representative point is used to represent the sensing data points in the grid; The step of reconstructing point cloud data based on the first information includes: Based on the first information and the third information, the point cloud data is reconstructed.
13. The method according to any one of claims 9-12, characterized in that, Any one of the N grids satisfies the following condition: the number of sensing data points distributed in any one grid is greater than or equal to a first threshold, where the first threshold is a positive integer.
14. The method according to any one of claims 9-13, characterized in that, Before receiving the first information, the method further includes: Send a fourth message, which indicates the type of task that applies the point cloud data.
15. The method according to any one of claims 9-14, characterized in that, After reconstructing the point cloud data based on the first information, the method further includes: Send a fifth message, which is used to indicate incremental transmission of point cloud data; Receive sixth information, the sixth information being used to indicate Q grids, the Q grids being determined based on the distribution of the plurality of sensing data points in P grids, where P is an integer greater than M, and Q is an integer less than or equal to P; Based on the sixth piece of information, the point cloud data is reconstructed.
16. The method according to any one of claims 9-14, characterized in that, After reconstructing the point cloud data based on the first information, the method further includes: Send a seventh message, which is used to indicate incremental transmission of point cloud data to R grids out of the N grids, where R is an integer less than or equal to N; Receive the eighth information, which is used to indicate T grids. The T grids are determined according to the distribution of the plurality of sensing data points in S grids. The S grids are obtained by dividing the R grids. S is an integer greater than R and T is an integer less than or equal to S. Based on the first information and the eighth information, the point cloud data is reconstructed.
17. A communication device, characterized in that, Includes modules or units for performing the method as described in any one of claims 1-16.
18. A communication device, characterized in that, Includes a processor for executing computer programs or instructions in memory to implement the method as described in any one of claims 1-16.
19. The communication device as claimed in claim 18, characterized in that, The communication device further includes: the memory for storing computer programs or instructions.
20. A computer program product, characterized in that, It includes a computer program or instructions that, when executed by a processor, cause the method as described in any one of claims 1-16 to be implemented.
21. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions that, when executed by a processor, cause the method as described in any one of claims 1-16 to be implemented.
22. A communication system, characterized in that, include: A first communication device is configured to perform the method as described in any one of claims 1-8; A second communication device is used to perform the method as described in any one of claims 9-16.