Indoor absolute coordinate measurement method, device and system based on SLAM

By using SLAM terminal equipment to scan point cloud data indoors and optimize the coordinate transformation matrix, the problems of low efficiency and high cost of existing indoor positioning methods are solved, and efficient and low-cost indoor absolute coordinate measurement is achieved.

CN120593773AActive Publication Date: 2025-09-05SHENZHEN XGRIDS-INNOVATION CO LTD

Patent Information

Application Number
CN202511093844.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-06
Publication Date
2025-09-05
Estimated Expiration
2045-08-06

AI Technical Summary

Technical Problem

Existing indoor positioning methods are inefficient and costly, and cannot effectively solve the problem of GPS signal obstruction indoors. In addition, the total station method requires landmarks to be placed indoors in advance, which makes the implementation process cumbersome.

Method used

An indoor absolute coordinate measurement method based on SLAM is adopted. The point cloud data is scanned indoors by the SLAM terminal device to obtain the coordinate transformation matrix from the local coordinate system to the global coordinate system. The outdoor positioning and orientation data and the preset objective function optimization are used to realize the absolute coordinate transformation of the point cloud data.

Benefits of technology

There is no need to attach landmarks indoors. Data collection can be completed simply by walking from outdoors into indoors through the SLAM terminal device, achieving efficient and low-cost indoor absolute coordinate measurement and improving measurement efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120593773A_ABST
    Figure CN120593773A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of positioning, in particular to an SLAM-based indoor absolute coordinate measurement method, device and system, and the method comprises the steps: obtaining point cloud data obtained by SLAM terminal equipment supporting SLAM through indoor scanning; obtaining a coordinate transformation matrix from a local coordinate system to a global coordinate system determined according to the SLAM terminal equipment; wherein the coordinate transformation matrix is obtained by optimizing positioning and orientation data acquired by the SLAM terminal equipment outdoors and a preset objective function; according to the coordinate transformation matrix and a global pose of the SLAM terminal device in a global coordinate system, point cloud data corresponding to the global pose is transferred to the global coordinate system, and absolute coordinate data of each point cloud in the global coordinate system is obtained; according to the measurement point input by the user, the corresponding absolute coordinate point is determined in the absolute coordinate data, and the problems that an existing indoor positioning method is low in implementation efficiency and high in cost can be effectively solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of positioning technology, and in particular to a method, device and system for indoor absolute coordinate measurement based on SLAM. Background Art

[0002] Due to the problem of signal blocking indoors, GPS cannot provide reliable positioning information under indoor conditions.

[0003] Currently, most indoor positioning methods are based on total stations. However, this method requires the placement of landmarks in the indoor scene in advance, which is cumbersome, inefficient, and costly to implement. Summary of the Invention

[0004] In view of this, the embodiments of the present application provide a SLAM-based indoor absolute coordinate measurement method, device and system, which can effectively solve the problems of low efficiency and high cost of existing indoor positioning methods.

[0005] In a first aspect, an embodiment of the present application provides an indoor absolute coordinate measurement method based on SLAM, comprising: Obtain point cloud data scanned indoors by a SLAM terminal device that supports SLAM; Obtaining a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; According to the coordinate conversion matrix and the global pose of the SLAM terminal device in the global coordinate system, the point cloud data corresponding to the global pose is transferred to the global coordinate system to obtain the absolute coordinate data of each point cloud in the global coordinate system; According to the measurement point input by the user, a corresponding absolute coordinate point is determined in the absolute coordinate data.

[0006] In some embodiments, the coordinate transformation matrix is ​​optimized based on the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function, including: Utilizing the SLAM terminal device to collect data outdoors to obtain positioning and orientation data in the local coordinate system; In response to a trigger of a preset condition, a preset objective function is optimized using a preset optimization method based on the obtained initial rotation matrix to obtain a target rotation matrix and a translation vector; A coordinate transformation matrix from the local coordinate system to the global coordinate system is determined according to the target rotation matrix and the translation vector.

[0007] In some embodiments, the global pose of the SLAM terminal device in the global coordinate system is obtained by the following method: Using the SLAM terminal device to collect data indoors to obtain the local pose of the SLAM terminal device in the local coordinate system; The local pose is transformed using the coordinate transformation matrix to obtain the global pose.

[0008] In some embodiments, the optimizing a preset objective function based on the obtained initial rotation matrix using a preset optimization method to obtain a target rotation matrix and a translation vector includes: The least squares method is used to optimize the following objective function, with the goal of minimizing the transformation error of all coordinate points. Based on the initial rotation matrix, the target rotation matrix and translation vector are calculated:

[0009] Among them, R represents the target rotation matrix, t represents the translation vector, Represents the position and posture of the SLAM terminal device in the local coordinate system, It represents the position of the SLAM terminal device in the global coordinate system, and i represents the sampling number of the SLAM terminal device.

[0010] In some embodiments, the initial rotation matrix is ​​obtained in the following manner: When the SLAM terminal device is started at rest, the initial rotation matrix from the local coordinate system to the global coordinate system is calculated using the measurement values ​​of the accelerometer and the magnetometer.

[0011] In some embodiments, the triggering of the preset condition includes: Detecting a change in a coordinate point in current positioning and orientation data of the SLAM terminal device; The method further comprises: After obtaining the target rotation matrix and translation vector, the target rotation matrix is ​​used to update the initial rotation matrix.

[0012] In some embodiments, the local coordinate system is the coordinate system where the positioning antenna is located when the SLAM terminal device is turned on; The positioning and orientation data includes positioning data and orientation data corresponding to at least three coordinate points whose coordinate points are spaced by a preset distance.

[0013] In some embodiments, determining a corresponding absolute coordinate point in the absolute coordinate data based on a measurement point input by a user comprises: Determining whether the accuracy of the absolute coordinate point meets the preset accuracy requirement based on the covariance size corresponding to the local posture; If the absolute coordinate point is determined to meet the accuracy requirement, the absolute coordinate point is determined and displayed in the target model reconstructed according to the SLAM terminal device.

[0014] In a second aspect, an embodiment of the present application provides an indoor absolute coordinate measurement device based on SLAM, comprising: The point cloud data acquisition module is used to obtain point cloud data scanned indoors by a SLAM terminal device that supports SLAM; A conversion matrix acquisition module, configured to acquire a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; A point cloud conversion module is used to convert the point cloud data corresponding to the global pose into the global coordinate system according to the coordinate conversion matrix and the global pose of the SLAM terminal device in the global coordinate system, so as to obtain the absolute coordinate data of each point cloud in the global coordinate system; The absolute coordinate determination module is used to determine the corresponding absolute coordinate point in the absolute coordinate data according to the measurement point input by the user.

[0015] In a third aspect, an embodiment of the present application provides an indoor absolute coordinate measurement system based on SLAM, including: a SLAM terminal device and a measurement terminal; The SLAM terminal device is used to optimize the coordinate conversion matrix according to the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; The measurement terminal is used to implement the SLAM-based indoor absolute coordinate measurement method provided in the first aspect of the present application.

[0016] The embodiments of the present application have the following beneficial effects: This application obtains point cloud data scanned indoors by a SLAM terminal device that supports SLAM; obtains a coordinate conversion matrix from a local coordinate system to a global coordinate system determined by the SLAM terminal device; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; according to the coordinate conversion matrix and the global posture of the SLAM terminal device in the global coordinate system, the point cloud data corresponding to the global posture is transferred to the global coordinate system to obtain the absolute coordinate data of each point cloud in the global coordinate system; according to the measurement point input by the user, the corresponding absolute coordinate point is determined in the absolute coordinate data. This application does not require the placement of LandMarks in the indoor scene in advance, and does not require the use of a total station for relative measurement. This application only requires the SLAM terminal device to walk normally from the outdoors to the indoors to complete data collection, and calculate the coordinate conversion matrix based on the collected data to achieve the measurement of indoor absolute coordinates, thereby effectively solving the problems of low efficiency and high cost of existing indoor positioning methods. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without creative work.

[0018] Figure 1 A structural block diagram of an indoor absolute coordinate measurement system based on SLAM according to an embodiment of the present application is shown; Figure 2 A flow chart of an indoor absolute coordinate measurement method based on SLAM according to an embodiment of the present application is shown; Figure 3 A schematic diagram of a scanning result display interface provided by absolute coordinate measurement software in an indoor absolute coordinate measurement system based on SLAM according to an embodiment of the present application is shown; Figure 4 A schematic diagram of a measurement point coordinate interface provided by absolute coordinate measurement software in an indoor absolute coordinate measurement system based on SLAM according to an embodiment of the present application is shown; Figure 5 A schematic diagram of a scene interface of an absolute coordinate point provided by absolute coordinate measurement software in an indoor absolute coordinate measurement system based on SLAM according to an embodiment of the present application is shown; Figure 6 Another structural block diagram of an indoor absolute coordinate measurement system based on SLAM in an embodiment of the present application is shown.

[0019] Description of main component symbols: 100-SLAM terminal device; 200-measurement terminal. DETAILED DESCRIPTION

[0020] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments.

[0021] The components of the embodiments of the present application generally described and illustrated in the drawings herein may be arranged and designed in a variety of different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the claimed application, but rather merely represents selected embodiments of the present application. All other embodiments obtained by those skilled in the art based on the embodiments of the present application without creative effort are within the scope of protection of the present application.

[0022] Hereinafter, the terms "including", "having" and their cognates used in various embodiments of the present application are intended only to indicate specific features, numbers, steps, operations, elements, components or combinations of the aforementioned items, and should not be understood as excluding the existence of one or more other features, numbers, steps, operations, elements, components or combinations of the aforementioned items or adding the possibility of one or more features, numbers, steps, operations, elements, components or combinations of the aforementioned items. In addition, the terms "first", "second", "third" and the like are only used to distinguish descriptions and should not be understood as indicating or implying relative importance.

[0023] Unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by those skilled in the art to which the various embodiments of the present application belong. The terms (such as those defined in generally used dictionaries) will be interpreted as having the same meaning as in the context of the relevant technical field and will not be interpreted as having an idealized meaning or an overly formal meaning unless clearly defined in the various embodiments of the present application.

[0024] The following describes some embodiments of the present application in detail with reference to the accompanying drawings. In the absence of conflict, the following embodiments and features in the embodiments may be combined with each other.

[0025] like Figure 1 As shown, the present application provides an indoor absolute coordinate measurement system based on SLAM. Exemplarily, the system includes: a SLAM terminal device 100 and a measurement terminal 200.

[0026] The SLAM terminal device 100 includes a laser radar, a camera, an IMU, and an RTK (Real-Time Kinematic) module.

[0027] The SLAM terminal device 100 is configured to optimize and obtain a coordinate transformation matrix based on positioning and orientation data collected outdoors by the SLAM terminal device 100 and a preset objective function. The SLAM terminal device 100 is also configured to reconstruct a three-dimensional model of the scanned environment based on simultaneous localization and mapping (SLAM) technology to obtain a three-dimensional target model. For example, the SLAM terminal device 100 is a Lingguang Lixel L-series / K-series Multi-SLAM device.

[0028] The measurement terminal 200 is used to implement the SLAM-based indoor absolute coordinate measurement method provided herein. For example, the measurement terminal 200 is equipped with absolute coordinate measurement software, which includes a wireless communication module and an absolute coordinate measurement and display module. The SLAM terminal device 100 is connected to the absolute coordinate measurement and display module via the wireless communication module. The absolute coordinate measurement and display module is used to implement the SLAM-based indoor absolute coordinate measurement method provided herein.

[0029] The following describes the indoor absolute coordinate measurement method based on SLAM with reference to some specific embodiments.

[0030] Figure 2 A flow chart of an indoor absolute coordinate measurement method based on SLAM according to an embodiment of the present application is shown. Exemplarily, the indoor absolute coordinate measurement method based on SLAM includes the following steps: S100: Acquire point cloud data scanned indoors by a SLAM terminal device 100 that supports SLAM.

[0031] S200, obtaining a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device 100 to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device 100 and a preset objective function.

[0032] The local coordinate system is the coordinate system where the GNSS antenna (positioning antenna) is located when the SLAM terminal device 100 is powered on. The world coordinate system (global coordinate system) refers to the Earth-centered Earth-fixed coordinate system / CGCS2000, the three-dimensional projection coordinate system / or other global coordinate systems.

[0033] In order to facilitate trajectory alignment, this application uses the coordinate system at the GNSS antenna as the local coordinate system. Theoretically, any coordinate system combined with external parameters can also implement the application solution, and this application does not impose any restrictions.

[0034] The positioning and orientation data includes positioning and orientation data corresponding to at least three coordinate points spaced a preset distance apart. The positioning and orientation data is RTK data collected using a real-time differential positioning module (RTK). Specifically, multiple RTK data points (at least three RTK data points) are continuously measured, with the spacing between these three RTK data points being at least 5 meters. This application does not impose any restrictions on the distribution of these three RTK data points; to avoid pathological solutions, the spacing requirements are sufficient.

[0035] Coordinate transformation matrices include rotation matrices, translation vectors, and scaling matrices. The rotation matrix describes the rotational motion of a positioning and mapping device in three-dimensional space. It does not change the magnitude of a vector, only its direction. The translation matrix describes the translational motion of a positioning and mapping device in three-dimensional space, i.e., the change in the position of an object. The scaling matrix describes the scaling ratio of a positioning and mapping device in three-dimensional space. For example, the coordinate rotation matrix T is:

[0036] Among them, R is the coordinate rotation matrix, t is the translation vector, and the scaling matrix is ​​proportional scaling.

[0037] In one embodiment, the coordinate transformation matrix is ​​optimized based on the positioning and orientation data collected outdoors by the SLAM terminal device 100 and a preset objective function, including: S110 , using the SLAM terminal device 100 to collect data outdoors to obtain positioning and orientation data in the local coordinate system.

[0038] S120 , in response to a trigger of a preset condition, optimizing a preset objective function using a preset optimization method based on the obtained initial rotation matrix to obtain a target rotation matrix and a translation vector.

[0039] Furthermore, the preset objective function is optimized using a preset optimization method based on the obtained initial rotation matrix to obtain a target rotation matrix and a translation vector, including: The least-squares method is used to optimize the objective function, with the goal of minimizing the transformation error for all coordinate points. Based on the initial rotation matrix, a pre-defined automatic solver is used to calculate the target rotation matrix and translation vector. The rotation matrix serves as the optimization variable, and the initial rotation matrix serves as its initial value. The pre-defined automatic solver is the Ceres-Solver library, where the initial rotation matrix R_predict can be used to accelerate the solution. Ceres-Solver is an open-source C++ library for solving nonlinear least-squares problems. This application defines the objective function and error terms in a form that Ceres-Solver can understand, and sets the initial rotation matrix and translation vector. Ceres-Solver then uses various optimization algorithms (such as the Gauss-Newton method and the Levenberg-Marquardt method) to iteratively update the rotation matrix and translation vector until the loss function converges to a small value. After several iterations, Ceres-Solver outputs the optimized rotation matrix and translation vector. These parameters can be used to accurately transform the original coordinate points into the target coordinate system.

[0040] Furthermore, the triggering of the preset conditions includes: A change in coordinate points in the current positioning and orientation data of the SLAM terminal device 100 is detected. The method further includes: after obtaining a target rotation matrix and a translation vector, updating the initial rotation matrix using the target rotation matrix. That is, whenever the position of the SLAM terminal device 100 changes, the target rotation matrix and the translation vector are calculated using the above method, and the target rotation matrix is ​​used as the initial rotation matrix for calculating a new target rotation matrix and translation vector when the position of the SLAM terminal device 100 changes again.

[0041] The world coordinate system refers to the Earth-centered Earth-fixed coordinate system / CGCS2000, the three-dimensional zone projected coordinate system / or other global coordinate systems.

[0042] The coordinates of the local coordinate system and the world coordinate system satisfy the following relationship:

[0043] The preset objective function is as follows:

[0044] Among them, R represents the target rotation matrix, t represents the translation vector, represents the position and posture of the SLAM terminal device 100 in the local coordinate system, represents the position and posture of the SLAM terminal device 100 in the global coordinate system, and i represents the sampling sequence number of the SLAM terminal device 100.

[0045] Furthermore, the initial rotation matrix is ​​obtained in the following way: When the SLAM terminal device 100 is started from a stationary state, the accelerometer and magnetometer measurements are used to calculate the initial rotation matrix from the local coordinate system to the global coordinate system (also known as the world coordinate system). Initializing the world coordinate system pose: Since the SLAM terminal device 100 (with the Multi-SLAM system deployed) is started from a stationary state, the accelerometer and magnetometer measurements are used to align the rotation matrices of the local coordinate system and the global coordinate system, resulting in the initial rotation matrix R_predict. The initial rotation matrix R_predict is generated as follows: 1) Add processing of meter data.

[0046] The accelerometer measurement value generally represents the acceleration of the SLAM terminal device 100 in various directions, mainly reflecting the tilt of the SLAM terminal device 100. In an ideal situation (without other acceleration sources), the accelerometer reading will point to the center of the earth along the direction of gravity of the earth (usually the z-axis).

[0047] Assume that the accelerometer reading is a=[a x , a y , a z ] T , the unit vector of the accelerometer can be normalized to :

[0048] Where |a| is the modulus of the gravitational adder, representing the magnitude of the gravitational adder.

[0049] 2) Magnetometer data processing.

[0050] The reading of the magnetometer indicates the direction of the geomagnetic field at the location of the SLAM terminal device 100. Assume that the output of the magnetometer is m=[m x ,m y ,m z ] T , also need to be normalized to get the unit vector :

[0051] Where |m| is the modulus of the magnetometer measurement, indicating the strength of the ground contact field.

[0052] 3) Construct the basis vectors of the geographic reference coordinate system.

[0053] In the ENU coordinate system, it is usually defined as: N is the unit vector pointing to the north; E Unit quantity pointing east; U is a unit vector pointing to the zenith.

[0054] The directions of these basis vectors are determined as follows: North direction ( N ): can be estimated by sweetness meter data.

[0055] Pointing east ( E ): obtained through the cross-vote method.

[0056] Pointing to the sky ( U ): Determined by accelerometer data.

[0057] The specific calculation method is as follows: North direction: The projection of the magnetometer on the horizontal plane is consistent with the north direction. After eliminating the gravity direction (i.e. only retaining the horizontal component), the north direction can be calculated: N

[0058] here" ” represents the cross product, is the modulus of the horizontal component of the magnetometer and accelerometer.

[0059] Easting: Easting is the cross product of the north direction and the accelerometer direction: E = N

[0060] Skyward direction: The skyward direction is the direction of the accelerometer: U =

[0061] 4) Construct the rotation matrix.

[0062] According to the constructed three-dimensional basis vector N , E , UTo form the rotation matrix R, the sensor coordinate system (defined by the orientation of the accelerometer and magnetometer) is aligned with the ENU coordinate system. Each column of the rotation matrix is ​​one of these basis vectors: R=[ N , E , U ].

[0063] S130: Determine a coordinate transformation matrix from the local coordinate system to the global coordinate system according to the target rotation matrix and the translation vector.

[0064] S200: Acquire point cloud data obtained by the SLAM terminal device 100 scanning indoors.

[0065] Since the coordinate transformation matrix T between the Local system and the World system is fixed, the information obtained outdoors can also be applied indoors.

[0066] S300: Based on the coordinate transformation matrix and the global pose of the SLAM terminal device 100 in the global coordinate system, the point cloud data corresponding to the global pose is transferred to the global coordinate system to obtain the absolute coordinate data of each point cloud in the global coordinate system. This method also requires associating the scanned point cloud data with the corresponding global pose. The absolute coordinate measurement software transfers the points to the global coordinate system in real time through pose transformation, thereby measuring the global coordinates of all points within the ranging range.

[0067] In this case, the SLAM terminal device 100 is used to enter a room. Since the SLAM terminal device 100 (XGRIDS Multi-SLAM) is a high-precision system with minimal cumulative error, it can ensure that the cumulative error of the terminal M meters is within 5 cm. Actual RTK outdoor measurements also have an accuracy of around 5 cm, where M depends on the accuracy of Multi-SLAM. Therefore, the coordinate transformation matrix T can be used to convert the indoor local system trajectory to the world system. This results in highly accurate global coordinates (absolute coordinates) indoors.

[0068] Furthermore, the global pose of the SLAM terminal device 100 in the global coordinate system is obtained by the following method: Using the SLAM terminal device 100 to collect data indoors, and obtaining the local pose of the SLAM terminal device 100 in the local coordinate system; The local pose is transformed using the coordinate transformation matrix to obtain the global pose. The coordinate transformation matrix T can be used to transform the high-precision pose of the Local system (local coordinate system) to the World system (global coordinate system) to obtain the high-precision pose of the World system. The specific formula is as follows:

[0069] S400 : Determine a corresponding absolute coordinate point in the absolute coordinate data according to a measurement point input by the user. The measurement point is the coordinate of the SLAM terminal device 100 .

[0070] The SLAM terminal device 100 of the present application sends the global pose of the SLAM terminal device 100 calculated in real time to the absolute coordinate measurement and display module in the measurement terminal 200 via the wireless communication module. The absolute coordinate measurement software caches the real-time global pose in a buffer.

[0071] The absolute coordinate measurement and display module of this application is also used to generate a three-dimensional model of the current scene and display it on the display. When the user needs to measure the absolute coordinates indoors, he clicks on the measurement point in the three-dimensional model, and then obtains the coordinate information of the current timestamp from the global pose information buffer. Figure 3 As shown in the figure, click “Measurement Point” in the scan result display interface to select the measurement point to be measured, as shown in the figure. Figure 4 As shown, the measured absolute coordinate points are displayed through the measurement point coordinate interface. The absolute coordinate measurement and display module of this application is also used to manage the measured absolute coordinate points, such as saving, deleting, and adding.

[0072] Furthermore, the determining of the corresponding absolute coordinate point in the absolute coordinate data according to the measurement point input by the user includes: The covariance corresponding to the local pose determines whether the accuracy of the absolute coordinate points meets the preset accuracy requirements. Covariance represents the standard deviation (std) of accuracy and can be considered as the average error. For example, whether the high-precision standard of 5cmRTK is met determines whether the absolute coordinate data corresponding to the point cloud data obtained by scanning the local pose is displayed on the display.

[0073] If it is determined that the accuracy of the absolute coordinate point meets the accuracy requirement, the absolute coordinate point is determined and displayed in the target model reconstructed according to the SLAM terminal device 100. Figure 5 As shown, the global coordinates (latitude, longitude, and altitude) corresponding to the coordinate point (16.10, 53.53, 2.14) in the local system in the point cloud are displayed.

[0074] This application takes approximately two minutes to measure absolute indoor coordinates, including one minute of outdoor initialization from the time the positioning and mapping equipment is turned on, followed by one minute of walking indoors to collect data, achieving high efficiency. In contrast, total station-based methods require several steps: indoor landmark placement, total station deployment, outdoor point marking, indoor relative measurement, and extrapolation, resulting in very low efficiency.

[0075] The following is a specific example to illustrate the indoor absolute coordinate measurement method based on SLAM of this application. Figure 5 As shown, the specific steps include the following, which are applicable to Figure 6 The indoor absolute coordinate measurement system based on SLAM is shown: S510: Outdoors, the positioning and mapping device is powered on while stationary, and the initial rotation matrix from the local coordinate system to the global coordinate system is calculated using measurements from the accelerometer and magnetometer. S520: Control the movement of the positioning and mapping device outdoors and collect RTK data (positioning and orientation data) from at least three locations, with each location spaced at least 5 meters apart and lasting at least one minute.

[0076] S530: Utilizing the RTK data of at least three locations and the initial rotation matrix, a least squares method is used to optimize a preset objective function using the Ceres-Solver optimization method to calculate the rotation matrix R and the translation vector t. A coordinate transformation matrix T is obtained based on the rotation matrix R and the translation vector t. If the position of the positioning and mapping device changes, the latest rotation matrix R and translation vector t are recalculated based on the RTK data corresponding to the new location, the previously calculated rotation matrix, and the objective function.

[0077] S540 , using a coordinate transformation matrix to transform the high-precision local position in the local coordinate system into the global coordinate system to obtain a high-precision global position.

[0078] S550 controls the positioning and mapping device to move indoors and collect at least one minute of indoor point cloud data and RTK data.

[0079] S560: Because the coordinate transformation matrix T between the Local and World systems is fixed, information obtained outdoors can also be applied indoors. Therefore, the coordinate transformation matrix T is used to transform the indoor Local system trajectory into the World system, obtaining a high-precision global pose. This results in high-precision global coordinates indoors, which are then transmitted to the Absolute Coordinate Measurement and Display Module via the wireless communication module in the Absolute Coordinate Measurement Software.

[0080] S570, the absolute coordinate measurement software receives the global coordinates of the positioning and mapping device in real time and stores them in a global data buffer.

[0081] S580, when absolute coordinate measurement is required indoors: click the measurement point, and the absolute coordinate measurement and display module obtains the global coordinate point of the current timestamp (contained in the global pose) from the global data buffer.

[0082] S590, based on the covariance corresponding to the global coordinate point, determines whether the high-precision standard of 5cm RTK is met. If the accuracy standard is met, the corresponding point cloud data is transferred to the global coordinate system according to the global pose and coordinate conversion matrix to obtain the global coordinate data, and the global coordinate data is displayed in the absolute coordinate measurement and display module. The global coordinate data is the global coordinate of the SLAM device. In other words, the device can still be used as RTK in a non-RTK fixed solution area. At the same time, the point cloud is associated with the global pose, and the absolute coordinate measurement and display module can transfer the point to the global coordinate system in real time through pose transformation, thereby measuring the global coordinates of all points within the ranging range. Among them, the absolute coordinate measurement and display module can be a separate APP.

[0083] The embodiment of the present application further provides an indoor absolute coordinate measurement device based on SLAM. Exemplarily, the indoor absolute coordinate measurement device based on SLAM includes: A point cloud data acquisition module is used to acquire point cloud data scanned indoors by a SLAM terminal device 100 that supports SLAM; A conversion matrix acquisition module, configured to acquire a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device 100 to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device 100 and a preset objective function; A point cloud conversion module is used to convert the point cloud data corresponding to the global pose into the global coordinate system according to the coordinate conversion matrix and the global pose of the SLAM terminal device 100 in the global coordinate system, so as to obtain the absolute coordinate data of each point cloud in the global coordinate system; The absolute coordinate determination module is used to determine the corresponding absolute coordinate point in the absolute coordinate data according to the measurement point input by the user.

[0084] It can be understood that the device of this embodiment corresponds to the indoor absolute coordinate measurement method based on SLAM in the above embodiment, and the options in the above embodiment are also applicable to this embodiment, so they will not be repeated here.

[0085] The present application also provides a terminal device. Exemplarily, the terminal device includes a processor and a memory, wherein the memory stores a computer program, and the processor runs the computer program to enable the terminal device to execute the functions of each module in the above-mentioned SLAM-based indoor absolute coordinate measurement method or the above-mentioned SLAM-based indoor absolute coordinate measurement device.

[0086] The processor can be an integrated circuit chip with signal processing capabilities. The processor can be a general-purpose processor, including at least one of a central processing unit (CPU), a graphics processing unit (GPU), a network processor (NP), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The general-purpose processor can be a microprocessor or any conventional processor, etc., and can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of this application.

[0087] The memory may be, but is not limited to, random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), and electrically erasable programmable read-only memory (EEPROM). The memory is used to store computer programs, and the processor can execute the computer programs accordingly after receiving an execution instruction.

[0088] This application also provides a computer-readable storage medium for storing the computer program used in the terminal device. For example, the computer-readable storage medium may include, but is not limited to, various media capable of storing program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0089] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and structure diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in an alternative implementation, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the structure diagram and / or flowchart, and the combination of boxes in the structure diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or can be implemented using a combination of dedicated hardware and computer instructions.

[0090] In addition, the functional modules or units in the various embodiments of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0091] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device (which can be a smart phone, personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application.

[0092] The above is only a specific implementation method of the present application, but the scope of protection of the present application is not limited thereto. Any technician familiar with this technical field can easily think of changes or replacements within the technical scope disclosed in this application, which should be covered by the scope of protection of the present application.

Claims

1. A method for indoor absolute coordinate measurement based on SLAM, characterized in that: include: Obtain point cloud data scanned indoors by a SLAM terminal device that supports SLAM; Obtaining a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; According to the coordinate conversion matrix and the global pose of the SLAM terminal device in the global coordinate system, the point cloud data corresponding to the global pose is transferred to the global coordinate system to obtain the absolute coordinate data of each point cloud in the global coordinate system; According to the measurement point input by the user, a corresponding absolute coordinate point is determined in the absolute coordinate data.

2. The indoor absolute coordinate measurement method based on SLAM according to claim 1, wherein The coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function, including: Utilizing the SLAM terminal device to collect data outdoors to obtain positioning and orientation data in the local coordinate system; In response to a trigger of a preset condition, a preset objective function is optimized using a preset optimization method based on the obtained initial rotation matrix to obtain a target rotation matrix and a translation vector; A coordinate transformation matrix from the local coordinate system to the global coordinate system is determined according to the target rotation matrix and the translation vector.

3. The indoor absolute coordinate measurement method based on SLAM according to claim 2, wherein The global pose of the SLAM terminal device in the global coordinate system is obtained by the following method: Using the SLAM terminal device to collect data indoors to obtain the local pose of the SLAM terminal device in the local coordinate system; The local pose is transformed using the coordinate transformation matrix to obtain the global pose.

4. The indoor absolute coordinate measurement method based on SLAM according to claim 2, wherein The method of optimizing a preset objective function based on the obtained initial rotation matrix using a preset optimization method to obtain a target rotation matrix and a translation vector includes: The least squares method is used to optimize the following objective function, with the goal of minimizing the transformation error of all coordinate points. Based on the initial rotation matrix, the target rotation matrix and translation vector are calculated: Among them, R represents the target rotation matrix, t represents the translation vector, Represents the position and posture of the SLAM terminal device in the local coordinate system, It represents the position of the SLAM terminal device in the global coordinate system, and i represents the sampling number of the SLAM terminal device.

5. The indoor absolute coordinate measurement method based on SLAM according to claim 2, characterized in that: The initial rotation matrix is ​​obtained in the following way: When the SLAM terminal device is started at rest, the initial rotation matrix from the local coordinate system to the global coordinate system is calculated using the measurement values ​​of the accelerometer and the magnetometer.

6. The indoor absolute coordinate measurement method based on SLAM according to claim 2, characterized in that: The triggering of the preset conditions includes: Detecting a change in a coordinate point in current positioning and orientation data of the SLAM terminal device; The method further comprises: After obtaining the target rotation matrix and translation vector, the target rotation matrix is ​​used to update the initial rotation matrix.

7. The indoor absolute coordinate measurement method based on SLAM according to any one of claims 2 to 6, characterized in that: The local coordinate system is the coordinate system where the positioning antenna is located when the SLAM terminal device is turned on; The positioning and orientation data includes positioning data and orientation data corresponding to at least three coordinate points whose coordinate points are spaced by a preset distance.

8. The indoor absolute coordinate measurement method based on SLAM according to any one of claims 1 to 6, characterized in that: Determining the corresponding absolute coordinate point in the absolute coordinate data according to the measurement point input by the user includes: Determining whether the accuracy of the absolute coordinate point meets the preset accuracy requirement based on the covariance size corresponding to the local posture; If the absolute coordinate point is determined to meet the accuracy requirement, the absolute coordinate point is determined and displayed in the target model reconstructed according to the SLAM terminal device.

9. An indoor absolute coordinate measurement device based on SLAM, characterized in that: include: The point cloud data acquisition module is used to obtain point cloud data scanned indoors by a SLAM terminal device that supports SLAM; A conversion matrix acquisition module, configured to acquire a coordinate conversion matrix from a local coordinate system determined by the SLAM terminal device to a global coordinate system; wherein the coordinate conversion matrix is ​​obtained by optimizing the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; A point cloud conversion module is used to convert the point cloud data corresponding to the global pose into the global coordinate system according to the coordinate conversion matrix and the global pose of the SLAM terminal device in the global coordinate system, so as to obtain the absolute coordinate data of each point cloud in the global coordinate system; The absolute coordinate determination module is used to determine the corresponding absolute coordinate point in the absolute coordinate data according to the measurement point input by the user.

10. An indoor absolute coordinate measurement system based on SLAM, characterized in that: include: SLAM terminal equipment and measurement terminal; The SLAM terminal device is used to optimize the coordinate conversion matrix according to the positioning and orientation data collected outdoors by the SLAM terminal device and a preset objective function; The measurement terminal is used to implement the indoor absolute coordinate measurement method based on SLAM as described in any one of claims 1-8.

Citation Information

Patent Citations

  • Robot indoor and outdoor seamless positioning method and system based on ROS and GPS

    CN106405605A

  • Method and system for establishing indoor absolute coordinate system

    CN115683110A

  • Point cloud data processing method and device based on multiple sensors and medium

    CN118131171A

  • Indoor and outdoor seamless positioning method based on multi-sensor fusion

    CN118816851A

  • Autonomous localization method and apparatus, and device and computer-readable storage medium

    WO2023226154A1

Cited By

  • Underground long and narrow shielding space reference automatic transmission method based on binocular vision

    CN121600055A

  • An Automated Reference Transfer Method for Narrow, Underground, Opaque Spaces Based on Binocular Vision

    CN121600055B