Front-end odometry determination method and device for indoor mapping and storage medium

CN117804434BActive Publication Date: 2026-08-18BEIJING ZHIXINGZHE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211180478.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-26
Publication Date
2026-08-18
Estimated Expiration
2042-09-26

AI Technical Summary

Technical Problem

[0008]为了至少解决现有技术中单线激光进行前端里程计的计算对于大面积室内地图构建时前端误差比较大,内存占用高,无法满足商用的大面积室内地图构建需求;对室内常见的走廊等低结构特征环境效果不好,容易出现前端里程计推算失效的问题

Benefits of technology

[0018]本发明实施例的有益效果在于:保证低成本的限制,在移动设备中使用了低成本的惯性测量单元和轮速计以及单线激光采集的原始激光数据,为了使低成本的设备能够适用于低特征环境(例如,大面积室内环境),利用低成本的惯性测量单元和轮速计推算的位姿估计队列对单线激光的原始激光数据进行补偿,为单线激光的原始激光数据补偿更丰富的激光点,从而满足大面积室内地图构建需求。在满足需求后,进一步进行两轮位姿优化,前端里程计精度提高、误差减少,可有效降低后端优化压力,减少闭环检测的计算时间及误闭环概率,这对于大面积场景的建图至关重要。低成本及大面积场地稳定的建图能力,能够增加机器人应用环境的普适性,推动室内商业机器人快速落地。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117804434B_ABST
    Figure CN117804434B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a front-end odometer determination method for indoor mapping. The method comprises: based on the data collected by the inertial measurement unit and the wheel speed meter of the mobile device in real time, performing dead reckoning to obtain a pose estimation queue; based on the pose estimation queue, compensating the original laser data of the single-line laser to generate actual laser point cloud data; based on the actual laser point cloud data, detecting the feature environment indoors; according to the feature environment detection result, selecting the corresponding laser frame data in the original laser data to predict the pose of the mobile device; and combining the actual laser point cloud data, optimizing the pose prediction result. Embodiments of the present application enable low-cost devices to be applicable to low-feature environments, and the pose estimation queue calculated by the low-cost inertial measurement unit and the wheel speed meter compensates the single-line laser data to obtain more abundant laser points, thereby meeting the demand for large-area indoor map construction, and ensuring the stable mapping capability of low-cost and large-area sites.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of autonomous driving, and more particularly to a method for determining the odometer reading of a front-end device for indoor mapping, as well as an electronic device and storage medium. Background Technology

[0002] With the development of autonomous driving and robotics technologies, the use of autonomous indoor robots to perform specific tasks has become a hot research topic in the industry. Indoor robots can effectively reduce costs and improve work efficiency in automated tasks such as building cleaning, floor washing, and vacuuming, and these advantages are driving the rapid development of commercial robots.

[0003] Currently, commercial single-line laser robots primarily use cameras or lasers as their main sensors for environmental perception. Before automated operation, a laser or visual reference map needs to be pre-built. Optical sensors are widely used due to their low cost, strong environmental adaptability, and high accuracy. Therefore, the construction of low-cost single-line laser maps suitable for large indoor areas has become a key technology for automated indoor robot operation.

[0004] In existing technologies, indoor robot autonomous driving mapping and localization mainly employ two methods: laser and vision. Laser mapping is further divided into multi-line laser mapping (primarily 16 lines) and single-line laser mapping. Vision mapping utilizes SLAM (Simultaneous Localization and Mapping), which refers to a robot equipped with specific sensors building a model of its environment and estimating its own motion during movement, without prior environmental information. It primarily consists of a visual front-end and an optimization back-end. The visual front-end can also be called visual front-end odometry. Key mapping schemes for visual front-ends include ORB (Oriented Fast and Rotated Brief, feature extraction algorithm) and Vins (Visual Inertial Navigation System). Multi-line laser-based mapping front-end schemes include LOAM (Lidar Odometry and Mapping) and NDT (Normal Distribution Transformation). Single-line indoor mapping front-ends primarily use gmapping and cartographer.

[0005] In the process of realizing this invention, the inventors discovered at least the following problems in the related technology:

[0006] Visual front-end odometry estimates camera motion based on information from adjacent images; however, its calculations are highly dependent on the environment, resulting in relatively low accuracy. Multi-line laser front-end odometry is relatively expensive, making it difficult to control costs for indoor commercial use and thus failing to meet commercial requirements. In contrast, single-line laser odometry offers advantages such as low cost, strong environmental adaptability, and high accuracy.

[0007] However, the current single-line laser gmapping solution uses a particle filtering-based method, which results in large front-end errors and high memory consumption when building large-area indoor maps, failing to meet the commercial needs for building large-area indoor maps. The cartographer solution has high requirements for inertial measurement units, making it difficult to meet the low-cost requirements of inertial measurement units. Furthermore, the front-end odometry of these solutions is not effective in low-structure environments such as common indoor corridors, and is prone to front-end odometry calculation failure. Summary of the Invention

[0008] To address the issues of large front-end odometry errors and high memory consumption in existing single-line laser odometry calculations for large-area indoor map construction, which fail to meet commercial requirements for such mapping, and the poor performance in low-structure environments such as corridors, leading to odometry calculation failures, this invention provides a method for determining front-end odometry for indoor mapping.

[0009] Based on the data collected in real time by the inertial measurement unit and wheel speedometer of the mobile device, the trajectory is calculated to obtain the pose estimation queue;

[0010] Based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data.

[0011] Based on the actual laser point cloud data, indoor characteristic environment detection is performed;

[0012] Based on the characteristic environment detection results, the corresponding laser frame data in the original laser data is selected to perform pose prediction of the mobile device, and the pose prediction result is obtained.

[0013] The pose prediction results are optimized by combining the actual laser point cloud data.

[0014] In a second aspect, an electronic device is provided, comprising: at least one processor, and a memory communicatively connected to the at least one processor, wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the steps of the front-end odometer determination method for indoor mapping according to any embodiment of the present invention.

[0015] Thirdly, embodiments of the present invention provide a mobile device, including a body and an electronic device according to any embodiment of the present invention mounted on the body.

[0016] Fourthly, embodiments of the present invention provide a storage medium storing a computer program thereon, characterized in that, when the program is executed by a processor, it implements the steps of the front-end odometer determination method for indoor mapping according to any embodiment of the present invention.

[0017] Fifthly, embodiments of the present invention also provide a computer program product that, when the computer program product is run on a computer, causes the computer to execute the front-end odometer determination method described in any one of the embodiments of the present invention.

[0018] The beneficial effects of this invention are as follows: While maintaining low cost, it utilizes a low-cost inertial measurement unit (IMU), wheel velocities, and raw laser data acquired via single-line laser scanning in mobile devices. To enable the low-cost device to be suitable for low-feature environments (e.g., large-area indoor environments), a pose estimation queue calculated by the low-cost IMU and wheel velocities is used to compensate for the raw laser data of the single-line laser, providing richer laser points to meet the needs of large-area indoor map construction. After meeting these requirements, further two-wheel pose optimization is performed, improving the accuracy and reducing the error of the front-end odometry, effectively reducing the optimization pressure on the back-end and decreasing the computation time and false loop closure probability for closed-loop detection. This is crucial for mapping large-area scenes. The low-cost and stable mapping capability in large-area environments increases the versatility of robot applications and promotes the rapid deployment of indoor commercial robots. Attached Figure Description

[0019] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0020] Figure 1 This is a flowchart of a front-end odometer determination method for indoor mapping provided by an embodiment of the present invention;

[0021] Figure 2 This is a schematic diagram of an embodiment of an electronic device for determining the odometer at the front end of an indoor mapping system, provided by an embodiment of the present invention. Detailed Implementation

[0022] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0023] Those skilled in the art will recognize that embodiments of this application can be implemented as a system, apparatus, device, method, or computer program product. Therefore, this disclosure can be specifically implemented in the following forms: entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.

[0024] For ease of understanding, the technical terms used in this application are explained below:

[0025] The term "mobile device" as used in this application includes, but is not limited to, vehicles with the six levels of autonomous driving technology (L0-L5) as defined by the Society of Automotive Engineers International (SAE International) or the Chinese national standard "Classification of Driving Automation for Automobiles".

[0026] In some embodiments, the mobile device may be a vehicle or robot having various functions, such as:

[0027] (1) Passenger transport function, such as family cars, buses, etc.;

[0028] (2) Cargo carrying function, such as ordinary trucks, box trucks, trailers, enclosed trucks, tank trucks, flatbed trucks, container trucks, dump trucks, special structure trucks, etc.

[0029] (3) Tool functions, such as logistics delivery vehicles, automated guided vehicles (AGVs), patrol vehicles, cranes, hoists, excavators, bulldozers, loaders, road rollers, loaders, off-road engineering vehicles, armored engineering vehicles, sewage treatment vehicles, sanitation vehicles, vacuum trucks, floor scrubbers, water sprinkler trucks, sweeping robots, food delivery robots, shopping guide robots, lawnmowers, golf carts, etc.

[0030] (4) Entertainment functions, such as recreational vehicles, amusement park automatic driving devices, balance bikes, etc.;

[0031] (5) Special rescue functions, such as fire trucks, ambulances, power repair vehicles, and engineering emergency rescue vehicles.

[0032] like Figure 1The diagram shows a flowchart of a front-end odometer determination method for indoor mapping according to an embodiment of the present invention, including the following steps:

[0033] S11: Based on the real-time data collected by the inertial measurement unit and wheel speedometer of the mobile device, the trajectory is calculated to obtain the pose estimation queue;

[0034] S12: Based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data;

[0035] S13: Based on the actual laser point cloud data, perform indoor feature environment detection;

[0036] S14: Based on the feature environment detection results, select the corresponding laser frame data in the original laser data to perform pose prediction of the mobile device, and obtain the pose prediction result;

[0037] S15: Optimize the pose prediction result by combining the actual laser point cloud data.

[0038] In this embodiment, the method can be adapted to mobile devices, specifically, it can be equipped on a wheel-speed robot. The front-end odometry calculation is designed based on cameras or lasers as environmental perception sensors. This method is suitable for low-cost front-end odometry calculation for large-area indoor mapping, and includes: inertial measurement unit and wheel speedometer trajectory estimation, single-line laser preprocessing and low-feature environment detection, and single-line laser odometry calculation based on low-feature environment detection.

[0039] For step S11, the calculation of the front-end odometer for indoor mapping requires the use of an IMU (Inertial Measurement Unit) and a wheel speed meter. The inertial measurement unit detects and measures the acceleration and rotation of the moving device, while the wheel speed meter records the distance and angle traveled by the moving device.

[0040] In this method, because a low-cost inertial measurement unit (IMU) and wheel velocity meter are used, the accuracy of the IMU and wheel velocity meter is relatively low. Furthermore, indoor scenes are typically two-dimensional. Since the IMU includes three single-axis accelerometers and three single-axis gyroscopes, and the gyroscopes detect the angular velocity signal of the carrier relative to the navigation coordinate system, the angular velocity and acceleration of the object in three-dimensional space can still be measured with relatively high accuracy under low-cost conditions. The pose 1 - pose n (xoffset, yoffset, zoffset, roll, pitch, yaw) at real-time is obtained using the angular acceleration information from the IMU and the velocity information from the wheel velocity meters. Here, xoffset, yoffset, and zoffset are the translational deviations of the X, Y, and Z axes, respectively, and roll, pitch, and yaw are the roll, pitch, and yaw angles around the X, Y, and Z axes, respectively. The inertial measurement unit (IMU) provides high-frequency data at 100Hz, and pose estimation for both IMU data and flight speed / track calculations is performed at 100Hz. Furthermore, the mobile device's trajectory is introduced, which shows the real-time position 1-position n(x, y, z). Inserting the real-time pose into the trajectory yields the pose estimation queue for the mobile device within the trajectory calculation, which is then used for subsequent laser preprocessing and compensation of the original laser data.

[0041] As one implementation method, before compensating for the raw laser data of the single-line laser, the pose estimation queue is corrected in real time using a laser odometry. In this embodiment, to ensure that the low-cost trajectory estimation angle calculation does not diverge rapidly, real-time angle correction using a laser odometry is employed. This further ensures the accuracy of the trajectory estimation.

[0042] For step S12, considering low cost, this method uses a single-line laser, which is less expensive. Preprocessing and compensation of the raw laser data for the single-line laser are necessary. Preprocessing includes removing invalid points from the raw laser data and resolving the laser coordinates. Invalid point removal is mainly based on filtering the effective distance under different laser reflectivities, thus eliminating some invalid laser points. Laser coordinate resolution involves projecting the representation of the laser points in polar coordinates onto a Cartesian coordinate system. These two preprocessing steps lay the groundwork for compensating the raw laser data.

[0043] As one implementation method, in this embodiment, based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data, including:

[0044] Determine the start and end times of the laser points in the current frame of the original laser data, and search for the pose estimation at the corresponding time in the pose estimation queue.

[0045] Calculate the time interval between each laser point and the laser endpoint in the current frame, perform spherical interpolation on the pose estimation at the time point according to the time interval, and perform compensation based on the spherical interpolation to generate actual laser point cloud data.

[0046] In this embodiment, during the movement of the mobile device, laser points are continuously emitted. After being emitted, these laser points are transmitted back to the mobile device through various means (e.g., reflection, refraction, etc.). During this process, the start and end times of the laser points can be recorded. Using the start and end times of the current laser frame, the nearest pose estimate is found in the trajectory estimation pose queue. The time interval between each laser point and its endpoint in the current frame is calculated. Spherical interpolation is performed on the time intervals of adjacent times, and the determined spherical interpolation is compensated into the coordinate system of the laser coordinate analysis in the preprocessed laser point coordinates. All compensated laser point coordinates constitute the actual laser point cloud data.

[0047] For step S13, low-feature environment detection is mainly based on the actual laser point cloud data after the above preprocessing to detect indoor feature environment. For example, indoor feature environment includes corridor environment. When the mobile device is detected to be in the corridor environment, the front-end odometer can adopt the "light laser, heavy track" estimation scheme.

[0048] As one implementation method, the actual laser point cloud data is traversed according to the laser scanning order to obtain a set of line feature vectors;

[0049] Specifically, the entire laser point cloud is traversed according to the laser scanning sequence to find the start and end points of the line features. Assuming a certain laser point is taken as the new starting point s1 of the line feature, the point cloud is traversed backwards, and each point is called p. t .

[0050] If the current laser point p t If the distance to the starting point is less than the line feature length threshold `line_theshold`, then continue traversing the point cloud; if p t A point whose distance from the starting point s1 exactly satisfies the line feature length threshold line_theshold is called the minimum endpoint second_p of the current line feature. t .

[0051] If the current laser point p t Compared to the previous laser point last_p t If the distance is greater than the laser jump threshold `jump_theshold`, then the laser is considered to have jumped, and the current point is taken as the new starting point of the line feature `s1`. If the laser line feature corresponding to the previous laser (s1-last_p) is greater than the laser jump threshold `jump_theshold`, then the laser jump is considered to have occurred, and the current point is taken as the new starting point of the line feature `s1`. tIf the length has exceeded line_theshold, then the previous set of laser line features is considered to have been successfully constructed, by connecting the starting point s1 with the previous point last_p. t Calculate the line feature vector (the difference between the coordinate vectors of two points) and store it in the line feature vector set; otherwise, it is considered that the previous set of laser line features is too short, and all points of the previous set of laser line features are discarded.

[0052] If the minimum endpoint of the current laser line feature is second_p t If the setup was successful, then compare the current point p. t Connect the starting point s1 to the current point p t Minimum endpoint second_p t The angle deviation between the two lines is calculated. If the deviation is less than the angle threshold, the current point is considered to belong to the current laser line feature, and the process continues to traverse the next point to check if it belongs to the current line feature. If the deviation is greater than the angle threshold, the point is considered not to belong to the line feature corresponding to the previous point. The line feature corresponding to the point is saved, and the current point is used as the new starting point s1 to return to b and continue traversing the next point. After the above traversal, a set of line feature vectors determined from each laser point is obtained.

[0053] Further, the set of line feature vectors is randomly sampled, and at least two sets of line features in the set of line feature vectors are combined to obtain multiple line feature combinations. The angle deviation of the multiple line feature combinations is determined. A preset number of angle deviations are selected from the determined multiple angle deviations and averaged.

[0054] The line feature vectors in the set of line feature vectors are randomly sampled. For example, two different line feature vectors are randomly selected as a group of line feature combinations, and 20 groups of line feature combinations are sampled in the above random selection method. In each group of line feature combinations, the angle deviation of the two different line feature vectors is calculated. These 20 groups of angle deviations are sorted, for example, in ascending order. After sorting, a preset number of angle deviation values ​​are selected; for example, the average angle deviation (angle_offset_score) of the first 18 groups of angle deviations can be calculated. In actual implementation, there is no limit to the number of sampling groups; it can be adjusted according to specific needs. For example, maintaining the selection of the first 90% of the angle deviations is acceptable. If 25 groups of line features are sampled using the random selection method, then the preset number can be set to 23 groups.

[0055] If the average value of the preset number of angle deviations is less than the environmental judgment threshold, it is determined to be a low-characteristic indoor environment.

[0056] If the mean angle deviation calculated in the above steps, angle_offset_score, is less than the low-feature environment judgment threshold, then the laser is considered to be in a low-feature environment.

[0057] For step S14, the calculation of single-line laser odometry is optimized based on the results of low-feature (indoor feature) environment detection and trajectory estimation. It mainly consists of the following steps: calculation of laser keyframe predicted pose and two rounds of optimization.

[0058] As one implementation method, selecting the corresponding laser frame data from the original laser data to predict the pose of the mobile device based on the characteristic environment detection results includes:

[0059] When the feature environment detection result is an indoor low-feature environment, pose prediction is performed using the trajectory of the previous laser keyframe.

[0060] When the environmental feature detection result is not an indoor low-feature environment, pose prediction is performed using the trajectory of the previous laser continuous frame.

[0061] In this embodiment, the calculation of the laser keyframe predicted pose can adopt two prediction schemes: (1) trajectory estimation based on the previous laser keyframe; (2) trajectory estimation based on the previous laser. The latter places more trust in the results of continuous frame laser calculations. That is, when the current environment is detected to be a low-feature environment or the effective points of the previous laser matching do not meet the threshold, the trajectory estimation result is tended to be trusted, and the trajectory estimation based on the previous laser keyframe is adopted; otherwise, the results of continuous frame laser calculations are tended to be trusted, and the estimation is performed based on the previous laser. In this way, the pose prediction of the mobile device is obtained. Among them, the laser keyframe refers to: since not every frame of matched point cloud data can be added to the point cloud data, it is necessary to extract the keyframes. Specifically, it can be that the effective points of laser matching meet the preset threshold, or a frame taken at intervals.

[0062] For step S15, after the pose prediction determined in step S14, a round of pose optimization combining the laser point cloud and keyframe prediction is performed using nonlinear pose graph optimization (for example, the optimization library G2O can be used, as well as Ceres, gtsam, etc., without any specific restrictions), to construct a local laser map using multiple keyframes around the current laser keyframe.

[0063] Specifically, optimization can be achieved in three aspects:

[0064] 1. Optimize vertex and constraint design:

[0065] For example, a local laser map can be constructed using 50 keyframes surrounding the current laser keyframe in the actual laser point cloud data.

[0066] Optimize the position and heading angle (x, y, yaw) of the mobile device;

[0067] The pose prediction results are optimized by constraining linear deviation using the local laser map.

[0068] In this embodiment, the optimized vertex is the current vehicle position and heading angle (x, y, yaw), the laser point optimization constraint is the distance between each laser point in the current frame and the nearest point on the local laser map under the optimized pose, and the trajectory prediction constraint is the linear deviation between the current prediction and the optimized pose.

[0069] 2. Design of motion state-based optimization strategies

[0070] When the mobile device is detected to be turning at a speed exceeding a preset speed, the fixed heading angle (yaw) of the mobile device is optimized using laser point constraints; after the heading angle (yaw) is optimized, the fixed heading angle is used to optimize the position (x, y) of the mobile device.

[0071] When the mobile device is detected to be in a non-rotating state, the position and heading angle (x, y, yaw) of the mobile device are optimized using laser point constraints and trajectory prediction constraints.

[0072] In this embodiment, when the vehicle is detected to be in a high-speed turning process, only laser point constraints are used. First, the vehicle position is fixed and the vehicle heading angle (yaw) is optimized separately. After the heading angle is optimized, the heading is fixed and the vehicle position (x, y) is optimized. When the vehicle is detected to be in a non-rotating state, both laser point constraints and trajectory prediction constraints are used simultaneously, and the vehicle position and heading are optimized iteratively at the same time.

[0073] 3. Optimized weight design based on low-feature environment detection

[0074] When the characteristic environment detection result is an indoor low-characteristic environment, the trajectory prediction weight is increased and the laser point constraint weight is decreased.

[0075] When the environmental feature detection result is not an indoor low-feature environment, the trajectory prediction weight is reduced and the laser point constraint weight is increased.

[0076] In this embodiment, when the current environment is detected to be in a low-feature environment (e.g., indoor environment: corridor, etc.), the features that can be collected by the laser point are relatively few, and the constraint weight of the trajectory prediction is increased; otherwise, the constraint weight of the laser point is increased.

[0077] After the first round of pose optimization, a second round of pose optimization can be performed. This second round, after optimizing the pose prediction result using the actual laser point cloud data, also includes:

[0078] When the feature environment detection result is a preset environment, based on the optimized pose prediction result, the heading angle (yaw) of the mobile device is fixed, and the position (x, y) of the mobile device is optimized. The position optimization of the mobile device includes two types of constraints: laser point constraints and error constraints between the position increment and pose prediction increment at the current time and the previous laser keyframe.

[0079] In this embodiment, the second-round pose optimization combined with trajectory extrapolation mainly optimizes the front-end odometer calculation in low-feature environments. When the current vehicle is detected to be in a low-feature environment, the heading from the first round of optimization is fixed, and the vehicle position is optimized separately. Two types of optimization constraints are used: one is laser point constraint, and the other is the error between the optimized position and the increment of the previous keyframe and the trajectory extrapolation increment. The confidence of the laser point constraint is reduced and adjustable. The weight of the second-round constraint is 100 times that of the first-round constraint.

[0080] This implementation demonstrates that, to ensure low cost, a low-cost inertial measurement unit (IMU), wheel velocities, and raw laser data acquired via single-line laser are used in the mobile device. To make the low-cost device suitable for low-feature environments (e.g., large-area indoor environments), a pose estimation queue calculated by the low-cost IMU and wheel velocities is used to compensate for the raw laser data of the single-line laser. This provides richer laser points to the raw laser data, thus meeting the needs of large-area indoor map construction. After meeting the requirements, two rounds of optimization are further performed. The accuracy of the front-end odometry is improved and the error is reduced, which can effectively reduce the pressure on the back-end optimization and reduce the calculation time and false loop closure probability of closed-loop detection. This is crucial for mapping in large-area scenes. Low-cost and stable mapping capabilities in large-area sites can increase the universality of robot application environments and promote the rapid deployment of indoor commercial robots.

[0081] This invention also provides a non-volatile computer storage medium storing computer-executable instructions that can execute the front-end odometer determination method for indoor mapping in any of the above method embodiments.

[0082] In one embodiment, the non-volatile computer storage medium of the present invention stores computer-executable instructions, which are configured as follows:

[0083] Based on the data collected in real time by the inertial measurement unit and wheel speedometer of the mobile device, the trajectory is calculated to obtain the pose estimation queue;

[0084] Based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data.

[0085] Based on the actual laser point cloud data, indoor characteristic environment detection is performed;

[0086] Based on the characteristic environment detection results, the corresponding laser frame data in the original laser data is selected to perform pose prediction of the mobile device, and the pose prediction result is obtained.

[0087] The pose prediction results are optimized by combining the actual laser point cloud data.

[0088] As a non-volatile computer-readable storage medium, it can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the program instructions / modules corresponding to the methods in the embodiments of the present invention. One or more program instructions are stored in the non-volatile computer-readable storage medium, and when executed by a processor, the front-end odometer determination method for indoor mapping in any of the above method embodiments is executed.

[0089] This invention also provides an electronic device comprising: at least one processor and a memory communicatively connected to the at least one processor, wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform a front-end odometer determination method for indoor mapping.

[0090] In some embodiments, the present invention also provides a mobile device, including a body and an electronic device according to any of the foregoing embodiments mounted on the body. The mobile device may be an unmanned vehicle, such as an unmanned sweeper, unmanned floor scrubber, unmanned logistics vehicle, unmanned passenger car, unmanned sanitation vehicle, unmanned minibus / bus, truck, mining truck, etc., or it may be a robot, etc.

[0091] In some embodiments, the present invention also provides a computer program product that, when run on a computer, causes the computer to execute any one of the front-end odometer determination methods for indoor mapping described in the embodiments of the present invention.

[0092] Figure 2 This is a schematic diagram of the hardware structure of an electronic device for a front-end odometer determination method for indoor mapping, provided in another embodiment of this application, as shown below. Figure 2 As shown, the device includes:

[0093] One or more processors 210 and memory 220, Figure 2 Taking a processor 210 as an example, the device for the front-end odometer determination method for indoor mapping may further include an input device 230 and an output device 240.

[0094] The processor 210, memory 220, input device 230, and output device 240 can be connected via a bus or other means. Figure 2 Taking the example of a connection between China and Israel via a bus.

[0095] The memory 220, as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as the program instructions / modules corresponding to the front-end odometer determination method for indoor mapping in the embodiments of this application. The processor 210 executes various functional applications and data processing of the server by running the non-volatile software programs, instructions, and modules stored in the memory 220, thereby implementing the front-end odometer determination method for indoor mapping in the above-described method embodiments.

[0096] The memory 220 may include a program storage area and a data storage area, wherein the program storage area may store the operating system and applications required for at least one function; the data storage area may store data, etc. Furthermore, the memory 220 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the memory 220 may optionally include memory remotely located relative to the processor 210, and these remote memories can be connected to the mobile device via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0097] Input device 230 can receive input numerical or character information. Output device 240 may include display devices such as a display screen.

[0098] The one or more modules are stored in the memory 220, and when executed by the one or more processors 210, they execute the front-end odometer determination method for indoor mapping in any of the above method embodiments.

[0099] The above-described product can perform the methods provided in the embodiments of this application, and has the corresponding functional modules and beneficial effects for performing the methods. Technical details not described in detail in this embodiment can be found in the methods provided in the embodiments of this application.

[0100] Non-volatile computer-readable storage media may include a stored program area and a stored data area, wherein the stored program area may store an operating system and an application program required for at least one function; the stored data area may store data created based on the use of the device, etc. Furthermore, the non-volatile computer-readable storage medium may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, the non-volatile computer-readable storage medium may optionally include memory remotely located relative to the processor, and these remote memories may be connected to the device via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0101] This invention also provides an electronic device comprising: at least one processor and a memory communicatively connected to the at least one processor, wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the steps of the front-end odometer determination method for indoor mapping according to any embodiment of this invention.

[0102] The electronic devices described in this application exist in various forms, including but not limited to:

[0103] (1) Mobile communication devices: These devices are characterized by their mobile communication capabilities and primarily aim to provide voice and data communication. These terminals include smartphones, multimedia phones, feature phones, and low-end phones.

[0104] (2) Ultra-mobile personal computer devices: These devices fall under the category of personal computers, possessing computing and processing capabilities, and generally also have mobile internet access features. These terminals include PDAs, MIDs, and UMPCs, such as tablet computers.

[0105] (3) Portable entertainment devices: These devices can display and play multimedia content. This category includes audio and video players, handheld game consoles, e-book readers, as well as smart toys and portable car navigation devices.

[0106] (4) Other airborne electronic devices with data processing capabilities, such as vehicle-mounted systems installed on vehicles.

[0107] The terms "comprising" and "including" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising" and "including" include not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0108] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0109] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0110] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for determining the front-end odometer for indoor mapping, comprising: Based on the data collected in real time by the inertial measurement unit and wheel speedometer of the mobile device, the trajectory is calculated to obtain the pose estimation queue; Based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data. Based on the actual laser point cloud data, feature environment detection is performed in indoor low-feature environments. Based on the characteristic environment detection result, the corresponding laser frame data in the original laser data is selected to perform pose prediction of the mobile device. When the characteristic environment detection result is an indoor low-characteristic environment, the trajectory of the previous laser keyframe is used for pose prediction. When the characteristic environment detection result is not an indoor low-characteristic environment, the trajectory of the previous continuous laser frame is used for pose prediction to obtain the pose prediction result. The pose prediction results are optimized by combining the actual laser point cloud data.

2. The method of claim 1, wherein, Before compensating for the raw laser data of the single-line laser, the pose estimation queue is corrected in real time using a laser odometry.

3. The method according to claim 1, characterized in that, Based on the pose estimation queue, the original laser data of the single-line laser is compensated to generate actual laser point cloud data, including: Determine the start and end times of the laser points in the current frame of the original laser data, and search for the pose estimation at the corresponding time in the pose estimation queue. Calculate the time interval between each laser point and the laser endpoint in the current frame, perform spherical interpolation on the pose estimation at the time point according to the time interval, and perform compensation based on the spherical interpolation to generate actual laser point cloud data.

4. The method according to claim 1, characterized in that, Based on the actual laser point cloud data, indoor feature environment detection includes: The actual laser point cloud data is traversed according to the laser scanning order to obtain a set of line feature vectors; Randomly sample the set of line feature vectors, and combine at least two sets of line features from the set of line feature vectors to obtain multiple line feature combinations, and determine the angular deviation of the multiple line feature combinations; Select a preset number of angle deviations from a set number of determined angle deviations and average them; If the average value of the preset number of angle deviations is less than the environmental judgment threshold, it is determined to be a low-characteristic indoor environment.

5. The method according to claim 1, characterized in that, Optimizing the pose prediction result based on the actual laser point cloud data includes: A local laser map is constructed using multiple keyframes surrounding the current laser keyframe in the actual laser point cloud data. Optimize the position and heading angle (x, y, yaw) of the mobile device; The pose prediction results are optimized by constraining linear deviation using the local laser map.

6. The method according to claim 5, characterized in that, Optimizing the pose prediction result based on the actual laser point cloud data further includes: When the mobile device is detected to be turning at a speed exceeding a preset speed, the fixed heading angle (yaw) of the mobile device is optimized using laser point constraints; after the heading angle (yaw) is optimized, the fixed heading angle is used to optimize the position (x, y) of the mobile device. When the mobile device is detected to be in a non-rotating state, the position and heading angle (x, y, yaw) of the mobile device are optimized using laser point constraints and trajectory prediction constraints.

7. The method according to claim 1, characterized in that, Optimizing the pose prediction result based on the actual laser point cloud data further includes: When the characteristic environment detection result is an indoor low-characteristic environment, the trajectory prediction weight is increased and the laser point constraint weight is decreased. When the environmental feature detection result is not an indoor low-feature environment, the trajectory prediction weight is reduced and the laser point constraint weight is increased.

8. The method according to claim 1, characterized in that, After optimizing the pose prediction result by combining the actual laser point cloud data, the method further includes: When the feature environment detection result is a preset environment, based on the optimized pose prediction result, the heading angle (yaw) of the mobile device is fixed, and the position (x, y) of the mobile device is optimized. The position optimization of the mobile device includes two types of constraints: laser point constraints and error constraints between the position increment of the current time and the previous laser keyframe and the pose prediction increment.

9. An electronic device, comprising: At least one processor, and a memory communicatively connected to the at least one processor, wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the steps of the method according to any one of claims 1-8.

10. A mobile device comprising a body and an electronic device according to claim 9 mounted on the body.

11. A storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the program implements the steps of the method described in any one of claims 1-8.

Citation Information

Patent Citations

  • Indoor positioning method, system and moving tool

    CN114739411A

  • Laser and visual SLAM system of indoor unmanned vehicle

    CN115015956A