A laser point cloud processing method, system, device and storage medium

CN117741683BActive Publication Date: 2026-08-28BEIJING SENIOR SMART DRIVING TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311763331.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-20
Publication Date
2026-08-28
Estimated Expiration
2043-12-20

Smart Images

  • Figure CN117741683B_ABST
    Figure CN117741683B_ABST
Patent Text Reader

Abstract

Embodiments of the present specification provide a laser point cloud processing method, system, device and storage medium. The foregoing method comprises: acquiring carrier attitude information in a target time period, wherein the carrier attitude information comprises first attitude information corresponding to a first time of the target time period and second attitude information corresponding to a second time of the target time period; determining a target range based on the first attitude information and the second attitude information; and removing carrier point clouds from a target point cloud corresponding to the target time period based on the target range.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of autonomous driving, and in particular to a laser point cloud processing method, system, device, and storage medium. Background Technology

[0002] In autonomous driving scenarios, LiDAR is a crucial sensor. LiDAR can be used to collect scene data around the vehicle, providing essential support for obstacle recognition and path planning. However, in actual use, in addition to scene data, the LiDAR carrier itself (e.g., the vehicle body) may also be captured. In subsequent processing (e.g., road planning), the carrier's point cloud data needs to be removed.

[0003] Therefore, it is desirable to provide a laser point cloud processing method, system, device, and storage medium that can remove carrier point clouds collected by lidar more quickly and accurately, so as to ensure the normal operation of autonomous vehicles. Summary of the Invention

[0004] One embodiment of this specification provides a laser point cloud processing method, which includes: acquiring carrier attitude information within a target time period, the carrier attitude information including first attitude information corresponding to a first moment of the target time period and second attitude information corresponding to a second moment of the target time period; determining a target range based on the first attitude information and the second attitude information; and removing carrier point cloud from the target point cloud corresponding to the target time period based on the target range.

[0005] In some embodiments, the first time point is one of the start time point and the end time point in the target time period, and the second time point is the other of the start time point and the end time point.

[0006] In some embodiments, determining the target range based on the first attitude information and the second attitude information includes: obtaining a first transformation relationship between the vehicle coordinate system and the reference coordinate system at the first time and a second transformation relationship between the vehicle coordinate system and the reference coordinate system at the second time; performing coordinate system transformation on at least one of the first attitude information and the second attitude information based on the first transformation relationship and the second transformation relationship, so that the two are located in the same vehicle coordinate system; and determining the target range based on the first attitude information and the second attitude information located in the same vehicle coordinate system.

[0007] In some embodiments, the first attitude information includes first position information of a plurality of first contour points; the second attitude information includes second position information of a plurality of second contour points, wherein the plurality of second contour points correspond one-to-one with the plurality of first contour points, and a first contour point and its corresponding second contour point constitute a set of contour points; determining the target range based on the first attitude information and the second attitude information located in the same vehicle coordinate system includes: performing preliminary screening on multiple sets of contour points sequentially based on the first attitude information and the second attitude information located in the same vehicle coordinate system to determine a preliminary sequence, the preliminary sequence including contour points arranged in order after preliminary screening; determining a target sequence based on the preliminary sequence; and determining the target range based on the target sequence.

[0008] In some embodiments, the preliminary screening of multiple sets of contour points based on the first attitude information and the second attitude information located in the same vehicle coordinate system to determine the preliminary sequence includes: for each set of contour points, based on the first attitude information and the second attitude information located in the same vehicle coordinate system, determining in turn whether the contour points in the set are included in the first contour formed by the multiple first contour points or the second contour formed by the multiple second contour points; retaining contour points not included in the first contour or the second contour, and filtering out contour points included in the first contour or the second contour.

[0009] In some embodiments, the preliminary screening of multiple sets of contour points based on the first attitude information and the second attitude information located in the same vehicle coordinate system, and the determination of the preliminary sequence, further includes: for each set of contour points, determining a first line connecting the first contour point in the set and the first contour point in the next set of contour points; determining a second line connecting the second contour point in the set and the second contour point in the next set of contour points; determining whether there is an intersection between the first line and the second line; if there is, retaining the intersection.

[0010] In some embodiments, determining the target sequence based on the preliminary sequence includes: for each group of contour points, if, after filtering, both the first and second contour points in the group are retained, then based on the preliminary sequence, determining the third line connecting the first contour point to the previous adjacent sequence point and the fourth line connecting the subsequent contour point to the next adjacent sequence point in the group; if there is an intersection between the third line and the fourth line, then swapping the order of the first and subsequent contour points in the group; if there is no intersection between the third line and the fourth line, then keeping the order of the first and subsequent contour points in the group unchanged.

[0011] One embodiment of this specification provides a laser point cloud processing system, which includes: an acquisition module for acquiring carrier attitude information within a target time period, the carrier attitude information including first attitude information corresponding to a first moment of the target time period and second attitude information corresponding to a second moment of the target time period; a determination module for determining a target range based on the first attitude information and the second attitude information; and a filtering module for removing carrier point clouds from the target point cloud corresponding to the target time period based on the target range.

[0012] One embodiment of this specification provides a laser point cloud processing apparatus, the apparatus including at least one processor and at least one memory; the at least one memory is used to store computer instructions; the at least one processor is used to execute at least a portion of the computer instructions to implement the laser point cloud processing method as described in any of the foregoing embodiments.

[0013] One embodiment of this specification provides a computer-readable storage medium that stores computer instructions that, when executed by a processor, implement the laser point cloud processing method as described in any of the foregoing embodiments. Attached Figure Description

[0014] This specification will be further described by way of exemplary embodiments, which will be described in detail with reference to the accompanying drawings. These embodiments are not limiting; in these embodiments, the same reference numerals denote the same structures, wherein: Figure 1 These are exemplary block diagrams of a laser point cloud processing system according to some embodiments of this specification; Figure 2 This is an exemplary flowchart of a laser point cloud processing method according to some embodiments of this specification; Figure 3 This is an exemplary flowchart illustrating the determination of a target range according to some embodiments of this specification; Figure 4A These are schematic diagrams illustrating first and second attitude information according to some embodiments of this specification; Figure 4B These are schematic diagrams illustrating first and second attitude information according to some embodiments of this specification; Figure 5 This is an exemplary flowchart illustrating the filtering of contour points according to some embodiments of this specification; Figure 6 This is an exemplary flowchart illustrating the determination of a target sequence according to some embodiments of this specification. Detailed Implementation

[0015] To more clearly illustrate the technical solutions of the embodiments in this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are merely some examples or embodiments of this specification. For those skilled in the art, these drawings can be applied to other similar scenarios without creative effort. Unless obvious from the context or otherwise specified, the same reference numerals in the drawings represent the same structures or operations.

[0016] It should be understood that the terms “system,” “device,” “unit,” and / or “module” used herein are one way to distinguish different components, elements, parts, sections, or assemblies at different levels. However, if other terms can achieve the same purpose, they may be replaced by other expressions.

[0017] As indicated in this specification and claims, unless the context clearly indicates otherwise, the words "a," "an," "an," and / or "the" do not specifically refer to the singular and may also include the plural. Generally speaking, the terms "comprising" and "including" only indicate the inclusion of expressly identified steps and elements, which do not constitute an exclusive list, and the method or apparatus may also include other steps or elements.

[0018] Flowcharts are used in this specification to illustrate the operations performed by the system according to embodiments of this specification. It should be understood that the preceding or following operations are not necessarily performed in exact order. Instead, the steps can be processed in reverse order or simultaneously. Furthermore, other operations can be added to these processes, or one or more steps can be removed from them.

[0019] Figure 1 This is an exemplary block diagram of a laser point cloud processing system according to some embodiments of this specification.

[0020] The laser point cloud processing system 100 can be applied to a carrier equipped with LiDAR (e.g., an autonomous vehicle). The laser point cloud processing system 100 can be integrated into the carrier's processor or installed independently of the carrier (e.g., the laser point cloud processing system 100 can be installed in an external processor and communicate with the carrier to exchange data). The laser point cloud processing system 100 can filter the target point cloud acquired by the LiDAR in the carrier during a target time period, accurately removing the carrier's point cloud from the target point cloud, ensuring that the carrier performs path planning, obstacle avoidance, and other operations based on the filtered target point cloud.

[0021] As an example, during the movement of an autonomous vehicle, the LiDAR is also in motion, causing the point cloud of the surrounding environment collected by the LiDAR to be inconsistent with reality. For instance, if the vehicle moves towards a wall perpendicular to its direction of travel, the LiDAR performs a scanning operation during the vehicle's movement. Consequently, during the scanning process, if the vehicle quickly moves from a position far from the wall to its vicinity, the point cloud obtained by the LiDAR will no longer be perpendicular to the vehicle's direction of travel. Therefore, in practical applications, motion compensation is usually required for the point cloud collected by the moving LiDAR. After motion compensation, the point cloud obtained by the LiDAR scan (including the vehicle body point cloud) changes. If the removal criteria used when the vehicle is stationary (e.g., based on a fixed area of ​​the vehicle body) are applied to remove the vehicle body point cloud, inaccurate removal will inevitably result.

[0022] In view of this, the laser point cloud processing method provided in the embodiments of this specification can accurately determine the range of a carrier (e.g., a vehicle body) in motion and accurately generate the corresponding carrier point cloud.

[0023] like Figure 1 As shown, the laser point cloud processing system 100 may include an acquisition module 110, a determination module 120, and a filtering module 130.

[0024] In some embodiments, the acquisition module 110 can be used to acquire carrier attitude information within a target time period, the carrier attitude information including first attitude information corresponding to a first moment of the target time period and second attitude information corresponding to a second moment of the target time period.

[0025] In some embodiments, the determining module 120 may be used to determine a target range based on the first attitude information and the second attitude information. In some embodiments, the determining module 120 may be further used to obtain a first transformation relationship between the vehicle coordinate system and the reference coordinate system at the first time point and a second transformation relationship between the vehicle coordinate system and the reference coordinate system at the second time point; based on the first transformation relationship and the second transformation relationship, perform coordinate system transformation on at least one of the first attitude information and the second attitude information so that they are located in the same vehicle coordinate system; and determine the target range based on the first attitude information and the second attitude information located in the same vehicle coordinate system. In some embodiments, the first posture information includes first position information of a plurality of first contour points; the second posture information includes second position information of a plurality of second contour points, wherein the plurality of second contour points correspond one-to-one with the plurality of first contour points, and a first contour point and its corresponding second contour point constitute a set of contour points. The determining module 120 can also be further configured to perform preliminary screening on multiple sets of contour points sequentially based on the first posture information and the second posture information located in the same vehicle coordinate system to determine a preliminary sequence, wherein the preliminary sequence includes contour points arranged in order after preliminary screening; determine a target sequence based on the preliminary sequence; and determine the target range based on the target sequence. In some embodiments, for each set of contour points, the determining module 120 can also be further configured to, for each set of contour points, based on the first posture information and the second posture information located in the same vehicle coordinate system, sequentially determine whether the contour points in the set of contour points are included in the first contour formed by the plurality of first contour points or the second contour formed by the plurality of second contour points; retain contour points not included in the first contour or the second contour, and filter out contour points included in the first contour or the second contour. In some embodiments, for each set of contour points, the determining module 120 may further be configured to: determine a first line connecting a first contour point in the set of contour points and a first contour point in the next set of contour points; determine a second line connecting a second contour point in the set of contour points and a second contour point in the next set of contour points; determine whether there is an intersection between the first line and the second line; and if so, retain the intersection.In some embodiments, for each group of contour points, if after filtering, both the first and second contour points in the group are retained, the determining module 120 can be further used to determine, based on the preliminary sequence, the third line connecting the first contour point to the previous adjacent sequence point and the fourth line connecting the subsequent contour point to the next adjacent sequence point in the group of contour points; if there is an intersection between the third line and the fourth line, the order of the first contour point and the subsequent contour point in the group of contour points is swapped; if there is no intersection between the third line and the fourth line, the order of the first contour point and the subsequent contour point in the group of contour points remains unchanged.

[0026] In some embodiments, the filtering module 130 can be used to remove carrier point clouds from the target point clouds corresponding to the target time period based on the target range.

[0027] It should be understood that Figure 1 The system and its modules shown can be implemented in various ways.

[0028] It should be noted that the above description of the laser point cloud processing system 100 and its modules is for convenience only and should not be construed as limiting this specification to the scope of the embodiments described. It is understood that those skilled in the art, after understanding the principles of the system, may arbitrarily combine the various modules or construct subsystems connected to other modules without departing from these principles. In some embodiments, Figure 1 The acquisition module 110, determination module 120, and filtering module 130 disclosed herein can be different modules within a single system, or a single module can implement the functions of two or more of the aforementioned modules. For example, the modules can share a single storage module, or each module can have its own separate storage module. Such variations are all within the scope of protection of this specification.

[0029] Figure 2 This is an exemplary flowchart illustrating a laser point cloud processing method according to some embodiments of this specification. In some embodiments, process 200 may be executed by a laser point cloud processing system 100. Figure 2 As shown, process 200 includes the following steps.

[0030] Step 210: Obtain carrier attitude information within the target time period. The carrier attitude information includes first attitude information corresponding to the first moment of the target time period and second attitude information corresponding to the second moment of the target time period. In some embodiments, step 210 can be performed by the acquisition module 110.

[0031] The onboard lidar can continuously collect point clouds of the surrounding scene and transmit them to the lidar point cloud processing system 100 for processing at a fixed frequency. This fixed frequency can be correlated with the lidar's scanning cycle (i.e., the time required for the lidar to rotate once and scan a 360-degree area of ​​the surrounding scene). For example, the unit time of the fixed frequency can be the same as one or more scanning cycles of the lidar; for instance, if the scanning cycle of a lidar is 100ms, the corresponding fixed frequency could be 10Hz.

[0032] The target time period refers to the time period corresponding to the target point cloud that the laser point cloud processing system 100 needs to process. The aforementioned target point cloud is the point cloud obtained by the lidar during the target time period by collecting data from the surrounding scene. It is understood that since the lidar also captures images of the vehicle while collecting data from the surrounding scene, the target point cloud includes the vehicle point cloud and other point clouds. The vehicle point cloud is the point cloud data corresponding to the vehicle, and other point clouds are the point cloud data in the target point cloud other than the vehicle point cloud. For example, other point clouds may include, but are not limited to, road point clouds, container point clouds, and pedestrian point clouds. Both the aforementioned target point cloud and vehicle point cloud are located in a global coordinate system, which can be determined by a preset method; for example, the aforementioned global coordinate system can be a geocentric coordinate system.

[0033] The acquisition module 110 can execute step 210 based on the received point cloud.

[0034] In some embodiments, the motion of the carrier must meet preset conditions within a target time period. These preset conditions may be that the absolute value of the difference between the heading angles at any two moments within the target time period does not exceed a preset difference threshold (e.g., 0°, 1°, 2°, 5°, 10°, etc.), to ensure that the carrier's motion within the target time period is linear or nearly linear. The heading angles can be determined based on the carrier point cloud within the target time period.

[0035] In some embodiments, for each received point cloud, the laser point cloud processing system 100 can calculate the difference between the heading angle corresponding to each time period within the time period corresponding to the received point cloud and the heading angle corresponding to each previous time period. When the absolute value of the aforementioned difference is greater than or equal to the aforementioned preset difference threshold, the laser point cloud processing system 100 can segment the time period corresponding to the received point cloud at that time, and take that time period as the starting time, and then determine whether the time period after that time period still needs to be segmented, until all the times of the aforementioned time period are traversed to obtain one or more target time periods.

[0036] In some embodiments, for each received point cloud, the acquisition module 110 can further limit the length of the target time period, thereby determining the target time period based on the time period corresponding to the received point cloud. It is worth noting that even if the overall path of the carrier's movement is curved, some embodiments of this specification, by limiting the length of the target time period, can ensure that the carrier's movement path within the target time period is straight or nearly straight. This ensures that the target range determined by the first attitude information and the second attitude information can cover all carrier point clouds within the target time period, avoiding errors caused by missing some carrier point clouds at certain times within the target time period.

[0037] In some embodiments, the length of the target time period is not greater than a preset length threshold. When the time period corresponding to a point cloud received by the laser point cloud processing system 100 in a certain instance is longer than the aforementioned preset length threshold, the laser point cloud processing system 100 can segment the time period corresponding to the received point cloud. The length of the target time period obtained after segmentation is not greater than the preset length threshold. For example, the length of the target time period is not greater than 100ms. When the length of the time period corresponding to a point cloud received in a certain instance is 300ms, the laser point cloud processing system 100 can segment it into 3 target time periods.

[0038] For each target time period, the laser point cloud processing system 100 can execute process 200 to process the target point cloud and remove the carrier point cloud from the target point cloud.

[0039] Some embodiments in this specification limit the target time period to ensure that the carrier will not undergo back-and-forth movement within the target time period, thereby ensuring the accuracy of the carrier point cloud subsequently selected.

[0040] Carrier attitude information refers to information that reflects the attitude of the carrier.

[0041] In some embodiments, the carrier attitude information may include first attitude information corresponding to a first moment of the target time period and second attitude information corresponding to a second moment of the target time period. In some embodiments, the target time period may include multiple moments, wherein the first moment is one of the start and end moments of the target time period, and the second moment is the other of the start and end moments. For example, the first moment is the start moment of the target time period, and the second moment is the end moment of the target time period. As another example, the first moment is the end moment of the target time period, and the second moment is the start moment of the target time period.

[0042] The first attitude information can reflect the attitude of the carrier at a first moment. The first attitude information can include the first position information of multiple first contour points within the carrier, where each first contour point refers to a contour point in the vehicle coordinate system corresponding to the first moment. The area formed by connecting multiple contour points in a preset order can completely cover the carrier, and these multiple contour points can form any convex shape (e.g., rectangle, trapezoid, hexagon, or other arbitrary convex polygon). The first position information refers to the position information of the first contour points in the vehicle coordinate system corresponding to the first moment. The vehicle coordinate system corresponding to the first moment can be determined according to a preset, and its origin can be the center of the carrier. For example, when the carrier is an autonomous vehicle, the vehicle coordinate system corresponding to the first moment can be defined as follows: forward along the vehicle's front direction is the positive x-axis, perpendicular to the x-axis to the left is the positive y-axis, perpendicular to the xoy plane upwards is the positive z-axis, and the origin is the projection point of the vehicle's center onto the ground (i.e., x-axis 0 point is the front-rear center of the vehicle, y-axis 0 point is the left-right center of the vehicle, and z-axis 0 point is the ground). The first position information can be determined according to a preset. For example, the acquisition module 110 can acquire the design information of the carrier, determine the relative positional relationship between each contour point in the carrier and the projection point of the vehicle center on the ground, and thus obtain the first attitude information corresponding to the first moment of the target time period.

[0043] Correspondingly, the second attitude information can reflect the carrier's attitude at the second moment. The second attitude information may include the second position information of multiple second contour points within the carrier, where each second contour point refers to a contour point in the vehicle coordinate system corresponding to the second moment. It is worth noting that the carrier's contour points are fixed, therefore, each of the multiple second contour points corresponds one-to-one with a multiple of the first contour points. For example, as... Figure 4AThe carrier shown has four contour points. The target time period includes four moments. The number of first contour points corresponding to the first moment is four, namely A1~D1. The number of second contour points corresponding to the second moment is also four, namely A4~D4. Each first contour point corresponds to one second contour point (e.g., A1 corresponds to A4, both representing the same contour point in the carrier at different moments). The second position information refers to the position information of the second contour point in the vehicle coordinate system corresponding to the second moment. Since the structure of the carrier itself does not change during movement, the relative positional relationship between the multiple contour points in the carrier and the projection point of the vehicle center on the ground does not change. That is, the first position information of the multiple first contour points in the vehicle coordinate system corresponding to the first moment is the same as the second position information of the multiple second contour points in the vehicle coordinate system corresponding to the second moment. However, it can be understood that when the carrier moves within the target time period, the actual position of the vehicle coordinate system corresponding to the first moment is different from the actual position of the vehicle coordinate system corresponding to the second moment. For example, the actual position of the origin in the vehicle coordinate system corresponding to the first moment is different from the actual position of the origin in the vehicle coordinate system corresponding to the second moment.

[0044] Step 220: Determine the target range based on the first attitude information and the second attitude information. In some embodiments, step 220 may be performed by the determining module 120.

[0045] The target range refers to the location range of the carrier within the target time period. In some embodiments, the target range may be located in a vehicle coordinate system (e.g., the vehicle coordinate system corresponding to the first or second moment) or in a global coordinate system. The target range may be a two-dimensional or three-dimensional region composed of multiple contour points, and the point cloud within the region is the carrier point cloud at each moment within the target time period. The aforementioned contour points constituting the target range may be a first contour point, a second contour point, and the intersection of the first and second connecting lines. For more information on the intersection of the first and second connecting lines, please refer to [link to relevant documentation]. Figure 5 And its related descriptions.

[0046] In some embodiments, the determining module 120 may perform modeling or employ various data analysis algorithms, such as regression analysis or discriminant analysis, to analyze and process the first attitude information and the second attitude information to determine the target range.

[0047] It is understandable that, as mentioned above, the coordinate systems corresponding to the first attitude information and the second attitude information are the vehicle coordinate systems corresponding to the first time and the second time, respectively. The determining module 120 can convert the aforementioned first attitude information and second attitude information into the same coordinate system for subsequent operations.

[0048] In some embodiments, the determining module 120 can obtain a first transformation relationship between the vehicle coordinate system and the reference coordinate system at a first time moment, and a second transformation relationship between the vehicle coordinate system and the reference coordinate system at a second time moment. The aforementioned reference coordinate system can be a reference coordinate system used to transform the vehicle coordinate system at the first time moment and the vehicle coordinate system at the second time moment to the same coordinate system. The reference coordinate system can be a global coordinate system. The first and second transformation relationships can be represented in various ways; for example, they can be represented by a matrix, where each element of the matrix can represent the transformation relationship between various elements (e.g., horizontal axis, vertical axis, etc.) in different coordinate systems.

[0049] In some embodiments, the determining module 120 may determine the heading angle, position, etc. of the carrier in the global coordinate system at the first moment based on the carrier point cloud at the first moment, and determine a first transformation relationship based on the aforementioned heading angle, position, etc. Similarly, the determining module 120 may also determine the heading angle, position, etc. of the carrier in the global coordinate system at the second moment based on the carrier point cloud at the second moment, and determine a second transformation relationship based on the aforementioned heading angle, position, etc.

[0050] In some embodiments, the determining module 120 can perform coordinate system transformation on at least one of the first attitude information and the second attitude information based on a first transformation relationship and a second transformation relationship, so that the two are located in the same vehicle coordinate system. For example, the determining module 120 can transform the first attitude information to the vehicle coordinate system corresponding to the second time moment. That is, the determining module 120 can transform the first attitude information to a reference coordinate system based on the first transformation relationship, and then transform the first attitude information transformed to the reference coordinate system to the vehicle coordinate system corresponding to the second time moment based on the second transformation relationship, so that both the first attitude information and the second attitude information are located in the vehicle coordinate system corresponding to the second time moment. Similarly, the determining module 120 can also transform the second attitude information to the vehicle coordinate system corresponding to the first time moment. For example, the determining module 120 can also transform the first attitude information and the second attitude information to the vehicle coordinate system corresponding to other times in the target time period. The determining module 120 can transform the first attitude information and the second attitude information to the reference coordinate system based on the first transformation relationship and the second transformation relationship, and then transform the first attitude information and the second attitude information to the vehicle coordinate system corresponding to other times in the target time period based on the third transformation relationship between the vehicle coordinate system corresponding to other times in the target time period and the reference coordinate system. For more information about the third transformation relationship, please refer to the first transformation relationship mentioned above.

[0051] In some embodiments, the determining module 120 can determine the target range based on first attitude information and second attitude information located in the same vehicle coordinate system. Further details regarding the foregoing embodiments can be found in [link to relevant documentation]. Figure 3 And its related descriptions.

[0052] Step 230: Based on the target range, remove the carrier point cloud from the target point cloud corresponding to the target time period. In some embodiments, step 230 can be performed by the filtering module 130.

[0053] When the target range is located in the global coordinate system, the filtering module 130 can directly remove the point cloud located within the target range in the global coordinate system, that is, the carrier point cloud at each moment within the target time period.

[0054] When the target area is located in the vehicle coordinate system, the filtering module 130 can transform the target area to the global coordinate system based on the transformation relationship between the vehicle coordinate system and the global coordinate system, and remove the point cloud in the global coordinate system that is located within the transformed target area, i.e., the carrier point cloud at each moment within the target time period. For example, when the target area is located in the vehicle coordinate system corresponding to the first moment, the filtering module 130 can transform the target area to the global coordinate system based on the first transformation relationship, and remove the point cloud in the global coordinate system that is located within the transformed target area.

[0055] Some embodiments of this specification can quickly and accurately determine the carrier point cloud within a target time period by using the first attitude information at the first moment and the second attitude information at the second moment, avoiding the need to remove the carrier point cloud corresponding to each moment within the target time period one by one, thus reducing the waste of computing resources.

[0056] Figure 3 This is an exemplary flowchart illustrating the determination of a target range according to some embodiments of this specification. In some embodiments, process 300 may be executed by the determining module 120. Figure 3 As shown, process 300 includes the following steps.

[0057] Step 310: Based on the first and second attitude information located in the same vehicle coordinate system, perform preliminary screening on multiple sets of contour points in sequence to determine the preliminary sequence.

[0058] The determining module 120 can form a set of contour points by combining a first contour point with its corresponding second contour point. For example, as... Figure 4AAs shown, a certain carrier includes 4 contour points. Correspondingly, the determining module 120 can determine 4 groups of contour points, namely the contour point group composed of A1 and A4, the contour point group composed of B1 and B4, the contour point group composed of C1 and C4, and the contour point group composed of D1 and D4. Each group of contour points may include a first contour point at a first time and a second contour point corresponding to the first contour point at a second time.

[0059] A preliminary sequence can refer to a sequence of sequence points that have been preliminarily selected and used to form the target range.

[0060] In some embodiments, the determining module 120 can perform preliminary screening of multiple sets of contour points in sequence based on the first attitude information and the second attitude information located in the same vehicle coordinate system to determine a preliminary sequence.

[0061] In some embodiments, the determining module 120 can acquire the connection relationships of each contour point, select a set of contour points corresponding to one of the contour points according to a preset or random selection as the first set of contour points, and determine the next contour point of each contour point based on the connection order of the carrier contour points, thereby determining the filtering order of other sets of contour points. Similarly, for a group of contour points, the determining module 120 can randomly select or preset one contour point in the group as the contour point to be filtered first, and the other contour point as the contour point to be filtered later.

[0062] For example, Figure 4A The carrier shown includes four first contour points. The determining module 120 can randomly select a set of contour points corresponding to A1 as the first set of contour points, that is, the contour point group composed of A1 and A4 is the first set of contour points. According to the connection order of the carrier contour points, the subsequent first contour points of A1 are determined to be B1, C1, and D1 in sequence, thus determining the screening order between each set of contour points: the contour point group composed of A1 and A4 → the contour point group composed of B1 and B4 → the contour point group composed of C1 and C4 → the contour point group composed of D1 and D4. Similarly, the determining module 120 can preset the contour points to be screened first in each set of contour points as the first contour points, thereby determining the aforementioned screening order as A1, A4, B1, B4, C1, C4, D1, and D4 in sequence.

[0063] In some embodiments, the determining module 120 may determine the aforementioned screening order in a variety of ways, and this specification does not limit this.

[0064] In some embodiments, the determining module 120 can perform preliminary screening of multiple sets of contour points in sequence based on the first attitude information and the second attitude information located in the same vehicle coordinate system to determine a preliminary sequence.

[0065] In some embodiments, the determining module 120 can determine the position information of the first and second contour points in the aforementioned vehicle coordinate system based on the first and second attitude information located in the same vehicle coordinate system. Then, based on a first sorting model, it analyzes and processes the selection order and the position information of each contour point in the multiple sets of contour points to obtain a preliminary sequence. The aforementioned first sorting model is a machine learning model that can be obtained through training. The training samples may include the sample selection order and the sample position information of each sample contour point in the multiple sets of sample contour points. The labels may include the preliminary sample sequence. Both the aforementioned training samples and labels can be determined manually.

[0066] In some embodiments, the determining module 120 can, based on the aforementioned filtering order and first and second attitude information located in the same vehicle coordinate system, sequentially determine whether the contour points (i.e., first contour points and second contour points) in multiple sets of contour points are included in a first contour formed by multiple first contour points or a second contour formed by multiple second contour points. The first contour can refer to the range of the carrier formed by multiple first contour points. Similarly, the second contour can refer to the range of the carrier formed by multiple second contour points. The connection order of the multiple first contour points in the first contour and the multiple second contour points in the second contour can refer to a preset order of the contour points of the carrier. For example, as... Figure 4A As shown, the first contour point of a certain carrier within the target time period may include A1, B1, C1 and D1, and the second contour point may include A4, B4, C4 and D4. Correspondingly, the determining module 120 can determine the first contour as A1B1C1D1 and the second contour as A4B4C4D4.

[0067] In some embodiments, the determining module 120 can sequentially filter multiple sets of contour points based on the filtering order, retaining contour points not included in the first contour or the second contour, and filtering out contour points included in the first contour or the second contour. Continuing the previous example, as... Figure 4A As shown, the determining module 120 filters multiple sets of contour points according to the filtering order of A1, A4, B1, B4, C1, C4, D1, D4. It can be determined that B1 is within the range of the second contour A4B4C4D4, and C4 is within the range of the first contour A1B1C1D1. Therefore, the filtered contour points can include A1, A4, B4, C1, D1, D4.

[0068] In some embodiments, for each group of contour points, the determining module 120 can further determine a first line connecting a first contour point in that group and a first contour point in the next group, and determine a second line connecting a second contour point in that group and a second contour point in the next group. Further, it is determined whether the first and second lines intersect; if an intersection exists, the intersection is retained and added to the initial sequence. More information about the first and second lines, and their intersection, can be found in [link to relevant documentation]. Figure 5 And its related descriptions.

[0069] Step 320: Determine the target sequence based on the preliminary sequence.

[0070] The target sequence refers to the sequence of points ultimately determined to form the target range. For each group of contour points, if the first and second contour points in the group are retained after screening, the determining module 120 can further determine whether to adjust the order of the first and second contour points in the group through various methods to ensure the accuracy of the target range.

[0071] In some embodiments, the determining module 120 can process the preliminary sequence based on a second sequence model to determine the target sequence. The input of the second sequence model is the preliminary sequence, and the output is the target sequence. The second sequence model can be a machine learning model obtained through training. The training samples can include the preliminary sequence of samples, and the labels can include the target sequence of samples. Both the aforementioned training samples and labels can be determined manually.

[0072] In some embodiments, for each group of contour points, if after filtering, both the first and second contour points in the group are retained, the determining module 120 can further determine, based on the preliminary sequence, the third line connecting the first contour point to its preceding adjacent sequence point and the fourth line connecting the subsequent contour point to its following adjacent sequence point. If there is an intersection between the third and fourth lines, the order of the first and subsequent contour points in the group is swapped; if there is no intersection between the third and fourth lines, the order of the first and subsequent contour points in the group remains unchanged. For more details on the above embodiments, please refer to... Figure 6 And its related descriptions.

[0073] Step 330: Determine the target range based on the target sequence.

[0074] In some embodiments, the determining module 120 may, based on the target sequence, connect the sequence points that make up the target range in sequence order, and connect the last sequence point that makes up the target range with the first sequence point that makes up the target range to form a closed region, i.e., the target range. All point clouds within the aforementioned target range are carrier point clouds.

[0075] According to some embodiments of this specification, by using the first attitude information at the first moment and the second attitude information at the second moment, the point cloud range of the carrier point cloud at multiple moments within the target time period can be accurately determined, avoiding the waste of computational resources caused by filtering each moment within the target time period one by one, and improving computational efficiency. For example... Figure 4A As shown, when the target time period includes four moments, where the first moment and the second moment are the start and end moments respectively, the target range is determined to be A1A4B4MC1D1D4N by executing process 200. The target range can cover the carrier point cloud corresponding to each moment within the target time period. Therefore, it is not necessary to remove the carrier point cloud corresponding to each moment within the target time period one by one, that is, the carrier point cloud corresponding to the moments A1B1C1D1, A2B2C2D2, A3B3C3D3 and A4B4C4D4, thus improving the computational efficiency.

[0076] Figure 5 This is an exemplary flowchart illustrating the filtering of contour points according to some embodiments of this specification. In some embodiments, process 500 may be executed by determination module 120.

[0077] It is understandable that, such as Figure 4A As shown, if the determining module 120 determines the target range solely based on the selected contour points, it may result in regions B4MC1 and D4NA1 both being classified as the target range, whereas in reality, the target range is determined by... Figure 4A It is known that there are no carrier point clouds in regions B4MC1 and D4NA1. Therefore, for each group of contour points, after completing the screening of the group of contour points based on the screening order, before screening the next group of contour points, the determination module 120 can also execute the steps in the following process 500 to determine the intersection of the carrier point cloud ranges corresponding to the start time and the end time, so as to ensure the accuracy of the target range.

[0078] Step 510: Determine the first line connecting the first contour point in the first contour point of the group and the first contour point in the next group of contour points.

[0079] The next set of contour points refers to the set of contour points that follows the current set in the filtering order. It's worth noting that when the current set of contour points is the last set in the filtering order, the next set of contour points is the first set in the filtering order. For example, if the filtering order of multiple sets of contour points for a certain carrier is A1, A4, B1, B4, C1, C4, D1, D4, the next set of contour points for the last set of contour points D1 and D4 is the first set of contour points A1 and A4.

[0080] The first connecting line refers to the line formed between the first contour point in the current set of contour points and the first contour point in the next set of contour points. The determining module 120 can connect the first contour point in the current set of contour points with the first contour point in the next set of contour points to form the first connecting line. For example, for the contour point group consisting of B1 and B4, the determining module 120 can... Figure 4A The first contour point B1 shown is connected to the first contour point C1 in the next set of contour points to determine the first connecting line B1C1.

[0081] Step 520: Determine the second line connecting the second contour point in the first set of contour points and the second contour point in the next set of contour points.

[0082] The second connecting line refers to the line formed between the second contour point in the current set of contour points and the second contour point in the next set of contour points. The determining module 120 can connect the second contour point in the current set of contour points with the second contour point in the next set of contour points to form a second connecting line. For example, for the contour point group consisting of B1 and B4, the determining module 120 can... Figure 4A The second contour point B4 shown is connected to the second contour point C4 in the next set of contour points to determine the second connecting line B4C4.

[0083] Step 530: Determine whether there is an intersection between the first and second lines; if so, retain the intersection.

[0084] In some embodiments, if there is an intersection between the first line and the second line, the determining module 120 retains the intersection, adds it to the preliminary sequence based on the currently filtered order, and continues to filter the next set of contour points based on the filtering order; if there is no intersection between the first line and the second line, the determining module 120 can directly filter the next set of contour points based on the filtering order.

[0085] For example, for the contour point group consisting of B1 and B4, the determining module 120 can determine that there is an intersection point M between the first connecting line B1C1 and the second connecting line B4C4. Therefore, the intersection point M is retained and added to the preliminary sequence after B4 based on the current filtering order, and the next set of contour points C1 and C4 is filtered based on the filtering order.

[0086] In some embodiments, the determining module 120 may sort the filtered contour points and the retained intersection points based on the filtering order to determine a preliminary sequence. For example, as... Figure 4AIn the vehicle coordinate system shown, the selection order of multiple sets of contour points is A1, A4, B1, B4, C1, C4, D1, D4. The selected contour points include A1, A4, B4, C1, D1, D4, with intersection points M and N. M is the intersection of the first line B1C1 and the second line B4C4, so M is in the order after B4 and before C1 in the preliminary sequence. N is the intersection of the first line D1A1 and the second line D4A4, so N is in the order after D4 in the preliminary sequence. Thus, the preliminary sequence can be determined as (A1, A4, B4, M, C1, D1, D4, N). The selected contour points and intersection points that make up the preliminary sequence are all sequence points that make up the target range.

[0087] Some embodiments in this specification determine the intersection point by using a first connection and a second connection, which can avoid classifying other point clouds as carrier point clouds and improve the accuracy of the determined target range.

[0088] Figure 6 This is an exemplary flowchart illustrating the determination of a target sequence according to some embodiments of this specification. In some embodiments, process 600 may be executed by determination module 120.

[0089] For example, such as Figure 4B The vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 If the target range is directly formed based on this preliminary sequence, it will constitute region E1E. 20 F1G1H1H 20 In this region, the lines connecting multiple sequence points that make up the target range will intersect, making it impossible to cover all carrier point clouds within the target time period. Therefore, for each group of contour points, if the first and second contour points in the group are retained after screening, the determining module 120 can perform the following steps one by one on the contour point groups in the preliminary sequence that retain the first and second contour points to determine the order of the first and second contour points in the group, thereby determining the target sequence.

[0090] Step 610: Based on the preliminary sequence, determine the third line connecting the first contour point to the previous adjacent sequence point and the fourth line connecting the later contour point to the subsequent adjacent sequence point in the group of contour points.

[0091] The first contour point is the contour point that appears first in the initial sequence of the group of contour points, and the second contour point is the contour point that appears last in the initial sequence of the group of contour points. For example, such as Figure 4B The vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 When E1 and E20 The first contour point in the group of contour points is E1, and the second contour point is E. 20 .

[0092] The third connection refers to the line connecting the first contour point in this set of contour points to its preceding adjacent sequence point. When this set of contour points is the first set of contour points in the preliminary sequence, the preceding adjacent sequence point of the aforementioned first contour point is the last contour point in the preliminary sequence. For example, as... Figure 4B The vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 When E1 and E 20 In the group of contour points, the preceding adjacent sequence point of contour point E1 is H. 20 The third connection is E1H. 20 .

[0093] The fourth connection refers to the line connecting the last contour point in this set of contour points to its adjacent sequence point. When this set of contour points is the last set of contour points in the preliminary sequence, the adjacent sequence point of the aforementioned last contour point is the first contour point in the preliminary sequence. For example, as... Figure 4B The vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 When H1 and H 20 In the group of contour points, the later contour point H 20 The next adjacent sequence point is E1, and the fourth connection is H. 20 E1.

[0094] Step 620: If there is an intersection between the third and fourth lines, then swap the order of the first and second contour points in the set of contour points.

[0095] For example, such as Figure 4B The vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 When E1 and E 20 In the group of contour points, the third connecting line E1H 20 Connecting to the fourth line E 20 There is an intersection point between F1 and E, therefore module 120 can determine whether E1 and E 20 The order of the elements is swapped.

[0096] Step 630: If there is no intersection between the third and fourth lines, then keep the order of the first and last contour points in the set unchanged.

[0097] For example, such as Figure 4BThe vehicle coordinate system shown has a preliminary sequence for the target time period as (E1, E...). 20 F1, G1, H1, H 20 When H1 and H 20 In the contour point group, the third line G1H1 and the fourth line H 20 There are no intersections between E1, therefore module 120 can determine H1 and H 20 The order remains unchanged.

[0098] The determination module 120 can traverse all contour point groups in the preliminary sequence that retain the first contour point and the second contour point to obtain the target sequence.

[0099] For example, such as Figure 4B The vehicle coordinate system shown has the initial sequence as (E1, E...). 20 F1, G1, H1, H 20 When ), module 120 determines the target sequence as (E) through execution process 600. 20 E1, F1, G1, H1, H 20 The corresponding target range is E. 20 E1F1G1H1H 20 The aforementioned range can cover all carrier point clouds within the target time period.

[0100] Some embodiments of this specification, by determining the order of each contour point in the contour point group that retains the first contour point and the second contour point in the preliminary sequence, can avoid the range reduction caused by the intersection of the lines connecting multiple contour points that make up the target range, thus ensuring the accuracy of the target range.

[0101] This specification also provides a laser point cloud processing apparatus, which includes at least one processor and at least one memory; the at least one memory is used to store computer instructions; the at least one processor is used to execute at least a portion of the computer instructions to implement the laser point cloud processing method as described in any of the foregoing embodiments of this specification.

[0102] This specification also provides a computer-readable storage medium that stores computer instructions that, when executed by a processor, implement the laser point cloud processing method as described in any of the foregoing embodiments of this specification.

[0103] The basic concepts have been described above. Obviously, for those skilled in the art, the detailed disclosure above is merely illustrative and does not constitute a limitation of this specification. Although not explicitly stated herein, those skilled in the art may make various modifications, improvements, and corrections to this specification. Such modifications, improvements, and corrections are suggested in this specification and therefore remain within the spirit and scope of the exemplary embodiments described herein.

[0104] Furthermore, this specification uses specific terms to describe embodiments thereof. For example, "an embodiment," "one embodiment," and / or "some embodiments" refer to a particular feature, structure, or characteristic associated with at least one embodiment of this specification. Therefore, it should be emphasized and noted that references to "an embodiment," "one embodiment," or "an alternative embodiment" in different locations throughout this specification do not necessarily refer to the same embodiment. Moreover, certain features, structures, or characteristics in one or more embodiments of this specification can be appropriately combined.

[0105] Furthermore, unless expressly stated in the claims, the order of processing elements and sequences, the use of numbers and letters, or other names described in this specification are not intended to limit the order of the processes and methods described herein. Although various examples have been discussed in the foregoing disclosure of some embodiments of the invention that are currently considered useful, it should be understood that such details are for illustrative purposes only, and the appended claims are not limited to the disclosed embodiments; rather, the claims are intended to cover all modifications and equivalent combinations that conform to the spirit and scope of the embodiments described herein. For example, while the system components described above can be implemented using hardware devices, they can also be implemented solely using software solutions, such as installing the described system on existing servers or mobile devices.

[0106] Similarly, it should be noted that, in order to simplify the description disclosed herein and thus aid in the understanding of one or more embodiments of the invention, the foregoing description of embodiments in this specification may sometimes combine multiple features into a single embodiment, drawing, or description thereof. However, this method of disclosure does not imply that the subject matter of this specification requires more features than those mentioned in the claims. In fact, the embodiments contain fewer features than all the features of a single embodiment disclosed above.

[0107] In some embodiments, numbers describing the quantity of components and attributes are used. It should be understood that such numbers used in the description of embodiments are modified in some examples with the terms "approximately," "approximately," or "generally." Unless otherwise stated, "approximately," "approximately," or "generally" indicates that the numbers are allowed to vary by ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, which may be changed depending on the characteristics required by individual embodiments. In some embodiments, numerical parameters should take into account specified significant digits and employ a general method of digit reservation. Although the numerical ranges and parameters used to confirm their breadth of range in some embodiments of this specification are approximate values, in specific embodiments, such values ​​are set as precisely as feasible.

[0108] For each patent, patent application, patent application publication, and other material such as articles, books, specifications, publications, and documents referenced in this specification, the entire contents of which are incorporated herein by reference. This excludes historical application documents that are inconsistent with or conflict with the content of this specification, as well as documents that limit the broadest scope of the claims in this specification (currently or subsequently appended to this specification). It should be noted that in the event of any inconsistency or conflict between the descriptions, definitions, and / or terminology used in the supplementary materials to this specification and the content of this specification, the descriptions, definitions, and / or terminology used in this specification shall prevail.

[0109] Finally, it should be understood that the embodiments described in this specification are merely illustrative of the principles of the embodiments described herein. Other variations may also fall within the scope of this specification. Therefore, alternative configurations of the embodiments described herein are intended to be illustrative rather than limiting, and should be considered consistent with the teachings of this specification. Accordingly, the embodiments described herein are not limited to those explicitly introduced and described herein.

Claims

1. A laser point cloud processing method, characterized in that, include: The carrier attitude information within a target time period is obtained. The carrier attitude information includes first attitude information corresponding to a first moment of the target time period and second attitude information corresponding to a second moment of the target time period. The first attitude information includes first position information of multiple first contour points. The second attitude information includes second position information of multiple second contour points. The multiple second contour points correspond one-to-one with the multiple first contour points. A first contour point and its corresponding second contour point constitute a set of contour points. Based on the first attitude information and the second attitude information, the target range is determined; Based on the target range, remove the carrier point cloud from the target point cloud corresponding to the target time period; The target range is composed of multiple contour points, including a first contour point, a second contour point, and the intersection of a first line and a second line. Determining the target range based on the first attitude information and the second attitude information includes: For each set of contour points Determine the first line connecting the first contour point in the first set of contour points and the first contour point in the next set of contour points; Determine the second line connecting the second contour point in the first set of contour points and the second contour point in the next set of contour points; Determine whether there is an intersection between the first connecting line and the second connecting line; If an intersection exists, the intersection point will be retained.

2. The method as described in claim 1, characterized in that, The first moment is one of the start and end moments in the target time period, and the second moment is the other of the start and end moments.

3. The method as described in claim 1, characterized in that, Determining the target range based on the first attitude information and the second attitude information includes: Obtain the first transformation relationship between the vehicle coordinate system and the reference coordinate system at the first time point and the second transformation relationship between the vehicle coordinate system and the reference coordinate system at the second time point; Based on the first transformation relationship and the second transformation relationship, at least one of the first attitude information and the second attitude information is transformed into a coordinate system so that the two are located in the same vehicle coordinate system. The target range is determined based on the first attitude information and the second attitude information located in the same vehicle coordinate system.

4. The method as described in claim 3, characterized in that, Determining the target range based on the first attitude information and the second attitude information located in the same vehicle coordinate system includes: Based on the first attitude information and the second attitude information located in the same vehicle coordinate system, multiple sets of contour points are initially screened in sequence to determine a preliminary sequence, which includes contour points arranged in order after initial screening. Based on the preliminary sequence, the target sequence is determined; Based on the target sequence, the target range is determined.

5. The method as described in claim 4, characterized in that, The preliminary sequence determination, based on the first and second attitude information located in the same vehicle coordinate system, involves sequentially performing preliminary screening on multiple sets of contour points, including: For each set of contour points Based on the first posture information and the second posture information located in the same vehicle coordinate system, it is determined in turn whether the contour points in the group of contour points are included in the first contour formed by the plurality of first contour points or the second contour formed by the plurality of second contour points. Contour points not included in the first or second contour are retained, while contour points included in the first or second contour are filtered out.

6. The method as described in claim 4, characterized in that, The determination of the target sequence based on the preliminary sequence includes: For each set of contour points If, after filtering, both the first and second contour points in the group of contour points are retained, then based on the preliminary sequence, the third line connecting the first contour point to the previous adjacent sequence point and the fourth line connecting the second contour point to the subsequent adjacent sequence point are determined in the group of contour points. If there is an intersection between the third line and the fourth line, then the order of the first contour point and the second contour point in the group of contour points is swapped. If there is no intersection between the third and fourth connecting lines, the order of the earlier and later contour points in this set of contour points remains unchanged.

7. A laser point cloud processing system, characterized in that, include: The acquisition module is used to acquire carrier posture information within a target time period. The carrier posture information includes first posture information corresponding to a first moment of the target time period and second posture information corresponding to a second moment of the target time period. The first posture information includes first position information of multiple first contour points. The second posture information includes second position information of multiple second contour points. The multiple second contour points correspond one-to-one with the multiple first contour points. A first contour point and its corresponding second contour point constitute a set of contour points. The determination module is used to determine the target range based on the first attitude information and the second attitude information; The filtering module is used to remove carrier point clouds from the target point clouds corresponding to the target time period based on the target range; The target range is composed of multiple contour points, including a first contour point, a second contour point, and the intersection of the first and second lines. The determining module is further used for: For each set of contour points Determine the first line connecting the first contour point in the first set of contour points and the first contour point in the next set of contour points; Determine the second line connecting the second contour point in the first set of contour points and the second contour point in the next set of contour points; Determine whether there is an intersection between the first connecting line and the second connecting line; If an intersection exists, the intersection point will be retained.

8. A laser point cloud processing apparatus, the apparatus comprising at least one processor and at least one memory; the at least one memory being used to store computer instructions; the at least one processor being used to execute at least a portion of the computer instructions to implement the laser point cloud processing method as described in any one of claims 1 to 6.

9. A computer-readable storage medium storing computer instructions that, when executed by a processor, implement the laser point cloud processing method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Multi-line radar point cloud densification method and device

    CN113052846A

  • Application method of vehicle body filtering technology in point cloud data of automatic driving mine truck

    CN113763262A