Three-dimensional perception sensor and its active reconstruction method for buildings
By designing three-dimensional perception sensors and utilizing the characteristics of Livox Horizon lidar, efficient detection and point cloud registration of lidar in unknown environments are achieved, and the stability and error problems of autonomous driving technology in unknown environments are solved, and positioning accuracy and system stability are improved.
Patent Information
- Application Number
- CN202210290830.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-23
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2042-03-23
AI Technical Summary
When existing autonomous driving technology faces unknown environments, the system's stability and robustness are low, and high-precision maps are prone to errors when environmental changes, affecting navigation.
A three-dimensional sensing sensor is designed, and the two-axis gimbal is used to make the lidar have the freedom of pitch angle and yaw angle. Combined with the non-repeat scanning characteristics of Livox Horizon lidar, the gradual improvement of the field of view coverage of point clouds is achieved, and dense observation results are obtained through point cloud registration.
It improves positioning accuracy and system stability in unknown environments, reduces map errors caused by environmental changes, and enhances the active exploration and reconstruction capabilities of autonomous driving robots in outdoor scenarios.
Smart Images

Figure CN114708311B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of autonomous driving, and in particular relates to a three-dimensional perception sensor and an active reconstruction method thereof for buildings. Background Art
[0002] The exploration and active reconstruction of unknown outdoor scenes are the basic technologies of most outdoor mobile robots. Scenes such as outdoor cleaning, post-disaster rescue, and national defense and military have high timeliness or accuracy requirements for the exploration of unknown environments. Taking autonomous driving technology as an example, the positioning of current autonomous driving technology is almost entirely dependent on pre-established high-precision map information. High-precision maps are obtained by using sensors to explore unknown environments and collect key information, and then manually annotating and extracting high-level features. Therefore, when facing unknown environments, the stability and robustness of the current autonomous driving technology will be greatly challenged. When some participants in the unknown environment change, and the high-precision map does not re-collect the participants, the information of the high-precision map will be erroneous, which will affect the navigation of autonomous driving or mobile robots. In response to the above problems, the academic community is committed to studying and improving the active exploration and reconstruction capabilities of mobile robots in outdoor scenes with unknown scenes, so as to enable mobile robots to actively explore the environment, explore unknown areas in the environment, and mark undetectable areas and drivable areas.
[0003] The invention patent "Method, device and exploration method for intelligent agent to actively construct environmental scene map" (publication number: CN113111192A) provides a method for intelligent agent to actively construct environmental scene map based on visual information, an environmental exploration method and intelligent device. The active exploration model is trained using environmental scene images and corresponding environmental scene map data sets and collected intelligent agent exploration environment paths; actions are generated based on the trained active exploration model, and the intelligent agent uses the generated actions to explore the environment. During the exploration process, 3D semantic point cloud data is obtained, and then the environmental scene map is constructed using the 3D semantic point cloud data.
[0004] The invention patent "Method, device and storage medium for robot autonomous exploration and mapping" (publication number: CN106154285A) provides a method, device and storage medium for robot autonomous exploration and mapping, the method includes: obtaining environmental data collected by sensors, using synchronous positioning and map construction SLAM algorithm, identifying the area to be visited on the current estimated SLAM initial environment map; for the identified visit area, path planning is performed based on active exploration, and according to the principle of maximum utility, an exploration path is selected from the planned paths, and the path exploration operation is performed; according to the path exploration results, an environment map corresponding to the autonomous exploration is established; the purpose of selecting a moving path and establishing an environment map through the robot's autonomous exploration is achieved, the positioning uncertainty caused by the sole use of the SLAM algorithm is reduced, the construction quality and efficiency of the environment map are improved, and the autonomy of the robot is further improved.
[0005] The methods mentioned in the above patents are all active exploration systems for complete closed environments, and do not involve active reconstruction of specific outdoor buildings. In addition, they do not consider improving the accuracy of the entire positioning system by actively adding point cloud registration constraints. Summary of the invention
[0006] One of the purposes of the present invention is to provide a three-dimensional perception sensor, which provides the pitch angle and yaw angle of the laser radar by designing a two-axis gimbal, thereby meeting the task of active reconstruction.
[0007] In order to achieve the above-mentioned invention object, the technical solution adopted by the present invention is as follows:
[0008] A three-dimensional perception sensor, comprising:
[0009] A pan-tilt chassis, a rotating member is mounted on the pan-tilt chassis, and the rotating member can rotate relative to the pan-tilt chassis;
[0010] A pan-tilt bracket, the pan-tilt bracket is mounted on the upper end surface of the rotating member so that the rotating member drives the sensor bracket to rotate, and a connecting rod lifting mechanism is arranged on the pan-tilt bracket;
[0011] A driving motor, wherein the driving motor comprises a first motor and a second motor, wherein the first motor is mounted on the pan / tilt chassis and is used to drive the rotating member to rotate, and the second motor is mounted on the pan / tilt bracket and is used to drive the connecting rod lifting mechanism to move, so that the connecting rod lifting mechanism moves up and down at one end away from the pan / tilt chassis;
[0012] A laser radar, wherein the laser radar is connected to a rotating block at an upper end of the connecting rod lifting mechanism through a mounting plate, so that the connecting rod lifting mechanism drives the laser radar on the mounting plate to perform a pitch motion;
[0013] A gyroscope, wherein the gyroscope is arranged on one side of the laser radar so that the gyroscope moves together with the laser radar;
[0014] The first motor drives the gimbal bracket to rotate so that the laser radar has the freedom of yaw angle, and the second motor drives the rotating block at the upper end of the connecting rod lifting mechanism to rotate so that the laser radar has the freedom of pitch angle.
[0015] Preferably, the connecting rod lifting mechanism includes a rotating rod connected to the output shaft of the second motor and a lifting rod connected to the rotating rod, the lifting rod is vertically arranged, one end of the rotating rod is connected to the output shaft of the second motor, the other end of the rotating rod is connected to one end of the lifting rod, the other end of the lifting rod is connected to the rotating block, the rotating block is rotatably connected to the pan-tilt bracket so that the lifting rod drives the rotating block to rotate, and the mounting plate is installed on the rotating block so that the mounting plate performs a pitch motion when the rotating block rotates.
[0016] Preferably, the laser radar is a Livox Horizon laser radar, and the drive motor is a brushless motor. The yaw angle of the laser radar is given by the encoder of the first motor, and the pitch angle of the laser radar is given by the gyroscope. In this way, the first motor and the second motor can control the laser radar to perform yaw motion and pitch motion respectively through forward and reverse rotation, so as to adjust the yaw angle and pitch angle of the laser radar respectively. At the same time, compared with traditional mechanical rotating laser radars, the scanning pattern of Livox Horizon laser radar is non-repetitive scanning. The scanning area of each frame of Livox Horizon laser radar point cloud is different, so when the laser radar is placed still, the observation coverage within its field of view will gradually increase. This feature is particularly in line with the task goal of active reconstruction. If a traditional mechanical rotating laser radar is used, it is necessary to actively swing the laser radar back and forth when the laser radar scans a certain area, which brings about motion uncertainty and motion distortion of the point cloud due to the swing of the mechanism, and the coverage of the part of the building that needs to be observed cannot be guaranteed. With Livox Horizon laser radar, it is only necessary to fix the 3D perception sensor at the observation position, adjust the yaw angle and pitch angle of the laser radar through the first motor and the second motor on the gimbal bracket, and then keep the laser radar in a fixed state. As the integration time increases, the field of view coverage of the point cloud will continue to increase until the field of view coverage is close to 100%, and then multiple frames of point clouds can be registered to obtain better and dense observation results.
[0017] The second object of the present invention is to provide an active reconstruction method for buildings, so as to realize the perspective and path planning of active exploration and reconstruction technology of buildings in outdoor scenes, and enable the robot to effectively perform active reconstruction of outdoor buildings based on mobile robots, including the following steps:
[0018] Step S1. Scan the building through the robot's laser radar, and perform coordinate conversion on each frame of point cloud obtained in the scanning area, and use each frame of point cloud to update the map of the building to complete the reconstruction of the building map, and the reconstructed map of the building is a raster map;
[0019] Step S2. For the map reconstructed from the building in step S1, use the point cloud to update the occupied grids of the building in the grid map and the non-occupied grids within the set radius of the occupied grid;
[0020] Step S3. Whenever each frame of point cloud in step S2 is used to update the occupied grid and the unoccupied grid of the grid map, the axis-aligned bounding box of the point cloud is calculated, and the grids that are spatially adjacent to the occupied grid of the building and adjacent to the unknown grid are extracted as border grids within the axis-aligned bounding box, and any cluster of border grids that intersect with the axis-aligned bounding box is deleted to complete the extraction of the border grids;
[0021] Step S4. After the border grids are extracted in step S3, the border grids are clustered using the region growing algorithm so that the border grids connected in space form a border grid cluster. The border grid clusters are screened by setting a threshold to select the border grid clusters that meet the set threshold range;
[0022] Step S5. Extract the border grids in step S4 and cluster them according to their spatial position relationship. Let the set of border grid clusters be C frt , the robot observes the border grid clusters until there are no border grid clusters in the environment or all border grid clusters cannot be seen in the robot's drivable area; for each border grid cluster C frt By sampling the perspective of the border grid clusters in the robot's drivable area, the corresponding perspective set VP is obtained. i ;
[0023] Step S6. After obtaining the perspective set VP of the border grid cluster i Finally, the perspective is scored according to the information that can be observed by the border grid cluster and the position of the border grid cluster to the current robot, so as to obtain the best observation perspective of each border grid cluster in the current environment, and then obtain the highest scoring perspective set;
[0024] Step S7. After obtaining the highest scoring viewpoint set, solve the traveling salesman problem to find the next best viewpoint, and complete the path planning and navigation of the robot according to the next best viewpoint;
[0025] Step S8. After completing the path planning of step S7, the robot's active exploration and path planning mode is a planning-execution-observation cycle. The robot executes the planned path, and during the walking process, the building is scanned by the laser radar in the positioning module, and the occupied grid of the building is expanded according to the set radius, and the expanded free grid located around the occupied grid is obtained to complete the free grid, complete the map update, and complete the perspective sampling of step S5 at the same time, so that the robot completes the active exploration and map reconstruction of the building through path planning;
[0026] The positioning module in step S7 includes a three-dimensional perception sensor and an inertial measurement unit IMU, and the three-dimensional perception sensor includes a laser radar and a drive motor for adjusting the yaw angle and pitch angle of the laser radar.
[0027] Preferably, the map reconstructed by the building in step S1 is an octree grid map, and the occupation grid in step S2 is a three-dimensional occupation grid.
[0028] Preferably, the method used in the step S2 for updating the occupied grid with the point cloud is as follows: for each three-dimensional point of the current point cloud collected by the robot, the three-dimensional grids through which the line connecting it to the center of the three-dimensional perception sensor passes are calculated, and the non-occupancy probability of these grids is increased to form non-occupied grids; then, for the grid where the three-dimensional point is located, its occupation probability is increased, thereby completing the map update of a three-dimensional point, and for the map reconstructed by the building, only the non-occupied grids near the occupied grid are updated, while the unknown state of other grids is retained.
[0029] Preferably, the step S2 further includes completing a free grid within a set radius of the occupied grid, wherein the free grid is a non-occupied grid, and the free grid completion method includes the following steps:
[0030] Step a1. Expand the occupied grid according to the set radius, and set the expanded new grid as the grid set V dl ;
[0031] Step a2. Traverse the grid set V dl And find the grid set outside the field of view of the 3D perception sensor, marked as V iv ;
[0032] Step a3: Project light from the position of the 3D sensing sensor to the remaining grids after step a2, and mark the grid set blocked by the building, denoted as V ocl ;
[0033] Step a4. By deleting the grid sets marked by steps a2 and a3, the remaining completed free grid set is expressed as:
[0034] V free ={v|v∈V dt \(V tv ∪V_ocl)}.
[0035] Preferably, in step S4, when the number of border grid clusters is less than a set minimum threshold, the border grid cluster is ignored, and the minimum threshold is set to 5, because clusters with too small a number are often caused by sensor noise, so the present invention ignores these clusters; when the size of the border grid exceeds the set maximum threshold, the maximum threshold is set to a resolution of 2m / grid, and the border grid is subjected to principal component analysis to calculate the direction of the long axis of the border grid shape, and the border grid is recursively split in the long axis direction, and the process is recursively performed until all border grid clusters are less than the set maximum threshold. By screening the border grid clusters and recursively performing the large-size border grid, the border grid is recursively detected and updated, thereby reducing the amount of calculation.
[0036] Preferably, in step S3, in order to generate border grids only near the occupied grids of the building so that the robot can focus on exploring the boundaries of the building, it is necessary to determine whether a certain grid belongs to the target building. The method for determining whether a grid belongs to the target building is as follows: using a union-find algorithm, a root node 0 point information is added to each grid. When the robot is initialized, the grids constructed by its initial point cloud are merged, and the root node with the most child nodes is recorded as vbd. Each time a point cloud is inserted into the map where the occupied grid is located, the newly generated occupied grid will be merged with its adjacent grids, and the value of its root node will be updated. After the occupied grids are merged, the grids connected to vbd in space will have the same root node, while the grids not connected to vbd in space will not have the same root node. Then, by determining whether the current occupied grid has the same root node as vbd, it can be determined whether the current occupied grid is part of the building. After the occupied grid of the target building is determined, the extraction of the border grid can be continued.
[0037] Preferably, in step S5, a certain border grid c i The center point of the cluster is the center of the circle, and the radius step length r is fixed. step With the angle step θstep, sampling is performed in the robot's drivable area, and the resulting view set is VP i .
[0038] Preferably, in step S6, the coverage rate is used to evaluate the degree to which a perspective can actually observe its corresponding grid cluster. The coverage rate of a perspective is the ratio of the number of corresponding border grids that can be seen at this perspective to the number of original border grids. Based on this, the best perspective selected by the perspective scoring function is The calculation formula is:
[0039]
[0040] in is the perspective with the largest coverage in the perspective set, f dist Represents the distance between the center of the border grid cluster and the current position of the robot, d max is the distance threshold to be set, M is the map coordinate system, R is the robot coordinate system, and P is the position of the robot.
[0041] Preferably, in step S8, during the robot walking process, according to the characteristics of the active reconstruction task, by constructing a pose factor graph, the currently observed building point cloud and the reconstructed map are used to perform loop detection and correct the robot pose. The method of correcting the robot pose using the robot's currently observed point cloud is as follows:
[0042] Step b1. Obtain the observation point cloud of the current robot. Due to the non-repetitive scanning characteristics of the Livox Horizon laser radar, when observing a building, a single-frame point cloud can only scan part of the building surface within the radar field of view. Therefore, it is necessary to construct a point cloud sub-map of the current observation in time to make the scanned point cloud as dense as possible. The point cloud sub-map is in the form of a hash grid map. The hash grid map is as follows: for each point to be inserted into the map, obtain its 3D grid index according to the resolution of the map, and then search the hash table for the grid corresponding to the grid index;
[0043] Step b2. When the robot moves to the radius of the next viewing angle, the point cloud subgraph is constructed using the currently observed point cloud. When the robot executes to the position of the viewing angle, the current point cloud subgraph is aligned with the reconstructed map, and the alignment result is added to the factor graph as a unary edge. In step b1, the hash subgraph corresponding to the hash grid map is constructed using a two-way alignment strategy. First, the point cloud collected by the lidar is projected into the world coordinate system according to the information of the current inertial measurement unit IMU to obtain the point cloud. If the number of point cloud frames or the number of three-dimensional points of the current hash subgraph is less than the set threshold, the point cloud in the world coordinate system is directly inserted into the hash subgraph. Let the number of point cloud frames inserted in this way be k; otherwise, all point clouds in the hash subgraph are aligned to the coordinate system of the new point cloud, and are re-added to the hash subgraph together with the newly acquired point cloud; finally, the pose information of the hash subgraph is updated; when a subgraph is constructed, the first k frames of point clouds are extracted from the hash grid map and re-aligned with the remaining point clouds to ensure the consistency of the point clouds. In this algorithm, the point cloud of the hash subgraph is realigned to the coordinate system of the new point cloud in order to directly use the latest pose when updating the subsequent odometer when constructing the factor graph optimization.
[0044] Preferably, the pose estimator is Fast-LIO2. In some relatively open outdoor scenes, pose estimation is not accurate enough due to scene degradation. Fast-LIO2 does not have loop detection, so when pose estimation fails, the estimator has no strategy to correct it. Therefore, by constructing a pose factor graph, the currently observed building point cloud and the constructed map are used for loop detection and correction, making the robot's positioning system more robust and the constructed map more accurate.
[0045] Preferably, a factor graph is constructed by the GTSAM algorithm to construct an optimization problem and update the pose. The factor graph construction algorithm is coupled with the robot's path planning and navigation method in step S7 to generate a positioning system for the robot. The coupling steps are as follows:
[0046] Step c1. When the robot travels from the current view to the next view, the binary factor connecting the pose variables of the two views is added to the factor graph. The binary factor is used to constrain the relative transformation relationship between the two pose variables. The inertial odometer poses of the two views are given by the pose estimator and are recorded as Then the relative position of the binary factor is:
[0047]
[0048] Step c2. When the robot moves to the next viewing angle, the point cloud of the current point cloud sub-map is registered with the building map, and the registration result is added to the factor graph as a unary observation result, i.e., the unary edge mentioned above;
[0049] Step c3. If the Euclidean distance and yaw angle between the two viewpoints are less than the set threshold, the two point cloud sub-images will be registered separately. When constructing the point cloud sub-image, the observed point cloud has been converted to the world coordinate system. Due to the existence of the pose estimator error, the world coordinate system when constructing the first sub-image is not completely consistent with the world coordinate system when constructing the second sub-image. Based on this inconsistency, the constraints can be obtained as follows:
[0050]
[0051] in, Represents the inverse of the three-dimensional transformation in the map coordinate system of the viewpoint vp1; Indicates the transformation from the map coordinate system where the perspective vp2 is located to the map coordinate system where the perspective vp1 is located; Represents the three-dimensional transformation in the map coordinate system of the perspective vp2;
[0052] Step c4. When the robot walks according to the path planning and is about to execute to the next viewpoint, the posture of all current viewpoints will be updated, and the point cloud sub-map and the point cloud and grid of the global map will be adjusted accordingly.
[0053] Beneficial effects:
[0054] Aiming at the problem of active reconstruction of buildings in outdoor scenes, the present invention is guided by the kinematic characteristics and application scenarios of ground mobile robots, and proposes and establishes a novel active reconstruction system for buildings based on mobile robots, thereby realizing the perspective and path planning of active exploration and reconstruction technology of buildings in outdoor scenes. On this basis, a positioning performance improvement scheme of lidar-inertial odometer based on factor graph optimization is further studied and proposed. Through the scheme of the present invention, the robot can effectively perform active reconstruction of outdoor buildings based on mobile robots. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Figure 1 Shown is a structural diagram of a three-dimensional perception sensor of the present invention;
[0056] Figure 2 Shown is an exploded view of part of the structure of the three-dimensional sensing sensor of the present invention;
[0057] Figure 3 Shown is a front view of the three-dimensional perception sensor of the present invention;
[0058] Figure 4 Shown Figure 3 Section view along AA direction;
[0059] Figure 5 Shown is a perspective and path planning framework diagram of the active reconstruction method for buildings of the present invention;
[0060] Figure 6 Shown are the new and old updating methods of the octree map for building reconstruction in the active building reconstruction method of the present invention;
[0061] Figure 7 It is a diagram showing the completion strategy of the free grid in the active reconstruction method for buildings of the present invention;
[0062] Figure 8 Shown is a union-find algorithm diagram of active reconstruction in the active reconstruction method for buildings of the present invention;
[0063] Fig. 9 Shown is a view sampling demonstration diagram of the active reconstruction method for buildings of the present invention;
[0064] Fig.10 It is a schematic diagram of constructing a point cloud sub-graph in the active reconstruction method for buildings of the present invention;
[0065] Fig.11 Shown is a schematic diagram of factor graph construction in the active reconstruction method for buildings of the present invention.
[0066] Reference numerals
[0067] 1. Gimbal chassis; 11. Cross roller bearing seat; 12. Cross roller bearing; 13. Bearing inner ring washer; 2. Gimbal bracket; 21. Bracket base plate; 22. Bracket side plate; 3. Second motor; 4. First motor; 41. Connecting plate; 42. Rotating plate; 5. LiDAR; 6. Gyroscope; 7. Mounting plate; 8. Connecting rod lifting mechanism; 81. Rotating rod; 82. Lifting rod; 9. Mounting part; 10. Rotating block. DETAILED DESCRIPTION
[0068] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the specific implementation methods of the present invention will be described below with reference to the accompanying drawings. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings and other implementation methods can be obtained based on these drawings without creative work.
[0069] The technical solution of the present invention is described in detail below with specific embodiments.
[0070] Example 1
[0071] refer to Figure 1, a three-dimensional perception sensor, comprising:
[0072] A pan-tilt chassis 1, on which a rotating member is mounted, and the rotating member can rotate relative to the pan-tilt chassis 1;
[0073] A pan-tilt bracket 2, the pan-tilt bracket 2 is mounted on the upper end surface of the rotating member so that the rotating member drives the sensor bracket to rotate, and a connecting rod lifting mechanism 8 is arranged on the pan-tilt bracket 2;
[0074] A driving motor, wherein the driving motor comprises a first motor 4 and a second motor 3, wherein the first motor 4 is mounted on the pan / tilt chassis 1 and is used to drive the rotating member to rotate, and the second motor 3 is mounted on the pan / tilt bracket 2, and the second motor 3 is used to drive the connecting rod lifting mechanism 8 to move, so that the connecting rod lifting mechanism 8 moves up and down at one end away from the pan / tilt chassis 1;
[0075] A laser radar 5, wherein the laser radar 5 is connected to a rotating block 10 at the upper end of the connecting rod lifting mechanism 8 through a mounting plate 7, so that the connecting rod lifting mechanism 8 drives the laser radar 5 on the mounting plate 7 to perform a pitch motion;
[0076] A gyroscope 6, wherein the gyroscope 6 is arranged on one side of the laser radar 5 so that the gyroscope 6 moves together with the laser radar 5;
[0077] The first motor 4 drives the gimbal bracket 2 to rotate so that the laser radar 5 has the freedom of yaw angle, and the second motor 3 drives the rotating block 10 at the upper end of the connecting rod lifting mechanism 8 to rotate so that the laser radar 5 has the freedom of pitch angle.
[0078] refer to Figure 2 and 4As shown, the pan-tilt bracket 2 includes a bracket base plate 21 and a bracket side plate 22 arranged on the bracket base plate 21, the connecting rod lifting mechanism 8 is arranged on the bracket side plate 22, the mounting plate 7 is connected to the rotating block 10 arranged at the upper end of the connecting rod lifting mechanism 8, the rotating member includes a connecting plate 41 and a rotating plate 42, a bearing seat for accommodating a bearing is arranged on the pan-tilt chassis 1, the bracket base plate 21 abuts against the inner ring of the bearing, and the outer ring of the bearing abuts against the bearing seat, the bearing can preferably be a cross roller bearing 12, and the bearing seat is a cross roller bearing seat 11, the output end of the output shaft of the first motor 4 is installed with a connecting plate 41, and a side of the connecting plate 41 away from the first motor 4 is provided The rotating plate 42 is fixed to the connecting plate 41 by bolts, the first motor 4 drives the connecting plate 41 and the rotating plate 42 fixed to the connecting plate 41 to rotate, the rotating plate 42 is connected to the bracket base plate 21 by bolts, so that the bracket basically rotates at the same time as the rotating plate 42, and a bearing inner ring gasket 13 is arranged between the rotating plate 42 and the bracket base plate 21, and the lower end surface of the bearing inner ring is tightly arranged with the upper end surface of the rotating plate 42, which can protect the bearing. When the output shaft of the first motor 4 rotates, it will drive the rotating plate 42 and the bracket base plate 21 to rotate together, so that the yaw angle of the laser radar 5 on the gimbal bracket 2 is adjusted.
[0079] refer to Figure 3 As shown, the connecting rod lifting mechanism 8 includes a rotating rod 81 connected to the output shaft of the second motor 3 and a lifting rod 82 connected to the rotating rod 81, the lifting rod 82 is vertically arranged, one end of the rotating rod 81 is connected to the output shaft of the second motor 3, the other end of the rotating rod 81 is connected to one end of the lifting rod 82, the other end of the lifting rod 82 is connected to the rotating block 10, the rotating block 10 is rotatably connected to the pan-tilt bracket 2, so that the lifting rod 82 drives the rotating block 10 to rotate, and the mounting plate 7 is installed on the rotating block 10, so that the mounting plate 7 performs a pitch motion when the rotating block 10 rotates.
[0080] Mounting parts 9 for mounting the rotating block 10 are provided on both sides of the pan / tilt bracket 2. The mounting parts 9 are fixedly arranged on the pan / tilt bracket 2. The upper end of the mounting part 9 is connected to one end of the rotating block 10 through a pin shaft so that the rotating block 10 can rotate on the mounting part 9. The other end of the rotating block 10 is connected to the upper end of the lifting rod 82. When the second motor 3 drives the rotating rod 81 to rotate clockwise and counterclockwise, the lifting rod 82 performs lifting and reciprocating motion driven by the rotating rod 81. At the same time, the rotating block 10 is moved on the lifting rod 82. The mounting plate 7 starts to rotate under the drive of the second motor 3, thereby driving the mounting plate 7 connected to the rotating block 10 to do pitch motion. Since the rotating blocks 10 connected to the mounting portion 9 are arranged on both sides of the gimbal bracket 2, the mounting plate 7 is connected to the rotating blocks 10 on both sides of the gimbal bracket 2, thereby ensuring that the mounting plate 7 is stable when doing pitch motion and will not roll over, thereby ensuring that the laser radar 5 on the mounting plate 7 does stable pitch motion under the action of the second motor 3. At the same time, the gyroscope 6 is also installed on the mounting plate 7, ensuring that the gyroscope 6 and the laser radar 5 move synchronously.
[0081] The laser radar 5 is a Livox Horizon laser radar 5, and the driving motor is a brushless motor. The yaw angle of the laser radar 5 is given by the code disk of the first motor 4, and the pitch angle of the laser radar 5 is given by the gyroscope 6. In this way, the first motor 4 and the second motor 3 can control the laser radar 5 to perform yaw motion and pitch motion respectively through forward and reverse rotation, so as to adjust the yaw angle and pitch angle of the laser radar 5 respectively. Meanwhile, compared with the traditional mechanical rotating laser radar 5, the scanning pattern of Livox Horizon laser radar 5 is non-repetitive scanning. The scanning area of each frame point cloud of Livox Horizon laser radar 5 is different, so that when the laser radar 5 is placed still, the observation coverage rate within its field of view angle will gradually increase. This feature is particularly in line with the task goal of active reconstruction. If the traditional mechanical rotating laser radar 5 is used, it is necessary to actively swing the laser radar 5 back and forth when the laser radar 5 scans a certain area, which brings about motion uncertainty and motion distortion of the point cloud due to the swing of the mechanism, and the coverage rate of the part of the building to be observed cannot be guaranteed. However, when Livox Horizon laser radar 5 is used, it is only necessary to fix the three-dimensional perception sensor at the observation position, adjust the yaw angle and pitch angle of the laser radar 5 through the first motor 4 and the second motor 3 on the gimbal bracket 2, and then keep the laser radar 5 in a fixed state. As the integration time increases, the field of view coverage rate of the point cloud will continue to increase until the field of view coverage rate is close to 100%, and then multiple frames of point clouds can be registered to obtain better and dense observation results.
[0082] Example 2
[0083] like Figure 5 As shown, an active reconstruction method for buildings is provided, thereby realizing the perspective and path planning of active exploration and reconstruction technology of buildings in outdoor scenes, and enabling the robot to effectively perform active reconstruction of outdoor buildings based on mobile robots, including the following steps:
[0084] Step S1. Scan the building through the laser radar in the positioning module of the robot, and perform coordinate conversion on each frame of point cloud obtained in the scanning area, and use each frame of point cloud to update the map of the building to complete the reconstruction of the map of the building, and the reconstructed map of the building is a raster map;
[0085] Step S2. For the map reconstructed in step S1, the occupied grids of the building in the grid map and the non-occupied grids within a set radius of 0.2-0.5m of the occupied grid are updated using the point cloud;
[0086] Step S3. Whenever each frame of point cloud in step S2 is used to update the occupied grid and the unoccupied grid of the grid map, the axis-aligned bounding box of the point cloud is calculated, and the grids that are spatially adjacent to the occupied grid of the building and adjacent to the unknown grid are extracted as border grids within the axis-aligned bounding box, and any cluster of border grids that intersect with the axis-aligned bounding box is deleted to complete the extraction of the border grids;
[0087] Step S4. After the border grids are extracted in step S3, the border grids are clustered using the region growing algorithm so that the border grids connected in space form a border grid cluster. The border grid clusters are screened by setting a threshold to select the border grid clusters that meet the set threshold range;
[0088] Step S5. Extract the border grids in step S4 and cluster them according to their spatial position relationship. Let the set of border grid clusters be The robot observes the border grid clusters until there are no border grid clusters in the environment or all border grid clusters cannot be seen in the robot's drivable area; for each border grid cluster C frt By sampling the perspective of the border grid clusters in the robot's drivable area, the corresponding perspective set VP is obtained. i ;
[0089] Step S6. After obtaining the perspective set VP of the border grid cluster i Finally, the perspective is scored according to the information that can be observed by the border grid cluster and the position of the border grid cluster to the current robot, so as to obtain the best observation perspective of each border grid cluster in the current environment, and then obtain the highest scoring perspective set;
[0090] Step S7. After obtaining the highest scoring viewpoint set, solve the traveling salesman problem to find the next best viewpoint, and complete the path planning and navigation of the robot according to the next best viewpoint;
[0091] Step S8. After completing the path planning of step S7, the robot's active exploration and path planning mode is a planning-execution-observation cycle. The robot executes the planned path, and during the walking process, the building is scanned by the laser radar in the positioning module, and the occupied grid of the building is expanded according to the set radius, and the expanded free grid located around the occupied grid is obtained to complete the free grid, complete the map update, and complete the perspective sampling of step S5 at the same time, so that the robot completes the active exploration and map reconstruction of the building through path planning;
[0092] The positioning module in step S7 includes a three-dimensional perception sensor and an inertial measurement unit IMU, and the three-dimensional perception sensor includes a laser radar and a drive motor for adjusting the yaw angle and pitch angle of the laser radar.
[0093] The map reconstructed by the building in step S1 is an octree grid map, and the occupation grid in step S2 is a three-dimensional occupation grid.
[0094] The method used in step S2 to update the occupied grid with the point cloud is as follows: for each 3D point of the current point cloud collected by the robot, the 3D grids passed by the line connecting it to the center of the 3D perception sensor are calculated, and the non-occupancy probability of these grids is increased to form non-occupied grids; then, for the grid where the 3D point is located, its occupancy probability is increased, thereby completing the map update of a 3D point. For the map reconstructed by the building, only the non-occupied grids near the occupied grid are updated, while the unknown status of other grids is retained. Figure 6 As shown, the black grid represents the occupied grid, and the white grid represents the free grid, i.e., the non-occupied grid. The scheme adopted by the present invention is to maintain the reconstruction and navigation maps separately. The above method is similar to the Bresenham algorithm and other discrete space ray casting methods. Compared with the original update method with unlimited radius, the method for updating the occupied grid proposed by the present invention only updates the non-occupied grid within a specific radius of the occupied grid, thereby greatly reducing the amount of calculation of ray casting, ensuring the real-time update of the map, and at the same time solving the problem that in outdoor scenes, when the scene is too large to reach hundreds of meters and the resolution of the map is set to a relatively small level, the real-time update of the map cannot be completed due to the large amount of calculation of ray casting.
[0095] Furthermore, the step S2 further includes completing the free grid within the set radius of the occupied grid, the free grid being a non-occupied grid, and the free grid completion method includes the following steps:
[0096] Step a1. Expand the occupied grid according to the set radius, and set the expanded new grid as the grid set V dl ; Occupies the grid Figure 7 The gray grid above the white grid in the middle expands into a new grid set V dl for Figure 7 The black grids occupy the top, left, and right sides of the grid;
[0097] Step a2. Traverse the grid set V di And find the grid set outside the field of view of the 3D perception sensor, marked as V iv ; V iv That is Figure 7 The light grey grid on the right side of the grid in the second image;
[0098] Step a3: Project light from the position of the 3D sensing sensor to the remaining grids after step a2, and mark the grid set blocked by the building, denoted as V ocl ; V ocl That is Figure 7 The light grey grid above the grid in the second image;
[0099] Step a4. By deleting the grid sets marked by steps a2 and a3, the remaining completed free grid set is expressed as:
[0100] V free ={v|v∈V dl \(V iv ∪V_ocl)},V free That is Figure 7 The black grid in the second image occupies the right side of the grid.
[0101] Because outdoor scenes are relatively empty, some of the LiDAR point cloud measurements may exceed the range, resulting in missing measurements. Due to missing measurements, some free grids in the constructed map will also be missing. Therefore, the above-mentioned free grid completion strategy based on grid expansion and ray projection can be used to complete the missing free grids around the occupied grids. By completing the free grids in the exploration and reconstruction space through this strategy, the map update can be completed in the case of missing measurements in outdoor scenes, which helps to mark the explored areas when performing active reconstruction tasks and ensure the sustainable execution of reconstruction tasks.
[0102] Further, in step S4, when the number of border grid clusters is less than the set minimum threshold, the minimum threshold is set to 5, and the border grid cluster is ignored, because the number of clusters that are too small is often caused by sensor noise, so the present invention ignores these clusters; when the size of the border grid exceeds the set maximum threshold, the maximum threshold is set to a resolution of 2m / grid, the border grid is subjected to principal component analysis, the direction of the long axis of the border grid shape is calculated, and the border grid is recursively split in the long axis direction, and the process is recursively performed until all border grid clusters are less than the set maximum threshold. By screening the border grid clusters and recursively performing large-size border grids to achieve recursive detection and updating of the border grid, the amount of calculation is reduced.
[0103] Furthermore, in step S3, in order to generate border grids only near the occupied grids of the building so that the robot can focus on exploring the boundaries of the building, it is necessary to determine whether a grid belongs to the target building. The method for determining whether a grid belongs to the target building is as follows: using the union-find algorithm, add a root node 0 point information to each grid. The algorithm flow is as follows: Figure 8 As shown in the figure, when the robot is initialized and started, the grids constructed by its initial point cloud are merged, and the root node with the most child nodes is recorded as vbd. Each time a point cloud is inserted into the map where the occupied grid is located, the newly generated occupied grid and its adjacent grids are merged, and the value of its root node is updated. After the occupied grids are merged, the grids that are spatially connected to vbd will have the same root node, while the grids that are not spatially connected to vbd will not have the same root node. Then, by judging whether the current occupied grid has the same root node as vbd, it can be judged whether the current occupied grid is part of the building. After determining the occupied grid of the target building, the extraction of the border grid can be completed.
[0104] Further, such as Fig. 9 As shown, in step S5, a certain border grid c i The center point of the cluster is the center of the circle, and the radius step length r is fixed. step With the angle step θstep, sampling is performed in the robot's drivable area, and the resulting view set is VP i .
[0105] Preferably, in step S6, the coverage rate is used to evaluate the degree to which a perspective can actually observe its corresponding grid cluster. The coverage rate of a perspective is the ratio of the number of corresponding border grids that can be seen at this perspective to the number of original border grids. Based on this, the best perspective selected by the perspective scoring function is The calculation formula is:
[0106]
[0107] in is the perspective with the largest coverage in the perspective set, f dist Represents the distance between the center of the border grid cluster and the current position of the robot, d max is the distance threshold, M is the map coordinate system, R is the robot coordinate system, and P is the robot's position. The best perspective selected by this scoring function has sufficient coverage and is within the longest distance of a single exploration, thus ensuring the effective execution of the exploration task and obtaining the highest scoring perspective set.
[0108] Furthermore, in step S8, during the robot walking process, according to the characteristics of the active reconstruction task, by constructing a pose factor graph, the currently observed building point cloud and the reconstructed map are used to perform loop detection and correct the robot pose, and the method of using the robot's currently observed point cloud to correct the robot's pose and construct a point cloud subgraph is as follows:
[0109] Step b1. Obtain the observation point cloud of the current robot. Due to the non-repetitive scanning characteristics of the Livox Horizon laser radar, when observing a building, a single-frame point cloud can only scan part of the building surface within the radar field of view. Therefore, it is necessary to construct a point cloud sub-map of the current observation in time to make the scanned point cloud as dense as possible. The point cloud sub-map is in the form of a hash grid map. The hash grid map is as follows: for each point to be inserted into the map, obtain its 3D grid index according to the resolution of the map, and then search the hash table for the grid corresponding to the grid index;
[0110] Step b2. Fig.10As shown in the figure, when the robot moves to the radius of the next viewing angle, the point cloud subgraph is constructed using the currently observed point cloud. When the robot executes to the position of the viewing angle, the current point cloud subgraph is aligned with the reconstructed map, and the alignment result is added to the factor graph as a unary edge. In step b1, the hash subgraph corresponding to the hash grid map is constructed using a two-way alignment strategy. First, the point cloud collected by the lidar is projected into the world coordinate system according to the information of the current inertial measurement unit IMU to obtain the point cloud. If the number of point cloud frames or the number of three-dimensional points of the current hash subgraph is less than the set threshold, the point cloud in the world coordinate system is directly inserted into the hash subgraph. The number of point cloud frames inserted in this way is set to k; otherwise, all point clouds in the hash subgraph are aligned to the coordinate system of the new point cloud and re-added to the hash subgraph together with the newly acquired point cloud; finally, the pose information of the hash subgraph is updated; when a subgraph is constructed, the first k frames of point clouds are extracted from the hash grid map and re-aligned with the remaining point clouds to ensure the consistency of the point clouds. In this algorithm, the point cloud of the hash subgraph is realigned to the coordinate system of the new point cloud in order to directly use the latest pose when updating the subsequent odometer when constructing the factor graph optimization.
[0111] Further, such as Fig.11 As shown, the factor graph is constructed by the GTSAM algorithm to construct the optimization problem and update the pose. The factor graph construction algorithm is coupled with the robot's path planning and navigation method in step S7 to generate the robot's positioning system. The coupling steps are as follows:
[0112] Step c1. When the robot moves from the current view to the next view, the binary factor connecting the pose variables of the two views is added to the factor graph ( Fig.11 The odometer factor in the , which is used to constrain the relative transformation relationship between the two pose variables. The inertial odometer poses of these two perspectives are given by the pose estimator and are recorded as Then the relative position of the binary factor is:
[0113]
[0114] Step c2. When the robot drives to the next viewing angle, the point cloud of the current point cloud sub-graph is registered with the building map, and the registration result is added to the factor graph as a one-dimensional observation result, that is, the one-dimensional edge mentioned above ( Figure 8 The global registration factor in ); Here we analyze the effectiveness of the global registration factor. The premise for the point cloud registration algorithm to obtain stable results is that there needs to be a high overlap between the two point clouds, and this premise is guaranteed by the front-end perspective and path planning algorithm, such as Fig.11As shown in the figure, the sub-map is always constructed at the position of the border grid (the gray vertically arranged grid on the far right). From the definition of the border grid in the above step S3, it can be seen that the border grid is the intersection of the known occupied grid and the unknown grid. Therefore, it can be ensured that the newly constructed point cloud sub-map has enough overlapping area with the previous map (the known grid part in the point cloud sub-map) and can explore enough areas.
[0115] Step c3. If the Euclidean distance and yaw angle between the two viewpoints are less than the set threshold, the two point cloud sub-images will be registered separately. When constructing the point cloud sub-image, the observed point cloud has been converted to the world coordinate system. Due to the existence of the pose estimator error, the world coordinate system when constructing the first sub-image is not completely consistent with the world coordinate system when constructing the second sub-image. Based on this inconsistency, the constraints can be obtained as follows:
[0116]
[0117] in, Represents the inverse of the three-dimensional transformation in the map coordinate system of the viewpoint vp1; Indicates the transformation from the map coordinate system where the perspective vp2 is located to the map coordinate system where the perspective vp1 is located; Represents the three-dimensional transformation in the map coordinate system of the perspective vp2;
[0118] Step c4. When the robot walks according to the path planning and is about to execute to the next viewpoint, the posture of all current viewpoints will be updated, and the point cloud sub-map and the point cloud and grid of the global map will be adjusted accordingly.
[0119] The pose estimator used in this embodiment is Fast-LIO2. In some relatively open outdoor scenes, pose estimation is not accurate enough due to scene degradation. Fast-LIO2 does not have loop detection, so when pose estimation fails, the estimator has no strategy to correct it. Therefore, by constructing a pose factor graph, the currently observed building point cloud and the constructed map are used for loop detection and correction, making the robot's positioning system more robust and the constructed map more accurate.
[0120] The embodiments provided by the present invention are described in detail above. Specific examples are used herein to describe the principles and implementation methods of the present invention, and the description of the above embodiments is only used to help understand the core idea of the present invention. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present invention, the present invention can also be improved and modified in a number of ways, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.
Claims
1. An active reconstruction method for buildings, characterized in that: The steps include: Step S1. Scan the building through the robot's laser radar, and perform coordinate conversion on each frame of point cloud obtained in the scanning area, and use each frame of point cloud to update the map of the building to complete the reconstruction of the building map, and the reconstructed map of the building is a raster map; Step S2. For the map reconstructed from the building in step S1, use the point cloud to update the occupied grids of the building in the grid map and the non-occupied grids within the set radius of the occupied grid; Step S3. Whenever each frame of point cloud in step S2 is used to update the occupied grid and the unoccupied grid of the grid map, the axis-aligned bounding box of the point cloud is calculated, and the grids that are spatially adjacent to the occupied grid of the building and adjacent to the unknown grid are extracted as border grids within the axis-aligned bounding box, and any cluster of border grids that intersect with the axis-aligned bounding box is deleted to complete the extraction of the border grids; Step S4. After the border grids are extracted in step S3, the border grids are clustered using the region growing algorithm so that the border grids connected in space form a border grid cluster. The border grid clusters are screened by setting a threshold to select the border grid clusters that meet the set threshold range; Step S5. Extract the border grids in step S4 and cluster them according to their spatial position relationship. Let the set of border grid clusters be C frt , the robot observes the border grid clusters until there are no border grid clusters in the environment or all border grid clusters cannot be seen in the robot's drivable area; for each border grid cluster C frt By sampling the perspective of the border grid clusters in the robot's drivable area, the corresponding perspective set VP is obtained. i ; Step S6. After obtaining the perspective set VP of the border grid cluster i Finally, the perspective is scored according to the information that can be observed by the border grid cluster and the position of the border grid cluster to the current robot, so as to obtain the best observation perspective of each border grid cluster in the current environment, and then obtain the highest scoring perspective set; Step S7. After obtaining the highest scoring viewpoint set, solve the traveling salesman problem to find the next best viewpoint, and complete the robot's path planning and navigation according to the next best viewpoint; Step S8. After completing the path planning of step S7, the robot's active exploration and path planning mode is a planning-execution-observation cycle. The robot executes the planned path, and during the walking process, the building is scanned by the laser radar in the positioning module, and the occupied grid of the building is expanded according to the set radius, and the expanded free grid located around the occupied grid is obtained to complete the free grid, complete the map update, and complete the perspective sampling of step S5 at the same time, so that the robot completes the active exploration and map reconstruction of the building through path planning; The positioning module in step S7 includes a three-dimensional perception sensor and an inertial measurement unit IMU, and the three-dimensional perception sensor includes a laser radar and a drive motor for adjusting the yaw angle and pitch angle of the laser radar.
2. The active reconstruction method for buildings according to claim 1, characterized in that: The method used in step S2 to update the occupied grid with the point cloud is as follows: for each three-dimensional point of the current point cloud collected by the robot, the three-dimensional grids passed by the line connecting it to the center of the three-dimensional perception sensor are calculated, and the non-occupancy probability of these grids is increased to form an unoccupied grid; then, for the grid where the three-dimensional point is located, its occupation probability is increased, thereby completing the map update of a three-dimensional point. For the map reconstructed by the building, only the non-occupied grids near the occupied grid are updated, while the unknown state of other grids is retained.
3. The active reconstruction method for buildings according to claim 1, characterized in that: The step S2 further includes completing the free grid within the set radius of the occupied grid, wherein the free grid is a non-occupied grid. The free grid completion method includes the following steps: Step a1. Expand the occupied grid according to the set radius, and set the expanded new grid as the grid set V dl ; Step a2. Traverse the grid set V dl And find the grid set outside the field of view of the 3D perception sensor, marked as V iv ; Step a3: Project light from the position of the 3D sensing sensor to the remaining grids after step a2, and mark the grid set blocked by the building, denoted as V ocl ; Step a4. By deleting the grid sets marked by steps a2 and a3, the remaining completed free grid set is expressed as: V free ={v|v∈V dl \(V iv ∪V_ocl)}。 4. The active reconstruction method for buildings according to claim 1, characterized in that: In step S4, when the number of border grid clusters is less than a set minimum threshold, the border grid cluster is ignored. When the size of the border grid exceeds the set maximum threshold, principal component analysis is performed on the border grid to calculate the direction of the major axis of the border grid shape, and the border grid is recursively split in the major axis direction. This process is recursively performed until all border grid clusters are less than the set maximum threshold.
5. The active reconstruction method for buildings according to claim 1, characterized in that: In step S3, in order to generate border grids only near the occupied grids of the building so that the robot can focus on exploring the boundaries of the building, it is necessary to determine whether a certain grid belongs to the target building. The method for determining whether a grid belongs to the target building is as follows: using a union-find algorithm, a root node information is added to each grid. When the robot is initialized, the grids constructed by its initial point cloud are merged, and the root node with the most child nodes is recorded as vbd. Each time a point cloud is inserted into the map where the occupied grid is located, the newly generated occupied grid will be merged with its adjacent grids, and the value of its root node will be updated. After merging the occupied grids, the grids connected to vbd in space will have the same root node, while the grids not connected to vbd in space will not have the same root node. Then, by determining whether the current occupied grid has the same root node as vbd, it can be determined whether the current occupied grid is part of the building. After determining the occupied grid of the target building, the extraction of the border grid can be continued.
6. The active reconstruction method for buildings according to claim 1, characterized in that: In step S6, the coverage rate is used to evaluate the degree to which a perspective can actually observe its corresponding grid cluster. The coverage rate of a perspective is the ratio of the number of corresponding border grids that can be seen at this perspective to the number of original border grids. Based on this, the best perspective selected by the perspective scoring function is The calculation formula is: in is the perspective with the largest coverage in the perspective set, f dist Represents the distance between the center of the border grid cluster and the current position of the robot, d max is the distance threshold to be set, M is the map coordinate system, R is the robot coordinate system, and P is the position of the robot.
7. The active reconstruction method for buildings according to claim 1, characterized in that: In step S8, during the robot walking process, according to the characteristics of the active reconstruction task, by constructing a pose factor graph, the currently observed building point cloud and the reconstructed map are used to perform loop detection and correct the robot pose. The method of correcting the robot pose using the robot's currently observed point cloud is as follows: Step b1. Obtain the observation point cloud of the current robot, and construct a point cloud sub-graph of the current observation in time, so that the scanned point cloud is as dense as possible. The point cloud sub-graph is in the form of a hash grid map. The hash grid map is as follows: for each point to be inserted into the map, obtain its three-dimensional grid index according to the resolution of the map, and then search the hash table for the grid corresponding to the grid index; Step b2. When the robot moves to the radius of the next viewing angle, the point cloud subgraph is constructed using the currently observed point cloud. When the robot executes to the position of the viewing angle, the current point cloud subgraph is aligned with the reconstructed map, and the alignment result is added to the factor graph as a unary edge. In step b1, the hash subgraph corresponding to the hash grid map is constructed using a two-way alignment strategy. First, the point cloud collected by the lidar is projected into the world coordinate system according to the information of the current inertial measurement unit IMU to obtain the point cloud. If the number of point cloud frames or the number of three-dimensional points of the current hash subgraph is less than the set threshold, the point cloud in the world coordinate system is directly inserted into the hash subgraph. Let the number of point cloud frames inserted in this way be k; otherwise, all point clouds in the hash subgraph are aligned to the coordinate system of the new point cloud, and are re-added to the hash subgraph together with the newly acquired point cloud; finally, the pose information of the hash subgraph is updated; when a subgraph is constructed, the first k frames of point clouds are extracted from the hash grid map and re-aligned with the remaining point clouds to ensure the consistency of the point clouds.
8. The active reconstruction method for buildings according to claim 7, characterized in that: The factor graph is constructed by the GTSAM algorithm to construct the optimization problem and update the pose. The factor graph construction algorithm is coupled with the robot's path planning and navigation method in step S7 to generate the robot's positioning system. The coupling steps are as follows: Step c1. When the robot travels from the current view to the next view, the binary factor connecting the pose variables of the two views is added to the factor graph. The binary factor is used to constrain the relative transformation relationship between the two pose variables. The inertial odometer poses of the two views are given by the pose estimator and are recorded as Then the relative position of the binary factor is: Step c2. When the robot moves to the next viewing angle, the point cloud of the current point cloud sub-map is registered with the building map, and the registration result is added to the factor graph as a unary observation result; Step c3. If the Euclidean distance and yaw angle between the two viewpoints are less than the set threshold, the two point cloud sub-images will be registered separately. When constructing the point cloud sub-image, the observed point cloud has been converted to the world coordinate system. Due to the existence of the pose estimator error, the world coordinate system when constructing the first sub-image is not completely consistent with the world coordinate system when constructing the second sub-image. Based on this inconsistency, the constraints can be obtained as follows: in, Represents the inverse of the three-dimensional transformation in the map coordinate system of the viewpoint vp1; Indicates the transformation from the map coordinate system where the perspective vp2 is located to the map coordinate system where the perspective vp1 is located; Represents the three-dimensional transformation in the map coordinate system of the perspective vp2; Step c4. When the robot walks according to the path planning and is about to execute to the next viewpoint, the posture of all current viewpoints will be updated, and the point cloud sub-map and the point cloud and grid of the global map will be adjusted accordingly.
9. A three-dimensional perception sensor used in the active reconstruction method for buildings as claimed in any one of claims 1 to 8, characterized in that: The three-dimensional perception sensor comprises: A pan-tilt chassis, a rotating member is mounted on the pan-tilt chassis, and the rotating member can rotate relative to the pan-tilt chassis; A pan / tilt bracket, the pan / tilt bracket being mounted on the upper end surface of the rotating member so that the rotating member drives the pan / tilt bracket to rotate, and a connecting rod lifting mechanism is arranged on the pan / tilt bracket; A driving motor, wherein the driving motor comprises a first motor and a second motor, wherein the first motor is mounted on the pan / tilt chassis and is used to drive the rotating member to rotate, and the second motor is mounted on the pan / tilt bracket and is used to drive the connecting rod lifting mechanism to move, so that the connecting rod lifting mechanism moves up and down at one end away from the pan / tilt chassis; A laser radar, wherein the laser radar is connected to a rotating block at an upper end of the connecting rod lifting mechanism through a mounting plate, so that the connecting rod lifting mechanism drives the laser radar on the mounting plate to perform a pitch motion; A gyroscope, wherein the gyroscope is arranged on one side of the laser radar so that the gyroscope moves together with the laser radar; The first motor drives the gimbal bracket to rotate so that the laser radar has the freedom of yaw angle, and the second motor drives the rotating block at the upper end of the connecting rod lifting mechanism to rotate so that the laser radar has the freedom of pitch angle.
10. The three-dimensional perception sensor according to claim 9, characterized in that: The connecting rod lifting mechanism includes a rotating rod connected to the output shaft of the second motor and a lifting rod connected to the rotating rod, the lifting rod is vertically arranged, one end of the rotating rod is connected to the output shaft of the second motor, the other end of the rotating rod is connected to one end of the lifting rod, the other end of the lifting rod is connected to the rotating block, the rotating block is rotatably connected to the pan-tilt bracket so that the lifting rod drives the rotating block to rotate, and the mounting plate is installed on the rotating block so that the mounting plate performs a pitch motion when the rotating block rotates.
Citation Information
Patent Citations
View-variable three-dimensional reconstruction device based on laser radar swinging
CN106154285A
Method and device for actively constructing environment scene map by intelligent agent and exploration method
CN113111192A
Unmanned aerial vehicle navigation map construction system and method based on image three-dimensional reconstruction technology
CN111599001A
Three-dimensional point cloud map construction method and system
CN114119920A