Ontology point cloud determination and elimination method, medium, electronic equipment and program product

By determining the laser point mapping results and occupied area boundary parameters in the lidar scan data in the empty grid map, and identifying and determining the ontology point cloud from the mobile device, the problem of lidar misidentifying the ontology in obstacle detection is solved, and the recognition accuracy and adaptability are improved.

CN119805487APending Publication Date: 2025-04-11ZHEJIANG ZHIDING ROBOT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411980895.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

When using two-dimensional lidar for obstacle detection, the ontology features of the mobile device are easily misidentified as obstacles, resulting in a decrease in the accuracy of ontology point cloud recognition.

Method used

By determining the mapping results of laser points in the scanning data of the target area on the empty grid map, the boundary parameters of the occupied area in the empty grid map are determined, thereby identifying and determining the ontology point cloud from the mobile device.

Benefits of technology

This method does not need to rely on manual input of the self-mobile device size information, and directly extracts ontology features from the scanning data of the lidar, improving recognition accuracy and adaptability and reducing recognition errors.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119805487A_ABST
    Figure CN119805487A_ABST
Patent Text Reader

Abstract

The invention provides an ontology point cloud determination and elimination method, a medium, electronic equipment and a program product, and relates to the technical field of point cloud processing. The ontology point cloud determination method comprises the following steps: determining an empty grid map corresponding to a first target area; acquiring scanning data of the laser radar on the first target area; mapping laser points in scanning data of the first target area by the laser radar to an empty grid map to obtain a mapping result; based on the mapping result, determining boundary parameters of the occupied area in the empty grid map; and determining the body point cloud of the self-moving equipment based on the boundary parameters of the occupied area. According to the scheme, identification errors caused by inaccurate size information or laser radar installation position changes are avoided, and better adaptability and accuracy are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of point cloud processing, and in particular to a method, medium, electronic device and program product for determining and eliminating entity point clouds. Background Art

[0002] When using two-dimensional laser radar to detect obstacles in self-driving vehicles, the problem of body interference is often encountered. That is, the laser radar detects the body features of the self-driving vehicle and is easily mistaken for an obstacle.

[0003] To solve this problem, a common method is to use the size information of the self-driving device to create a polygonal model representing the self-driving device. By comparing the point cloud data acquired by the lidar with this polygon, it is possible to identify which point clouds belong to the self-driving device and which belong to external obstacles. However, this method has some limitations, resulting in reduced recognition accuracy of the point cloud of the main body. Summary of the invention

[0004] In view of this, embodiments of the present application provide a method, medium, electronic device and program product for determining and eliminating a body point cloud.

[0005] In a first aspect, an embodiment of the present application provides a method for determining a body point cloud, which is applied to a self-moving device deployed with a laser radar, the method comprising: determining an empty grid map corresponding to a first target area; obtaining scanning data of the laser radar on the first target area; mapping laser points in the scanning data of the laser radar on the first target area to the empty grid map to obtain a mapping result; based on the mapping result, determining boundary parameters of the occupied area in the empty grid map; based on the boundary parameters of the occupied area, determining a body point cloud of the self-moving device, the body point cloud representing a point cloud generated when the laser beam hits the body of the self-moving device.

[0006] In combination with the first aspect, in certain implementations of the first aspect, based on the mapping results, boundary parameters of the occupied area in the empty grid map are determined, including: based on the mapping results, determining the occupied grids that meet the target conditions in the empty grid map, the occupied grids representing the obstacle area; determining the circumscribed bounding box corresponding to the occupied grids that meet the target conditions; based on the circumscribed bounding box, determining the boundary parameters of the occupied area; preferably, the target condition includes that the number of laser points falling into the grid is greater than the target number threshold; preferably, the empty grid map is a grid map in the lidar coordinate system.

[0007] In combination with the first aspect, in certain implementations of the first aspect, boundary parameters of the occupied area are determined based on the external bounding box, including: determining the coordinates of the grids passed by the external bounding box in the laser radar coordinate system; and determining the coordinates of the grids passed by the external bounding box in the laser radar coordinate system as the boundary parameters of the occupied area.

[0008] In combination with the first aspect, in certain implementations of the first aspect, the body point cloud of the self-moving device is determined based on the boundary parameters of the occupied area, including: obtaining the laser radar scanning data of the second target area when the relative position relationship between the laser radar and the body of the self-moving device remains unchanged; if the laser point in the laser radar scanning data of the second target area falls within the range of the boundary parameters of the occupied area, then determining that the laser point in the laser radar scanning data of the second target area is the body point cloud of the self-moving device.

[0009] In combination with the first aspect, in certain implementations of the first aspect, determining an empty grid map corresponding to the first target area includes: if the positioning data from the mobile device meets the target accuracy, and / or the first target area meets the conditions for constructing an empty grid map, then constructing an empty grid map corresponding to the first target area.

[0010] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: constructing a real-life grid map corresponding to the first target area; determining the grid coordinates of the current position of the self-moving device in the real-life grid map; if all grids within the target range centered on the grid coordinates are blank grids, determining that the first target area meets the conditions for constructing an empty grid map, and the blank grids represent a drivable area; preferably, the target range is larger than a target multiple of the size of the self-moving device.

[0011] In combination with the first aspect, in certain implementations of the first aspect, the method also includes: obtaining scanning data of the laser radar on the third target area; matching the laser points in the scanning data of the laser radar on the third target area with the global map containing the third target area, and determining multiple target laser points, the target laser points being the laser points that have been successfully matched; based on the multiple target laser points, determining whether the positioning data of the self-mobile device meets the target accuracy.

[0012] In combination with the first aspect, in certain implementations of the first aspect, determining whether the positioning data of the self-mobile device meets the target accuracy based on multiple target laser points includes: determining the normal direction of each of the multiple target laser points; determining the main normal direction based on the normal direction of each of the multiple target laser points; determining the angle difference between the normal direction of each target laser point and the main normal direction; determining whether the positioning data of the self-mobile device meets the target accuracy based on the number of target laser points, the number of target laser points whose angle difference is less than the target angle threshold, and the number of target laser points whose angle difference is greater than the target angle threshold.

[0013] In the second aspect, an embodiment of the present application provides a method for eliminating a body point cloud, which is used for a self-moving device deployed with a laser radar. The method includes: obtaining a body point cloud generated when the laser radar scans a target area, and the body point cloud is determined based on the method described in the first aspect; and eliminating the body point cloud from the point cloud data corresponding to the target area.

[0014] In a third aspect, an embodiment of the present application provides a body point cloud determination device, which is applied to a self-moving device deployed with a laser radar, and the device includes: a first determination module, used to determine an empty grid map corresponding to a first target area; an acquisition module, used to obtain scanning data of the laser radar on the first target area; a mapping module, used to map laser points in the scanning data of the laser radar on the first target area to the empty grid map to obtain a mapping result; a second determination module, used to determine the boundary parameters of the occupied area in the empty grid map based on the mapping result; a third determination module, used to determine the body point cloud of the self-moving device based on the boundary parameters of the occupied area, the body point cloud representing the point cloud generated when the laser beam hits the body of the self-moving device.

[0015] In the fourth aspect, an embodiment of the present application provides a body point cloud removal device for a self-moving device deployed with a laser radar, the device comprising: an acquisition module for acquiring the body point cloud generated when the laser radar scans the target area, the body point cloud is determined based on the method described in the first aspect; a removal module for removing the body point cloud from the point cloud data corresponding to the target area.

[0016] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program for executing the methods described in the first and second aspects.

[0017] In a sixth aspect, an embodiment of the present application provides an electronic device, comprising: a processor; a memory for storing processor executable instructions; the processor is used to execute the methods described in the first aspect and the second aspect.

[0018] In a seventh aspect, an embodiment of the present application provides a computer program product, which includes instructions, which, when executed on an electronic device, enable the electronic device to implement the laser point cloud processing method described in the first aspect and the second aspect.

[0019] In the present application, the laser radar scanning data of the first target area is first obtained, and the data is mapped to the empty grid map so that the obstacles and free spaces detected by the laser radar can be intuitively represented on the empty grid map. Then, based on the mapping results, the boundary parameters of the occupied area in the empty grid map are determined, which accurately defines which parts of the scanning data are occupied areas caused by the body of the self-moving device. This method does not need to rely on manually input self-moving device size information, but directly extracts the body features from the laser radar scanning data, thereby avoiding recognition errors caused by inaccurate size information or changes in the installation position of the laser radar, and therefore has better flexibility and accuracy. In addition, since the body features are learned directly from the environment, this method can also adapt to different models and different installation positions of laser radars. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] By describing the embodiments of the present application in more detail in conjunction with the accompanying drawings, the above and other purposes, features and advantages of the present application will become more apparent. The accompanying drawings are used to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the present application and do not constitute a limitation of the present application. In the accompanying drawings, the same reference numerals generally represent the same components or steps.

[0021] Figure 1 Shown is a schematic diagram of the generation of the entity point cloud.

[0022] Figure 2 The figure is a flow chart of a method for determining an ontology point cloud provided in one embodiment of the present application.

[0023] Figure 3 Shown is a schematic diagram of a standard grid map provided in an embodiment of the present application.

[0024] Figure 4 The figure is a schematic diagram of a process for determining boundary parameters of an occupied area in an empty grid map provided by an embodiment of the present application.

[0025] Figure 5a Shown is a schematic diagram of an occupancy grid that meets the target conditions provided by an embodiment of the present application.

[0026] Figure 5b Shown is a schematic diagram of an external bounding box provided in an embodiment of the present application.

[0027] Figure 6 Shown is a comparison diagram of positioning effects provided in an embodiment of the present application.

[0028] Figure 7 The figure is a schematic diagram of a flow chart for determining whether a first target area meets the conditions for constructing an empty grid map provided by an embodiment of the application.

[0029] Figure 8 The figure is a schematic diagram of a flow chart for determining whether positioning data from a mobile device meets a target accuracy according to an embodiment of the present application.

[0030] Fig. 9 The figure is a flow chart of determining whether positioning data from a mobile device meets target accuracy based on multiple target laser points according to an embodiment of the present application.

[0031] Fig.10 The figure is a flow chart of a method for removing a body point cloud provided in one embodiment of the present application.

[0032] Fig.11 Shown is a schematic structural diagram of a body point cloud determination device provided in one embodiment of the present application.

[0033] Fig.12 Shown is a schematic structural diagram of a body point cloud removal device provided in one embodiment of the present application.

[0034] Fig.13 Shown is a schematic structural diagram of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0035] The following will be combined with the drawings in the embodiments of the present application to clearly and completely 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] While scanning the surrounding environment, the lidar may also detect parts of the autonomous mobile device itself, such as a robotic arm, which can be mistakenly identified as obstacles, resulting in a large amount of noise in the point cloud data. Figure 1 The figure shows the schematic diagram of the generation of the entity point cloud. Figure 1 As shown in the figure, the black solid line box represents the range of the main body of the self-moving device, and the laser radar is installed at the center of the self-moving device. When the laser radar emits a laser beam, in addition to detecting environmental obstacles, it also hits the main body of the self-moving device. Therefore, many unnecessary noise points (i.e., the main body point cloud) will appear in the black solid line box. When actually using the point cloud data collected by the laser radar, these noise points need to be identified and eliminated.

[0037] A common method is to use the size information of the self-moving device to build a polygonal model of the self-moving device. Through this model, it can be determined whether the point cloud data scanned by the lidar falls within this polygon. If the point cloud data falls within the polygon, it is considered as noise and excluded; if it falls outside the polygon, it is considered to be an environmental obstacle.

[0038] However, this method requires accurate measurement of the size of the self-moving device and recording the installation position of the LiDAR in the self-moving device. Once the installation position of the LiDAR changes or the size of the self-moving device is adjusted, the polygonal model needs to be re-determined. This not only increases the workload of manual intervention, but also reduces the adaptability and flexibility of the ontology point cloud determination method.

[0039] To address this problem, this application proposes a new body point cloud determination method that can automatically adapt to different self-moving device models and lidar configurations, reducing the work of manual adaptation and improving the adaptability and automation level of the body point cloud determination method. At the same time, this method can more accurately identify and eliminate the noise generated by the body of the self-moving device, thereby improving the accuracy and reliability of obstacle detection.

[0040] Specifically, Figure 2 FIG. 1 is a flow chart of a method for determining a body point cloud provided by an embodiment of the present application. For example, the method is applied to a self-moving device that deploys a laser radar. Figure 2 As shown, the method includes the following steps.

[0041] Step S210: determining an empty grid map corresponding to the first target area.

[0042] The opposite of an empty grid map is a standard grid map. Figure 3 FIG. 1 is a schematic diagram of a standard grid map provided by an embodiment of the present application. Figure 3 As shown in the figure, in this map, white grids represent drivable areas, also known as blank grids. These areas are places where the laser radar can detect without obstacles. Gray grids represent unknown areas, that is, areas that have not been detected by the laser radar or the information is unclear; black grids represent obstacle areas (such as walls), also known as occupied grids. These areas are where the laser radar directly detects obstacles. Through this color coding, the standard grid map can clearly show which areas in the space have obstacles and which areas are unobstructed. This representation method enables self-moving equipment to judge the surrounding environment based on the color distribution on the standard grid map, so as to effectively plan paths and avoid obstacles.

[0043] In this embodiment, an empty grid map corresponding to the first target area is first determined. The empty grid map refers to an initial, unoccupied spatial grid model created for the first target area during the environmental perception process of the self-mobile device. This spatial grid model divides the first target area into a plurality of small cells, each cell representing a small portion of the space within the area, and in the initial state, all of these cells are assumed to have no obstacles, that is, they are empty, or in other words, the color of these cells is white.

[0044] In some embodiments, the geographic boundary of the first target area is first determined, and then a virtual grid is created within the boundary, with each grid cell representing a small space in the first target area. In an initial state, all of these grid cells are unoccupied, that is, no obstacles exist.

[0045] Step S220, obtaining scanning data of the first target area by the laser radar.

[0046] Specifically, the laser radar measures the distance to surrounding objects by emitting a laser beam and receiving the reflected laser beam. These measurement results, together with the azimuth and pitch angle of the laser radar, generate a series of point cloud data (i.e., scanning data), and each point in the point cloud data corresponds to a specific spatial position detected by the laser radar. In some embodiments, the laser radar scanning data of the first target area can be obtained through a software or hardware interface.

[0047] Step S230, mapping the laser points in the laser radar scanning data of the first target area to the empty grid map to obtain a mapping result.

[0048] Specifically, a laser point refers to the point where the laser pulse emitted by the laser radar during scanning is reflected back after contacting the surface of the surrounding object. Mapping laser points to an empty grid map means converting the laser points in the three-dimensional space collected by the laser radar and corresponding them to a pre-established two-dimensional empty grid map. In this process, each laser point is assigned to the corresponding cell on the empty grid map according to its coordinates in the laser radar coordinate system. Finally, the mapping result is expressed as the status update of each cell on the empty grid map, which fills the original empty grid map with actual environmental information.

[0049] Step S240: determining boundary parameters of the occupied area in the empty grid map based on the mapping result.

[0050] It should be noted that the boundary parameters of the occupied area in the empty grid map refer to the boundary parameters of the occupied area formed by the occupied grid generated by the main body of the mobile device.

[0051] In one embodiment, there is an environmental obstacle in the first target area whose relative position relationship (including distance and direction) with the self-moving device is known, and the distance is greater than a specific multiple of the size of the body of the self-moving device. Then, according to the mapping result, the relative position relationship and the size of the environmental obstacle, in the empty grid map, the occupied area formed by the environmental obstacle is deleted, and only the point cloud generated by the body features of the self-moving device is retained. That is, in some implementations, the possibility that other environmental obstacles may exist in the first target area is not excluded, as long as the distance between the environmental obstacle and the self-moving device is large enough, so that the occupied grid formed by the environmental obstacle in the empty grid map will not interfere with the occupied grid formed by the body of the self-moving device in the empty grid map. Moreover, if the size and shape of the environmental obstacle are known, it is also helpful to exclude from the empty grid map the clusters formed by the occupied grids that are similar in size and shape to the environmental obstacle.

[0052] Then, the occupied grids generated only by the mobile device in the empty grid map are determined, and the minimum x, y coordinate values ​​and the maximum x, y coordinate values ​​of these occupied grids are calculated, which are min x, min y, max x, max y, respectively, to form an outer bounding box. The four vertices of the outer bounding box correspond to min x, min y, max x, max y, respectively. Accordingly, the boundary parameters of the occupied area include the minimum x, y coordinate values ​​and the maximum x, y coordinate values ​​of the occupied grid.

[0053] Step S250, determining a body point cloud of the mobile device based on the boundary parameters of the occupied area.

[0054] Specifically, the body point cloud refers to the point cloud generated when the laser beam hits the body of the mobile device.

[0055] It is understandable that the boundary of the occupied area only includes the body interference interval and is therefore smaller than the body projection. Specifically, due to the detection range and angle limitations of the LiDAR, it can only detect a portion of the body of the self-moving device, that is, those parts that are directly facing the LiDAR transmitter, and does not include other parts of the self-moving device that are not directly detected. Therefore, the boundary parameters of the occupied area actually define an area that is smaller than the actual projection of the self-moving device.

[0056] In this embodiment, first, the scanning data of the lidar for the first target area is obtained and mapped onto an empty grid map, so that the obstacles and free space detected by the lidar can be intuitively represented on the empty grid map. Then, based on the mapping result, the boundary parameters of the occupied area in the empty grid map are determined, which precisely defines which parts of the scanning data are the occupied areas caused by the body of the self-mobile device. This method does not rely on the size information of the self-mobile device input manually, but directly extracts the body features from the scanning data of the lidar, thus avoiding the recognition errors caused by inaccurate size information or changes in the installation position of the lidar. Therefore, it has better flexibility and accuracy. In addition, since the body features are directly learned from the environment, this method can also adapt to different models and different installation positions of the lidar.

[0057] Regarding step S250, in some embodiments, when the relative position relationship between the lidar and the body of the self-mobile device remains unchanged, the scanning data of the lidar for the second target area is obtained; if the laser points in the scanning data of the lidar for the second target area fall within the range of the boundary parameters of the occupied area, it is determined that the laser points in the scanning data of the lidar for the second target area are the body point clouds of the self-mobile device.

[0058] In some embodiments, the empty grid map is a grid map in the lidar coordinate system. In this way, the position of the occupied area in the empty grid map is determined relative to the lidar coordinate system. Therefore, no matter how the self-mobile device moves or rotates, the window of the occupied area will move or rotate together with the lidar, always maintaining the relative position with the lidar unchanged. That is, when the relative position relationship between the lidar and the body of the self-mobile device remains unchanged, the boundary parameters of the occupied area will not change, and they are also data in the lidar coordinate system.

[0059] When the lidar scans the second target area, new scanning data will be obtained. The coordinates of the laser points in these new scanning data are also coordinates in the lidar coordinate system. Therefore, the coordinates of the laser points can be directly compared with the boundary parameters of the occupied area without coordinate conversion. Exemplarily, for any laser point coordinate (x, y), if min x < x < max x and min y < y < max y, then the laser point is a body point cloud.

[0060] This embodiment can quickly screen out the body point clouds by setting simple coordinate range comparison conditions, which not only reduces the possibility of misjudgment and missed judgment, but also improves the environmental perception ability of the self-mobile device, enabling it to perform obstacle detection and path planning more accurately.

[0061] Figure 4FIG. 1 is a flow chart of determining boundary parameters of an occupied area in an empty grid map according to an embodiment of the present application. Figure 2 Based on the embodiment shown, Figure 4 The embodiment shown is described below in detail. Figure 4 The embodiment shown and Figure 2 The differences and similarities of the illustrated embodiments are not described in detail.

[0062] like Figure 4 As shown, in this embodiment, based on the mapping result, determining the boundary parameters of the occupied area in the empty grid map includes the following steps.

[0063] Step S410: Based on the mapping result, an occupied grid that meets the target condition is determined in the empty grid map.

[0064] Optionally, the target condition includes that the number of laser points falling into the grid is greater than a target number threshold. Exemplarily, the target number threshold is 10.

[0065] In some embodiments, according to the mapping results, the number of laser points falling into each grid is counted. Then, a target number threshold is set as a criterion for determining whether the grid is occupied. Specifically, for each grid, a comparison is made to see whether the number of laser points falling into it is greater than the target number threshold. If it is greater, the grid is considered to meet the target condition and is determined to be an occupied grid. For example, Figure 5a Shown is a schematic diagram of an occupancy grid that meets the target conditions provided by an embodiment of the present application.

[0066] By setting a target quantity threshold, this method can filter out occupancy false alarms caused by noise or accidental laser point misjudgment to a certain extent, thereby improving the accuracy and reliability of occupancy grid detection.

[0067] Step S420: determining an external bounding box corresponding to an occupied grid meeting the target condition.

[0068] Exemplarily, the coordinate ranges of these occupied grids in two-dimensional space are determined, including the minimum x coordinate and the maximum x coordinate, as well as the minimum y coordinate and the maximum y coordinate of all these occupied grids. By determining these coordinate values, a rectangular area can be defined, which is the minimum bounding rectangle of these occupied grids, and the minimum bounding rectangle is the bounding box corresponding to the occupied grids. Exemplarily, Figure 5b Shown is a schematic diagram of an external bounding box provided in an embodiment of the present application.

[0069] Step S430: determining boundary parameters of the occupied area based on the circumscribed boundary box.

[0070] In some embodiments, the grid coordinates of the grids that the external boundary box passes through may also be determined as boundary parameters of the occupied area, wherein the grid coordinates are usually represented by a pair of integer values.

[0071] In other embodiments, the coordinates of the grids that the circumscribed bounding box passes through in the laser radar coordinate system are determined; and the coordinates of the grids that the circumscribed bounding box passes through in the laser radar coordinate system are determined as boundary parameters of the occupied area.

[0072] Optionally, based on the coordinates of the origin in the empty grid map in the laser radar coordinate system, the resolution of the empty grid map, and the grid coordinates of the grids passed by the external bounding box, the coordinates of the grids passed by the external bounding box in the laser radar coordinate system are determined. Specifically, this coordinate transformation process involves the formula: x =origin_x+(m x +0.5)×P;w y =origin_y+(m y +0.5)×P. Among them, m x and m y Represents the grid coordinates of the grid through which the outer bounding box passes, w x and w y It represents the coordinates of the grid that the bounding box passes through in the lidar coordinate system. origin_x and origin_y represent the coordinates of the origin in the empty grid map in the lidar coordinate system. P represents the resolution of the empty grid map, that is, the actual distance represented by each grid.

[0073] As mentioned above, the coordinates of the grids that the external bounding box passes through in the laser radar coordinate system are determined as the boundary parameters of the occupied area, ensuring that the boundary parameters of the occupied area are consistent with the data actually detected by the laser radar, which can reduce the cumulative error that may occur due to coordinate conversion errors and improve the data processing speed.

[0074] exist Figure 4 In the scheme shown, based on the mapping results, the occupied grids that meet the target conditions are determined in the empty grid map, which can automatically identify the main features in the environment directly from the laser radar scanning data, avoiding the inaccuracy of the size information of the self-moving device. By counting the number of laser points falling into each grid and comparing it with the preset target number threshold, the real and effective main features and free space can be effectively distinguished, reducing the possibility of misjudgment and missed judgment. By calculating the boundary parameters of the external bounding box of all occupied grids, the area occupied by the main body of the self-moving device in the space can be accurately identified, which helps to determine the interference caused by the self-moving device itself.

[0075] Figure 2In the embodiment, the determination of the grid map corresponding to the first target area is briefly introduced. The following is a detailed analysis of the conditions under which the grid map corresponding to the first target area is determined.

[0076] Specifically, in some embodiments, if the positioning data from the mobile device meets the target accuracy, and / or the first target area meets the conditions for constructing an empty grid map, an empty grid map corresponding to the first target area is constructed.

[0077] It is understandable that when the positioning state is good, the coordinates of the laser points in the laser radar scanning data can be accurately compared with the boundary parameters of the predetermined occupied area to determine the body point cloud. If the positioning data is inaccurate, the coordinates of the laser points will also have errors, and laser points that are not body point clouds may be identified as body point clouds, or laser points in body point clouds may be identified as not body point clouds. Therefore, the effectiveness of the body point cloud determination process can only be ensured when the positioning data of the self-moving device meets the target accuracy requirements.

[0078] For example, Figure 6 The figure shows a comparison diagram of the positioning effect provided by an embodiment of the present application. Figure 6 As shown in a, the wall information is marked in black and the laser points are marked in red. When the positioning data of the self-moving device is correct, the laser points and the wall information should mostly overlap. However, in a, some laser points do not overlap with the wall information. Compared with a, there are more laser points in b that do not overlap with the wall information. However, there are more laser points in c that do not overlap with the wall information than in b. Therefore, the matching degree between the laser points and obstacle information in a is better than that in b, and the matching degree between the laser points and obstacle information in b is better than that in c. That is, the accuracy of the positioning data of the self-moving device in a is greater than that in b, and the accuracy of the positioning data of the self-moving device in b is greater than that in c.

[0079] For example, the first target area meets the condition of constructing an empty grid map, which means that there are no obstacles other than the mobile device in the first target area. Figure 2 The scheme introduced in the illustrated embodiment can reduce the process and complexity of data processing, and more accurately ensure that the occupied area recorded in the empty grid map is entirely caused by the laser radar detecting the body of the self-moving device. Therefore, the boundary parameters of the occupied area can accurately represent the body interference interval, that is, the mistaken obstacle area caused by the laser radar detecting the body of the self-moving device. This accuracy can further improve the accuracy of the subsequent determination of the body point cloud.

[0080] Next, through Figures 7 to 9 ,It is analyzed in detail how to determine that the positioning data from the ,mobile device meets the target accuracy, and how to determine that the first target area meets the ,conditions for constructing an empty grid map.

[0081] Figure 7 FIG. 1 is a flow chart of determining whether the first target area meets the condition of constructing an empty grid map according to an embodiment of the application. Figure 7 As shown, the method includes the following steps.

[0082] Step S710: construct a real-scene grid map corresponding to the first target area.

[0083] In some embodiments, an initial grid map corresponding to the first target area is constructed; a penetration grid between the laser starting point and the laser point is determined in the initial grid map; and attribute information of the penetration grid is determined to obtain a real-scene grid map, wherein the attribute information includes category information and coordinate information of the penetration grid.

[0084] When creating the initial grid map, all cells are initially marked as unoccupied.

[0085] The penetration grid in the initial grid map refers to the grid that the laser beam emitted by the lidar passes through on the path from the laser starting point to the laser point. When using the lidar to scan the environment, the laser beam will be emitted at a certain scanning angle and distance. The path of the laser beam can be viewed as a series of penetration grids on the grid map, and each penetration grid represents a unit on the laser beam path.

[0086] In some embodiments, determining the category information of the penetration grid includes: recording a first number of the penetration grids hit by the laser beam and a second number of the penetration grids not hit by the laser beam; if the first number is not less than the second number, determining the category information of the penetration grid to be an occupied grid, and the occupied grid represents the area where the self-moving device is located; if the first number is less than the second number, determining the category information of the penetration grid to be a blank grid, and the blank grid represents a drivable area; if the first number and the second number are both zero, determining the category information of the penetration grid to be an unknown grid, and the unknown grid represents an unknown area.

[0087] Assume that the penetration grids on the laser beam path include grid e, grid f, grid g, grid h, and grid w, and record the number of hits and misses of the laser beam for each penetration grid: the first number corresponding to grid e is 7, and the second number is 0; the first number corresponding to grid f is 2, and the second number is 5; the first number corresponding to grid g is 6, and the second number is 0. The first number corresponding to grid h is 1, and the second number is 4. The first number corresponding to grid w is 0, and the second number is 0. Therefore, grid e is an occupied grid, grid f is a blank grid, grid g is an occupied grid, grid h is a blank grid, and grid w is an unknown grid.

[0088] This determination method not only takes into account the situation where the laser beam actually hits the penetration grid, but also takes into account the situation where the laser beam does not hit the penetration grid. By comparing the first number and the second number to determine the state of the penetration grid, it helps to more accurately identify obstacles and open spaces.

[0089] In other embodiments, determining the coordinate information of the penetration grid includes: determining the slope K of the straight line from the laser starting point to the laser point and the resolution P of the initial grid map; if the absolute value of the slope K is greater than 1, determining that the ordinate of the penetration grid between the laser starting point and the laser point is an arithmetic sequence with an interval of P, and the abscissa is an arithmetic sequence with an interval of K*P; if the absolute value of the slope K is less than 1, determining that the abscissa of the penetration grid between the laser starting point and the laser point is an arithmetic sequence with an interval of P, and the ordinate is an arithmetic sequence with an interval of P / K; based on the current posture of the laser radar and the arithmetic relationship between the abscissa and the ordinate of the penetration grid, determine the coordinate information of each penetration grid.

[0090] It can be understood that when the absolute value of the slope K is greater than 1, it means that the longitudinal change of the laser beam is greater than the lateral change, and at this time, the longitudinal direction is used as the traversal dimension. On the contrary, if the absolute value of the slope K is less than 1, it means that the lateral change of the laser beam is greater than the longitudinal change, and at this time, the traversal dimension is used.

[0091] In one example, assume that the current position of the laser radar is the coordinate origin (0, 0), the resolution of the initial grid map is P, and an obstacle is detected at point (4, 3). First, calculate the slope K = 0.75 of the straight line from the laser starting point to the laser point. Because the absolute value of the slope K is less than 1, the lateral change of the laser beam is greater than the longitudinal change, and the lateral direction is selected as the traversal dimension. According to the slope K, the horizontal coordinates of the penetrating grid form an arithmetic sequence with an interval of P, that is, x = 0, P, 2P, 3P, 4P. The vertical coordinate forms an arithmetic sequence with an interval of K*P according to the slope K and the resolution P, that is, y = 0, 0.75P, 1.5P, 2.25P, 3P. Therefore, the coordinates of the penetrating grid on the laser beam path are (0, 0), (P, 0.75P), (2P, 1.5P),

[0092] (3P, 2.25P), (4P, 3P).

[0093] In another example, assume that the laser radar is located at the coordinate origin (0, 0) and detects an obstacle at point (2, 4). First, calculate the slope K = 2 of the straight line from the laser starting point to the laser point. Because the absolute value of the slope K is greater than 1, the longitudinal change of the laser beam is greater than the lateral change, and the longitudinal direction is selected as the traversal dimension. According to the slope K, the ordinate of the penetrating grid forms an arithmetic sequence with an interval of P, that is, y = 0, P, 2P, 3P, 4P. The abscissa forms an arithmetic sequence with an interval of P / K according to the slope K and the resolution P, that is, x = 0, 0.5P, P, 1.5P, 2P. Therefore, the coordinates of the penetrating grid on the laser beam path are (0, 0), (0.5P, P), (P, 2P), (1.5P, 3P) (2P, 4P).

[0094] This method of calculating the coordinate information of the penetration grid can adapt to the inclination of the laser beam path, whether it is steep or gentle, and can accurately determine the penetration grid passed by the laser beam.

[0095] Step S720: determining the grid coordinates of the current position of the mobile device in the real-scene grid map.

[0096] Exemplarily, the real-time environment data collected by the laser radar is matched with features on the real-life grid map to determine the grid coordinates of the current position of the self-mobile device in the real-life grid map.

[0097] Step S730: If all grids within the target range centered on the grid coordinates are blank grids, it is determined that the first target area meets the condition for constructing an empty grid map.

[0098] Optionally, the target range is larger than the target multiple of the size of the self-moving device, ensuring that the space that may be occupied by all types of self-moving devices can be covered. If all grids within the target range are blank grids, then it can be considered that the first target area has no other obstacles and therefore meets the conditions for building an empty grid map.

[0099] This scheme provides a method for the self-moving device to determine whether the first target area is suitable for empty grid map construction through a simple checking mechanism, which helps to improve the autonomy and reliability of the self-moving device in an unknown environment.

[0100] Figure 8 FIG. 1 is a flow chart of determining whether the positioning data of a mobile device meets the target accuracy according to an embodiment of the present application. Figure 8 As shown, the method includes the following steps.

[0101] Step S810, obtaining scanning data of the third target area by the laser radar.

[0102] Exemplarily, in the third target area, the lidar emits laser beams and measures the time it takes for these laser beams to be reflected after encountering surrounding obstacles, thereby calculating the distance between the mobile device and the obstacles. These measurement results form a set of point cloud data, namely, the lidar scanning data of the third target area, which represents the outline and layout of the mobile device in the third target area.

[0103] Step S820: Match the laser points in the laser radar scanning data of the third target area with the global map including the third target area to determine multiple target laser points.

[0104] The global map including the third target area refers to a comprehensive, static map created for the third target area, which contains all important spatial information and features in the area. For example, if the third target area is the elevator area, the global map will record in detail the exact location of the elevator shaft; the path that the target robot can safely travel, such as corridors, halls and other public areas; obstacles, such as the location of fixed structures such as walls and columns; navigation markers, etc. The global map is pre-built before the self-moving device is used and stored in the navigation system of the self-moving device, providing a reference framework for the self-moving device to help the self-moving device to locate and plan paths when performing tasks.

[0105] In this embodiment, the target laser point is a laser point that is successfully matched. Specifically, whether the laser point is a target laser point can be determined by calculating the distance between the laser point and the occupied grid in the global map. Exemplarily, if the distance is less than a preset distance threshold, the laser point is determined to be a target laser point. In addition, it should be noted that the occupied grid used to calculate the distance to the laser point is a grid that has a high probability of being an obstacle point corresponding to the laser point after feature matching.

[0106] In addition, it can be understood that the number of target laser points indicates what proportion of laser points in the laser radar scanning data of the third target area are correctly identified and matched with the occupied grids on the first grid map. The larger the number, the more successful the matching process is, and the more accurate the positioning data of the self-mobile device is.

[0107] Step S830, based on the multiple target laser points, determine whether the positioning data of the mobile device meets the target accuracy.

[0108] Optionally, based on the number of target laser points, it is determined whether the positioning data of the self-mobile device meets the target accuracy. For example, if the target laser points are greater than a preset number threshold, it is determined that the positioning data of the self-mobile device meets the target accuracy; if the target laser points are less than or equal to the preset number threshold, it is determined that the positioning data of the self-mobile device does not meet the target accuracy.

[0109] In this embodiment, the scanning data provided by the laser radar contains the distance and angle information of obstacles in the third target area. When these data are matched with the features in the global map, the more successfully matched target laser points are, the higher the consistency between the laser radar scanning data and the global map is. Therefore, the positioning data of the self-mobile device is statistically reliable and meets the target accuracy requirements. On the contrary, if the number of successfully matched target laser points is insufficient, it indicates that there is a deviation or error in the positioning data, which needs further adjustment or optimization.

[0110] Fig. 9 FIG. 1 is a flow chart of determining whether the positioning data of a mobile device meets the target accuracy based on multiple target laser points provided by an embodiment of the present application. Fig. 9 As shown, the method comprises the following steps.

[0111] Step S910, determining the normal directions of the multiple target laser points.

[0112] Optionally, a target slope of each target laser point is determined; a target relationship table is obtained; and the target relationship table is queried based on the target slope of each target laser point to determine the normal direction of the target laser point.

[0113] In some embodiments, for each target laser point, the coordinates of the laser point and its adjacent laser point (including the previous adjacent target laser point or the next adjacent target laser point) are determined. Then, the slope of the straight line between the two laser points is calculated using the coordinates of the two laser points, and the slope is determined as the target slope of the target laser point. For example, the target laser points include 1 to 5. If the target slope is calculated by the next adjacent target laser point of the target laser point in advance, then the target slope of the target laser point 1 can be calculated based on the coordinates of the target laser point 1 and the second target laser point 2.

[0114] In other embodiments, for each target laser point, the coordinate data of a previous target laser point and a next target laser point adjacent to the target laser point are determined; based on the coordinate data of the previous target laser point and the next target laser point adjacent to the target laser point, an initial slope of the target laser point is generated; and the initial slope of the target laser point is filtered to obtain a target slope of the target laser point.

[0115] Specifically, first identify the front and rear positional relationship of the target laser point in the laser point cloud sequence, and then obtain their specific coordinate data. Then, for each target laser point, calculate the coordinate difference between the previous target laser point and the second target laser point in the x-axis and y-axis directions, that is, calculate Δx and Δy, further calculate Δy / Δx, and determine Δy / Δx as the initial slope of the target laser point.

[0116] Further, the initial slope of the target laser point is mean filtered to obtain the target slope of the target laser point. Specifically, for each target laser point, the initial slopes of the previous target laser point and the next target laser point are determined. Then, the average of the initial slopes of the previous target laser point and the next target laser point is calculated, and the average is determined as the target slope of the target laser point.

[0117] In this embodiment, the calculation of the initial slope of the target laser point does not rely solely on the change in one direction, which can capture the local change trend on both sides of the target laser point, offset the local deviation to a certain extent, and reduce the impact of single-point anomalies on the initial slope calculation. Then, through filtering, the fluctuation of the initial slope is smoothed, further reducing the error caused by noise or outliers, and improving the stability and reliability of the target slope data.

[0118] In some embodiments, the target relationship table contains tangent values ​​from -89.9° to 89.9° and their corresponding normal directions. This table is formed by calculating the tangent value of each angle and storing it in the target relationship table, thereby creating a fast mapping of target slope to normal direction.

[0119] When the normal direction of the target laser point needs to be determined, the target slope of the point is first obtained. Then, using this target slope as the input value, the fast_arctan function is called, which uses a binary search algorithm to quickly locate the tangent value closest to the input target slope in the pre-built target relationship table. Once the closest tangent value is found, the corresponding normal direction is retrieved from the target relationship table as output.

[0120] The calculation speed of the method for determining the normal direction in this embodiment is very fast because the table lookup operation is much faster than directly calculating the inverse tangent function.

[0121] Step S920, determining the main normal direction based on the normal directions of the multiple target laser points.

[0122] The main normal direction is a dominant direction determined by analyzing the normal directions of multiple target laser points, and represents the main orientation of the surface of a specific area. For example, the median of the main normal directions of all target laser points is calculated, and the median is used as the main normal direction.

[0123] Step S930, determining the angle difference between the normal direction of each target laser point and the main direction of the normal.

[0124] In some embodiments, the angular difference is an acute angle.

[0125] Optionally, the function float shortestAngleDiff(float angle1, float angle2) is used to calculate the acute angle difference between the normal direction of each target laser point and the main direction of the normal.

[0126] Specifically, first, the function receives two floating point parameters angle1 and angle2 (corresponding to the normal direction of the target laser point and the main normal direction), and then calculates the direct difference diff1 between the two angles. Next, calculate the difference diff2 between angle1 plus 180° and angle2, and the difference diff3 between angle2 plus 180° and angle1, in order to find the minimum angle difference between the two angles. Finally, the function returns the minimum value of the three differences (diff1, diff2, diff3), which represents the minimum angle difference between the normal direction of the target laser point and the main normal direction.

[0127] Step S940, determining whether the positioning data from the mobile device meets the target accuracy based on the number of target laser points, the number of target laser points whose angle difference is less than the target angle threshold, and the number of target laser points whose angle difference is greater than the target angle threshold.

[0128] Optionally, the ratio of the number of target laser points to all laser points in the laser radar scanning data of the third target area is calculated; based on the ratio, the number of target laser points whose angle difference is less than the target angle threshold, and the number of target laser points whose angle difference is greater than the target angle threshold, a matching score is calculated; if the matching score is greater than a preset score threshold, it is determined that the positioning data of the self-mobile device meets the target accuracy.

[0129] Exemplarily, the target angle threshold is 45°.

[0130] For example, the calculation formula of the matching score is: n×Q×(main_num / 100)×

[0131] (minor_num / 100). Wherein, Q represents the ratio of the number of target laser points to all laser points in the laser radar scanning data of the third target area, main_num represents the number of target laser points whose angle difference is greater than the target angle threshold, minor_num represents the number of target laser points whose angle difference is less than the target angle threshold, and n is a preset multiple value. For example, the value of n is 2.

[0132] Specifically, main_num and minor_num are converted into percentages by dividing by 100, so that they are numerically consistent with the ratio Q, which is convenient for comprehensive calculation. At the same time, it can be ensured that the two quantities main_num and minor_num will not have too large a weight difference due to the size of their values. In addition, the preset multiple n is used to adjust the sensitivity of the matching score so that the matching score is more in line with the requirements for positioning accuracy in practical applications. For example, if the value of n is large, then even if the values ​​of main_num / 100 and minor_num / 100 are small, the final matching score may exceed the preset score threshold, making it easier for the positioning data to be judged as meeting the target accuracy. On the contrary, if the value of n is small, more successfully matched target laser points are required to reach the preset score threshold, thereby improving the standard for the positioning data to meet the target accuracy.

[0133] In this embodiment, by calculating the angle difference between the normal direction of each target laser point and the main direction of the normal, the degree of deviation of each target laser point relative to the main direction of the normal can be quantified. Among them, the number of target laser points whose angle difference is less than the target angle threshold reflects the degree of alignment of the self-moving device relative to the main structure of the environment. Target laser points whose angle difference is greater than the target angle threshold represent laser points that are inconsistent with the direction of the main structure. Through these two statistics, combined with the total number of target laser points, a comprehensive matching score can be obtained. The matching score provides a positioning accuracy verification method and enhances the credibility of the positioning data.

[0134] Fig.10 FIG. 1 is a flow chart of a method for removing a point cloud from a subject provided by an embodiment of the present application. Fig.10 As shown, the method includes the following steps.

[0135] Step S1010, obtaining the body point cloud generated when the laser radar scans the target area.

[0136] The ontology point cloud is obtained based on the ontology point cloud determination method in the aforementioned embodiment.

[0137] Step S1020: remove the entity point cloud from the point cloud data corresponding to the target area.

[0138] The purpose of step S1020 is to purify the point cloud data corresponding to the target area to ensure that the mobile device does not misjudge its own structure as an external obstacle when performing environmental perception and navigation.

[0139] In this embodiment, after removing the main body point cloud, the remaining point cloud data will only contain the real obstacle information in the target area, which helps to improve the recognition accuracy of the surrounding environment by the mobile device, thereby making more accurate decisions in subsequent path planning and obstacle avoidance operations.

[0140] Combination of the above Figures 1 to 10 , describes the method embodiment of the present application in detail, and the following is combined with Fig.11 and Fig.12 , describes the device embodiment of the present application in detail. It should be understood that the description of the method embodiment corresponds to the description of the device embodiment, so the parts not described in detail can refer to the previous method embodiment.

[0141] Fig.11 FIG. 1 is a schematic diagram of the structure of a body point cloud determination device provided by an embodiment of the present application. Fig.11 As shown, the entity point cloud determination device 110 provided in the embodiment of the present application includes:

[0142] A first determining module 1110 is used to determine an empty grid map corresponding to a first target area;

[0143] An acquisition module 1120 is used to acquire scanning data of the first target area by the laser radar;

[0144] A mapping module 1130 is used to map laser points in the laser radar scanning data of the first target area to an empty grid map to obtain a mapping result;

[0145] A second determination module 1140 is used to determine the boundary parameters of the occupied area in the empty grid map based on the mapping result;

[0146] The third determination module 1150 is used to determine the body point cloud of the self-moving device based on the boundary parameters of the occupied area, where the body point cloud represents the point cloud generated when the laser beam hits the body of the self-moving device.

[0147] In one embodiment of the present application, the second determination module 1140 is also used to determine, based on the mapping results, an occupied grid that meets the target condition in the empty grid map, the occupied grid representing the obstacle area; determine an external bounding box corresponding to the occupied grid that meets the target condition; based on the external bounding box, determine the boundary parameters of the occupied area; preferably, the target condition includes that the number of laser points falling into the grid is greater than the target number threshold; preferably, the empty grid map is a grid map in the lidar coordinate system.

[0148] In one embodiment of the present application, the second determination module 1140 is also used to determine the coordinates of the grid through which the external bounding box passes in the laser radar coordinate system; and determine the coordinates of the grid through which the external bounding box passes in the laser radar coordinate system as the boundary parameters of the occupied area.

[0149] In one embodiment of the present application, the third determination module 1150 is also used to obtain the laser radar scanning data of the second target area when the relative position relationship between the laser radar and the main body of the self-moving device remains unchanged; if the laser point in the laser radar scanning data of the second target area falls within the range of the boundary parameters of the occupied area, then the laser point in the laser radar scanning data of the second target area is determined to be the point cloud of the main body of the self-moving device.

[0150] In one embodiment of the present application, the first determination module 1110 is also used to construct an empty grid map corresponding to the first target area if the positioning data from the mobile device meets the target accuracy and / or the first target area meets the conditions for constructing an empty grid map.

[0151] In one embodiment of the present application, the first determination module 1110 is also used to construct a real-life grid map corresponding to the first target area; determine the grid coordinates of the current position of the self-mobile device in the real-life grid map; if the grids within the target range centered on the grid coordinates are all blank grids, it is determined that the first target area meets the conditions for constructing an empty grid map, and the blank grids represent a drivable area; preferably, the target range is larger than the target multiple of the size of the self-mobile device.

[0152] In one embodiment of the present application, the first determination module 1110 is also used to obtain the laser radar scanning data of the third target area; match the laser points in the laser radar scanning data of the third target area with the global map containing the third target area, and determine multiple target laser points, where the target laser points are successfully matched laser points; based on the multiple target laser points, determine whether the positioning data of the self-mobile device meets the target accuracy.

[0153] In one embodiment of the present application, the first determination module 1110 is also used to determine the normal direction of each of the multiple target laser points; determine the main normal direction based on the normal directions of the multiple target laser points; determine the angle difference between the normal direction of each target laser point and the main normal direction; based on the number of target laser points, the number of target laser points whose angle difference is less than the target angle threshold, and the number of target laser points whose angle difference is greater than the target angle threshold, determine whether the positioning data of the self-mobile device meets the target accuracy.

[0154] Fig.12 Shown is a schematic structural diagram of a body point cloud removal device provided in one embodiment of the present application.

[0155] like Fig.12 As shown, the main body point cloud removal device 120 provided in the embodiment of the present application includes:

[0156] An acquisition module 1210 is used to acquire a body point cloud generated when the laser radar scans the target area;

[0157] The elimination module 1220 is used to eliminate the main body point cloud from the point cloud data corresponding to the target area.

[0158] Below, reference Fig.13 To describe an electronic device according to an embodiment of the present application. Fig.13 Shown is a schematic structural diagram of an electronic device provided by an exemplary embodiment of the present application.

[0159] like Fig.13 As shown, the electronic device 130 includes one or more processors 1301 and a memory 1302 .

[0160] The processor 1301 may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 130 to perform desired functions.

[0161] The memory 1302 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, a random access memory (RAM) and / or a cache memory (cache), etc. The non-volatile memory may include, for example, a read-only memory (ROM), a hard disk, a flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 1301 may run the program instructions to implement the methods of the various embodiments of the present application described above and / or other desired functions. Various contents such as empty grid maps, mapping results, boundary parameters of occupied areas, and ontology point clouds may also be stored in the computer-readable storage medium.

[0162] In one example, the electronic device 130 may further include: an input device 1303 and an output device 1304 , and these components are interconnected via a bus system and / or other forms of connection mechanisms (not shown).

[0163] The input device 1303 may include, for example, a keyboard, a mouse, etc.

[0164] The output device 1304 can output various information to the outside, including empty grid maps, mapping results, boundary parameters of occupied areas, body point clouds, etc. The output device 1304 can include, for example, a display, a speaker, a printer, a communication network and its connected remote output devices, etc.

[0165] Of course, to simplify, Fig.13Only some of the components related to the present application in the electronic device 130 are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, according to specific application situations, the electronic device 130 may also include any other appropriate components.

[0166] In addition to the above-mentioned methods and devices, an embodiment of the present application may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the method according to various embodiments of the present application described above in this specification.

[0167] The computer program product may be written in any combination of one or more programming languages ​​to write program codes for performing the operations of the embodiments of the present application, including object-oriented programming languages, such as Java, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0168] In addition, an embodiment of the present application may also be a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, enables the processor to execute the steps of the method according to various embodiments of the present application described above in this specification.

[0169] The computer readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0170] The basic principles of the present application are described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, effects, etc. mentioned in the present application are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. are required by each embodiment of the present application. In addition, the specific details disclosed above are only for the purpose of illustration and ease of understanding, not for limitation, and the above details do not limit the present application to being implemented by adopting the above specific details.

[0171] The block diagrams of the devices, apparatuses, equipment, and systems involved in this application are only illustrative examples and are not intended to require or imply that they must be connected, arranged, and configured in the manner shown in the block diagram. As will be appreciated by those skilled in the art, these devices, apparatuses, equipment, and systems can be connected, arranged, and configured in any manner. Words such as "including", "comprising", "having", etc. are open words, referring to "including but not limited to", and can be used interchangeably with them. The words "or" and "and" used here refer to the words "and / or" and can be used interchangeably with them, unless the context clearly indicates otherwise. The words "such as" used here refer to the phrase "such as but not limited to", and can be used interchangeably with them.

[0172] It should also be noted that in the apparatus, device and method of the present application, each component or each step can be decomposed and / or recombined. Such decomposition and / or recombination should be regarded as equivalent solutions of the present application.

[0173] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of the present application. Therefore, the present application is not intended to be limited to the aspects shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.

[0174] The above description has been given for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present application to the forms disclosed herein. Although multiple example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, changes, additions and sub-combinations thereof.

Claims

1. A method for determining an ontology point cloud, characterized in that: Applied to a self-propelled device equipped with a laser radar, the method comprises: Determine an empty grid map corresponding to the first target area; Acquire scanning data of the first target area by the laser radar; Mapping laser points in the scanning data of the laser radar on the first target area to the empty grid map to obtain a mapping result; Based on the mapping result, determining boundary parameters of the occupied area in the empty grid map; Based on the boundary parameters of the occupied area, a body point cloud of the self-moving device is determined, where the body point cloud represents a point cloud generated when the laser beam hits the body of the self-moving device.

2. The ontology point cloud determination method according to claim 1, characterized in that: The step of determining the boundary parameters of the occupied area in the empty grid map based on the mapping result includes: Based on the mapping result, determining an occupied grid that meets the target condition in the empty grid map, the occupied grid representing an obstacle area; Determine the circumscribed bounding box corresponding to the occupied grid that meets the target condition; Determining boundary parameters of the occupied area based on the circumscribed bounding box; Preferably, the target condition includes that the number of laser points falling into the grid is greater than a target number threshold; Preferably, the empty grid map is a grid map in a laser radar coordinate system.

3. The ontology point cloud determination method according to claim 2, characterized in that: The determining the boundary parameters of the occupied area based on the circumscribed bounding box includes: Determine the coordinates of the grids passed by the circumscribed bounding box in the laser radar coordinate system; The coordinates of the grids passed by the circumscribed bounding box in the laser radar coordinate system are determined as the boundary parameters of the occupied area.

4. The ontology point cloud determination method according to any one of claims 1 to 3, characterized in that: The determining of the body point cloud of the mobile device based on the boundary parameters of the occupied area includes: Under the condition that the relative position relationship between the laser radar and the main body of the self-moving device remains unchanged, obtaining scanning data of the second target area by the laser radar; If the laser point in the laser radar scanning data of the second target area falls within the range of the boundary parameter of the occupied area, the laser point in the laser radar scanning data of the second target area is determined to be the body point cloud of the self-moving device.

5. The ontology point cloud determination method according to any one of claims 1 to 3, characterized in that: The step of determining an empty grid map corresponding to the first target area includes: If the positioning data of the self-mobile device meets the target accuracy, and / or the first target area meets the conditions for constructing the empty grid map, an empty grid map corresponding to the first target area is constructed.

6. The ontology point cloud determination method according to claim 5, characterized in that: Also includes: Constructing a real-scene grid map corresponding to the first target area; Determine the grid coordinates of the current position of the mobile device in the real-view grid map; If all grids within the target range centered on the grid coordinates are blank grids, it is determined that the first target area meets the conditions for constructing the empty grid map, and the blank grids represent a drivable area; Preferably, the target range is greater than a target multiple of the size of the self-moving device.

7. The ontology point cloud determination method according to claim 5, characterized in that: Also includes: Acquire scanning data of the laser radar on a third target area; Matching laser points in the scanning data of the third target area by the laser radar with a global map including the third target area to determine a plurality of target laser points, wherein the target laser points are laser points that have been successfully matched; Based on the multiple target laser points, it is determined whether the positioning data of the self-moving device meets the target accuracy.

8. The ontology point cloud determination method according to claim 7, characterized in that: The determining, based on the multiple target laser points, whether the positioning data of the self-moving device meets the target accuracy includes: Determining the normal direction of each of the plurality of target laser points; Determining a normal main direction based on the normal directions of each of the plurality of target laser points; Determine the angle difference between the normal direction of each target laser point and the main direction of the normal; Based on the number of target laser points, the number of target laser points whose angle difference is less than the target angle threshold, and the number of target laser points whose angle difference is greater than the target angle threshold, it is determined whether the positioning data of the self-mobile device meets the target accuracy.

9. A method for removing point cloud from a body, characterized in that: Applied to a self-propelled device equipped with a laser radar, the method comprises: Acquire a body point cloud generated when the laser radar scans the target area, wherein the body point cloud is determined based on the method described in any one of claims 1 to 8; The main body point cloud is removed from the point cloud data corresponding to the target area.

10. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and the computer program is used to execute the method according to any one of claims 1 to 9.

11. An electronic device, characterized in that: include: processor; a memory for storing instructions executable by the processor; The processor is used to execute the method according to any one of claims 1 to 9.

12. A computer program product, characterized in that The computer program product comprises instructions, which, when executed on an electronic device, cause the electronic device to implement the method according to any one of claims 1 to 9.