Method and device for mapping in long corridor scene in combination with reflector

By constructing a graph optimization model in long corridor scenarios and using reflectors as static constraint nodes, the problem of decreased positioning accuracy in traditional SLAM systems in long corridors was solved, achieving high-precision and robust positioning and mapping.

CN121559541APending Publication Date: 2026-02-24ZHEJIANG MILEY ROBOT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511986497.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-26
Publication Date
2026-02-24

AI Technical Summary

Technical Problem

In long corridor scenarios, existing technologies rely on LiDAR to identify reflectors for positioning. However, these technologies suffer from problems such as repetitive structures leading to ambiguous feature matching, inability to close-loop correct for accumulated errors, insufficient system robustness, and poor environmental adaptability. In particular, the recognition rate drops in environments with strong reflection interference, such as glass curtain walls.

Method used

By acquiring point cloud data from the LiDAR on the robot, filtering and clustering point sets with reflective characteristics, calculating the center position of the reflector in the sensor coordinate system, and using the reflector as a static constraint node and the robot as a dynamic node, a graph optimization model is constructed. The optimization algorithm is then used to solve the graph optimization model to obtain the optimized robot pose and map.

Benefits of technology

It significantly improves positioning accuracy in long corridor scenarios, reduces positioning drift and accumulated errors, enhances the robustness and adaptability of the system, and ensures the consistency and accuracy of the map over a long period of time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121559541A_ABST
    Figure CN121559541A_ABST
Patent Text Reader

Abstract

The invention discloses a mapping method and device in a long corridor scene in combination with a reflector. The method comprises the steps of obtaining point cloud data obtained based on a laser radar carried by a robot; screening and clustering point sets with reflection characteristics so as to identify the reflectors in the environment and calculate the central positions of the reflectors in a sensor coordinate system; calculating the relative pose of the robot relative to the reflector according to the current global pose of the robot and the central position of the robot in the sensor coordinate system; the reflector is used as a static constraint node, and the robot is used as a dynamic node; the beneficial effects of the invention are that the reflector provides a reliable reference point in a long corridor and other environments with scarce characteristics, and helps to reduce the positioning drift and accumulative error of the robot in the movement process. By optimizing the observation data of the reflector, the system can maintain high positioning precision during long-time operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of mapping, and more particularly to a mapping method and apparatus for long corridor scenes combined with reflectors. Background Technology

[0002] In the field of industrial mobile robot navigation, reflectors are widely used as key artificial landmarks. Traditional solutions rely on LiDAR to identify highly reflective markers for basic localization, making it the mainstream solution, especially in long corridor scenarios with limited features. Existing technologies construct a localization network by deploying regularly arranged reflector arrays and calculate the robot's pose using triangulation principles.

[0003] However, this traditional application method has obvious limitations: the reflector is only used as a passive target for identification and is not deeply integrated into the SLAM optimization framework; in environments with strong reflection interference such as glass curtain walls, the recognition rate of the reflector drops significantly (the measured false recognition rate can reach more than 25%); in long-distance, structured scenarios such as corridors, the cumulative error cannot be effectively suppressed, for example, the positioning drift can exceed 30 centimeters in a 100-meter-long corridor.

[0004] Specifically, existing SLAM solutions for long corridor scenarios primarily rely on LiDAR to extract geometric features of the walls (such as parallel lines, door frames, and corners) for pose estimation, while using reflectors as auxiliary positioning markers. These reflectors typically require pre-measuring their global coordinates and establishing fixed mapping relationships. This approach faces the following serious problems in long corridors:

[0005] Repetitive structures lead to feature matching ambiguity: In long corridors, the height of walls, ceilings and other structures is similar, and straight lines in a single direction are difficult to provide sufficient matching constraints, which can easily cause lateral positioning drift.

[0006] Error accumulation cannot be corrected in a closed loop: The reflector is only used as an initialization or local reference and is not embedded in the back-end optimization process, so it cannot form a continuous spatial constraint to suppress motion accumulation error.

[0007] Insufficient system robustness: The system lacks robust design throughout the entire process, from data acquisition (e.g., no reflector detection mechanism) to output (e.g., no anomaly degradation strategy), and erroneous observations can easily lead to divergence in pose estimation.

[0008] Poor environmental adaptability: In dynamically changing or highly interfering environments (such as glass reflections or temporary obstacles), the stability of reflector recognition decreases, which in turn affects the reliability of positioning. Summary of the Invention

[0009] Purpose of the invention: The purpose of this invention is to solve the technical problems in the prior art and provide a mapping method and device for long corridor scenes combined with reflectors.

[0010] Technical solution: This application proposes a mapping method for long corridor scenes combined with reflectors, including:

[0011] Acquire point cloud data based on the LiDAR onboard the robot;

[0012] Filter and cluster points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system;

[0013] Based on the robot's current global pose and its center position in the sensor coordinate system, the robot's relative pose with respect to the reflector is calculated.

[0014] Using the reflector as a static constraint node and the robot as a dynamic node, a graph optimization model is constructed, which includes observation constraints based on the relative pose.

[0015] The optimized robot pose and map are obtained by solving the graph optimization model using an optimization algorithm.

[0016] Preferably, the process of filtering and clustering a set of points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system includes:

[0017] Candidate point selection steps: For each frame of point cloud data acquired by the lidar, traverse each lidar point and select points that simultaneously meet the criteria of being a high-reflectivity point and having a ranging distance less than a first preset distance threshold as candidate reflective points;

[0018] Coordinate transformation step: Transform the candidate reflective points from the sensor coordinate system to the global coordinate system;

[0019] Spatial clustering steps: Clustering is performed based on the geometric proximity of the candidate reflective points in space. Points whose spatial Euclidean distance is less than or equal to the clustering distance threshold are grouped into the same cluster to form a candidate reflector cluster. Otherwise, the point is initialized as a new clustering unit as a candidate reflector cluster.

[0020] Validity determination steps: Perform validity determination on each candidate reflector cluster, including determining whether the number of points in the cluster is greater than or equal to the minimum number of points threshold, and whether the geometric length of the cluster is within the preset length range;

[0021] Center point calculation steps: For a cluster of reflectors that has passed the validity assessment, calculate the average coordinates of all points within the cluster in the global coordinate system, and use this average as the position of the reflector, as shown in the following formula:

[0022] ;

[0023] Among them, (x imap ,y imap(x) represents the coordinates of the candidate reflective point in the global coordinate system. map ,y map ) represents the position coordinates of the center point in the global coordinate system.

[0024] Preferably, the candidate reflective points are transformed from the sensor coordinate system to the global coordinate system, including the following formula:

[0025] ;

[0026] Among them, (x l ,y l (x) represents the coordinates of the candidate reflective point in the radar coordinate system. r ,y r ,θ r (x) represents the robot's global pose. imap ,y imap ) represents the coordinates of the candidate reflective point in the global coordinate system.

[0027] Preferably, the coordinate transformation step is followed by the following step:

[0028] The candidate reflective point set after coordinate transformation is constructed into a multi-dimensional attribute matrix:

[0029] Let each candidate point pi contain the following attributes:

[0030] ;

[0031] The system constructs the above point set into an attribute matrix:

[0032] ;

[0033] A spatial index structure is constructed based on the spatial coordinates of the candidate reflective points to accelerate the spatial clustering step.

[0034] The process of constructing a spatial index structure can be represented as follows:

[0035] ;

[0036] in, The position of the point in the sensor coordinate system or the transformed global coordinate system; r i Let θ be the distance measurement value. i For the scanning angle, I i For the reflection intensity, t i For timestamps, type i This is a system tag type.

[0037] Preferably, it also includes motion compensation for the candidate reflective point set, including:

[0038] Then, during the scanning process, the translational disturbance of the i-th point due to the robot's own motion is:

[0039] ;

[0040] Simultaneously, the disturbance term generated by rotation is:

[0041] ;

[0042] Based on the perturbation used for compensation, the position of the compensated point is obtained:

[0043] ;

[0044] Among them, t i Let i be the sampling time for the i-th point. This represents the time difference between the point and the starting time, vr represents the linear velocity of the robot during the scanning period, and w... z This represents the robot's angular velocity around the z-axis. The uncompensated original position of the i-th laser point in the local coordinate system. The actual location after compensation This is the rotation compensation matrix.

[0045] Preferably, the robot's relative pose to the reflector is calculated based on its current global pose and center position in the sensor coordinate system, including:

[0046] ;

[0047] (x map ,y map (x) represents the position coordinates of the center point in the global coordinate system. r ,y r ,θ r () represents the robot's global pose.

[0048] Preferably, the reflector is used as a static constraint node, and the robot is used as a dynamic node to construct a graph optimization model. The graph optimization model includes observation constraints constructed based on the relative pose, including:

[0049] Obtain the robot's current global pose T r =(x r ,y r ,θ r Based on the global pose and radar extrinsic parameters, the observation position of the reflector is transformed to the global map coordinate system to obtain the global pose T of the reflector. m =(x m ,y m ,θ m); Calculate the relative observation pose ΔT between the robot and the reflector. rm =(Δx,Δy,Δθ);

[0050] Each reflector is modeled as a static node in the global map, and the robot's pose at each time step is modeled as a dynamic node. Based on the global pose of the reflectors, the global pose of the robot, and the relative observation pose, a robot-reflector observation constraint edge is constructed, and its residual is defined as:

[0051] ;

[0052] in, The rotation matrix for transforming from the global coordinate system to the robot coordinate system is defined as:

[0053] ;

[0054] Preferably, the optimized robot pose and map are obtained by solving the graph optimization model using an optimization algorithm, including:

[0055] The overall optimization objective is to minimize the weighted sum of squares of all residual terms, i.e.:

[0056] ;

[0057] Where X* represents the optimal solution for all robot pose variables, i.e., the optimization objective, and O represents the reflector seen by all robots. This represents the influence weight of the covariance or confidence matrix corresponding to the residual.

[0058] Preferably, acquiring point cloud data based on the lidar mounted on the robot also includes:

[0059] The original point cloud is subjected to joint filtering based on distance and reflection type, and the primary filtering step is configured to remove approximately 30% of the original point cloud data.

[0060] The candidate clusters after clustering are verified by the number of points and the length threshold. It is determined whether the number of points in the candidate cluster is greater than the minimum effective number of points threshold, and whether it is between the minimum length threshold and the maximum length threshold associated with the physical size of the reflector.

[0061] After optimization, a global consistency check is performed on the reflector position to eliminate observations with spatial inconsistencies or jumps.

[0062] The second part of this application proposes a mapping device for long corridor scenes combined with a reflector, including:

[0063] The acquisition unit is used to acquire point cloud data based on the lidar on the robot.

[0064] The center point identification unit is used to filter and cluster points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system.

[0065] The relative pose calculation unit calculates the robot's relative pose to the reflector based on the robot's current global pose and its center position in the sensor coordinate system.

[0066] A construction unit is used to construct a graph optimization model by using the reflector as a static constraint node and the robot as a dynamic node. The graph optimization model includes observation constraints constructed based on the relative pose.

[0067] The optimization unit is used to solve the graph optimization model through an optimization algorithm to obtain the optimized robot pose and map.

[0068] Beneficial effects:

[0069] This invention significantly improves positioning accuracy by using reflectors as artificial anchor points and deeply integrating them into the SLAM optimization framework. In feature-scarce environments such as long corridors, reflectors provide reliable reference points, helping to reduce positioning drift and accumulated errors during robot movement. By optimizing the reflector observation data, the system can maintain high positioning accuracy during long-term operation.

[0070] Reflectors, as stable artificial feature points, effectively solve the problems caused by insufficient natural features or interference in traditional SLAM systems in environments such as long corridors. The stable reflection characteristics of reflectors allow the system to reliably identify them and provide accurate pose constraints even under environmental changes or significant interference. This characteristic enhances the system's robustness, enabling it to adapt to environments with weak features or dynamic changes, while simplifying feature matching and improving computational efficiency.

[0071] By incorporating reflector constraints, the stability and consistency of the entire map-building process are optimized. During long-duration, long-distance mapping, the reflector provides a continuous and stable pose reference, enabling the system to effectively reduce map distortion caused by accumulated errors and ensuring that the final map remains consistent throughout the entire mapping cycle. This consistency supports long-cycle mapping and is suitable for accurate mapping tasks in large-scale environments.

[0072] This invention effectively improves the efficiency and accuracy of data processing by employing a three-level optimization strategy: spatial filtering, closed-loop data quality control, and global consistency checks. The efficient feature extraction and clustering algorithm for reflectors, combined with IMU data for point cloud distortion compensation, effectively reduces unnecessary data processing while ensuring stable system operation and efficient computation.

[0073] This invention not only optimizes the feature extraction and data processing methods for reflectors, but also solves the problem of decreased positioning accuracy caused by feature scarcity or environmental interference in structured environments such as long corridors through reasonable reflector deployment and the fusion of graph optimization constraints. As a stable constraint source, the reflector can provide continuous and effective positioning support in complex environments, improving the accuracy and robustness of the overall system. Attached Figure Description

[0074] Figure 1 A schematic diagram of the method framework for this invention is provided;

[0075] Figure 2 This invention provides a schematic diagram of the matching results before the improved constraints;

[0076] Figure 3 A schematic diagram illustrating the matching results after the improved constraints is provided for the present invention;

[0077] Figure 4 This is a block diagram of a device structure provided in one embodiment of this application;

[0078] Figure 5 This is a block diagram of an electronic device structure provided in one embodiment of this application. Detailed Implementation

[0079] To make the technical solution of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0080] Example 1

[0081] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions in the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without inventive effort are within the scope of protection of this invention. Unless otherwise defined, the technical or scientific terms used herein should have the ordinary meaning understood by those skilled in the art. The terms "comprising" and similar expressions used herein mean that the element or object preceding the word covers the element or object listed following the word and its equivalents, but do not exclude other elements or objects.

[0082] In response to the problems existing in the current technology, such as Figure 1-3 As shown, a mapping method combining reflectors in long corridor scenes is proposed, including:

[0083] S101. Acquire point cloud data based on the LiDAR mounted on the robot; acquiring point cloud data of the environment through LiDAR provides spatial geometric information. This point cloud data provides fundamental spatial information for subsequent steps such as feature extraction, reflector recognition, and pose calculation.

[0084] S102. Filter and cluster points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system. By filtering and clustering points with reflective properties, the system can extract regions with reflector features from point cloud data. The purpose of this step is to identify the position of reflectors and calculate their center position in the lidar sensor coordinate system. Through clustering algorithms, reflectors in the environment are identified, providing basic data for subsequent relative pose calculations.

[0085] S103. Based on the robot's current global pose and its center position in the sensor coordinate system, calculate the robot's relative pose with respect to the reflector. This stage involves coordinate transformation and pose calculation. By transforming the reflector's center position from the sensor coordinate system to the global coordinate system, and combining this with the robot's current global pose (the known robot pose), the robot's relative pose (including translation and rotation) with respect to the reflector is calculated. This relative pose provides data support for constraints in subsequent graph optimization and is crucial data for graph optimization and construction.

[0086] S104. Using the reflector as a static constraint node and the robot as a dynamic node, a graph optimization model is constructed. This model includes observation constraints based on the relative pose. An optimization graph model is established by treating the reflector and robot as static and dynamic nodes, respectively. The reflector is considered a static node with a fixed position, while the robot is a dynamic node whose position and trajectory adjust during the optimization process. Observation constraints established using relative pose data are used to incorporate the geometric relationship between the robot and the reflector into the optimization model to ensure the accuracy of the optimization results.

[0087] S105. Solve the graph optimization model using an optimization algorithm to obtain the optimized robot pose and map. This stage uses a graph optimization algorithm (such as the Ceres solver) to solve the graph optimization model, obtaining the optimized robot pose and map. During graph optimization, the algorithm minimizes the residuals of all constraints to adjust the robot trajectory, ensuring that the optimized pose and map are consistent with the actual observed constraints. This is the core of the entire mapping process; by optimizing, the accuracy and consistency of the map are improved, ultimately resulting in a high-precision robot trajectory and environment map.

[0088] In some specific embodiments, filtering and clustering point sets with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system includes:

[0089] Candidate point selection step: For each frame of point cloud data acquired by the LiDAR, each LiDAR point is traversed, and points that simultaneously meet the criteria of being a high-reflectivity point and having a ranging distance less than a first preset distance threshold are selected. The main purpose of this step is to select candidate points with reflective characteristics from the point cloud data scanned by the LiDAR. These points are marked as high-reflectivity points, and their ranging distance from the LiDAR must be less than a first preset distance threshold (e.g., 5 meters).

[0090] Specifically, the screening criteria consist of the following two aspects:

[0091] First, the point type must be REFLECTOR (i.e., the system identifies it as a high-reflectivity point).

[0092] Secondly, the distance between the point and the lidar is less than 5 meters. Only when both of these conditions are met is the point considered a potential reflector component.

[0093] This screening step ensures that only points close to the sensor and meeting reflective characteristics are selected, which helps in accurately identifying reflectors and improving computational efficiency. Each frame of point cloud data is traversed, checking the point type and ranging conditions. Only points meeting these conditions are considered potential reflector components.

[0094] Coordinate transformation step: The candidate reflective points are transformed from the sensor coordinate system to the global coordinate system. This step transforms the candidate reflective points from the sensor coordinate system (usually the coordinate system of the LiDAR itself) to the global coordinate system (map coordinate system) so that the reflector features are located globally, not just locally. This is an important step to ensure that the reflector features can be uniformly managed and optimized in different time and space dimensions. Coordinate transformation is performed using the robot's pose (translation and rotation parameters in the global coordinate system). Through rigid body transformation (rotation matrix and translation vector), the position of each candidate point is converted to its corresponding position in the global coordinate system.

[0095] Spatial clustering step: Clustering is performed based on the geometric proximity of the candidate reflective points in space. Points with a spatial Euclidean distance less than or equal to a clustering distance threshold are grouped into the same cluster to form a candidate reflector cluster; otherwise, the point is initialized as a separate new clustering unit for the candidate reflector cluster. In this step, the system clusters candidate reflective points based on their spatial geometric proximity. The purpose of this process is to group multiple candidate points belonging to the same reflector into one class, thereby avoiding misidentification of individual reflective points as different reflectors. During the clustering process, spatial Euclidean distance is used to determine the distance between points. If the distance is less than or equal to the set clustering distance threshold, these points are grouped into the same cluster; if the distance exceeds this threshold, the system initializes a new clustering unit. Through spatial clustering algorithms (such as Euclidean distance-based clustering methods), neighboring points are progressively grouped into one class. This ensures that multiple points of the reflector are correctly merged into a single cluster, avoiding misidentification. The distance threshold is pre-calculated in square form as (L + δ)², where L is the nominal width of the reflector (e.g., 0.2m) and δ is an empirical tolerance (e.g., 0.02m). This clustering process effectively separates adjacent reflective areas, forming structurally independent candidate clusters.

[0096] Validity Determination Steps: For each candidate reflector cluster, validity determination is performed, including checking if the number of points within the cluster is greater than or equal to a minimum point threshold, and whether the cluster's geometric length is within a preset range. After clustering, the system performs validity determination on each candidate reflector cluster. The determination criteria include: whether the number of points within the cluster meets the minimum point threshold (e.g., 2 points), ensuring the cluster size is sufficient to represent a real reflector; and whether the cluster's geometric length is within a preset range, ensuring the cluster's point set conforms to the actual geometric characteristics of the reflector (this length is less than a set minimum length threshold (e.g., 1 / 3 of the reflector width) or greater than the maximum allowable length (twice the reflector width)). By setting the minimum point threshold and geometric length range, the system can effectively filter out clusters that do not meet the criteria and exclude them, thereby improving recognition accuracy.

[0097] Center point calculation steps: For a cluster of reflectors that has passed the validity assessment, calculate the average coordinates of all points within the cluster in the global coordinate system, and use this average as the position of the reflector, as shown in the following formula:

[0098] ;

[0099] Among them, (x imap ,y imap (x) represents the coordinates of the candidate reflective point in the global coordinate system. map ,y mapThe coordinates of the center point are shown in the global coordinate system. For a cluster of reflectors that has passed the validity assessment, the system determines the center position of the reflector by calculating the average coordinates of all points within the cluster in the global coordinate system. The center point is the geometric center of the reflector and is typically used for subsequent graph optimization and localization tasks. The purpose of this step is to obtain the precise position of the reflector in the global coordinate system, thereby providing a stable and reliable localization reference for the robot. The geometric center of the reflector is obtained by averaging the coordinates of all points within the cluster.

[0100] For example:

[0101] Point 1: x1 = 3.2 × cos(0.1) ≈ 3.19, y1 = 3.2 × sin(0.1) ≈ 0.32;

[0102] Point 2: x2 = 3.3 × cos(0.11) ≈ 3.28, y2 = 3.3 × sin(0.11) ≈ 0.36;

[0103] Point 3: x3 = 3.1 × cos(0.09) ≈ 3.09, y3 = 3.1 × sin(0.09) ≈ 0.28;

[0104] The three points mentioned above are close in space and are grouped into the same reflector candidate cluster using a clustering algorithm. After verification based on the number of points (3 > 2) and geometric dimensions, the center position (x) of this cluster is calculated according to the formula. map ,y map ):

[0105] .

[0106] In some specific embodiments, the candidate reflective points are transformed from the sensor coordinate system to the global coordinate system, including the following formula:

[0107] ;

[0108] Among them, (x l ,y l (x) represents the coordinates of the candidate reflective point in the radar coordinate system. r ,y r ,θ r (x) represents the robot's global pose. imap ,y imap The coordinates of the candidate reflective point in the global coordinate system are given. The reflective point is transformed from the sensor coordinate system (local coordinate system) to the global coordinate system using a rotation matrix.

[0109] This formula describes how to transform a laser point from the sensor's local coordinate system to the global coordinate system. This is done by rotating the point in the local coordinate system (based on the robot's attitude angle θ) using trigonometric functions.r The system translates the data based on the robot's position, thus transforming the coordinates. The purpose of this transformation formula is to convert a point (the reflector's position) in the local coordinate system to the global coordinate system through rotation and translation. This is crucial for the robot's localization and mapping in its environment, as it allows sensor data to be mapped into a unified global framework, thereby achieving high-precision localization and mapping.

[0110] After coordinate transformation, the system generates a standardized reflector structure for each valid cluster, containing the following core information:

[0111] (1) The position of the center point in the global coordinate system (xmap, ymap);

[0112] (2) The timestamps corresponding to the clusters;

[0113] (3) Cluster the original point set for subsequent visualization and redundancy verification;

[0114] (4) Cluster unique identifiers are generated using hash algorithms or auto-incrementing numbers to ensure uniqueness within the system;

[0115] (5) The robot's global pose in this frame of LiDAR data is used to construct subsequent optimization constraints.

[0116] In some specific embodiments, the coordinate transformation step is followed by the following step:

[0117] The candidate reflective point set after coordinate transformation is constructed into a multi-dimensional attribute matrix:

[0118] Let each candidate point pi contain the following attributes:

[0119] ;

[0120] The system constructs the above point set into an attribute matrix:

[0121] ;

[0122] A spatial index structure is constructed based on the spatial coordinates of the candidate reflective points to accelerate the spatial clustering step.

[0123] The process of constructing a spatial index structure can be represented as follows:

[0124] ;

[0125] in, The position of the point in the sensor coordinate system or the transformed global coordinate system; r i Let θ be the distance measurement value. i For the scanning angle, I i For the reflection intensity, ti For timestamps, type i This is a system tag type.

[0126] The system will transform each candidate reflective point. (That is, the location information and other attributes of each reflective point) are organized into a multi-dimensional attribute matrix.

[0127] KD-trees are a spatial indexing structure that can accelerate the querying process of multidimensional data (such as reflector coordinate data). The paper mentions that the system establishes a KD-tree by organizing the spatial coordinates of the reflector data. The introduction of KD-trees is to accelerate the querying of reflector points in space, especially when it is necessary to quickly find the reflector closest to a certain point; KD-trees provide efficient spatial indexing queries.

[0128] KD-trees can significantly improve the speed of finding spatial data points by reducing unnecessary computation. For example, when it is necessary to quickly find the reflector closest to the robot's current position among a large number of reflector points, KD-trees can significantly reduce the number of points that need to be traversed due to their tree structure. By organizing the reflector's coordinate information and other attributes (such as reflection intensity, timestamp, etc.) into a multi-dimensional attribute matrix and building a KD-tree based on this data, data indexing and searching can be performed efficiently. KD-trees are suitable for processing high-dimensional spatial data, especially in SLAM, where robots may need to locate and map in multiple dimensions. The structure of KD-trees can effectively handle this high-dimensional data, avoiding the inefficiency of traditional linear search.

[0129] In some specific embodiments, motion compensation for the candidate reflective point set is also included, including:

[0130] Then, during the scanning process, the translational disturbance of the i-th point due to the robot's own motion is:

[0131] ;

[0132] Simultaneously, the disturbance term generated by rotation is:

[0133] ;

[0134] Based on the perturbation used for compensation, the position of the compensated point is obtained:

[0135] ;

[0136] Among them, t i Let i be the sampling time for the i-th point. This represents the time difference between the point and the starting time, vr represents the linear velocity of the robot during the scanning period, and w... z This represents the robot's angular velocity around the z-axis. The uncompensated original position of the i-th laser point in the local coordinate system. The actual location after compensation The rotation compensation matrix is ​​used. A single-frame scan by a LiDAR is not instantaneous, typically requiring tens of milliseconds. During this time, if the robot continues to move, the point cloud collected at different times within the same frame will be in different actual spatial positions, causing geometric stretching, distortion, or displacement of the point cloud. The identification and positioning of the reflector depends on the spatial distribution of high-reflectivity points in the point cloud. Without motion compensation, the positional error of reflection points far from the radar is greater, directly affecting the geometric consistency of the clustering results and thus reducing the accuracy of the reflector center point calculation. The compensated point cloud is closer to the ideal situation of "instantaneous static scanning," making the subsequent transformation of reflective points from the sensor coordinate system to the global coordinate system more accurate, providing a smaller observation constraint for graph optimization. By performing spatiotemporally synchronized translation and rotation compensation on each point, its true spatial position can be effectively restored, especially significantly improving long-distance, low-angular-velocity scanning scenarios. Experiments show that in a corridor scenario where the robot moves at a uniform speed of 0.5 m / s, the compensated reflector positioning error can be reduced by approximately 60%.

[0137] In some specific embodiments, the robot's relative pose to the reflector is calculated based on its current global pose and center position in the sensor coordinate system, including:

[0138] ;

[0139] (x map ,y map (x) represents the position coordinates of the center point in the global coordinate system. r ,y r ,θ r The global pose of the robot is given by (x, y). Input: Global coordinates of the reflector (x, y). map ,y map ) and the robot's own global pose (x r ,y r ,θ rOutput: The relative position (Δx, Δy) of the reflector as observed in the robot's coordinate system. This is a process of "localizing" global map information, converting the absolute relationships in the world coordinate system into the relative relationships "seen" by the robot at the current moment. In the graph optimization model, the constraint condition of the edge between the robot pose (node) and the reflector position (node) is this "relative observation" relationship. Through this calculation, every time the LiDAR "sees" the reflector, it generates an observation value of (Δx, Δy). The difference between this observation value and the relative value "predicted" based on the robot and reflector pose estimation constitutes the optimization objective (residual). The optimization process is to minimize all such residuals, thereby simultaneously optimizing the robot trajectory and the map.

[0140] Regardless of the reflector's location or the robot's observation angle, this calculation converts it into a unified "relative pose" format. This allows multiple observations of the same reflector (or multiple reflectors) at different times and locations to be input into the optimizer in a consistent mathematical form for global consistency adjustments. Accurate relative pose observations are fundamental to the optimization algorithm's ability to correct accumulated errors. This calculation ensures the accuracy of observation constraints, enabling graph optimization to effectively use the reflector's global absolute position information as a strong constraint to "pull" and "correct" the robot's estimated trajectory, significantly suppressing drift in long corridors. Unlike traditional solutions where the reflector is only used for initial localization, this step dynamically generates a constraint for each observation. The reflector thus becomes a static anchor point throughout the SLAM process, providing a continuous, global reference for the system and fundamentally solving the problem of error closed-loop correction in long scenes.

[0141] For example:

[0142] The center position of the reflector in the current sensor coordinate system has been determined to be (3.19, 0.32). Let the current global pose of the robot be T. r =(xr=5.0,y r =2.0,θ r =0.5 rad).

[0143] First, the center point of the reflector is transformed to the global map coordinate system. This transformation is achieved using the rotation matrix R and translation vector t corresponding to the robot's pose:

[0144] ;

[0145] Then the global coordinates P of the reflector global for:

[0146] ;

[0147] To construct the graph optimization constraints, the robot's observed pose (Δx, Δy) relative to the reflector needs to be calculated. This calculation essentially involves transforming the global coordinate difference back into the robot's coordinate system.

[0148]

[0149] The key output of this observation is: relative pose observation value (Δx,Δy)=(3.19,0.32).

[0150] In some specific embodiments, the reflector is used as a static constraint node, and the robot is used as a dynamic node to construct a graph optimization model. The graph optimization model includes observation constraints constructed based on the relative pose, including:

[0151] Obtain the robot's current global pose T r =(x r ,y r ,θ r Based on the global pose and radar extrinsic parameters, the observation position of the reflector is transformed to the global map coordinate system to obtain the global pose T of the reflector. m =(x m ,y m ,θ m ); Calculate the relative observation pose ΔT between the robot and the reflector. rm =(Δx,Δy,Δθ), is the relative pose (actual observation value) obtained from sensor observation;

[0152] Although the system extracts the orientation angle 0m as auxiliary information by performing principal component analysis on the clustered points of the reflectors, it primarily relies on the position information (Δx, Δy) of the reflectors to correct the robot pose in actual optimization constraints. This is because in 2D laser SLAM, the reflectors, as point features, have sufficient position constraints to effectively suppress the cumulative positioning error in long corridors. The angle information Δθ, however, is significantly affected by point cloud noise and has a relatively small weight in optimization, serving only as a supplement to the position constraints.

[0153] Each reflector is modeled as a static node in the global map, and the robot's pose at each time step is modeled as a dynamic node. Based on the global pose of the reflectors, the global pose of the robot, and the relative observation pose, a robot-reflector observation constraint edge is constructed, and its residual is defined as:

[0154] ;

[0155] The relative pose (predicted value) is calculated from the global pose estimation. The difference between them is the residual that the optimization aims to minimize, used to correct the robot's global pose estimation.

[0156] Introducing residual r rm The difference between "the predicted observations based on the current robot pose and reflector pose" and "the actual sensor observations" was quantified. The rotation matrix for transforming from the global coordinate system to the robot coordinate system is defined as:

[0157] .

[0158] In some specific embodiments, the graph optimization model is solved using an optimization algorithm to obtain the optimized robot pose and map, including:

[0159] The overall optimization objective is to minimize the weighted sum of squares of all residual terms, i.e.:

[0160] ;

[0161] Where X* represents the optimal solution for all robot pose variables, i.e., the optimization objective, and O represents the reflector seen by all robots. This represents the influence weight of the covariance or confidence matrix corresponding to the residuals. The optimization objective X* clearly shows that the entire SLAM process is transformed into a least-squares problem: by adjusting all robot nodes (dynamic variables) and reflector nodes (partial variables), the weighted sum of squares of all observation residuals is minimized. This provides the entire method with a solid mathematical foundation and solvability. By minimizing the residuals of all global observations, the optimizer can use observations from the far-end reflector to correct early pose drift, achieving a true closed-loop correction effect. Even in a 100-meter-long corridor, map consistency is guaranteed, and trajectory errors are controlled; robustness: weighted mechanism. Together with the loss function, this forms a double firewall against anomalous observations, making the system highly immune to interference from glass reflections, temporary occlusions, and moving objects. Accuracy: By trusting high-quality observations and questioning low-quality ones, the optimizer essentially refines the data. The final output pose and map are the optimal results after cross-validation and balancing of all reliable observations, resulting in significantly higher accuracy than methods that solely rely on front-end odometry or simple triangulation.

[0162] For example:

[0163] Numerical calculation example

[0164] Input parameters:

[0165] Robot pose: ;

[0166] Global coordinates of the reflector: ;

[0167] Observe relative pose:

[0168] ;

[0169] Calculation process:

[0170] 1. Global pose difference:

[0171] ;

[0172]

[0173]

[0174] 2. Rotation matrix elements:

[0175] ;

[0176] ;

[0177] 3. Predict relative pose:

[0178] ;

[0179] ;

[0180] ;

[0181] 4. Residual calculation: Residual vector r rm Defined as the difference between the observed value and the predicted value:

[0182] .

[0183] In some specific embodiments, acquiring point cloud data based on the lidar mounted on the robot further includes:

[0184] The original point cloud is subjected to joint filtering based on distance and reflection type, and the primary filtering step is configured to remove approximately 30% of the original point cloud data.

[0185] Primary filtering, at the forefront of algorithm processing, quickly removes a large amount of obviously invalid or low-quality raw point cloud data (about 30%) based on simple and clear rules (too close / too far, incompatible reflection types). This immediately reduces the burden on subsequent computationally intensive modules (such as clustering and optimization), improves the overall operating efficiency of the system, and avoids a large amount of noisy data interfering with subsequent processing logic.

[0186] After clustering, candidate clusters are validated for point count and length thresholds. This checks if the number of points within a cluster exceeds the minimum effective point threshold and if it falls between the minimum and maximum length thresholds related to the physical dimensions of the reflector. Geometric validation (fine-tuning, addressing the "quality" issue) is performed after clustering to generate candidate reflector clusters, based on the reflector's prior physical model (preset size range, minimum effective point count). This ensures that each candidate target entering subsequent processes geometrically conforms to the basic characteristics of a reflector. This effectively eliminates false clusters formed by the accidental aggregation of multiple discrete noise points or other strip-shaped highly reflective objects (such as metal door frames), greatly improving the accuracy of feature extraction.

[0187] After optimization, a global consistency check is performed on the reflector positions to eliminate observations with spatial inconsistencies or abrupt changes. This global consistency check, after map optimization, uses the globally optimized map and trajectory as a more reliable reference to review whether the positions of each reflector observation are reasonable and continuous in the global space. This is the highest level of verification, used to capture and eliminate "stubborn" anomalous observations that, although passing the first two stages, exhibit spatial inconsistencies in the global context (such as abrupt changes in position or conflicts with other landmarks or structures). This ensures the global consistency and physical reliability of the final map.

[0188] An optimization node containing timestamps (nanosecond precision), global pose, relative pose, and reflector ID is created to construct a graph optimization model. The optimizer employs a dual constraint mechanism: absolute pose constraints fix the reflector's position in the global coordinate system, while relative observation constraints maintain observation consistency between the robot and the reflector. The Huber loss function is set in the Ceres solver to handle outliers, effectively improving system robustness.

[0189] The contrast effect introduced by the reflector is as follows Figure 2-3 As shown in Figure (2), the matching results before the improved constraints are obtained. When matching is based solely on the natural features of the lidar, the point cloud matching fails in some areas, the proportion of unmatched points increases, and it is difficult to output accurate positioning results stably. Figure (3) shows the matching effect after introducing reflector constraints. By deploying reflectors in the long corridor according to the strategy, they serve as artificial anchor points with stable reflection characteristics and fixed spatial positions, providing a reliable reference benchmark for matching. Even if there are temporary environmental changes in the corridor, the reflectors can still be stably identified and provide strong constraints. The matching logic combined with the reflector features can effectively avoid the problem of natural feature failure. At the same time, the global pose consistency of the reflectors further improves the stability of matching, significantly reduces the number of unmatched points, and significantly improves the accuracy of matching results. This result shows that the introduction of reflectors can specifically solve the matching problem caused by insufficient natural features or environmental changes in long corridor scenarios, ensuring the accuracy of mapping and positioning.

[0190] In other embodiments of the present invention, a mapping device combining a reflector in a long corridor scene is disclosed. Figure 4 ,include:

[0191] Acquisition unit 201 is used to acquire point cloud data based on the lidar on the robot;

[0192] The center point identification unit 202 is used to filter and cluster a set of points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system.

[0193] The relative pose calculation unit 203 calculates the robot's relative pose to the reflector based on the robot's current global pose and its center position in the sensor coordinate system.

[0194] Construction unit 204 is used to construct a graph optimization model by using the reflector as a static constraint node and the robot as a dynamic node. The graph optimization model includes observation constraints constructed based on the relative pose.

[0195] The optimization unit 205 is used to solve the graph optimization model through an optimization algorithm to obtain the optimized robot pose and map.

[0196] In other embodiments of the present invention, an electronic device 400 is disclosed, such as... Figure 5 As shown, the electronic device may include: one or more processors 401; a memory 402; a display 403; one or more application programs (not shown); and one or more computer programs 404. These devices can be connected via one or more communication buses 405. The one or more computer programs 404 are stored in the memory 402 and configured to be executed by the one or more processors 401. The one or more computer programs 404 include instructions that can be used to perform actions such as... Figure 1 And the various steps in the corresponding embodiments.

[0197] Through the above description of the embodiments, those skilled in the art will clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device, and unit described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0198] In the various embodiments of this invention, the functional units can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0199] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as flash memory, portable hard disk, read-only memory, random access memory, magnetic disk, or optical disk.

[0200] The above description is merely a specific implementation of the embodiments of the present invention, but the protection scope of the embodiments of the present invention is not limited thereto. Any changes or substitutions within the technical scope disclosed in the embodiments of the present invention should be covered within the protection scope of the embodiments of the present invention. Therefore, the protection scope of the embodiments of the present invention should be determined by the protection scope of the claims.

Claims

1. A mapping method for long corridor scenes using reflectors, characterized in that, include: Acquire point cloud data based on the LiDAR onboard the robot; Filter and cluster points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system; Based on the robot's current global pose and its center position in the sensor coordinate system, the robot's relative pose with respect to the reflector is calculated. Using the reflector as a static constraint node and the robot as a dynamic node, a graph optimization model is constructed, which includes observation constraints based on the relative pose. The optimized robot pose and map are obtained by solving the graph optimization model using an optimization algorithm.

2. The mapping method for long corridor scenes using a reflector according to claim 1, characterized in that, Filtering and clustering point sets with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system includes: Candidate point selection steps: For each frame of point cloud data acquired by the lidar, traverse each lidar point and select points that simultaneously meet the criteria of being a high-reflectivity point and having a ranging distance less than a first preset distance threshold as candidate reflective points; Coordinate transformation step: Transform the candidate reflective points from the sensor coordinate system to the global coordinate system; Spatial clustering steps: Clustering is performed based on the geometric proximity of the candidate reflective points in space. Points whose spatial Euclidean distance is less than or equal to the clustering distance threshold are grouped into the same cluster to form a candidate reflector cluster. Otherwise, the point is initialized as a new clustering unit as a candidate reflector cluster. Validity determination steps: Perform validity determination on each candidate reflector cluster, including determining whether the number of points in the cluster is greater than or equal to the minimum number of points threshold, and whether the geometric length of the cluster is within the preset length range; Center point calculation steps: For a cluster of reflectors that has passed the validity assessment, calculate the average coordinates of all points within the cluster in the global coordinate system, and use this average as the position of the reflector, as shown in the following formula: ; Among them, (x imap ,y imap (x) represents the coordinates of the candidate reflective point in the global coordinate system. map ,y map ) represents the position coordinates of the center point in the global coordinate system.

3. The mapping method for long corridor scenes combined with reflectors according to claim 2, characterized in that, The candidate reflective points are transformed from the sensor coordinate system to the global coordinate system using the following formula: ; Among them, (x l ,y l (x) represents the coordinates of the candidate reflective point in the radar coordinate system. r ,y r ,θ r (x) represents the robot's global pose. imap ,y imap ) represents the coordinates of the candidate reflective point in the global coordinate system.

4. The mapping method for long corridor scenes combined with reflectors according to claim 2, characterized in that, The coordinate transformation step is followed by the following steps: The candidate reflective point set after coordinate transformation is constructed into a multi-dimensional attribute matrix: Let each candidate point pi contain the following attributes: ; The system constructs the above point set into an attribute matrix: ; A spatial index structure is constructed based on the spatial coordinates of the candidate reflective points to accelerate the spatial clustering step. The process of constructing a spatial index structure can be represented as follows: ; in, The position of the point in the sensor coordinate system or the transformed global coordinate system; r i Let θ be the distance measurement value. i For the scanning angle, I i For the reflection intensity, t i For timestamps, type i This is a system tag type.

5. The mapping method for long corridor scenes combined with reflectors according to claim 4, characterized in that, It also includes motion compensation for the candidate reflective point set, including: Then, during the scanning process, the translational disturbance of the i-th point due to the robot's own motion is: ; Simultaneously, the disturbance term generated by rotation is: ; Based on the perturbation used for compensation, the position of the compensated point is obtained: ; Among them, t i Let i be the sampling time for the i-th point. This represents the time difference between the current point and the starting time, v. r w represents the linear velocity of the robot during the scanning process. z This represents the robot's angular velocity around the z-axis. The uncompensated original position of the i-th laser point in the local coordinate system. The actual location after compensation This is the rotation compensation matrix.

6. The mapping method for long corridor scenes using a reflector according to claim 1, characterized in that, Based on the robot's current global pose and its center position in the sensor coordinate system, the robot's relative pose with respect to the reflector is calculated, including: ; (x map ,y map (x) represents the position coordinates of the center point in the global coordinate system. r ,y r ,θ r () represents the robot's global pose.

7. The mapping method for long corridor scenes using a reflector according to claim 1, characterized in that, Using the reflector as a static constraint node and the robot as a dynamic node, a graph optimization model is constructed. This graph optimization model includes observation constraints based on the relative pose, including: Obtain the robot's current global pose T r =(x r ,y r ,θ r Based on the global pose and radar extrinsic parameters, the observation position of the reflector is transformed to the global map coordinate system to obtain the global pose T of the reflector. m =(x m ,y m ,θ m ); Calculate the relative observation pose ΔT between the robot and the reflector. rm =(Δx,Δy,Δθ); Each reflector is modeled as a static node in the global map, and the robot's pose at each time step is modeled as a dynamic node. Based on the global pose of the reflectors, the global pose of the robot, and the relative observation pose, a robot-reflector observation constraint edge is constructed, and its residual is defined as: ; in, The rotation matrix for transforming from the global coordinate system to the robot coordinate system is defined as: 。 8. The mapping method for long corridor scenes combined with reflectors according to claim 7, characterized in that, The optimized robot pose and map are obtained by solving the graph optimization model using an optimization algorithm, including: The overall optimization objective is to minimize the weighted sum of squares of all residual terms, i.e.: ; Where X* represents the optimal solution for all robot pose variables, i.e., the optimization objective, and O represents the reflector seen by all robots. This represents the influence weight of the covariance or confidence matrix corresponding to the residual.

9. A mapping method for long corridor scenes using a reflector according to claim 7, characterized in that, Acquiring point cloud data based on the LiDAR onboard the robot also includes: The original point cloud is subjected to joint filtering based on distance and reflection type, and the primary filtering step is configured to remove approximately 30% of the original point cloud data. The candidate clusters after clustering are verified by the number of points and the length threshold. It is determined whether the number of points in the candidate cluster is greater than the minimum effective number of points threshold, and whether it is between the minimum length threshold and the maximum length threshold associated with the physical size of the reflector. After optimization, a global consistency check is performed on the reflector position to eliminate observations with spatial inconsistencies or jumps.

10. A mapping device combining a reflector in a long corridor scene, characterized in that, include: The acquisition unit is used to acquire point cloud data based on the lidar on the robot. The center point identification unit is used to filter and cluster points with reflective properties to identify reflectors in the environment and calculate their center position in the sensor coordinate system. The relative pose calculation unit calculates the robot's relative pose to the reflector based on the robot's current global pose and its center position in the sensor coordinate system. A construction unit is used to construct a graph optimization model by using the reflector as a static constraint node and the robot as a dynamic node. The graph optimization model includes observation constraints constructed based on the relative pose. The optimization unit is used to solve the graph optimization model through an optimization algorithm to obtain the optimized robot pose and map.