Point cloud processing method, system, movable platform and storage medium
By aggregating adjacent point clouds in timing, determining the relative position relationship between them, the problem of error accumulation of non-adjacent point clouds in timing is solved, and the accuracy of electronic maps is improved.
Patent Information
- Application Number
- CN201980034379.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-09-04
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2039-09-04
AI Technical Summary
When establishing electronic maps in the prior art, the time span between point clouds that are not adjacent in time sequence is long, resulting in error accumulation, which makes the relative positional relationship between point clouds at different moments inaccurate.
By obtaining the relative positional relationship between adjacent point clouds in timing, aggregating the point clouds detected by the detection device are aggregating the multiple aggregate point clouds, determining the relative positional relationship between the aggregate point clouds adjacent to the locations, and then determining the target relative positional relationship between the point clouds detected by the detection device at different moments.
The accuracy of the relative positional relationship between point clouds at different moments is improved, error accumulation is avoided, and the accuracy of electronic maps is enhanced.
Smart Images

Figure CN112166460B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of detection technology, and in particular to a point cloud processing method, system, movable platform and storage medium. Background Art
[0002] In the prior art, when building an electronic map, it is necessary to collect a large number of point clouds through detection equipment. For example, the detection equipment can collect different point clouds at different times. The relative position relationship between the point cloud collected at each time and the point cloud collected at other times is further calculated, and the electronic map is built based on the relative position relationship between the point cloud at each time and the point cloud at other times.
[0003] Generally, the relative position relationship between point clouds that are adjacent in time can be used to solve the relative position relationship between point clouds that are not adjacent in time. However, if the time span between two groups of point clouds that are not adjacent in time is relatively long, it will lead to error accumulation, resulting in inaccurate relative position relationship between point clouds at different times. Summary of the invention
[0004] The embodiments of the present application provide a point cloud processing method, system, movable platform and storage medium to improve the accuracy of the relative position relationship between point clouds detected by a detection device at different times.
[0005] A first aspect of an embodiment of the present application is to provide a point cloud processing method, which is applied to a movable platform, wherein the movable platform is provided with a detection device, and the detection device is used to detect and obtain a point cloud. The method comprises:
[0006] Obtain the relative position relationship between adjacent point clouds in time sequence;
[0007] According to the relative positional relationship between the point clouds adjacent in the time sequence, the point clouds detected by the detection device are aggregated to obtain a plurality of aggregated point clouds, each of which includes at least two point clouds adjacent in the time sequence;
[0008] Determining a relative positional relationship between adjacent aggregated point clouds in the plurality of aggregated point clouds;
[0009] According to the relative positional relationship between the adjacent aggregated point clouds, the target relative positional relationship between the point clouds detected and obtained by the detection device at different times is determined.
[0010] A second aspect of an embodiment of the present application is to provide a point cloud processing system, including: a detection device, a memory, and a processor;
[0011] Wherein, the detection device is used to detect and obtain a point cloud;
[0012] The memory is used to store program code;
[0013] The processor calls the program code, and when the program code is executed, is used to perform the following operations:
[0014] Obtain the relative position relationship between adjacent point clouds in time sequence;
[0015] According to the relative positional relationship between the point clouds adjacent in the time sequence, the point clouds detected by the detection device are aggregated to obtain a plurality of aggregated point clouds, each of which includes at least two point clouds adjacent in the time sequence;
[0016] Determining a relative positional relationship between adjacent aggregated point clouds in the plurality of aggregated point clouds;
[0017] According to the relative positional relationship between the adjacent aggregated point clouds, the target relative positional relationship between the point clouds detected and obtained by the detection device at different times is determined.
[0018] A third aspect of the embodiments of the present application is to provide a movable platform, including:
[0019] body;
[0020] A power system, installed on the fuselage, for providing movement power;
[0021] And the point cloud processing system described in the second aspect.
[0022] A fourth aspect of the embodiments of the present application is to provide a computer-readable storage medium on which a computer program is stored, and the computer program is executed by a processor to implement the method described in the first aspect.
[0023] The point cloud processing method, system, movable platform and storage medium provided in the present embodiment perform aggregation processing on the point clouds adjacent in time sequence by obtaining the relative position relationship between the point clouds adjacent in time sequence, so as to obtain multiple large point clouds, i.e., multiple aggregated point clouds. Since the detail features in the large point clouds are richer, even if the adjacent areas are blocked by obstructions, the matching calculations between the large point clouds can be completed through the detail features in the large point clouds. Therefore, according to the relative position relationship between the adjacent large point clouds, a more accurate relative position relationship of the targets between the point clouds detected by the detection equipment at different times can be determined, thereby improving the accuracy of the relative position relationship between the point clouds at different times. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following is a brief introduction to the drawings required for use in the description of the embodiments. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0025] Figure 1 A schematic diagram of an application scenario provided in an embodiment of the present application;
[0026] Figure 2 A flowchart of a point cloud processing method provided in an embodiment of the present application;
[0027] Figure 3 A schematic diagram of point cloud aggregation provided in an embodiment of the present application;
[0028] Figure 4 A flowchart of a point cloud processing method provided by another embodiment of the present application;
[0029] Figure 5 A structural diagram of a point cloud processing system provided in an embodiment of the present application;
[0030] Figure 6 A schematic diagram of a point cloud provided in an embodiment of the present application.
[0031] Reference numerals:
[0032] 11: Vehicle; 12: Server; 13: Road section;
[0033] 14: road section; 50: point cloud processing system; 51: detection equipment;
[0034] 52: memory; 53: processor. DETAILED DESCRIPTION
[0035] The following will be combined with the drawings in the embodiments of the present application to clearly describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0036] It should be noted that when a component is said to be "fixed to" another component, it can be directly on the other component or there can be a central component. When a component is said to be "connected to" another component, it can be directly connected to the other component or there can be a central component at the same time.
[0037] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used herein in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application. The term "and / or" used herein includes any and all combinations of one or more of the related listed items.
[0038] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.
[0039] The embodiment of the present application provides a point cloud processing method. The method can be applied to a movable platform, wherein the movable platform is provided with a detection device, and the detection device is used to detect and obtain a point cloud. In this embodiment, the movable platform can be a drone, a movable robot or a vehicle.
[0040] In the embodiment of the present application, the movable platform is a vehicle as an example. The vehicle may be an unmanned vehicle or a vehicle equipped with an Advanced Driver Assistance Systems (ADAS) system. Figure 1 As shown, the vehicle 11 is a carrier equipped with a detection device, which can specifically be a binocular stereo camera, a time of flight (TOF) camera, a millimeter wave radar and / or a laser radar. During the driving process of the vehicle 11, the detection device detects the objects around the vehicle 11 in real time to obtain a point cloud, which can also be called a three-dimensional point cloud in some scenes. Taking the laser radar as an example, when a beam of laser emitted by the laser radar hits the surface of an object, the surface of the object will reflect the beam of laser. The laser radar can determine the orientation, distance and other information of the object relative to the laser radar based on the laser reflected from the surface of the object. If the laser beam emitted by the laser radar is scanned according to a certain trajectory, such as a 360-degree rotation scan, a large number of laser points will be obtained, thereby forming the laser point cloud data of the object, that is, the point cloud.
[0041] In addition, this embodiment does not limit the execution subject of the point cloud processing method. The point cloud processing method can be executed by an on-board device in the vehicle, or by other devices with data processing functions other than the on-board device, for example, Figure 1The server 12 shown, the vehicle 11 and the server 12 can perform wireless communication or wired communication, and the vehicle 11 can send the point cloud detected by the detection device to the server 12, and the server 12 executes the point cloud processing method. The point cloud processing method provided in the embodiment of the present application is introduced below by taking the vehicle-mounted device as an example. Among them, the vehicle-mounted device can be a device with data processing function integrated in the vehicle center console, or it can also be a tablet computer, mobile phone, laptop computer, etc. placed in the vehicle.
[0042] Figure 2 Flow chart of the point cloud processing method provided in the embodiment of the present application. Figure 2 As shown, the method in this embodiment may include:
[0043] Step S201: Obtain the relative position relationship between adjacent point clouds in time sequence.
[0044] like Figure 1 As shown, during the driving process of the vehicle 11, the detection device carried by the vehicle 11 detects the objects around the vehicle 11 in real time to obtain a point cloud. The detection device can communicate with the on-board device of the vehicle 11, so that the on-board device of the vehicle 11 can obtain the point cloud detected by the detection device in real time. For example, at time t1, the point cloud obtained by the on-board device is recorded as P1; at time t2, the point cloud obtained by the on-board device is recorded as P2; and so on, at time ti, the point cloud obtained by the on-board device is recorded as P i It is understandable that at different times, the point cloud acquired by the vehicle-mounted device may include multiple 3D points, each of which corresponds to a 3D coordinate. Among them, t1, t2, ..., ti can be consecutive time points. Therefore, P1 and P2, P2 and P3, ..., P i-1 and P i It can be regarded as point clouds that are adjacent in time sequence. It is understandable that, compared with point clouds that are not adjacent in time sequence, the overlapping area between point clouds that are adjacent in time sequence is relatively large. Therefore, the relative position relationship between point clouds that are not adjacent in time sequence can be determined based on the overlapping area between point clouds that are adjacent in time sequence. The relative position relationship may specifically include a rotation relationship and / or a translation relationship. For example, the relative position relationship between P1 and P2 includes a rotation relationship and a translation relationship between P1 and P2.
[0045] Optionally, the acquiring the relative positional relationship between the point clouds that are adjacent in time sequence includes: calculating the relative positional relationship between the point clouds that are adjacent in time sequence according to an iterated closest points (ICP) algorithm.
[0046] For example, taking P1 and P2 as examples, p(i) is any point in P1, and the point m(i) closest to p(i) is determined in P2. p(i) and m(i) can constitute a set of corresponding point pairs. Similarly, multiple sets of corresponding point pairs in P1 and P2 can be determined, for example, p(1) and m(1), p(2) and m(2), ..., p(n) and m(n) are n sets of corresponding point pairs. Among them, p(1), p(2), ..., p(n) are points in point cloud P1, m(1), m(2), ..., m(n) are points in point cloud P2, m(1) is the point closest to p(1) in point cloud P2, m(2) is the point closest to p(2) in point cloud P2, and so on.
[0047] In addition, it should be noted that in the embodiments of the present application, uppercase letters and lowercase letters represent different meanings. For example, P1 represents a point cloud, and p(1) represents a point in the point cloud P1.
[0048] Since there is a certain rotation relationship and translation relationship between P1 and P2, there is also a certain rotation relationship and translation relationship between the two points in each set of corresponding point pairs. For example, the rotation relationship between P1 and P2 is recorded as R, and the translation relationship between P1 and P2 is recorded as T. n sets of corresponding point pairs can establish n sets of equations. Further, the rotation relationship and translation relationship between P1 and P2 can be obtained by solving the n sets of equations using mathematical methods. In order to improve the calculation accuracy, an iterative algorithm can also be used, for example, the ICP algorithm to calculate the rotation relationship and translation relationship between P1 and P2. The specific iterative algorithm can be implemented as follows:
[0049] One possible implementation is to substitute the n corresponding point pairs described above, for example, p(1) and m(1), p(2) and m(2), ..., p(n) and m(n), into the function E described in formula (1):
[0050]
[0051] The function E described in formula (1) is optimized and solved to obtain the rotation relationship R and translation relationship T that make the value of the function E minimum or less than a certain threshold.
[0052] It is understandable that the process of solving the relative position relationship between other adjacent point clouds in time sequence may be similar to the process of solving the relative position relationship between P1 and P2, and will not be described in detail here.
[0053] Step S202: Aggregate the point clouds detected by the detection device according to the relative position relationship between the point clouds adjacent in the time sequence to obtain multiple aggregated point clouds, each of which includes at least two point clouds adjacent in the time sequence.
[0054] like Figure 1 As shown in the figure, it is assumed that the vehicle 11 drives along the road section 13 and then adjusts its direction to continue driving along the road section 14. The road sections 13 and 14 are round trip sections. The road sections 13 and 14 can be divided by a guardrail, a green belt, etc. During the driving of the vehicle 11 along the round trip section, it is assumed that the point clouds detected by the detection equipment are P1, P2, ..., P 20 ,For example Figure 3 shown.
[0055] According to the iterative closest point algorithm as described above, P1, P2, ..., P 20 The relative position relationship between every two adjacent point clouds in time series is calculated, that is, P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them, where the rotation relationship between P1 and P2 is denoted as R P1,P2 , the translation relationship between P1 and P2 is recorded as T P1,P2 , the rotation relationship between P2 and P3 is recorded as R P2,P3 , the translation relationship between P2 and P3 is recorded as T P2,P3 , and so on, P 19 and P 20 The rotation relationship between them is denoted as R P19,P20 , P 19 and P 20 The translation relationship between them is denoted as T P19,P20 .
[0056] In addition, according to the relative position relationship between each two adjacent point clouds in time sequence, P1, P2, ..., P 20 Perform aggregation processing. For example, aggregate P1, P2, P3, P4, and P5 into an aggregate point cloud denoted as M1, and aggregate P6, P7, P8, P9, and P 10 Aggregate into an aggregate point cloud denoted as M2, and P 11 , P 12 , P 13 , P 14 , P 15 Aggregate into an aggregate point cloud denoted as M4, and 16 , P 17 , P 18 , P 19 , P 20 Aggregation into an aggregated point cloud is denoted as M3. It can be understood that the number of point clouds included in each aggregated point cloud can be the same or different, and this embodiment does not limit the number of point clouds that each aggregated point cloud can include. Optionally, each aggregated point cloud includes at least two point clouds that are adjacent in time sequence.
[0057] Specifically, when aggregating multiple point clouds detected by the detection equipment, the following possible situations may be included:
[0058] In a possible implementation, the point clouds detected by the detection device are aggregated according to the relative position relationship between the adjacent point clouds in the time sequence, including: according to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within a preset distance range are aggregated.
[0059] For example, starting from P1, find the point cloud P2 at the next moment in chronological order, and calculate the distance of P2 relative to P1. If the distance of P2 relative to P1 is less than a preset distance threshold, such as 100 meters, continue to find the next point cloud P3. If the distance of P3 relative to P1 is less than the preset distance threshold, continue to find the next point cloud until a point cloud such as P6 is found. The distance of P6 relative to P1 is greater than the preset distance threshold, then aggregate P1, P2, P3, P4, and P5 into an aggregated point cloud M1. Further, starting from P6, continue to find the next point cloud in chronological order, and repeat the above-mentioned aggregation process to obtain P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21, P22, P23, P24, P25, P26, P27, P28, P29, P30, P31, P32, P33, P34, P35, P36, P37, P38, P39, P40, P41, P42, P43, P44, P45, P46, P47, P48, P49, P55, P56, P6, P7, P7, P8, P9, P10, P11, P12, P7, P7, P8, P9, P10, P11, P13, P7, P7, P8, P9, P10, P11, P1 10 Aggregated point cloud M2, P 11 , P 12 , P 13 , P 14 , P 15 Aggregated point cloud M4, P 16 , P 17 , P 18 , P 19 , P 20 The aggregated point cloud M3 is aggregated.
[0060] Among them, the distance between the two point clouds can specifically be the distance between the two point clouds calculated by projecting the two point clouds into the same coordinate system. Taking the distance of P2 relative to P1 as an example, P2 can be projected into the coordinate system where P1 is located. For example, the projected point cloud obtained by projecting P2 into the coordinate system where P1 is located is P2, and the distance of P2 relative to P1 can be used as the distance of P2 relative to P1 in this coordinate system. Among them, the distance of P2 relative to P1 can be calculated in a variety of ways. For example, the distance of P2 relative to P1 can be the distance between the center point of P2 and the center point of P1. It can be understood that this is just an example, and there can be other different calculation methods in other embodiments.
[0061] Optionally, the point clouds within a preset distance range are aggregated according to the relative position relationship between the adjacent point clouds in the time sequence, including: according to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within the preset distance range are converted into the same coordinate system.
[0062] For example, in the process of aggregating P1, P2, P3, P4, and P8 into M1, P1, P2, P3, P4, and P5 can be transformed into the same coordinate system, for example, P2, P3, P4, and P5 can be transformed into the coordinate system of P1. 10 In the process of aggregating into M2, P7, P8, P9, P 10 Convert to the coordinate system of P6. 11 , P 12 , P 13 , P 14 , P 15 In the process of aggregating into M4, P 12 , P 13 , P 14 , P 15 Convert to P 11 In the coordinate system where P 16 , P 17 , P 18 , P 19 , P 20 In the process of aggregating into M3, P 17 , P 18 , P 19 , P 20 Convert to P 16 In the coordinate system where it is located.
[0063] In another possible implementation, the point clouds detected by the detection device are aggregated according to the relative position relationship between the adjacent point clouds in the time sequence, including: according to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within a preset time range are aggregated.
[0064] For example, starting from P1, P1, P2, P3, P4, and P5 are point clouds detected within a preset time range, for example, 30 seconds, then P1, P2, P3, P4, and P5 can be aggregated into an aggregated point cloud M1. Similarly, starting from P6, P6, P7, P8, P9, and P10 can be aggregated into an aggregated point cloud M1. 10 If it is the point cloud detected within the preset time range, P6, P7, P8, P9, P 10 Aggregate to M2. 11 Start, P 11 , P 12 , P13 , P 14 , P 15 is the point cloud detected within the preset time range, then P 11 , P 12 , P 13 , P 14 , P 15 Aggregate to M4. 16 Start, P 16 , P 17 , P 18 , P 19 , P 20 is the point cloud detected within the preset time range, then P 16 , P 17 , P 18 , P 19 , P 20 Aggregated into M3.
[0065] Optionally, the point clouds within a preset time range are aggregated according to the relative position relationship between the adjacent point clouds in the time sequence, including: according to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within the preset time range are converted into the same coordinate system.
[0066] For example, in the process of aggregating P1, P2, P3, P4, and P5 into M1, P1, P2, P3, P4, and P5 can be converted into the same coordinate system, for example, P2, P3, P4, and P5 can be converted into the coordinate system where P1 is located. At this time, M1 can be expressed as M1 = P1 + K 1,2 P2+K 1,3 P3+K 1,4 P4+K 1,5 P5, where K 1,2 represents the transformation matrix between P2 and P1, K 1,2 According to the rotation relationship R between P1 and P2 P1,P2 , and the translation relationship T between P1 and P2 P1,P2 In this embodiment, the transformation matrix is the relative position relationship as described above. 1,3 represents the transformation matrix between P3 and P1, K 1,3 According to K 1,2 and K 2,3 Get, where K 2,3 represents the transformation matrix between P3 and P2, K 2,3 According to the rotation relationship R between P2 and P3 P2,P3 , and the translation relationship T between P2 and P3 P2,P3 Similarly, K 1,4 represents the transformation matrix between P4 and P1, K1,4 According to K 1,2 , K 2,3 , K 3,4 Get, K 3,4 represents the transformation matrix between P4 and P3, K 3,4 It can be obtained based on the rotation and translation relationship between P4 and P3. 1,5 represents the transformation matrix between P5 and P1, K 1,5 According to K 1,2 , K 2,3 , K 3,3 , K 4,5 Get, K 4,5 represents the transformation matrix between P4 and P5, K 4,5 It can be obtained based on the rotation relationship and translation relationship between P4 and P5. In other words, M1 is related to the transformation matrix between the temporally adjacent point clouds in P1, P2, P3, P4, and P5.
[0067] Similarly, when P6, P7, P8, P9, P 10 In the process of aggregating into M2, P7, P8, P9, P 10 Convert to the coordinate system where P6 is located. At this time, M2 can be expressed as M2 = P6 + K 6,7 P7+K 6,8 P8+K 6,9 P9+K 6,10 P 10 , where K 6,7 represents the transformation matrix between P7 and P6, K 6,8 represents the transformation matrix between P8 and P6, K 6,9 represents the transformation matrix between P9 and P6, K 6,10 Indicates P 10 The transformation matrix between P6 and K 6,7 , K 6,8 , K 6,9 , K 6,10 The calculation process is similar to that of K as described above. 1,2 , K 1,3 , K 1,3 , K 1,5 The calculation process of M2 and P6, P7, P8, P9, P 10 The transformation matrices between adjacent point clouds in time sequence are related.
[0068] Similarly, when P 11 , P 12 , P 13 , P 14 , P 15 In the process of aggregating into M4, P12 , P 13 , P 14 , P 15 Convert to P 11 In this case, M4 can be expressed as M4=P 11 +K 11,12 P 12 +K 11,13 P 13 +K 11,14 P 14 +K 11,15 P 15 , where K 11,12 , K 11,13 , K 11,14 , K 11,15 The meaning and calculation process are the same as those of K 1,2 , K 1,3 , K 1,3 , K 1,5 The meaning and calculation process of are similar, so we will not repeat them here. 11 , P 12 , P 13 , P 14 , P 15 The transformation matrices between adjacent point clouds in time sequence are related.
[0069] Similarly, when P 16 , P 17 , P 18 , P 19 , P 20 In the process of aggregating into M3, P 17 , P 18 , P 19 , P 20 Convert to P 16 In this case, M3 can be expressed as M3 = P 16 +K 16,17 P 17 +K 16,18 P 18 +K 16,19 P 19 +K 16,20 P 20 Among them, K 16,17 , K 16,18 , K 16,19 , K 16,20 The meaning and calculation process are the same as those of K 1,2 , K 1,3 , K 1,4 , K 1,5 The meaning and calculation process of are similar, so we will not repeat them here. 16, P 17 , P 18 , P 19 , P 20 The transformation matrices between adjacent point clouds in time sequence are related.
[0070] Step S203: Determine the relative position relationship between adjacent aggregated point clouds in the plurality of aggregated point clouds.
[0071] In a possible implementation, after multiple aggregated point clouds are determined, based on a positioning module, such as a global positioning system (GPS), adjacent aggregated point clouds in the multiple aggregated point clouds can be determined, wherein the GPS information of the aggregated point cloud can be the GPS information of the intermediate point cloud in the aggregated point cloud, and the GPS information of the intermediate point cloud can specifically be the GPS information of the vehicle when the detection device detects and obtains the intermediate point cloud. For example, P3 is the intermediate point cloud in the aggregated point cloud M1, then the GPS information of the vehicle when the detection device detects and obtains P3 can be used as the GPS information of the aggregated point cloud M1. Similarly, P8 is the intermediate point cloud in the aggregated point cloud M2, then the GPS information of the vehicle when the detection device detects and obtains P8 can be used as the GPS information of the aggregated point cloud M2. 13 is the intermediate point cloud in the aggregated point cloud M4, then the detection device obtains P 13 The GPS information of the vehicle can be used as the GPS information of the aggregated point cloud M4. 18 is the middle point cloud in the aggregated point cloud M3, then the detection device obtains P 18 The GPS information of the vehicle can be used as the GPS information of the aggregated point cloud M3.
[0072] Further, based on the GPS information of the aggregated point clouds M1, M2, M3, and M4, the adjacent aggregated point clouds in M1, M2, M3, and M4 are determined. For example, based on the GPS information of the aggregated point clouds M1 and M2, it is determined that the distance between M1 and M2 is within a preset distance range, for example, within 10 meters, and then M1 and M2 are considered as adjacent aggregated point clouds. Similarly, M2 and M4 can be determined as adjacent aggregated point clouds, M3 and M4 as adjacent aggregated point clouds, and M3 and M1 as adjacent aggregated point clouds.
[0073] Further, the relative position relationship between M1 and M2, that is, the rotation relationship and translation relationship between M1 and M2, and the relative position relationship between M2 and M4, the relative position relationship between M3 and M4, and the relative position relationship between M3 and M1 are calculated. Specifically, the ICP algorithm described above can be used to calculate the relative position relationship between adjacent aggregated point clouds. The specific calculation process can refer to the calculation process of the relative position relationship between P1 and P2 described above, which will not be repeated here. For example, the rotation relationship between M1 and M2 is denoted by R M1,M2 , the translation relationship between M1 and M2 is denoted as T M1,M2 ; The rotation relationship between M2 and M4 is denoted as R M2,M4 , the translation relationship between M2 and M4 is denoted as T M2,M4 ; The rotation relationship between M3 and M4 is denoted as R M4,M3 , the translation relationship between M3 and M4 is denoted as T M4,M3 ; The rotation relationship between M3 and M1 is denoted as R M3,M1 , the translation relationship between M3 and M1 is denoted as T M3,M1 .
[0074] It should be noted that the above positioning module is not limited to GPS, but can also be Beidou, Galileo, GLONASS, etc.
[0075] Step S204: determining the target relative position relationship between the point clouds detected by the detection device at different times according to the relative position relationship between the adjacent aggregated point clouds.
[0076] For example, according to the rotation relationship R between M1 and M2 M1,M2 , and the translation relationship T between M1 and M2 M1,M2 , we can get the transformation matrix D between M1 and M2 1,2 , the transformation matrix D 1,2 It can be the transformation matrix from M2 to M1. Similarly, according to the rotation relationship R between M2 and M4 M2,M4 , and the translation relationship T between M2 and M4 M2,M4 , we can get the transformation matrix D between M2 and M4 2,4 , the transformation matrix D 2,4 It can be the transformation matrix from M4 to M2. According to the rotation relationship R between M3 and M4 M4,M3 , and the translation relationship T between M3 and M4 M4,M3 , we can get the transformation matrix D between M3 and M4 4,3 , the transformation matrix D 4,3 It can be the transformation matrix from M3 to M4. According to the rotation relationship R between M3 and M1 M3,M1, and the translation relationship T between M3 and M1 M3,M1 , we can get the transformation matrix D between M3 and M1 3,1 , the transformation matrix D 3,1 It can be a conversion matrix from M1 to M3. In this embodiment, the conversion matrix is the relative position relationship as described above.
[0077] Further, the transformation matrix D between M1 and M2 is adopted 1,2 Convert M2 to obtain M'1, M'1 = D 1,2 M2. It is understandable that M1 and M1 may not be exactly the same, that is, there may be a certain error between M'1 and M1, which can be recorded as e 1,2 , e 1,2 =(M1-D 1,2 Since P2, P3, P4, P5 can be transformed to the coordinate system of P1 in the process of aggregating P1, P2, P3, P4, P5 into M1, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15 can be transformed to the coordinate system of P1 in the process of aggregating P1, P2, P3, P4, P5 into M1. 10 In the process of aggregating into M2, P7, P8, P9, P 10 Transform to the coordinate system of P6. Therefore, the transformation matrix D between M1 and M2 is 1,2 Specifically, the conversion matrix K between P6 and P1 1,6 Since M1 is related to the transformation matrix between the temporally adjacent point clouds in P1, P2, P3, P4, and P5, M2 is related to the transformation matrix between P6, P7, P8, P9, 10 The transformation matrices between adjacent point clouds in time sequence are related, so e 1,2 With P1, P2, P3, P4, P5, P6, P7, P8, P9, P 10 The transformation matrices between adjacent point clouds in time sequence are related.
[0078] Similarly, using the transformation matrix D between M2 and M4 2,4 Convert M4 to obtain M'2, M'2 = D 2,4 The possible error between M4, M'2 and M2 is denoted as e 2,4 , e 2,4 =(M2-D 2,4 M4). Since P6, P7, P8, P9, P 10 In the process of aggregating into M2, P7, P8, P9, P 10 Convert to the coordinate system where P6 is located, and then convert P 11 , P 12 , P 13 , P 14 , P 15 In the process of aggregating into M4, P12 , P 13 , P 14 , P 15 Convert to P 11 Therefore, the transformation matrix D between M2 and M4 is 2,4 Specifically, P6 and P 11 In addition, M2 is related to P6, P7, P8, P9, P 10 The transformation matrices between adjacent point clouds in the time sequence are related, M4 and P 11 , P 12 , P 13 , P 14 , P 15 The transformation matrices between adjacent point clouds in time sequence are related, so e 2,4 Compared with P6, P7, P8, P9, P 10 , P 11 , P 12 , P 13 , P 14 , P 15 The transformation matrices between adjacent point clouds in time sequence are related.
[0079] Similarly, using the transformation matrix D between M3 and M4 4,3 Convert M3 to obtain M'4, M'4 = D 4,3 The possible error between M3, M4 and M'4 is denoted by e 4,3 , e 4,3 =(M4-D 4,3 M3). 4,3 With P 11 , P 12 , P 13 , P 14 , P 15 , P 16 , P 17 , P 18 , P 19 , P 20 The transformation matrices between adjacent point clouds in time sequence are related.
[0080] Similarly, using the transformation matrix D between M3 and M1 3,1 Convert M1 to obtain M'3, M'3=D 3,1 The possible error between M1, M3 and M'3 is denoted by e 3,1 , e 3,1 =(M3-D 3,1 M1). 3,1 With P1, P2, P3, P4, P5, P6, P7, P8, P9, P 10 , P 11 , P12 , P 13 , P 14 , P 15 , P 16 , P 17 , P 18 , P 19 , P 20 The transformation matrices between adjacent point clouds in time sequence are related.
[0081] According to the error e 1,2 、e 2,3 、e 4,3 and e 3,1 The objective function can be obtained Among them, the objective function F is related to P1, P2, P3, P4, P5, P6, P7, P8, P9, P 10 , P 11 , P 12 , P 13 , P 14 , P 15 , P 16 , P 17 , P 18 , P 19 , P 20 The transformation matrices between adjacent point clouds in time sequence are related. Therefore, by To optimize, that is, to solve the minimum function value of the objective function, P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between adjacent point clouds in the same time sequence is optimized, that is, the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them can make the function value of the objective function F minimum, or make the function value of the objective function F less than or equal to a preset threshold.
[0082] Further, according to the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them is repeatedly performed in step S202 to step S204 as described above. It can be understood that this embodiment does not limit the number of repeated executions. 19 and P 20The relative position relationship between them is more accurate, and at the same time, the function value of the objective function F after each optimization gradually converges. In addition, each repetition of steps S202-S204 can be regarded as an iterative process. Specifically, the convergence of the function value of the objective function after multiple optimizations can be used as a condition for stopping iteration, but it is not limited to this condition. In other embodiments, other conditions can be used to stop iteration, for example, when the number of iterations is greater than a preset number, the iteration is stopped. Alternatively, the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 When the relative position relationship between them converges, the iteration is stopped. In this embodiment, the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them is taken as the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them.
[0083] Further, according to the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them can determine the relative position relationship of the target between the point clouds detected by the detection equipment at different times.
[0084] Optionally, the target relative position relationship between point clouds detected and obtained by the detection device at different times includes: the target relative position relationship between point clouds that are not adjacent in time sequence detected and obtained by the detection device.
[0085] For example, according to the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them can determine the target relative position relationship between the point clouds that are not adjacent in time sequence. For example, according to the relative position relationship between P1 and P2 after the final optimization and the relative position relationship between P2 and P3 after the final optimization, the target relative position relationship between P1 and P3 that are not adjacent in time sequence can be determined.
[0086] Since the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them is relatively accurate. Therefore, according to the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between the targets obtained by the relative position relationship between the point clouds that are not adjacent in time sequence is also accurate.
[0087] This embodiment obtains the relative position relationship between temporally adjacent point clouds detected by the detection device, and aggregates the temporally adjacent point clouds to obtain multiple large point clouds, i.e., multiple aggregated point clouds. Since the detail features in the large point clouds are richer, even if the adjacent areas are blocked by obstructions, the matching calculations between the large point clouds can be completed through the detail features in the large point clouds. Therefore, based on the relative position relationship between the adjacent large point clouds, a more accurate target relative position relationship between the point clouds detected by the detection device at different times can be determined, thereby improving the accuracy of the relative position relationship between the point clouds at different times.
[0088] An embodiment of the present application provides a point cloud processing method. Figure 4 This is a flow chart of a point cloud processing method provided by another embodiment of the present application. Figure 4 As shown, based on the above embodiment, according to the relative position relationship between the point clouds adjacent in time sequence after the final optimization, the target relative position relationship between the point clouds not adjacent in time sequence can be determined. Therefore, according to the relative position relationship between the point clouds adjacent in time sequence after the final optimization, and the target relative position relationship between the point clouds not adjacent in time sequence, an electronic map can be established. For example, according to Figure 3 P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between adjacent point clouds in the same time sequence, as well as the target relative position relationship between non-adjacent point clouds in the same time sequence such as P1 and P3, P1 and P4, can be established as follows: Figure 1 Electronic maps of road section 13 and road section 14 are shown.
[0089] In addition, based on the above embodiment, determining the target relative position relationship between the point clouds detected by the detection device at different times according to the relative position relationship between the adjacent aggregated point clouds may include:
[0090] Step S401: Optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds.
[0091] According to the above content, the objective function F is related to P1, P2, P3, P4, P5, P6, P7, P8, P9, P 10 , P 11 , P 12 , P 13 , P 14 , P 15 , P 16 , P 17 , P 18 , P 19 , P 20The transformation matrices between adjacent point clouds in the time series are related, and the objective function Optimization can be performed on P1 and P2, P2 and P3, ..., P 19 and P 20 Since M1 is related to the transformation matrix between the temporally adjacent point clouds in P1, P2, P3, P4, and P5, M2 is related to the transformation matrix between the temporally adjacent point clouds in P6, P7, P8, P9, and P10, M1 is related to the transformation matrix between the temporally adjacent point clouds in P1, P2, P3, P4, and P5, M2 is related to the transformation matrix between the temporally adjacent point clouds in P6, P7, P8, 10 The transformation matrices between adjacent point clouds in the time sequence are related, M4 and P 11 , P 12 , P 13 , P 14 , P 15 The transformation matrices between adjacent point clouds in the time sequence are related, M3 and P 16 , P 17 , P 18 , P 19 , P 20 Therefore, according to the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between adjacent point clouds in equal time sequence can determine the relative position relationship between any two sets of point clouds after optimization.
[0092] Optionally, the optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds includes: determining an objective function based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; and optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds based on the objective function.
[0093] Optionally, determining the objective function based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds includes: determining the conversion error between the adjacent aggregated point clouds based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; determining the objective function based on the conversion error between the adjacent aggregated point clouds.
[0094] For example, according to the error e as described above 1,2 、e 2,4 、e 4,3 and e 3,1 The objective function can be obtained By using this objective function By optimizing, it is possible to realize the above-mentioned P1 and P2, P2 and P3, ..., P19 and P 20 The relative position relationship between adjacent point clouds in the same time sequence is optimized. Further, according to the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between adjacent point clouds in equal time sequence can determine the relative position relationship between any two groups of point clouds.
[0095] Optionally, optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds according to the objective function includes: determining the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the temporally adjacent point clouds so that the value of the objective function is less than or equal to a preset threshold.
[0096] For example, by solving the objective function The minimum function value can be obtained for P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between adjacent point clouds in the same time sequence is optimized, that is, the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them and the optimized D 1,2 , D 2,4 , D 4,3 , D 3,1 The function value of the objective function F can be minimized, or the function value of the objective function F can be less than or equal to a preset threshold.
[0097] Step S402: determine the target relative position relationship between the point clouds detected by the detection device at different times based on the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time.
[0098] For example, according to the final optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them can determine the target relative position relationship between the point clouds that are not adjacent in time sequence. For example, according to the relative position relationship between P1 and P2 after the final optimization and the relative position relationship between P2 and P3 after the final optimization, the target relative position relationship between P1 and P3 that are not adjacent in time sequence can be determined.
[0099] For another example, since the transformation matrix D between M1 and M2 1,2 Specifically, the conversion matrix K between P6 and P1 1,6Therefore, according to the optimized D 1,2 , the target relative position relationship between P1 and P6 which are not adjacent in time sequence can be determined.
[0100] This embodiment obtains the relative position relationship between the temporally adjacent point clouds detected by the detection device, and performs aggregation processing on the temporally adjacent point clouds to obtain multiple large point clouds, i.e., multiple aggregated point clouds. Since the detail features in the large point clouds are richer, even if the positionally adjacent areas are blocked by obstructions, the matching calculation between the large point clouds can be completed through the detail features in the large point clouds. Therefore, based on the relative position relationship between the positionally adjacent large point clouds, a more accurate target relative position relationship between the point clouds detected by the detection device at different times can be determined, for example, the relative position relationship between two groups of point clouds that are not temporally adjacent. Therefore, compared with the prior art that uses the relative position relationship between temporally adjacent point clouds to solve the relative position relationship between two groups of point clouds that are not temporally adjacent, the error accumulation caused by the relatively long time span between the two groups of point clouds that are not temporally adjacent can be avoided, thereby improving the accuracy of the relative position relationship between the two groups of point clouds that are not temporally adjacent. In addition, based on the relative position relationship between the temporally adjacent point clouds and the target relative position relationship between the temporally non-adjacent point clouds after the final optimization, an electronic map with higher accuracy can be established.
[0101] The embodiment of the present application provides a point cloud processing method. Based on the above embodiment, the step of acquiring the relative position relationship between the point clouds adjacent in time sequence may include: acquiring an optimized relative position relationship between the point clouds adjacent in time sequence.
[0102] Correspondingly, the point clouds obtained by the detection device are aggregated according to the relative position relationship between the adjacent point clouds in the time sequence, including: according to the optimized relative position relationship between the adjacent point clouds in the time sequence, the point clouds obtained by the detection device are aggregated.
[0103] For example, step S201 described in the above embodiment is specifically to obtain the relative position relationship between the point clouds adjacent in time sequence. In the above embodiment, the ICP algorithm can be used to calculate the relative position relationship between the point clouds adjacent in time sequence. In this embodiment, step S201 can obtain the optimized relative position relationship between the point clouds adjacent in time sequence, that is, according to the optimized P1 and P2, P2 and P3, ..., P 19 and P 20 Repeat the above steps S202 to S204 according to the relative position relationship between them. 19 and P 20The relative position relationship between P1, P2, ..., P 20 Aggregation processing is performed to obtain multiple aggregated point clouds, where the multiple aggregated point clouds may be different from or the same as M1, M2, M3, and M4 as described above. Further, adjacent aggregated point clouds in the multiple aggregated point clouds obtained by re-aggregation are determined, and the objective function F as described above is determined based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds, and the objective function F is optimized again to obtain the re-optimized P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them. After further optimization, P1 and P2, P2 and P3, ..., P 19 and P 20 The relative position relationship between them can be further used as the optimized relative position relationship between the adjacent point clouds in the time sequence obtained in step S201, so that S201-S204 are continuously repeated.
[0104] This embodiment obtains the optimized relative position relationship between the temporally adjacent point clouds, and re-aggregates the point clouds according to the optimized relative position relationship between the temporally adjacent point clouds to obtain multiple aggregated point clouds, further determines the adjacent aggregated point clouds in the multiple aggregated point clouds obtained by re-aggregation, and determines the objective function according to the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds, and optimizes the objective function again to obtain the relative position relationship between the temporally adjacent point clouds after optimization again, and through continuous repeated iterations, the accuracy of the relative position relationship between the temporally adjacent point clouds can be further improved. When the target relative position relationship between the temporally non-adjacent point clouds is determined according to the relative position relationship between the temporally adjacent point clouds with higher accuracy, the accuracy of the target relative position relationship between the temporally non-adjacent point clouds can be further improved.
[0105] An embodiment of the present application provides a point cloud processing system. Figure 5 The structure diagram of the point cloud processing system provided in the embodiment of the present application is as follows: Figure 5 As shown, the point cloud processing system 50 includes: a detection device 51, a memory 52 and a processor 53. The detection device 51 is used to detect and obtain a point cloud. The point cloud detected by the detection device 51 is, for example, Figure 6 As shown, in Figure 6In the figure, the white highlighted part may be the point cloud detected by the detection device 51. In addition, the processor 53 may specifically be a component in the vehicle-mounted device in the above embodiment, or other components, devices or assemblies with data processing functions carried in the vehicle. Specifically, the memory 52 is used to store program code; the processor 53 calls the program code, and when the program code is executed, it is used to perform the following operations: obtain the relative position relationship between point clouds adjacent in time sequence; according to the relative position relationship between the point clouds adjacent in time sequence, aggregate the point clouds detected by the detection device 51 to obtain multiple aggregated point clouds, each of which includes at least two point clouds adjacent in time sequence; determine the relative position relationship between the adjacent aggregated point clouds in the multiple aggregated point clouds; according to the relative position relationship between the adjacent aggregated point clouds, determine the target relative position relationship between the point clouds detected by the detection device 51 at different times.
[0106] Optionally, when the processor 53 determines the target relative position relationship between the point clouds detected and obtained by the detection device 51 at different times based on the relative position relationship between the adjacent aggregated point clouds, the processor 53 is specifically used to: optimize the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the point clouds adjacent in time sequence; determine the target relative position relationship between the point clouds detected and obtained by the detection device 51 at different times based on the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the point clouds adjacent in time sequence.
[0107] Optionally, when the processor 53 optimizes the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the point clouds adjacent in time sequence, it is specifically used to: determine an objective function based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; and optimize the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the adjacent point clouds in time sequence based on the objective function.
[0108] Optionally, when the processor 53 determines the objective function based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds, it is specifically used to: determine the conversion error between the adjacent aggregated point clouds based on the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; determine the objective function based on the conversion error between the adjacent aggregated point clouds.
[0109] Optionally, when the processor 53 optimizes the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the point clouds adjacent in time sequence according to the objective function, it is specifically used to: determine the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time sequence so that the value of the objective function is less than or equal to a preset threshold.
[0110] Optionally, when the processor 53 obtains the relative position relationship between point clouds adjacent in time sequence, it is specifically used to: obtain the optimized relative position relationship between point clouds adjacent in time sequence; when the processor 53 aggregates the point clouds detected and obtained by the detection device 51 according to the relative position relationship between point clouds adjacent in time sequence, it is specifically used to: aggregate the point clouds detected and obtained by the detection device 51 according to the optimized relative position relationship between point clouds adjacent in time sequence.
[0111] Optionally, when the processor 53 obtains the relative position relationship between the point clouds that are adjacent in time sequence, it is specifically used to: calculate the relative position relationship between the point clouds that are adjacent in time sequence according to an iterative closest point algorithm.
[0112] Optionally, when the processor 53 aggregates the point clouds detected by the detection device 51 according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: aggregate the point clouds within a preset distance range according to the relative position relationship between the adjacent point clouds in the time sequence.
[0113] Optionally, when the processor 53 aggregates the point clouds within a preset distance range according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: convert the point clouds within the preset distance range into the same coordinate system according to the relative position relationship between the adjacent point clouds in the time sequence.
[0114] Optionally, when the processor 53 aggregates the point clouds detected by the detection device 51 according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: aggregate the point clouds within a preset time range according to the relative position relationship between the adjacent point clouds in the time sequence.
[0115] Optionally, when the processor 53 aggregates the point clouds within a preset time range according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: convert the point clouds within the preset time range into the same coordinate system according to the relative position relationship between the adjacent point clouds in the time sequence.
[0116] Optionally, the target relative position relationship between point clouds detected and obtained by the detection device 51 at different times includes: the target relative position relationship between point clouds that are not adjacent in time sequence detected and obtained by the detection device 51.
[0117] The point cloud processing system provided in the embodiment of the present application can implement the point cloud processing method as described above. The specific principles and implementation methods of the point cloud processing method are similar to those in the above embodiment and will not be repeated here.
[0118] An embodiment of the present application provides a movable platform. The movable platform includes: a fuselage, a power system and a point cloud processing system as described in the above embodiment. The power system is installed on the fuselage to provide mobile power. The point cloud processing system can implement the point cloud processing method as described above. The specific principles and implementation methods of the point cloud processing method are similar to those of the above embodiment and will not be repeated here. This embodiment does not limit the specific form of the movable platform. For example, the movable platform can be a drone, a movable robot or a vehicle.
[0119] In addition, this embodiment further provides a computer-readable storage medium on which a computer program is stored. The computer program is executed by a processor to implement the point cloud processing method described in the above embodiment.
[0120] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0121] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0122] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of hardware plus software functional units.
[0123] The above-mentioned integrated unit implemented in the form of a software functional unit can be stored in a computer-readable storage medium. The above-mentioned software functional unit is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform some steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0124] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example for illustration. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0125] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. A point cloud processing method, characterized in that: Applied to a movable platform, the movable platform is provided with a detection device, the detection device is used to detect and obtain a point cloud, the method comprises: Obtain the relative position relationship between adjacent point clouds in time sequence; According to the relative positional relationship between the point clouds adjacent in the time sequence, the point clouds detected by the detection device are aggregated to obtain a plurality of aggregated point clouds, each of which includes at least two point clouds adjacent in the time sequence; Determining a relative positional relationship between adjacent aggregated point clouds in the plurality of aggregated point clouds; Determine the target relative position relationship between the point clouds detected by the detection device at different times according to the relative position relationship between the adjacent aggregated point clouds; The aggregating the point clouds detected by the detection device according to the relative position relationship between the adjacent point clouds in the time sequence includes: converting the point clouds within a preset distance range into the same coordinate system according to the relative position relationship between the adjacent point clouds in the time sequence; or According to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within the preset time range are converted into the same coordinate system.
2. The method according to claim 1, characterized in that: The determining, based on the relative positional relationship between the adjacent aggregated point clouds, the target relative positional relationship between the point clouds detected by the detection device at different times comprises: Optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds; According to the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time sequence, the target relative position relationship between the point clouds detected by the detection device at different times is determined.
3. The method according to claim 2, characterized in that The optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds includes: Determining an objective function according to the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; According to the objective function, the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds are optimized.
4. The method according to claim 3, characterized in that The determining of the objective function according to the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds comprises: Determining a conversion error between the adjacently located aggregated point clouds according to the relative position relationship between the adjacently located aggregated point clouds and the adjacently located aggregated point clouds; The objective function is determined according to the conversion error between the adjacent aggregated point clouds.
5. The method according to claim 3 or 4, characterized in that: The step of optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the sequentially adjacent point clouds according to the objective function includes: Determine the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time sequence so that the value of the objective function is less than or equal to a preset threshold.
6. The method according to claim 5, characterized in that The acquiring of the relative positional relationship between adjacent point clouds in time sequence includes: Obtaining the optimized relative position relationship between adjacent point clouds in the time sequence; The step of performing aggregation processing on the point clouds detected by the detection device according to the relative position relationship between the adjacent point clouds in the time sequence includes: According to the optimized relative positional relationship between the adjacent point clouds in the time sequence, aggregation processing is performed on the point clouds detected by the detection device.
7. The method according to claim 1, characterized in that The acquiring of the relative positional relationship between adjacent point clouds in time sequence includes: According to the iterative closest point algorithm, the relative position relationship between the adjacent point clouds in the time sequence is calculated.
8. The method according to any one of claims 1-4 or 6-7, characterized in that: The relative position relationship of the target between the point clouds detected by the detection device at different times includes: The detection device detects the relative position relationship of the target between the point clouds that are not adjacent in time sequence.
9. A point cloud processing system, characterized in that: include: Probe devices, memory, and processors; Wherein, the detection device is used to detect and obtain a point cloud; The memory is used to store program code; The processor calls the program code, and when the program code is executed, is used to perform the following operations: Obtain the relative position relationship between adjacent point clouds in time sequence; According to the relative positional relationship between the point clouds adjacent in the time sequence, the point clouds detected by the detection device are aggregated to obtain a plurality of aggregated point clouds, each of which includes at least two point clouds adjacent in the time sequence; Determining a relative positional relationship between adjacent aggregated point clouds in the plurality of aggregated point clouds; Determine the target relative position relationship between the point clouds detected by the detection device at different times according to the relative position relationship between the adjacent aggregated point clouds; When the processor aggregates the point clouds detected by the detection device according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: convert the point clouds within a preset distance range into the same coordinate system according to the relative position relationship between the adjacent point clouds in the time sequence; or According to the relative position relationship between the adjacent point clouds in the time sequence, the point clouds within the preset time range are converted into the same coordinate system.
10. The system according to claim 9, characterized in that When the processor determines the target relative position relationship between the point clouds detected and obtained by the detection device at different times according to the relative position relationship between the adjacent aggregated point clouds, it is specifically used to: Optimizing the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds; According to the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time sequence, the target relative position relationship between the point clouds detected by the detection device at different times is determined.
11. The system according to claim 10, characterized in that When the processor optimizes the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds, it is specifically used to: Determining an objective function according to the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds; According to the objective function, the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds are optimized.
12. The system according to claim 11, characterized in that When the processor determines the objective function according to the relative position relationship between the adjacent aggregated point clouds and the adjacent aggregated point clouds, it is specifically used to: Determining a conversion error between the adjacently located aggregated point clouds according to the relative position relationship between the adjacently located aggregated point clouds and the adjacently located aggregated point clouds; The objective function is determined according to the conversion error between the adjacent aggregated point clouds.
13. The system according to claim 11 or 12, characterized in that When the processor optimizes the relative position relationship between the adjacent aggregated point clouds and the relative position relationship between the temporally adjacent point clouds according to the objective function, it is specifically used to: Determine the optimized relative position relationship between the adjacent aggregated point clouds and the optimized relative position relationship between the adjacent point clouds in time sequence so that the value of the objective function is less than or equal to a preset threshold.
14. The system according to claim 13, characterized in that When the processor obtains the relative position relationship between the point clouds adjacent in time sequence, it is specifically used to: Obtaining the optimized relative position relationship between adjacent point clouds in the time sequence; When the processor aggregates the point clouds detected by the detection device according to the relative position relationship between the adjacent point clouds in the time sequence, it is specifically used to: According to the optimized relative positional relationship between the adjacent point clouds in the time sequence, aggregation processing is performed on the point clouds detected by the detection device.
15. The system according to claim 9, characterized in that When the processor obtains the relative position relationship between the point clouds adjacent in time sequence, it is specifically used to: According to the iterative closest point algorithm, the relative position relationship between the adjacent point clouds in the time sequence is calculated.
16. The system according to any one of claims 9-12 or 14-15, characterized in that: The relative position relationship of the target between the point clouds detected by the detection device at different times includes: The detection device detects the relative position relationship of the target between the point clouds that are not adjacent in time sequence.
17. A movable platform, characterized in that: include: body; A power system, installed on the fuselage, for providing movement power; And the point cloud processing system according to any one of claims 9 to 16.
18. A computer-readable storage medium, characterized in that: A computer program is stored thereon, and the computer program is executed by a processor to implement the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Overall registering method for global optimization of multi-view three-dimensional laser point clouds
CN104463894A
Barrier identification method and system of laser radar
CN108152831A