A method and device for constructing a map

By combining 2D radar with UAV visual mapping and pose information, obstacle height is estimated, and a 3D radar point cloud map is constructed, solving the cost and stability problems of UAV obstacle detection and achieving low-cost and effective obstacle avoidance.

CN116499447BActive Publication Date: 2025-10-28BEIJING SANKUAI ONLINE TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210055515.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-18
Publication Date
2025-10-28
Estimated Expiration
2042-01-18

AI Technical Summary

Technical Problem

Among existing obstacle detection methods for drones, lidar is expensive, ultrasonic sensors are susceptible to interference, and millimeter-wave radar is affected by weather, resulting in high costs and insufficient stability. There is a lack of low-cost and stable obstacle detection methods.

Method used

Two-dimensional point cloud data is collected using two-dimensional radar. Combined with visual mapping and pose information from UAVs, a three-dimensional point cloud map is constructed by estimating the height of target points, thus overcoming the limitation of two-dimensional radar in determining the height of obstacles.

Benefits of technology

While reducing costs, it improved the reliability of radar 3D point cloud maps, enabling effective obstacle avoidance for UAVs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116499447B_ABST
    Figure CN116499447B_ABST
Patent Text Reader

Abstract

This specification discloses a method and apparatus for map construction. It acquires two-dimensional point cloud data of target points collected by a two-dimensional radar. Based on this data, it determines the positional relationship between each target point and the drone. Then, based on the positional relationship, the drone's visual mapping, the drone's pose, and the two-dimensional radar's beamwidth, it determines the altitude information of each target point. Finally, it constructs a three-dimensional radar point cloud map based on the two-dimensional point cloud data and the altitude information of each target point to control the drone's flight. Therefore, this method, after acquiring target point data using a low-cost two-dimensional radar, can determine the altitude information of each target point through the drone's visual mapping and the positional relationship between the target points and the drone. This overcomes the limitation of two-dimensional radar in determining the altitude information of target points, saving costs while constructing a three-dimensional radar point cloud map.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of map construction technology, and in particular to a method and apparatus for map construction. Background Art

[0002] Currently, with the development of technology, drones are widely used in fields such as power, meteorology, and agriculture. However, in order to ensure the safety of drones during their flight, it is necessary to detect obstacles around the drones in real time and prevent the drones from coming into contact with obstacles.

[0003] In existing technologies, image sensors are greatly affected by environmental factors such as ambient light, while lidar has advantages such as high accuracy. Therefore, lidar is generally chosen to be equipped on drones for obstacle detection.

[0004] However, the high cost of lidar has hindered the promotion and development of drones, while the ultrasonic waves emitted by lower-cost ultrasonic sensors are prone to attenuation and interference, and millimeter-wave radar is severely affected by weather. Therefore, there is an urgent need for a low-cost and stable obstacle detection method that can detect obstacles around drones, generate 3D maps, and enable drone obstacle avoidance. Summary of the Invention

[0005] This specification provides a method and apparatus for map construction, which partially solves the aforementioned problems existing in the prior art.

[0006] The following technical solution is adopted in this specification:

[0007] This manual provides a method for map construction, including:

[0008] Acquire two-dimensional point cloud data of each target point collected by the two-dimensional radar on the UAV;

[0009] Based on the two-dimensional point cloud data of each target point, the positional relationship between each target point and the UAV is determined, and based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the height information of each target point is determined.

[0010] Based on the two-dimensional point cloud data of each target point and the height information of each target point, a three-dimensional radar point cloud map is constructed to control the flight of the UAV.

[0011] Optionally, the height information of each target point is determined based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar. Specifically, this includes:

[0012] Determine the three-dimensional position information of each feature point in the visual mapping of the UAV;

[0013] For each target point, based on the three-dimensional position information of each feature point, the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, it is determined whether there is a feature point that matches the target point.

[0014] If so, the height information of the target point is determined based on the three-dimensional position information of the feature points that match the target point;

[0015] If not, the estimated altitude range of the target point is determined based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar. The altitude information of the target point is then determined based on the average value of the upper and lower boundaries of the estimated altitude range.

[0016] Optionally, based on the three-dimensional position information of each feature point, the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, it is determined whether there is a feature point matching the target point, specifically including:

[0017] Based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the estimated altitude range of the target point is determined.

[0018] Based on the three-dimensional position information of each feature point, determine whether there are feature points whose height values ​​fall within the estimated height range and whose horizontal position difference from the horizontal position of the target point is less than a preset position threshold.

[0019] Optionally, the height information of the target point is determined based on the three-dimensional position information of the feature points matching the target point, specifically including:

[0020] When there are multiple feature points that match the target point, the height value of the feature point with the smallest distance from the target point is determined from the matched feature points, and the determined height value is used as the height information of the target point.

[0021] When there is only one feature point that matches the target point, the height value of the matched feature point is used as the height information of the target point.

[0022] Optionally, a radar 3D point cloud map is constructed based on the 2D point cloud data and height information of each target point, specifically including:

[0023] For each target point, the horizontal distance between the target point and the drone is determined based on the positional relationship between the target point and the drone;

[0024] The horizontal expansion range is determined based on the difference between the horizontal threshold in the preset expansion function and the horizontal distance.

[0025] The vertical expansion range is determined based on the difference between the vertical threshold in the preset expansion function and the horizontal distance.

[0026] The expansion range corresponding to the target point is determined based on the horizontal expansion range and the vertical expansion range.

[0027] Based on the two-dimensional point cloud data, height information, and corresponding expansion range of the target point, the point matrix representing the target point is determined;

[0028] A three-dimensional point cloud map of radar is constructed based on the point array that represents each target point.

[0029] Optionally, based on the two-dimensional point cloud data, height information, and corresponding expansion range of the target point, a point matrix representing the target point is determined, specifically including:

[0030] Based on the two-dimensional point cloud data of the target point and the height information of the target point, determine the expansion center of the target point;

[0031] Based on the positional relationship between the target point and the UAV, and the expansion center of the target point, determine the azimuth angle and pitch angle of the target point relative to the UAV.

[0032] The point matrix representing the target point is determined based on the expansion range corresponding to the target point, the azimuth angle, and the elevation angle.

[0033] Optionally, a radar 3D point cloud map is constructed based on the 2D point cloud data and height information of each target point, specifically including:

[0034] Based on the stored two-dimensional point cloud data and height information of each target point collected at each historical moment, and the two-dimensional point cloud data and height information of each target point collected at the current moment, a radar three-dimensional point cloud map is constructed.

[0035] Stores the two-dimensional point cloud data and height information of each target point collected at the current moment.

[0036] Optionally, before constructing the radar 3D point cloud map, the method further includes:

[0037] For each stored target point, determine the horizontal distance between the stored target point and each target point collected at the current time;

[0038] If any of the horizontal distances is less than a preset distance threshold, the stored target point is deleted.

[0039] Optionally, before constructing the radar 3D point cloud map, the method further includes:

[0040] For each stored target point, determine the time difference between the time of acquisition of the stored target point and the current time, determine the difference between the altitude of the UAV when the stored target point was acquired and the altitude of the UAV at the current time, and determine the angle change between the UAV and the stored target point under the time difference;

[0041] Determine whether the time difference is greater than a preset time threshold, whether the height difference is greater than a preset height threshold, and whether the angle change is greater than a preset angle threshold;

[0042] If any of the above judgment results are yes, then delete the stored target point;

[0043] If the above judgment results are all negative, the stored target point will not be deleted.

[0044] This specification provides a map building apparatus, comprising:

[0045] The acquisition module is used to acquire two-dimensional point cloud data of each target point collected by the two-dimensional radar on the UAV;

[0046] The altitude module is used to determine the positional relationship between each target point and the UAV based on the two-dimensional point cloud data of each target point, and to determine the altitude information of each target point based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV and the beamwidth of the two-dimensional radar.

[0047] The module is used to construct a radar 3D point cloud map based on the 2D point cloud data and the height information of each target point in order to control the flight of the UAV.

[0048] This specification provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described map construction method.

[0049] This specification provides a drone for generating radar 3D point cloud maps. The drone includes: multiple sensors configured to collect data about the drone's operating environment; one or more processors configured to control the drone's flight using the data; one or more communication units configured to transmit the data to one or more processors outside the drone; and one or more memories configured to store computer programs executable on the processors, wherein the processors, when executing the programs, implement the map construction method described above.

[0050] The above-mentioned technical solutions adopted in this specification can achieve the following beneficial effects:

[0051] In the map construction method provided in this specification, the UAV can acquire two-dimensional point cloud data of each target point collected by a two-dimensional radar. Based on the two-dimensional point cloud data of each target point, the positional relationship between each target point and the UAV is determined. Based on the positional relationship between each target point and the UAV, the visual mapping of the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the height information of each target point is determined. Then, based on the two-dimensional point cloud data of each target point and the height information of each target point, a three-dimensional point cloud map of the radar is constructed to control the flight of the UAV.

[0052] As can be seen from the above method, after collecting data of each target point using low-cost two-dimensional radar, this method can determine the height information of each target point through factors such as the visual mapping of the UAV and the positional relationship between each target point and the UAV, thus making up for the deficiency of two-dimensional radar in being unable to determine the height information of each target point and saving costs while constructing a radar three-dimensional point cloud map. Attached Figure Description

[0053] The accompanying drawings, which are included to provide a further understanding of this specification and form part of this specification, illustrate exemplary embodiments and are used to explain this specification, but do not constitute an undue limitation thereof. In the drawings:

[0054] Figure 1 A schematic diagram illustrating the map construction process provided in the embodiments of this specification;

[0055] Figure 2a A schematic diagram of a radar beam provided for an embodiment of this specification;

[0056] Figure 2b A schematic diagram of a UAV pitch flight provided in the embodiments of this specification;

[0057] Figure 3a A schematic diagram of a near-distance expansion angle provided for an embodiment of this specification;

[0058] Figure 3b A schematic diagram of a long-distance expansion angle provided for an embodiment of this specification;

[0059] Figure 4a A top view of a drone and a target point provided for an embodiment of this specification;

[0060] Figure 4b A side view of a drone and a target point provided for an embodiment of this specification;

[0061] Figure 5 A schematic diagram of a two-dimensional radar installation angle provided for an embodiment of this specification;

[0062] Figure 6 A schematic diagram of a map-building apparatus provided in an embodiment of this specification;

[0063] Figure 7 This is a schematic diagram of the structure of a drone that implements the map construction method provided in the embodiments of this specification. Detailed Implementation

[0064] To make the objectives, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments in this specification without creative effort are within the scope of protection of this application.

[0065] Currently, existing drone obstacle avoidance solutions typically utilize 3D sensors such as infrared sensors, ultrasonic sensors, binocular vision systems, and lidar on the drone to perceive the 3D position information of obstacles around the drone, construct a 3D map, and ultimately achieve drone obstacle avoidance.

[0066] Because infrared sensors have poor ranging accuracy, ultrasonic sensors are prone to attenuation and interference, and binocular vision systems are sensitive to ambient light and unsuitable for scenes lacking texture, existing drone obstacle avoidance solutions typically utilize data detected by lidar to compensate for the perception deficiencies of other sensors. For example, lidar is used to compensate for the perception deficiencies of binocular vision systems in low-light environments, and to compensate for the perception deficiencies of other sensors for slender targets such as power lines.

[0067] Low-cost 2D radar, possessing only 2D positioning capabilities, is typically not used for obstacle detection. The data acquired by 2D radar only includes the coordinates of a horizontal position. That is, it can only determine the horizontal distance of an obstacle relative to the drone and the azimuth angle of the obstacle relative to the drone based on the acquired data; it cannot determine the height of the obstacle, let alone its shape, size, or other information.

[0068] In one or more embodiments of this specification, the data collected by two-dimensional radar can be converted into three-dimensional information by estimating the height of the target point based on the data collected by two-dimensional radar, and a three-dimensional radar point cloud map can be constructed. This achieves the effect of improving the reliability of the three-dimensional radar point cloud map while reducing costs, and ultimately realizes obstacle avoidance for UAVs.

[0069] The technical solutions provided in the various embodiments of this specification are described in detail below with reference to the accompanying drawings.

[0070] Figure 1 This is a flowchart illustrating a map construction method described in this specification, which specifically includes the following steps:

[0071] S100: Acquire two-dimensional point cloud data of each target point collected by the two-dimensional radar on the UAV.

[0072] Existing drone obstacle avoidance methods utilize sensors on the drone to detect obstacle information in real time around the drone for obstacle avoidance. Furthermore, to improve obstacle avoidance accuracy and avoid problems caused by data transmission delays, the drone typically identifies and avoids obstacles. Similarly, in one or more embodiments of this specification, the constructed map is also used for drone obstacle avoidance; therefore, the method for constructing this map can be executed by the drone.

[0073] Typically, obstacle information acquired by two-dimensional radar is represented as two-dimensional point cloud data of at least one target point. To avoid collisions between the UAV and obstacles corresponding to the target point due to the inability of two-dimensional radar to determine the target point's height, resulting in unnecessary consequences, one or more embodiments of this specification employ a method of estimating the target point's height to compensate for the limitations of two-dimensional radar, thereby enabling the construction of a three-dimensional point cloud map.

[0074] Specifically, firstly, the two-dimensional radar on the UAV can collect two-dimensional point cloud data of each target point in real time. The two-dimensional point cloud data of each target point includes at least the positional relationship between each target point and the UAV, that is, the horizontal distance between each target point and the UAV, and the direction of each target point relative to the UAV. Among them, in the two-dimensional point cloud data of each target point detected by the two-dimensional radar on the UAV, each target point corresponds to a point in the two-dimensional point cloud data.

[0075] Secondly, based on the drone's positioning system, such as the Global Positioning System (GPS) or the BeiDou Navigation Satellite System (BDS), the drone's three-dimensional position information in the geodetic coordinate system is determined. Then, based on the drone's orientation sensor, such as a magnetic compass, the drone's orientation is determined. Finally, based on the drone's three-dimensional position information in the geodetic coordinate system, the positional relationship between the target points and the drone, and the drone's orientation, translation and rotation matrix techniques are used to determine the horizontal position information of each target point in the geodetic coordinate system.

[0076] Unless otherwise stated, all location information in this specification is based on geodetic coordinates.

[0077] S102: Based on the two-dimensional point cloud data of each target point, determine the positional relationship between each target point and the UAV, and based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, determine the height information of each target point.

[0078] In one or more embodiments of this specification, the purpose of the UAV acquiring two-dimensional point cloud data of each target point is to construct a radar three-dimensional point cloud map, thereby enabling the UAV to avoid obstacles. However, two-dimensional point cloud data of each target point alone is insufficient to construct a radar three-dimensional point cloud map; height information of each target point needs to be supplemented. Therefore, in step S102, the height information of each target point can be determined.

[0079] Specifically, firstly, for each target point, the horizontal positional relationship between the target point and the UAV is determined based on the two-dimensional point cloud data of that target point. Based on the horizontal positional relationship between the target point and the UAV, and the three-dimensional position information of the UAV determined in step S100, the horizontal distance between the target point and the UAV, as well as the horizontal position of the target point, are determined. Then, based on the UAV's pose, the pitch angle of the UAV is determined. Finally, based on the UAV's pitch angle and the beamwidth of the two-dimensional radar, the angle between the radar beam emitted by the two-dimensional radar and the horizontal plane is determined. The maximum value of this angle is the upper boundary angle of the radar beam, and the minimum value is the lower boundary angle of the radar beam.

[0080] Figure 2a This is a radar beam diagram provided in an embodiment of this specification. A two-dimensional radar 202 is installed on a drone 200. A target point 204 exists in front of the drone 200. If the radar beam 206 emitted by the two-dimensional radar 202 illuminates the target point 204, the horizontal position of the target point 204 can be determined based on the radar data collected by the two-dimensional radar 202. Since the drone 200 flies parallel to the horizontal plane, the angle between the drone 200 and the horizontal plane is zero degrees. When the drone moves forward or backward, the fuselage typically exhibits a pitch state, such as... Figure 2b As shown, Figure 2b This is a schematic diagram of a drone pitch flight provided in an embodiment of this specification, wherein the angle p between the drone 200 and the horizontal plane is the pitch attitude angle of the drone 200.

[0081] Figure 2a In the radar beam 206, the beamwidth is Fe. Figure 2b In the diagram, if the pitch angle of the UAV 200 is p, then the upper boundary angle of the radar beam is... The lower boundary angle of the radar beam is It should be noted that the angle between the radar beam emitted by the two-dimensional radar and the horizontal plane can be negative or positive, and this manual does not impose any restrictions.

[0082] Next, based on the three-dimensional position information of the UAV determined in step S100, the altitude information of the UAV is determined. Based on the upper boundary angle, the lower boundary angle, the altitude information of the UAV, and the horizontal distance between the target point and the UAV, the upper boundary and the lower boundary of the estimated altitude range of the target point are determined, and the estimated altitude range of the target point is determined based on the upper boundary and the lower boundary of the estimated altitude range.

[0083] The process of determining the upper and lower boundaries of the estimated height range for the target point can be expressed by the following formula:

[0084]

[0085]

[0086] Where Hu represents the upper boundary of the estimated altitude range, Hd represents the lower boundary of the estimated altitude range, R represents the horizontal distance between the UAV and the target point, p represents the pitch angle of the UAV, Fe represents the beamwidth of the two-dimensional radar, and Z0 represents the altitude information of the UAV. The upper boundary angle of the radar beam. This represents the lower boundary angle of the radar beam. Specifically, R is taken as the slant range between the UAV and the target point, while... Let be the maximum angle between the radar beam emitted by the 2D radar on the UAV and the horizontal plane. Using the tan function, we can determine the maximum possible altitude of the target point when the radar beam detects the target point at a slant range of R, which is Hu. Similarly, the minimum possible altitude of the target point when the radar beam detects the target point at a slant range of R is Hd.

[0087] Next, the environmental data collected by the sensors is acquired to determine the visual mapping of the UAV. Based on the three-dimensional position information of each feature point in the visual mapping, the horizontal position and height value of each feature point in the geodetic coordinate system are determined. The sensor can be a binocular vision system, an ultrasonic sensor, or other types of sensors; this manual does not impose any restrictions, and the sensor can be configured as needed.

[0088] Finally, based on the estimated height range of the target point, the horizontal position of the target point, the height values ​​of each feature point, and the horizontal position of each feature point, it is determined whether there are feature points whose height values ​​of three-dimensional position information fall within the estimated height range and whose difference between the horizontal position of the feature point and the horizontal position of the target point is less than a preset position threshold.

[0089] Specifically, if the height value of a feature point is greater than the lower boundary of the estimated height range of the target point and less than the upper boundary of the estimated height range of the target point, then the height value of the feature point falls within the estimated height range. If the absolute value of the difference between the X-axis coordinate of the feature point and the X-axis coordinate of the target point is less than a preset horizontal position threshold, and the absolute value of the difference between the Y-axis coordinate of the feature point and the Y-axis coordinate of the target point is less than a preset vertical position threshold, then the difference between the horizontal position of the feature point and the horizontal position of the target point is less than a preset position threshold. Furthermore, the horizontal and vertical coordinates of each feature point can be determined based on its horizontal position, and the horizontal and vertical coordinates of the target point can be determined based on its horizontal position. The three-dimensional position information of the feature point includes X-axis coordinates, Y-axis coordinates, and Z-axis coordinates, with the Z-axis coordinate serving as the height value of the feature point. The horizontal position of the feature point is defined by its X-axis and Y-axis coordinates. The horizontal position of the target point includes its X-axis and Y-axis coordinates. All coordinates mentioned above are in a geodetic coordinate system.

[0090] If a feature point exists that satisfies the above judgment conditions, then the feature point that satisfies the above judgment conditions is determined as a candidate feature point. When there is a single candidate feature point, the height value of the candidate feature point is used as the height information of the target point. When there are multiple candidate feature points, the distance between each candidate feature point and the target point is determined based on the horizontal position of each candidate feature point and the horizontal position of the target point, and the height value of the candidate feature point with the smallest distance from the target point is used as the height information of the target point.

[0091] If no feature point meets the above judgment conditions, the average value of the upper boundary of the estimated height range of the target point and the lower boundary of the estimated height range of the target point is determined as the height information of the target point.

[0092] Using the above method, the altitude information of each target point can be determined through visual mapping of the UAV and the positional relationship between each target point and the UAV. This overcomes the limitation of the UAV's two-dimensional radar in not being able to detect the altitude information of each target point, facilitating the subsequent construction of a radar three-dimensional point cloud map, and thus enabling the UAV to avoid obstacles.

[0093] S104: Based on the two-dimensional point cloud data of each target point and the height information of each target point, construct a radar three-dimensional point cloud map to control the flight of the UAV.

[0094] In one or more embodiments of this specification, the purpose of the UAV acquiring the horizontal position information of each target point and estimating the height information of the target points is to construct a radar 3D point cloud map, thereby enabling the UAV to avoid obstacles. However, target points not only have height information but also occupy a certain range in three-dimensional space. Therefore, the horizontal position information and height information of each target point alone are insufficient to construct a radar 3D point cloud map. It is also necessary to determine the expansion range, expansion center, and other information of each target point in order to complete the construction of the radar 3D point cloud map and achieve UAV obstacle avoidance.

[0095] Specifically, firstly, for each target point, the horizontal distance between the target point and the drone is determined based on the positional relationship between the target point and the drone. Furthermore, since, relative to the drone, for target points of the same volume, the expansion angle of a target point closer to the drone is larger than that of a target point farther away, the expansion angle of the target point is negatively correlated with the horizontal distance between the target point and the drone. Figure 3a This is a schematic diagram of a close-range expansion angle provided in an embodiment of this specification. A two-dimensional radar 202 is provided on the UAV 200. There is a target point 204 in front of the UAV 200, and the radar beam emitted by the two-dimensional radar 202 illuminates the target point 204. Figure 3b This is a schematic diagram of a long-range expansion angle provided in an embodiment of this specification. A two-dimensional radar 202 is mounted on a drone 200. A target point 204 exists in front of the drone 200, and the radar beam emitted by the two-dimensional radar 202 illuminates the target point 204. Clearly, Figure 3a The target point 204 needs to be compared to Figure 3b The target point 204 has a larger expansion range, and this is due to Figure 3a The distance between target point 204 and UAV 200 is greater than Figure 3b The expansion angle of the target point 204 is caused by the distance between the target point and the drone 200. In other words, the expansion angle of the target point is negatively correlated with the horizontal distance between the target point and the drone.

[0096] Therefore, the preset horizontal and vertical values ​​can be determined based on the preset dilation function. The preset dilation function can be constructed using a mathematical model based on data about the actual area occupied by each target point during the UAV's detection, or using a machine learning model, or other methods. This manual does not impose any restrictions and the function can be set as needed.

[0097] Secondly, based on the preset horizontal value, the preset vertical value, and the horizontal distance between the target point and the UAV, the difference between the preset horizontal value and the horizontal distance is determined as the range of horizontal expansion angles, and the difference between the preset vertical value and the horizontal distance is determined as the range of vertical expansion angles. The process of determining the expansion angle range of the target point can be expressed by the following formula:

[0098] ac = ac0 - R

[0099] ec = ec0 - R

[0100] Where ac represents the horizontal expansion angle range of the target point, ec represents the vertical expansion angle range of the target point, ac0 is the preset horizontal value, ec0 is the preset vertical value, and R is the horizontal distance between the target point and the UAV.

[0101] Next, based on the range of horizontal expansion angles of the target point, determine the horizontal expansion range of the target point, and based on the range of vertical expansion angles of the target point, determine the vertical expansion range of the target point. Based on the horizontal and vertical expansion ranges of the target point, determine the overall expansion range of the target point.

[0102] Then, based on the two-dimensional point cloud data of the target point and the three-dimensional position information of the UAV, the horizontal position of the target point is determined. Based on the horizontal position and the height information of the target point, the coordinates of the expansion center of the target point, as well as the expansion center of the target point, are determined.

[0103] Figure 4a This is a top view of a drone and a target point provided in an embodiment of this specification. The drone 200 is equipped with a two-dimensional radar 202. When the two-dimensional radar 202 detects the target point, it determines the horizontal coordinates of the expansion center 208 of the target point based on the horizontal position of the target point, determines the horizontal expansion range 210 of the target point, and determines the azimuth angle K of the target point relative to the drone.

[0104] Figure 4b This is a side view of a drone and a target point provided in an embodiment of this specification. The drone 200 is equipped with a two-dimensional radar 202. When the two-dimensional radar 202 detects the target point, it determines the vertical coordinates of the expansion center 208 of the target point based on the height information of the target point, determines the vertical expansion range 212 of the target point, and determines the pitch angle H of the target point relative to the drone.

[0105] Finally, based on the three-dimensional position information of the UAV and the coordinates of the expansion center of the target point, the azimuth and pitch angles of the target point relative to the UAV are determined. Based on the expansion range corresponding to the target point, the azimuth and pitch angles of the target point relative to the UAV, a point matrix representing the target point is determined.

[0106] It should be noted that the method provided in this manual is only for use by UAVs constructing radar 3D point cloud maps and is real-time; it is not applicable to other UAVs. This is because, for the same target point, the point matrix representing that target point in the determined radar 3D point cloud map will be different when the UAV approaches the target point from different directions. The point matrix representing each target point in the 3D map constructed by the UAV does not represent the actual size of each target point in 3D space, but rather the possible range in which each target point may exist. The UAV performs obstacle avoidance based on the possible range of each target point.

[0107] based on Figure 1 The map construction method shown involves the UAV acquiring two-dimensional point cloud data of each target point collected by a two-dimensional radar. Based on the two-dimensional point cloud data of each target point, the positional relationship between each target point and the UAV is determined. Based on the positional relationship between each target point and the UAV, the visual mapping of the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the height information of each target point is determined. Finally, based on the two-dimensional point cloud data of each target point and the height information of each target point, a three-dimensional point cloud map of the radar is constructed to control the flight of the UAV.

[0108] As can be seen from the above method, after collecting data of each target point using low-cost two-dimensional radar, this method can determine the height information of each target point through factors such as the visual mapping of the UAV and the positional relationship between each target point and the UAV, thus making up for the deficiency of two-dimensional radar in being unable to determine the height information of each target point and saving costs while constructing a radar three-dimensional point cloud map.

[0109] Furthermore, in one or more embodiments of this specification, since the shorter the wavelength of the electromagnetic waves emitted by a radar is generally, the higher the detection accuracy of the radar, but the electromagnetic waves emitted by the radar are also more susceptible to interference, this specification does not limit whether the electromagnetic waves emitted by the two-dimensional radar used in this specification are ultrasonic waves, millimeter waves, or electromagnetic waves of other wavelengths; they can be set as needed.

[0110] It should be noted that the two-dimensional radar detection used in this manual obtains data on the target point within a two-dimensional plane. Therefore, the required detection accuracy for two-dimensional radar is relatively low. It is sufficient that the order of magnitude of the expansion range is higher than the order of magnitude of the detection accuracy. For example, a detection accuracy of 0.1m is acceptable, with an expansion range greater than 1m. Of course, the specific detection accuracy and expansion range can be set as needed, and this manual does not impose any restrictions.

[0111] In addition, in one or more embodiments of this specification, in order to accurately determine the estimated height range of the target point, in step S102, before determining the upper boundary angle and the lower boundary angle of the radar beam, the influence of the installation attitude angle of the two-dimensional radar on the upper boundary angle and the lower boundary angle of the radar beam can be considered.

[0112] Specifically, based on the UAV's pose, the pitch angle of the UAV is determined. Then, based on the UAV's pitch angle, the installation attitude angle of the 2D radar, and the beamwidth of the 2D radar, the angle between the radar beam emitted by the 2D radar and the horizontal plane is determined. The maximum value of this angle is determined to be the upper boundary angle of the radar beam, and the minimum value of this angle is determined to be the lower boundary angle of the radar beam.

[0113] Figure 5 This is a schematic diagram of the installation angle of a two-dimensional radar provided in an embodiment of this specification. A two-dimensional radar 202 is mounted on a UAV 200. A target point 204 is located in front of the UAV 200. The pitch angle of the UAV 200 is p1, the installation angle of the two-dimensional radar 202 is p2, and the beamwidth of the two-dimensional radar 202 is Fe. Therefore, the upper boundary angle of the radar beam is... The lower boundary angle of the radar beam is It should be noted that the pitch angle of the UAV 200 is p1, the installation angle of the two-dimensional radar 202 is p2, and the angle between the radar beam emitted by the two-dimensional radar and the horizontal plane can be negative or positive. This manual does not impose any restrictions.

[0114] Finally, based on the upper boundary angle, the lower boundary angle, the altitude information of the UAV, and the horizontal distance between the UAV and the target point, the upper boundary and the lower boundary of the estimated altitude range of the target point are determined, and the estimated altitude range of the target point is determined based on the upper boundary and the lower boundary of the estimated altitude range.

[0115] The process of determining the estimated height range of the target point described above can be expressed by the following formula:

[0116]

[0117]

[0118] Where Hu represents the upper boundary of the estimated altitude range, Hd represents the lower boundary of the estimated altitude range, R represents the horizontal distance between the UAV and the target point, p1 represents the pitch angle of the UAV, p2 represents the installation attitude angle of the 2D radar, Fe represents the beamwidth of the 2D radar, and Z0 represents the altitude information of the UAV. The upper boundary angle of the radar beam. This represents the lower boundary angle of the radar beam. Specifically, R is taken as the slant range between the UAV and the target point, while... Let be the maximum angle between the radar beam emitted by the 2D radar on the UAV and the horizontal plane. Using the tan function, we can determine the maximum possible altitude of the target point when the radar beam detects the target point at a slant range of R, which is Hu. Similarly, the minimum possible altitude of the target point when the radar beam detects the target point at a slant range of R is Hd.

[0119] In addition, in one or more embodiments of this specification, in order to more accurately determine the height information of a target point, for a certain target point, after the two-dimensional radar detects the target point multiple times, the maximum value of the height information determined by the two-dimensional radar for the target point is determined as the estimated height of the target point.

[0120] Furthermore, in one or more embodiments of this specification, to more accurately construct a radar 3D point cloud map, in step S100, a coordinate system centered on the UAV and parallel to the geodetic coordinate system can be established. The vertical axis is parallel to the UAV axis pointing in the direction of the UAV's movement and parallel to the horizontal and vertical coordinate planes of the geodetic coordinate system. The horizontal axis is perpendicular to the UAV axis pointing to the right of the direction of the UAV's movement and parallel to the horizontal and vertical coordinate planes of the geodetic coordinate system. Based on the data information of each target point detected by the 2D radar on the UAV, the horizontal position information of each target point in the coordinate system centered on the UAV is determined.

[0121] Furthermore, in one or more embodiments of this specification, a coordinate system centered on the UAV may be used instead of a geodetic coordinate system to perform subsequent steps.

[0122] In addition, in one or more embodiments of this specification, in order to more accurately determine the expansion range of each target point, when determining the expansion range of each target point in step S104, the horizontal distance between the target point and the UAV is negatively correlated with the expansion range of the target point.

[0123] Therefore, before determining the expansion angle, a horizontal preset value and a vertical preset value can be determined according to a preset expansion function. Based on the horizontal preset value, the vertical preset value, and the horizontal distance between the target point and the UAV, the result of dividing the horizontal preset value by the horizontal distance is determined as the range of the horizontal expansion angle, and the result of dividing the vertical preset value by the vertical distance is determined as the range of the vertical expansion angle.

[0124] The process of determining the range of the expansion angle of the target point described above can be expressed by the following formula:

[0125]

[0126]

[0127] Where ac represents the horizontal expansion angle range of the target point, ec represents the vertical expansion angle range of the target point, ac0 is the preset horizontal value, ec0 is the preset vertical value, and R is the horizontal distance between the target point and the UAV.

[0128] Of course, other methods can be used to preset the expansion function, and based on the preset expansion function, other methods can be used to determine the expansion angle range of the target point. This manual does not impose any restrictions, and the settings can be made as needed.

[0129] In addition, in one or more embodiments of this specification, in order to more accurately determine the expansion range of each target point, when determining the expansion range of each target point in step S104, the expansion range of each target point can be determined by combining the environmental three-dimensional map detected by other sensors.

[0130] Specifically, firstly, environmental data collected by sensors is acquired to determine the visual map of the UAV. Then, for each target point, based on the previously determined height information, it is determined whether there are candidate feature points corresponding to that target point, and whether there is a correlation between the target point and the feature points in the visual map. If the target point is correlated with any feature point in the visual map, it is determined as a correlated target point; if the target point is not correlated with any feature point in the visual map, it is determined as an isolated target point.

[0131] Secondly, if the target point is associated with feature points in the visual map, its height information can be determined based on the data in the visual map. However, if the target point is not associated with any feature points in the visual map, its information can only be determined using two-dimensional point cloud data collected by two-dimensional radar for drone obstacle avoidance. Therefore, to avoid collisions between the drone and obstacles corresponding to the target point, a larger expansion range can be determined when the target point is not associated with any feature points in the visual map compared to when it is associated with feature points in the visual map.

[0132] Therefore, the horizontal threshold, vertical threshold, horizontal parameter, and vertical parameter can be determined according to the preset dilation function. Among them, the horizontal parameter of the isolated target point is greater than the horizontal parameter of the associated target point, and the vertical parameter of the isolated target point is greater than the vertical parameter of the associated target point.

[0133] Next, based on the horizontal parameter, the vertical parameter, and the horizontal distance between the target point and the UAV, the product of the horizontal parameter and the horizontal distance between the target point and the UAV is determined as the horizontal compensation value, and the product of the vertical parameter and the horizontal distance between the target point and the UAV is determined as the vertical compensation value. Then, based on the horizontal threshold, the vertical threshold, the horizontal compensation value, and the vertical compensation value, the difference between the horizontal threshold and the horizontal compensation value is determined as the horizontal expansion range, and the difference between the vertical threshold and the vertical compensation value is determined as the vertical expansion range.

[0134] Finally, the expansion range of the target point is determined based on its horizontal expansion range and its vertical expansion range.

[0135] The process of determining the expansion range of the target point described above can be expressed by the following formula:

[0136] ac(match) = ac0 - R × ap match

[0137] ec(match) = ec0 - R × ep match

[0138]

[0139] Where ac(1) represents the horizontal expansion range of the associated target point, ec(1) represents the vertical expansion range of the associated target point, ac(0) represents the horizontal expansion range of the isolated target point, ec(0) represents the vertical expansion range of the isolated target point, ac0 is the horizontal threshold, ec0 is the vertical threshold, R is the horizontal distance between the target point and the UAV, ap1 represents the horizontal parameter of the associated target point, ep1 represents the vertical parameter of the associated target point, ap0 represents the horizontal parameter of the isolated target point, ep0 represents the vertical parameter of the isolated target point, match=1 indicates that the target point is an associated target point, match=0 indicates that the target point is an isolated target point, ap1 is greater than ap0 and ep1 is greater than ep0.

[0140] In addition, in one or more embodiments of this specification, after constructing the radar three-dimensional point cloud map in step S104, the UAV can also acquire visual mapping collected by sensors such as binocular vision sensors. In addition to determining the expansion range and height information of each target point detected by the two-dimensional radar based on the radar three-dimensional point cloud map, the visual mapping is used in conjunction with the radar three-dimensional point cloud map to determine a joint three-dimensional map, which facilitates obstacle avoidance by the UAV.

[0141] Specifically, firstly, based on environmental data collected by sensors such as binocular vision sensors, a visual map of the UAV is determined. Then, based on the 3D position information of each feature point in this visual map, the horizontal coordinates and altitude of each feature point in the geodetic coordinate system are determined. Finally, based on the horizontal coordinates and altitude of each feature point in the geodetic coordinate system, the 3D coordinates of the obstacles represented by each feature point are determined.

[0142] Secondly, based on the constructed radar 3D point cloud map, the point array representing each target point in the radar 3D point cloud map is determined. Then, based on the determined point array representing each target point, the coordinates of the point array representing each target point in the geodetic coordinate system are determined. Finally, the coordinates of the point array representing each target point in the geodetic coordinate system are combined with the 3D coordinates of the obstacles represented by each feature point in the environmental 3D map to determine a joint 3D map, thereby enabling the UAV to avoid obstacles.

[0143] Furthermore, in one or more embodiments of this specification, in order to more reasonably preserve the information of historical target points within the limits of memory and construct a more complete radar 3D point cloud map, the following methods can be used to retain the information of some target points.

[0144] Specifically, firstly, based on the two-dimensional point cloud data and height information of each target point detected by the two-dimensional radar at the current moment, as well as the two-dimensional point cloud data and height information of each target point that have been stored, a three-dimensional point cloud map of the radar is constructed.

[0145] Secondly, for each target point detected at the current moment, the horizontal position of the target point is determined based on the two-dimensional point cloud data of the target point and the three-dimensional position information of the UAV. The two-dimensional point cloud data of the target point, the horizontal position of the target point, the altitude information of the UAV when the target point was collected, and the angle information between the target point and the UAV when the target point was collected are stored, and the current moment is stored as the collection time of the target point.

[0146] In addition, in one or more embodiments of this specification, in order to construct a more complete radar 3D point cloud map, the stored target points can be filtered before constructing the radar 3D point cloud map.

[0147] Specifically, firstly, based on the two-dimensional point cloud data of each target point collected at the current moment and the three-dimensional position information of the UAV, the horizontal position of each target point collected at the current moment is determined. Then, for each stored target point, based on the horizontal position of the stored target point and the horizontal positions of the target points collected at the current moment, the horizontal distance between the stored target point and the target points collected at the current moment is determined.

[0148] Secondly, based on the determined horizontal distances and the preset distance thresholds, it is determined whether there is any horizontal distance less than the preset distance threshold. If there is, the stored target point is deleted; if not, the stored target point is not deleted.

[0149] In addition, in one or more embodiments of this specification, in order to construct a more complete radar 3D point cloud map, the stored target points can be filtered before constructing the radar 3D point cloud map.

[0150] Specifically, for each stored target point, the time difference between the acquisition time and the current time is determined based on the acquisition time of the stored target point and the current time. It is then determined whether the time difference is greater than a preset time threshold. If it is, the stored target point is deleted; otherwise, it is not deleted.

[0151] In addition, in one or more embodiments of this specification, in order to construct a more complete radar 3D point cloud map, the stored target points can be filtered before constructing the radar 3D point cloud map.

[0152] Specifically, for each stored target point, based on the drone's altitude information at the time the target point was collected and the drone's altitude information at the current moment, the difference between the drone's altitude information at the time the target point was collected and the drone's altitude information at the current moment is determined as the altitude difference. It is then determined whether the altitude difference is greater than a preset altitude threshold. If it is, the stored target point is deleted; otherwise, it is not deleted.

[0153] In addition, in one or more embodiments of this specification, in order to construct a more complete radar 3D point cloud map, the stored target points can be filtered before constructing the radar 3D point cloud map.

[0154] Specifically, for each stored target point, based on the stored angle information between the target point and the drone when the target point was acquired, and the stored angle information between the target point and the drone at the current moment, the difference between the stored angle information when the target point was acquired and the stored angle information between the target point and the drone at the current moment is determined as the angle change. This difference represents the angle change between the drone and the stored target point under the time difference mentioned in one or more embodiments of this specification. It is then determined whether the angle change is greater than a preset angle threshold. If so, the stored target point is deleted; otherwise, it is not deleted.

[0155] The above describes a map construction method provided by one or more embodiments of this specification. Based on the same idea, this specification also provides a corresponding map construction apparatus, such as... Figure 6 As shown.

[0156] Figure 6 This is a schematic diagram of a map-building apparatus provided in an embodiment of this specification. The apparatus includes:

[0157] The module 600 acquires two-dimensional point cloud data of each target point collected by the two-dimensional radar on the UAV.

[0158] The altitude module 602 determines the positional relationship between each target point and the UAV based on the two-dimensional point cloud data of each target point, and determines the altitude information of each target point based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV and the beamwidth of the two-dimensional radar.

[0159] The construction module 604 constructs a radar three-dimensional point cloud map based on the two-dimensional point cloud data of each target point and the height information of each target point to control the flight of the UAV.

[0160] Optionally, the height module 602 determines the three-dimensional position information of each feature point in the visual mapping of the UAV. For each target point, based on the three-dimensional position information of each feature point, the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, it determines whether there is a feature point that matches the target point. If so, the height information of the target point is determined based on the three-dimensional position information of the feature point that matches the target point. If not, the estimated height range of the target point is determined based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar. The height information of the target point is then determined based on the average value of the upper and lower boundaries of the estimated height range.

[0161] Optionally, the height module 602 determines the estimated height range of the target point based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar. Based on the three-dimensional position information of each feature point, it determines whether there are feature points whose height values ​​of the three-dimensional position information fall within the estimated height range and whose difference between the horizontal position of the feature point and the horizontal position of the target point is less than a preset position threshold.

[0162] Optionally, when there are multiple feature points matching the target point, the height module 602 determines the height value of the feature point with the smallest distance from the target point from among the matched feature points, and uses the determined height value as the height information of the target point. When there is only one feature point matching the target point, the height value of the matched feature point is used as the height information of the target point.

[0163] Optionally, the construction module 604, for each target point, determines the horizontal distance between the target point and the UAV based on the positional relationship between the target point and the UAV, determines the horizontal expansion range based on the difference between the horizontal threshold in the preset expansion function and the horizontal distance, determines the vertical expansion range based on the difference between the vertical threshold in the preset expansion function and the horizontal distance, determines the expansion range corresponding to the target point based on the horizontal expansion range and the vertical expansion range, and determines the point matrix representing the target point based on the two-dimensional point cloud data, height information and corresponding expansion range of the target point.

[0164] A three-dimensional point cloud map of radar is constructed based on the point array that represents each target point.

[0165] Optionally, the construction module 604 determines the expansion center of the target point based on the two-dimensional point cloud data of the target point and the height information of the target point; determines the azimuth angle and pitch angle of the target point relative to the UAV based on the positional relationship between the target point and the UAV and the expansion center of the target point; and determines the point matrix representing the target point based on the expansion range corresponding to the target point, the azimuth angle, and the pitch angle.

[0166] Optionally, the construction module 604 constructs a radar three-dimensional point cloud map based on the stored two-dimensional point cloud data and height information of each target point collected at each historical time, and the two-dimensional point cloud data and height information of each target point collected at the current time, and stores the two-dimensional point cloud data and height information of each target point collected at the current time.

[0167] Optionally, the construction module 604 determines the horizontal distance between each stored target point and each target point collected at the current time for each stored target point. When there is a horizontal distance less than a preset distance threshold among the horizontal distances, the stored target point is deleted.

[0168] Optionally, the construction module 604, for each stored target point, determines the time difference between the acquisition time of the stored target point and the current time, determines the difference between the altitude of the UAV when acquiring the stored target point and the altitude of the UAV at the current time, determines the angle change between the UAV and the stored target point under the time difference, and determines whether the time difference is greater than a preset time threshold, whether the altitude difference is greater than a preset altitude threshold, and whether the angle change is greater than a preset angle threshold. If any of the above determination results is yes, the stored target point is deleted; if all of the above determination results are no, the stored target point is not deleted.

[0169] This specification also provides a computer-readable storage medium storing a computer program that can be used to execute the above-described... Figure 1 The provided map building method.

[0170] This instruction manual also provides Figure 7 The diagram shows a schematic structural representation of the drone. Figure 7 At the hardware level, the drone includes sensors, a processor, a communication unit, an internal bus, a network interface, memory, and non-volatile memory, and may also include other hardware required for its operations. The processor reads the corresponding computer program from the non-volatile memory into memory and then runs it to achieve the above-mentioned functions. Figure 1 The method for map construction described above. Of course, in addition to software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to individual logic units, but can also be hardware or logic devices.

[0171] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0172] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0173] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0174] For ease of description, the above devices are described in terms of function, divided into various units. Of course, in implementing this specification, the functions of each unit can be implemented in one or more software and / or hardware components.

[0175] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0176] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0177] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0178] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0179] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0180] Memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. Memory is an example of a computer-readable medium.

[0181] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0182] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0183] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this specification may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0184] This specification can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This specification can also be practiced in distributed computing environments, where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0185] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0186] The above description is merely an embodiment of this specification and is not intended to limit this specification. Various modifications and variations can be made to this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims of this application.

Claims

1. A method for map construction, characterized in that, include: Acquire two-dimensional point cloud data of each target point collected by the two-dimensional radar on the UAV; Based on the two-dimensional point cloud data of each target point, the positional relationship between each target point and the UAV is determined, and based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the height information of each target point is determined. Based on the two-dimensional point cloud data of each target point and the height information of each target point, a three-dimensional radar point cloud map is constructed to control the flight of the UAV. Specifically, a radar 3D point cloud map is constructed based on the 2D point cloud data and height information of each target point, including: For each target point, the horizontal distance between the target point and the drone is determined based on the positional relationship between the target point and the drone; The horizontal expansion range is determined based on the difference between the horizontal threshold in the preset expansion function and the horizontal distance. The vertical expansion range is determined based on the difference between the vertical threshold in the preset expansion function and the horizontal distance. The expansion range corresponding to the target point is determined based on the horizontal expansion range and the vertical expansion range. Based on the two-dimensional point cloud data, height information, and corresponding expansion range of the target point, the point matrix representing the target point is determined; A three-dimensional point cloud map of radar is constructed based on the point array that represents each target point.

2. The method according to claim 1, characterized in that, Based on the visual mapping of the UAV, the positional relationship between each target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the height information of each target point is determined, specifically including: Determine the three-dimensional position information of each feature point in the visual mapping of the UAV; For each target point, based on the three-dimensional position information of each feature point, the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, it is determined whether there is a feature point that matches the target point. If so, the height information of the target point is determined based on the three-dimensional position information of the feature points that match the target point. If not, the estimated altitude range of the target point is determined based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar. The altitude information of the target point is then determined based on the average value of the upper and lower boundaries of the estimated altitude range.

3. The method according to claim 2, characterized in that, Based on the three-dimensional position information of each feature point, the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, it is determined whether there is a feature point that matches the target point, specifically including: Based on the positional relationship between the target point and the UAV, the pose of the UAV, and the beamwidth of the two-dimensional radar, the estimated altitude range of the target point is determined. Based on the three-dimensional position information of each feature point, determine whether there are feature points whose height values ​​fall within the estimated height range and whose horizontal position difference from the horizontal position of the target point is less than a preset position threshold.

4. The method according to claim 3, characterized in that, Based on the 3D position information of the feature points matching the target point, the height information of the target point is determined, specifically including: When there are multiple feature points that match the target point, the height value of the feature point with the smallest distance from the target point is determined from the matched feature points, and the determined height value is used as the height information of the target point. When there is only one feature point that matches the target point, the height value of the matched feature point is used as the height information of the target point.

5. The method according to claim 1, characterized in that, Based on the two-dimensional point cloud data, height information, and corresponding expansion range of the target point, the point matrix representing the target point is determined, specifically including: Based on the two-dimensional point cloud data of the target point and the height information of the target point, determine the expansion center of the target point; Based on the positional relationship between the target point and the UAV, and the expansion center of the target point, determine the azimuth angle and pitch angle of the target point relative to the UAV. The point matrix representing the target point is determined based on the expansion range corresponding to the target point, the azimuth angle, and the elevation angle.

6. The method according to claim 1, characterized in that, Based on the two-dimensional point cloud data and the height information of each target point, a radar three-dimensional point cloud map is constructed, specifically including: Based on the stored two-dimensional point cloud data and height information of each target point collected at each historical moment, and the two-dimensional point cloud data and height information of each target point collected at the current moment, a radar three-dimensional point cloud map is constructed. Stores the two-dimensional point cloud data and height information of each target point collected at the current moment.

7. The method according to claim 6, characterized in that, Before constructing the radar 3D point cloud map, the method further includes: For each stored target point, determine the horizontal distance between the stored target point and each target point collected at the current time; If any of the horizontal distances is less than a preset distance threshold, the stored target point is deleted.

8. The method according to claim 6, characterized in that, Before constructing the radar 3D point cloud map, the method further includes: For each stored target point, determine the time difference between the time of acquisition of the stored target point and the current time, determine the difference between the altitude of the UAV when the stored target point was acquired and the altitude of the UAV at the current time, and determine the angle change between the UAV and the stored target point under the time difference; Determine whether the time difference is greater than a preset time threshold, whether the height difference is greater than a preset height threshold, and whether the angle change is greater than a preset angle threshold; If any of the above judgment results are yes, then delete the stored target point; If the above judgment results are all negative, the stored target point will not be deleted.

9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of claims 1 to 8.

10. A drone for generating a radar 3D point cloud map, the drone comprising: Multiple sensors are configured to collect data about the operating environment of the drone; One or more processors are configured to use the data to control the flight of the drone; One or more communication units are configured to transmit the data to one or more processors outside the UAV; one or more memories are configured to store computer programs that can run on the processors, characterized in that the processors, when executing the programs, implement the method described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Unmanned aerial vehicle autonomous positioning method and device and unmanned aerial vehicle

    CN112596071A