Joint measurement method and system, medium, device and program product

By setting target measurement features on the scanning device and using the spatial position and pose information of the tracking device for global unified processing, the problem of low measurement efficiency in the prior art is solved, and more efficient automation of 3D measurement and modeling is achieved.

CN121956025BActive Publication Date: 2026-07-31SCANTECH (HANGZHOU) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SCANTECH (HANGZHOU) CO LTD
Filing Date
2026-04-03
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

Existing joint measurement methods have low on-site measurement efficiency in 3D measurement and modeling scenarios, require additional calibration fixtures and complex calibration processes, and are difficult to automate.

Method used

By setting target measurement features on the scanning device and utilizing the spatial position and pose information provided by the first and second tracking devices, global unified processing is performed, reducing the reliance on additional calibration fixtures on site and directly generating global scanning data.

Benefits of technology

It improves the efficiency of joint measurement, reduces on-site alignment and repetitive operation steps, and achieves a higher degree of automation and measurement accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121956025B_ABST
    Figure CN121956025B_ABST
Patent Text Reader

Abstract

This application provides a joint measurement method and system, medium, device, and program product. The method includes: receiving local scanning data output by a scanning device at one or more spatial locations; for each of at least three spatial locations where the scanning device is located, receiving, corresponding to the spatial location: spatial position information of a target measurement feature on the scanning device in a first tracking device coordinate system, and pose information of the scanning device in a second tracking device coordinate system; and performing global unified processing on the local scanning data based on the spatial position information, pose information, and pre-determined relative position information between the target measurement feature and the scanning device body to generate global scanning data. Since the target measurement feature used for tracking by the first tracking device is set on the scanning device, and the relative position information is pre-determined, the reliance on on-site calibration fixtures can be reduced, significantly improving measurement efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of visual measurement technology, and more particularly to combined measurement methods and systems, media, devices and program products. Background Technology

[0002] In 3D measurement and modeling of workpieces, a common practice in related joint measurement methods is to use 3D scanning equipment in conjunction with high-precision positioning / tracking equipment to transform local point clouds into a unified global coordinate system. Typical tracking equipment includes laser-based laser trackers and vision-based stereo / optical tracking systems, each providing the pose or position information of the measured object or scanning equipment in its respective coordinate system. To achieve data fusion between different equipment coordinate systems, identifiable markers / targets are usually placed on-site, and coordinate transformation is established by measuring the positional relationship of these markers in each equipment coordinate system. This aligns the local point cloud acquired by the scanning equipment to the reference coordinate system, and finally, the data is stitched together to generate a global point cloud. However, the on-site measurement efficiency of related joint measurement methods remains low.

[0003] Based on this, embodiments of this application provide joint measurement methods and systems, media, devices, and program products to improve related technologies. Summary of the Invention

[0004] The purpose of this application is to provide a joint measurement method and system, medium, device and program product to improve the measurement efficiency of joint measurement.

[0005] The objective of this application embodiment is achieved using the following technical solutions:

[0006] In a first aspect, embodiments of this application provide a joint measurement method, the method comprising: receiving local scanning data output by a scanning device at one or more spatial locations; wherein the local scanning data is located in the coordinate system of the scanning device body; for each of at least three spatial locations where the scanning device is located, receiving, corresponding to the spatial location: spatial position information of a target measurement feature on the scanning device in a first tracking device coordinate system, and pose information of the scanning device in a second tracking device coordinate system; performing global unified processing on the local scanning data based on the spatial position information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and predetermined relative position information between the target measurement feature and the scanning device body, so as to maintain spatial consistency of the local scanning data from different spatial locations in the same specified global coordinate system, and generating global scanning data.

[0007] In some possible implementations, the pose information is obtained by a second tracking device tracking multiple target measurement markers on the scanning device.

[0008] In some possible implementations, the centers of at least three target measurement features corresponding to the at least three spatial locations are not collinear.

[0009] In some possible implementations, for the same spatial location, the spatial location information and the pose information are acquired by a first tracking device and a second tracking device respectively within a preset time window; wherein, within the preset time window, the pose change of the scanning device is within a specified pose change range.

[0010] In some possible implementations, the step of performing global unified processing on the local scan data includes: calculating based on the spatial location information, the pose information, and the relative position information to determine the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system; and based on the coordinate transformation relationship, transforming at least a portion of the local scan data to the specified global coordinate system to generate the global scan data.

[0011] In some possible implementations, the coordinate transformation relationship is determined during the process of the scanning device acquiring the local point cloud data; or, the coordinate transformation relationship is determined before the scanning device acquires the local scanning data.

[0012] In some possible implementations, the spatial location information is output by a first tracking device, and the pose information is output by a second tracking device. The method further includes: when the relative pose between the first tracking device and the second tracking device changes, re-receiving the spatial location information and the pose information for at least three spatial locations; and performing global unified processing on the local scan data based on the relative location information, the re-received spatial location information, and the pose information.

[0013] In some possible implementations, the step of performing global unified processing on the local scan data includes: calculating based on the relative position information, the re-received spatial position information, and the pose information to update the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system; and based on the updated coordinate transformation relationship, transforming at least a portion of the local scan data to the specified global coordinate system to generate updated global scan data.

[0014] In some possible implementations, when the first tracking device changes from a first pose to a second pose, while the pose of the second tracking device remains unchanged, the method further includes: determining a first coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the first pose, and a second coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the second pose; calculating a third coordinate transformation relationship between the first tracking device coordinate system when the first tracking device is in the first pose and the first tracking device coordinate system when the first tracking device is in the second pose based on the first and second coordinate transformation relationships; and transforming at least a portion of the global scan data obtained by transformation according to the second coordinate transformation relationship to a specified global coordinate system corresponding to the first pose based on the third coordinate transformation relationship.

[0015] In some possible implementations, the method further includes: outputting at least one of the spatial location information, the pose information, the relative position information, the local scan data, and the global scan data according to a specified data format.

[0016] In some possible implementations, the first tracking device includes at least one of laser tracking and optical tracking devices; the second tracking device includes at least one of stereo vision tracker, photogrammetric tracking system and optical tracking system.

[0017] Secondly, embodiments of this application provide a joint measurement system, the system comprising: a scanning device for outputting local scanning data; the scanning device being provided with at least one target measurement feature and multiple target measurement identifiers; a first tracking device for tracking the target measurement feature and outputting the spatial position information of the target measurement feature in the coordinate system of the first tracking device; a second tracking device for tracking the target measurement identifiers and outputting the pose information of the scanning device in the coordinate system of the second tracking device; and a control module for receiving local scanning data output by the scanning device at one or more spatial locations; wherein the local scanning data is located in the coordinate system of the scanning device itself; and for the coordinate system of the scanning device located in the coordinate system of the second tracking device. At least three spatial locations, the system receives, corresponding to the spatial location of the target measurement feature on the scanning device in the first tracking device coordinate system and the pose information of the scanning device in the second tracking device coordinate system. Based on the spatial location information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the predetermined relative position information between the target measurement feature and the scanning device body, the system performs global unified processing on the local scanning data to ensure that the local scanning data from different spatial locations maintains spatial consistency in the same specified global coordinate system and generates global scanning data.

[0018] In some possible implementations, the system further includes a data export module, used to output at least one of the spatial location information, the pose information, the relative position information, the local scan data, and the global scan data according to a specified data format.

[0019] Thirdly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in any of the above-mentioned embodiments.

[0020] Fourthly, embodiments of this application provide a computer device, the computer device including a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the method described in any of the above-mentioned embodiments.

[0021] Fourthly, embodiments of this application provide a computer program product, the computer program product including a computer program, which, when executed by a processor, implements the method described in any of the above-mentioned embodiments.

[0022] This application provides a joint measurement method and system, medium, device, and program product. The joint measurement method receives local scanning data output by a scanning device at one or more spatial locations, situated within the scanning device's coordinate system. For each of at least three spatial locations where the scanning device is located, it receives spatial position information of the target measurement feature corresponding to that location in a first tracking device coordinate system and pose information of the scanning device in a second tracking device coordinate system. Then, based on the spatial position information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the predetermined relative position information between the target measurement feature and the scanning device body, it performs globally unified processing on the local scanning data. This method ensures that local scan data from different spatial locations maintains spatial consistency within the same specified global coordinate system, generating global scan data. Since the target measurement features to be tracked by the first tracking device can also be set on the scanning device, and the relative position between the target measurement features and the scanning device is known, reliance on additional on-site calibration fixtures can be reduced. Furthermore, without relying on additional on-site fixtures or complex calibration procedures, global unified processing can be performed using spatial location information, pose information, and pre-determined relative position information. This ensures that local scan data from different spatial locations maintains spatial consistency within the same specified global coordinate system, generating global scan data and thus reducing on-site alignment and repetitive operation steps. In other words, it improves the measurement efficiency of joint measurements. Attached Figure Description

[0023] The embodiments of this application are further described below with reference to the accompanying drawings and specific implementation details.

[0024] Figure 1 This is a flowchart illustrating a joint measurement method provided in an embodiment of this application.

[0025] Figure 2 This is a schematic diagram of a scanning device provided in an embodiment of this application.

[0026] Figure 3 This is a schematic diagram of a first tracking device, a second tracking device, and a scanning device located in three spatial positions, provided in an embodiment of this application.

[0027] Figure 4 This is a schematic diagram of a combined measurement system provided in an embodiment of this application.

[0028] Figure 5 This is a structural block diagram of a computer device provided in an embodiment of this application. Detailed Implementation

[0029] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the protection scope of the embodiments of this application.

[0030] In the description of the embodiments of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, features defined with "first" and "second" may explicitly or implicitly include one or more of the stated features. In the description of the embodiments of this application, "multiple" means two or more, unless otherwise explicitly specified.

[0031] Related joint measurement methods typically combine a high-precision laser tracker and a stereo vision tracker. For example, a target sphere or reflector is fixed to the vision tracker, and the laser tracker measures the target sphere or reflector, thereby unifying the scan data acquired in the stereo vision tracker coordinate system to the laser tracker coordinate system. However, this requires additional calibration fixtures or adapters in the field to complete the coordinate system alignment, increasing equipment redundancy and deployment costs. Furthermore, since the target sphere or reflector is mounted on the vision tracker, the angle at which the target sphere or reflector receives the laser is limited, thus reducing the flexibility of positioning the stereo vision tracker. In addition, coordinate transformation relationships often rely on prior offline calibration processes, making it difficult to dynamically determine them during the scanning process, reducing the efficiency of joint measurement, and making it difficult to automate the entire joint measurement process.

[0032] This embodiment of the application sets the target measurement features to be tracked by the first tracking device on the scanning device, and the relative position between the target measurement features and the scanning device is predetermined. Therefore, it can reduce the dependence on additional calibration fixtures on site, and can perform global unified processing using spatial position information, pose information, and predetermined relative position information without relying on additional on-site fixtures / complex calibration processes. This allows local scanning data from different spatial locations to maintain spatial consistency under the same specified global coordinate system and generate global scanning data, thereby reducing on-site alignment and repetitive operation steps. In other words, it can improve the measurement efficiency of joint measurement.

[0033] Figure 1 This is a flowchart illustrating a joint measurement method provided in an embodiment of this application.

[0034] To address the low measurement efficiency of related joint measurement methods, this application proposes a joint measurement method. See [link to relevant documentation]. Figure 1 The method includes the following steps.

[0035] Step S101: Receive local scanning data output by the scanning device at one or more spatial locations; wherein the local scanning data is located in the coordinate system of the scanning device body.

[0036] Step S102: For each of the at least three spatial locations where the scanning device is located, receive the spatial position information of the target measurement features on the scanning device in the first tracking device coordinate system, and the pose information of the scanning device in the second tracking device coordinate system, corresponding to the spatial location.

[0037] Step S103: Based on the spatial position information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the predetermined relative position information between the target measurement feature and the scanning device body, perform global unified processing on the local scanning data to ensure that the local scanning data from different spatial locations maintain spatial consistency in the same specified global coordinate system, and generate global scanning data.

[0038] In some embodiments, the scanning device can be used to acquire three-dimensional data of the object under test and output scanned data (such as local point cloud data as described below). The scanning device can be any device or system capable of outputting three-dimensional point clouds, such as a laser scanner, a structured light scanner, or a phase-detection 3D scanner. To facilitate cooperation with the tracking device, the scanning device can be provided with target measurement features (such as a target ball / reflective ball / spherical target, etc.) for measurement by the first tracking device, and target measurement markers (such as reflective marker arrays, coded markers, feature point arrays, etc.) for identification and pose calculation by the second tracking device.

[0039] In some embodiments, the scanning device may include a scanning head and a tracking frame. The scanning head may be a scanning component for acquiring three-dimensional data of the surface of the object being measured, such as a laser line scanner, a structured light projection and imaging module, a phase ranging module, etc., and its output local point cloud is typically referenced to the coordinate system of the scanning head itself or the scanning device body. The tracking frame may be a mechanical support / frame structure rigidly connected to the scanning head (or the scanning device body). The tracking frame may be used to install and support target measurement features and / or target measurement markers (such as target spheres, reflective marker arrays, coded visual markers, etc.) that can be identified by the tracking device, thereby enabling the tracking device to continuously calculate the spatial pose or key point position of the scanning device in its coordinate system. Since the tracking frame and the scanning head can be fixedly connected (such as bolted connections, locating pin mating, integrated machining, etc.) and their relative pose parameters can be determined during assembly or manufacturing, the long-term stability of the relative pose of the target measurement features and target measurement markers relative to the scanning device body can be guaranteed, thus providing a consistent and reusable geometric reference for subsequent coordinate unification and point cloud stitching across spatial locations. The target measurement features and target measurement identifiers can be set on the tracking frame to ensure their relative pose stability with respect to the scanning device body.

[0040] In some embodiments, spatial position is used to characterize different positions or attitude states of the scanning device during the measurement process. Spatial position can be understood as the location and / or orientation state of the scanning device relative to an external spatial reference (such as the coordinate system of a first tracking device or a second tracking device) at a given moment. In other words, different spatial positions can be formed when the scanning device translates, rotates, or switches positions during the measurement process. The "at least three spatial positions" are used to provide sufficient spatial geometric constraints to determine the transformation relationship between different coordinate systems based on observation data from multiple positions and to achieve global unification of the point cloud.

[0041] In some embodiments, "scanning data" can be obtained by scanning a target object / scene using a scanning device. "Scanning data" can refer to any raw or processed data that can characterize the geometric information of the target object / scene. Specific data formats of scanning data may include: 3D point sets / point clouds, depth maps, distance maps, contour data, mesh data, voxel data, additional information related to geometric reconstruction such as reflection intensity / grayscale / texture, and any combination of the above data. In other words, "point cloud data" is only one typical implementation of scanning data.

[0042] In some embodiments, "local scan data" can refer to scan data collected and output by a scanning device at a spatial location (or at a moment / scan frame, station). The coordinates of the "local scan data" are expressed in the coordinate system of the scanning device itself (which can also be understood as a local reference system established by the scanning device, such as the coordinate system of the scanning head, the coordinate system of the device body, or the coordinate system of the tracking frame rigidly connected to the device). Local scan data can reflect the local geometric information of the target object at that spatial location. It has not yet been aligned with the coordinates of data collected from other spatial locations. Therefore, there may be coordinate system differences between local scan data corresponding to different spatial locations, which require global unified processing to achieve fusion.

[0043] For example, when "scanning data" refers to point cloud data, "local scan data" refers to local point cloud data, and "global scan data" refers to global point cloud data. Local point cloud data can refer to a set of point cloud data collected by the scanning device at a specific spatial location (or within a certain time period). It reflects the local geometric shape of the object under test within the scanning device's own reference frame. Local point cloud data can be a single frame of point cloud data, multiple consecutive frames of point cloud data, or a point cloud fragment accumulated at the same spatial location. Because local point clouds collected by the scanning device at different spatial locations are usually in different relative postures, without coordinate unification processing, there may be coordinate inconsistencies between point cloud data obtained from different spatial locations, making it difficult to directly stitch them together to form a global point cloud.

[0044] In some embodiments, the scanning device body coordinate system can refer to a coordinate system rigidly bound to the scanning device body. The scanning device body coordinate system can serve as the default coordinate reference for the local scanning data output by the scanning device. The scanning device body coordinate system can be defined internally by the scanning device (such as the scanning head coordinate system, sensor coordinate system, or device body coordinate system), or it can be the tracking frame coordinate system fixedly connected to the scanning device. Scanning data represented in the scanning device body coordinate system has the following characteristics: for example, when the scanning device moves as a whole, the coordinate representation of the local point cloud in this coordinate system remains unchanged regardless of changes in the external station position (i.e., the point cloud uses the scanning device itself as a reference). Therefore, subsequent global unified processing is required to align point clouds acquired from other spatial locations to the same specified global coordinate system.

[0045] It is understandable that the purpose of "receiving local scanning data output by the scanning device at one or more spatial locations" is to clarify the source, data format, and initial coordinate reference of the scanning data, thereby providing the foundation for subsequent "global unified processing." Specifically, on the one hand, by specifying "receiving local scanning data output by the scanning device at one or more spatial locations," it indicates that the scanning device may be in one or more stations / attitudes (i.e., one or more spatial locations) during the measurement process, and may continuously or segmentally output local scanning data at one or more spatial locations, thus enabling coverage of application scenarios such as multi-station scanning, mobile scanning, or segmented acquisition. On the other hand, by specifying that "the local scanning data is located in the coordinate system of the scanning device itself," it is clear that the point cloud output by the scanning device is not naturally located in the coordinate system of the first or second tracking device in its initial state, but is expressed with the scanning device itself as the reference coordinate. Therefore, it is necessary to combine the spatial location information of the target measurement features provided by the first tracking device, the pose information of the scanning device provided by the second tracking device, and the relative position information between the target measurement features and the scanning device body determined in advance to perform global unified processing on the local scanning data, so that the local point clouds from different spatial locations can maintain spatial consistency under the same specified global coordinate system and generate global scanning data.

[0046] In some embodiments, the target measurement feature may refer to a feature structure or marker disposed on the scanning device, whose spatial position can be directly measured by a first tracking device. The target measurement feature can be used to provide high-precision spatial point constraints. For example, the target measurement feature may be a target sphere, a reflective sphere, a spherical target, a prism, a spherical feature, or other structures whose center point position can be measured by devices such as laser trackers. The relative positional relationship between the target measurement feature and the scanning device body can be predetermined at the factory or during offline calibration, thereby establishing a cross-device geometric association in the field without the need for additional calibration fixtures.

[0047] In some embodiments, the first tracking device coordinate system may be a reference coordinate system established or inherent by the first tracking device. The first tracking device coordinate system can be used to express the measurement results output by the first tracking device. For example, when the first tracking device is a laser tracker, the first tracking device coordinate system may be the instrument coordinate system of the laser tracker or its set reference coordinate system. The measurement results of the target measurement features (such as the coordinates of the target ball's center) by the first tracking device are represented based on this coordinate system.

[0048] In some embodiments, spatial location information may refer to spatial location measurement data of the target measurement feature in the coordinate system of the first tracking device. Spatial location information can characterize the three-dimensional coordinates of the target measurement feature at a spatial location. Spatial location information can typically be represented as a triple, and may further include additional information such as timestamps, measurement confidence levels, and measurement uncertainties.

[0049] In some embodiments, the second tracking device coordinate system can be a reference coordinate system established or inherent by the second tracking device. The second tracking device coordinate system can be used to express the tracking results output by the second tracking device. For example, when the second tracking device is a stereo vision tracker, a photogrammetric tracking system, or an optical motion capture system, the second tracking device coordinate system can be a camera coordinate system, a system world coordinate system, or a calibrated reference coordinate system; the calculation results of the second tracking device for the pose of the scanning device can be represented based on this coordinate system.

[0050] In some embodiments, the first tracking device may include at least one of laser tracking and optical tracking devices; the second tracking device may include at least one of stereo vision tracker, photogrammetric tracking system and optical tracking system.

[0051] For example, the first tracking device can be a laser tracker (such as a system that uses laser ranging / angle measurement to perform high-precision three-dimensional coordinate measurement of target features like target balls or reflective spheres) or an optical tracking device (such as a system that uses an infrared camera / optical sensor to locate active or passive markers). Furthermore, in some scenarios, both laser tracking and optical tracking capabilities can be configured simultaneously. This first tracking device can output "spatial position information of the target measurement features in the coordinate system of the first tracking device," thereby providing highly reliable spatial reference point data for globally unified processing, typically focusing on absolute measurement accuracy and stability.

[0052] For example, the second tracking device can employ different visual / optical positioning schemes to output the pose information of the scanning device in its coordinate system. For instance, a stereo vision tracker can identify multiple target measurement markers (such as reflective dot matrix, coded markers, etc.) on the scanning device using binocular or multi-view cameras, and calculate the pose of the scanning device accordingly. A photogrammetric tracking system can use multiple cameras to acquire data and combine it with photogrammetric algorithms to perform 3D reconstruction of the target measurement markers, thereby obtaining the pose of the scanning device. An optical tracking system can continuously track reflective markers or actively emitting points using methods such as infrared motion capture and output the aforementioned pose information. This second tracking device can be used to continuously track the motion state of the scanning device, facilitating the acquisition of the scanning device's pose information at multiple spatial locations.

[0053] In some embodiments, pose information may refer to the pose description of the scanning device in the coordinate system of the second tracking device. Pose information can be used to characterize the position and orientation of the scanning device relative to the coordinate system of the second tracking device. Pose information may include rotational and translational components, for example, represented by a rotation matrix R and a translation vector T, or by quaternions and a translation vector. Pose information can be calculated by the second tracking device after identifying and tracking multiple target measurement markers on the scanning device, thereby enabling continuous or discrete pose acquisition of the scanning device during the measurement process.

[0054] It is understandable that the function of "receiving, for each of the at least three spatial locations where the scanning device is located: the spatial position information of the target measurement feature on the scanning device in the first tracking device coordinate system, and the pose information of the scanning device in the second tracking device coordinate system" is to reduce the insufficient geometric constraints or unstable solutions caused by relying solely on single-location data. By obtaining the "spatial position information of the target measurement feature in the first tracking device coordinate system" and the "pose information of the scanning device in the second tracking device coordinate system" simultaneously (or within an allowed time window) at multiple spatial locations, the correspondence between the same target measurement feature in the two coordinate systems can be established, thereby supporting the unification of local scanning data from different spatial locations into the same specified global coordinate system.

[0055] In some embodiments, the relative position information between the target measurement feature and the scanning device body can refer to the geometric position / geometric relationship of the target measurement feature in the coordinate system of the scanning device body (or the coordinate system of the tracking frame rigidly associated with the scanning device body). This relative position information can be used to describe the fixed installation offset between the two. This relative position information may include the three-dimensional coordinates of the target measurement feature (such as the position vector of the target ball's center in the coordinate system of the scanning device body), and may also include rigid body pose offsets (such as the homogeneous transformation from the scanning device body reference point to the target measurement feature). This relative position information can be predetermined and fixed during factory calibration or offline calibration, so that it can be reused in the field without additional calibration fixtures.

[0056] In some embodiments, global unified processing can refer to performing data fusion and alignment processing on local scan data from one or more spatial locations, combining the aforementioned spatial location information, pose information, and relative position information, so that the point cloud has a consistent spatial representation under the same reference system. Global unified processing may include at least one of the following operations: point cloud coordinate update, cross-frame / cross-station point cloud stitching, alignment constraint application, data fusion, error suppression, and outlier data removal. The goal of global unified processing is to obtain global scan data that can be directly used under the same specified global coordinate system.

[0057] In some embodiments, the designated global coordinate system can refer to a unified reference coordinate system used to carry global scan data. The designated global coordinate system can be preset by the system or specified by the user, for example, it can be selected as the coordinate system of the first tracking device, the coordinate system of the first tracking device at a certain time / position, or a world coordinate system customized at the engineering site. By unifying local scan data from different spatial locations to the designated global coordinate system, the problem of incompatibility caused by point clouds belonging to different local coordinate systems can be improved.

[0058] In some embodiments, the specified global coordinate system can be selected according to the needs of the measurement task. For example, the coordinate system corresponding to any first tracking device (such as a laser tracker) at a station can be used as the specified global coordinate system; or the coordinate system corresponding to any second tracking device (such as a stereo vision tracker) at a station can be used as the specified global coordinate system.

[0059] In some embodiments, spatial consistency can refer to the ability of local point clouds from different spatial locations to maintain geometric coherence in space for the same physical surface / spatial structure after being unified to a specified global coordinate system. Spatial consistency can be reflected in the following: point clouds collected from different spatial locations have small registration residuals in overlapping areas; the overall point cloud has fewer obvious misalignments, displacements, or rotational deviations; and it can form a consistent three-dimensional geometric shape expression under a specified global coordinate system.

[0060] In some embodiments, "global scan data" can refer to a data set or fusion result obtained by transforming local scan data from one or more spatial locations to the same specified global coordinate system through "global unified processing". This specified global coordinate system can be a first tracking device coordinate system, a second tracking device coordinate system, or another global reference system specified by the user. The purpose of global scan data is to maintain spatial consistency of scan data collected from different spatial locations under a unified reference system, thereby supporting subsequent applications such as cross-site stitching, overall modeling, size detection, or comparative analysis. Global scan data is also not limited in its data format; it can be represented as a point cloud / mesh / depth data sequence or its fusion model under a unified coordinate system.

[0061] For example, when "scan data" can be point cloud data, "global scan data" can be global point cloud data. Global point cloud data refers to a collection of point clouds obtained by fusing local point cloud data from different spatial locations after global unified processing in a specified global coordinate system. Global point cloud data can be a single merged point cloud or a multi-frame fusion result with attributes such as index, timestamp, and confidence level. Global point cloud data can be used for subsequent tasks such as 3D modeling, dimension inspection, reverse engineering, or comparative analysis.

[0062] It is understandable that the function of "performing global unified processing on the local scanning data based on the spatial position information of the target measurement feature in the coordinate system of the first tracking device, the pose information of the scanning device in the coordinate system of the second tracking device, and the pre-determined relative position information between the target measurement feature and the scanning device body, so as to maintain spatial consistency of the local scanning data from different spatial locations in the same specified global coordinate system and generate global scanning data" is to establish a data alignment basis across spatial locations by utilizing the high-precision point information provided by the first tracking device, the pose constraints of the scanning device provided by the second tracking device, and the fixed geometric relationship between the target measurement feature and the scanning device body, so that the local scanning data can be fused under a unified global reference. This combined information can reduce the need for additional calibration fixtures on site and improve the automation and stability of multi-location point cloud stitching. Furthermore, "global unified processing" can be implemented without explicitly constructing the spatial correspondence between the scanning device's body coordinate system and the specified global coordinate system (as described in "coordinate transformation relationship" below). Instead, it can adopt an end-to-end processing approach, inputting the aforementioned multi-source information and local scanning data into a unified processor / model. This processor / model implicitly represents the spatial correspondence between the local point cloud and the specified global coordinate system through its model parameters or internal states, and directly outputs the global scanning data.

[0063] In some embodiments, the "global unified processing of the local scan data" can be implemented in the following way. For example, it is possible to output global scan data directly based on the spatial position information of the target measurement features in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the relative position information, without relying on explicitly constructing the spatial correspondence between the scanning device's body coordinate system and the specified global coordinate system (e.g., without explicitly calculating or outputting rotation matrices, translation vectors, or homogeneous transformation matrices). In other words, the above-mentioned multi-source information and local point cloud can be used as input, and a point cloud result in the specified global coordinate system can be directly generated through a unified processor / model, without requiring explicit "spatial correspondence" intermediate variables from the perspective of the external interface. Global unified processing can be implemented through an end-to-end processing method. The above-mentioned end-to-end processing method can implicitly represent the spatial correspondence between the local scan data and the specified global coordinate system through model parameters or internal states, without explicitly outputting or storing the above-mentioned "spatial correspondence".

[0064] In some embodiments, end-to-end processing can be implemented by a machine learning model, a differentiable optimization module, or a hybrid algorithm module. For example, the aforementioned model or module can receive (i) local scan data, (ii) spatial position information of target measurement features in the coordinate system of the first tracking device, (iii) pose information of the scanning device in the coordinate system of the second tracking device, and (iv) relative position information, and output global scan data; wherein, the aforementioned model or module can be trained or optimized online through supervised learning (using the global point cloud in the calibration scene as a label), self-supervised consistency constraints (using the consistency / residual of the point cloud in the overlapping area as a loss), or constraints based on physical priors (such as rigid body consistency, non-collinearity constraints). The aforementioned model or module can automatically complete cross-spatial position alignment and fusion internally during inference / runtime, and only the input-output relationship is observed externally, thereby satisfying the functional result of the "globally unified processing".

[0065] In some embodiments, the "performing global unified processing on the local scan data" can also be achieved through implicit optimization fusion without explicitly calculating or outputting the rotation matrix, translation vector, or homogeneous transformation matrix between the scanning device's body coordinate system and the specified global coordinate system. Specifically, local scan data collected from different spatial locations can be used as data items to be fused, and the spatial position information of (i) the target measurement features in the first tracking device coordinate system, (ii) the pose information of the scanning device in the second tracking device coordinate system, and (iii) the pre-determined relative position information between the target measurement features and the scanning device body can be constructed as fusion constraints. The fusion result is iteratively updated by minimizing the consistency error of the overlapping area of ​​the point cloud and the constraint error of the target measurement features (such as point-to-point / point-to-surface residuals, feature point position residuals, and rigid body consistency regularization terms). In this process, the alignment state corresponding to each local scan data exists only as an implicit variable or iterative state within the processor. It is not necessary to provide or store explicit coordinate transformation relationships externally. Instead, the fused point cloud with spatial consistency in the specified global coordinate system is directly output, thereby realizing the generation of global scan data.

[0066] In some embodiments, the pose information may be obtained by tracking multiple target measurement markers on the scanning device using a second tracking device.

[0067] In some embodiments, "pose information is obtained based on the tracking of multiple target measurement markers on the scanning device by the second tracking device" means that the second tracking device uses multiple target measurement markers set on the scanning device as observation objects, obtains the measurement / recognition results of these target measurement markers in the coordinate system of the second tracking device, and calculates the spatial pose of the scanning device relative to the coordinate system of the second tracking device. In other words, pose information can be deduced based on the tracking results of the second tracking device on externally observable markers.

[0068] It is understandable that the purpose of "the pose information can be obtained by tracking multiple target measurement markers on the scanning device using a second tracking device" is to acquire pose information by having the second tracking device track multiple target measurement markers on the scanning device. This allows for stable and continuous calculation of the spatial position and orientation of the scanning device in a second coordinate system. Furthermore, the more comprehensive geometric constraints from multiple markers improve the accuracy and robustness of pose calculation, reducing the risk of pose drift caused by single-point occlusion, false detections, or noise.

[0069] In some embodiments, the aforementioned pose information can also be obtained by the second tracking device through other observation objects or other pose estimation mechanisms. The key is that the final output is "the pose information (or equivalent pose representation) of the scanning device in the coordinate system of the second tracking device." In other words, the essence of "pose information" is the rigid body pose result of the scanning device relative to the coordinate system of the second tracking device, and its acquisition methods can be diverse.

[0070] For example, the pose information can be obtained based on the visual localization of the scanning device or its associated rigid structure by the second tracking device using natural features / geometric structures, such as identifying geometric features like corners, edges, holes, and planes on the scanning device's casing. Alternatively, the second tracking device can directly calculate the scanning device's pose by identifying a single coded marker or a rigid marker plate (containing multiple features but managed as a "comprehensive target"). Alternatively, the pose information can be obtained by fusing the second tracking device with sensors such as the scanning device's inertial measurement unit / odometer, where the second tracking device provides external observation constraints, and the inertial measurement unit provides short-term attitude / angular velocity constraints, thereby outputting the scanning device's pose information in a second coordinate system. All of the above methods can obtain the pose information without relying on "tracking multiple target measurement markers."

[0071] In some embodiments, pose information can also be generated by other pose acquisition methods or obtained through fusion calculation. For example, it can be acquired by the pose sensor / positioning module of the scanning device itself (such as an inertial measurement unit, encoder, odometer, etc.). It can also be acquired by an external positioning system (such as the end-effector pose provided by a robot motion controller, a total station / LiDAR positioning system, etc.), or estimated by fusing the tracking results of a second tracking device with the aforementioned sensor data. Regardless of the acquisition method used, the pose information is acceptable as long as it can characterize the pose of the scanning device in the second coordinate system.

[0072] In some embodiments, the first tracking device can be used to measure the spatial coordinates of a target measurement feature mounted on a scanning device in its own coordinate system. The first tracking device can be a laser tracker, etc. The number of first tracking devices can be one or more.

[0073] In some embodiments, the second tracking device can be used to track the pose of the scanning device in its own coordinate system. The second tracking device can output the pose information of the scanning device at each spatial location. The second tracking device can be a stereo vision tracker or an optical tracking system, etc. The second tracking device can also be a binocular / multi-view stereo camera system or an optical motion capture system, etc. The second tracking device can continuously track the aforementioned target measurement marker. The pose information provided by the second tracking device can be used to determine the coordinate transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device.

[0074] Understandably, while the first and second tracking devices have different focuses in terms of function and measurement principle, they also cooperate with each other. For example, the first tracking device (such as a laser tracker) can acquire the precise spatial position of the target measurement features installed on the scanning device in its own coordinate system through high-precision distance / angle measurements, focusing on absolute positioning accuracy. The second tracking device (such as a stereo vision tracker) can reconstruct the pose of the scanning device in its coordinate system by observing the target measurement marks on the scanning device, focusing on field of view coverage and continuous tracking capability. The first and second tracking devices observe different marks on the same scanning device or corresponding points of the same mark in different coordinate systems. By synchronous observation at multiple spatial locations, a set of corresponding points between the coordinate systems of the first and second tracking devices can be constructed, thereby determining the coordinate transformation relationship between the coordinate systems of the first and second tracking devices. This coordinate transformation relationship can be used to transform at least part of the local scanning data collected by the scanning device to a specified global coordinate system (such as the coordinate system of the first tracking device corresponding to the laser tracker), so as to achieve a complementary fusion of high precision and large-area coverage.

[0075] In some embodiments, the scanning device may include a scanning component (such as a scanning module for acquiring 3D point cloud / distance information). The specific form of the scanning component is not limited and can be a laser scanning, structured light, phase ranging, photogrammetry, or other type of 3D scanning device. Target measurement features and target measurement markers can be directly set on the scanning component or the scanning device body, for example, by fixing the target measurement features and target measurement markers to the scanning component / scanning device through multiple rigid mounting bases, connecting plates, or an integrated structure, so as to maintain a stable relative pose between the target and the scanning device, thereby facilitating subsequent tracking measurements, etc.

[0076] In some embodiments, the scanning device may be a spherical scanning head, a ball-shaped scanning head, or a scanning head structure with a spherical shape / center defined. The aforementioned scanning components may be handheld scanners, fixed scanning heads, line / area scanning modules, camera-type scanning units, scanning end effectors mounted on the end of a robotic arm, or any type of 3D measurement sensor assembly. Correspondingly, the target measurement features and / or target measurement markers may not be required to be arranged on the body of the ball-shaped scanning head, etc., but may be arranged on the scanning device's body, mounting bracket, connecting flange, end effector support, rigid tracking frame, or other structures that maintain a rigid fixed relationship with the scanning components, as long as their relative pose to the scanning components is predetermined and remains unchanged during measurement.

[0077] In some embodiments, the target measurement feature can be flexibly mounted on the scanning device, the rigid frame of the scanning device, or an external adapter. The target measurement identifier can also be flexibly mounted on the scanning device, the rigid frame of the scanning device, or an external adapter.

[0078] In some embodiments, the scanning device may include a scanner and a tracking frame. The scanner may be a laser scanner, a structured light scanner, or a phase rangefinder, etc. The scanner can be used to acquire local scanning data. The tracking frame may be fixedly mounted on the scanner. Target measurement markers and target measurement features may be mounted on the tracking frame. The relative position information of the target measurement markers and target measurement features in the tracking frame coordinate system can be predetermined at the factory or during calibration. The target measurement features and target measurement markers on the tracking frame enable the first tracking device and the second tracking device to observe the same physical device in their respective coordinate systems. The tracking frame can provide a unified, predetermined rigid reference for the target measurement features and target measurement markers, which can simplify field installation, ensure repeatability, and reduce a large number of field calibration steps.

[0079] In some embodiments, the target measurement feature may be a target ball or a reflective ball that can be tracked and measured by the first tracking device. The position of the geometric center of the target measurement feature in the coordinate system of the tracking frame or the coordinate system of the scanning device itself is known or predetermined. The first tracking device can obtain high-precision spatial position information by using the target measurement feature as the measurement object, so as to provide the accurate spatial position of the scanning device in the coordinate system of the first tracking device.

[0080] In some embodiments, the target measurement marker can be a marker used for identification and pose estimation by the second tracking device. For example, the target measurement marker can be a reflective sticker or an array of dots, or it can be a visual marker, a coded mark, or an array of feature points. The coordinate information of the target measurement marker in the tracking frame coordinate system or the scanning device's own coordinate system can be predetermined during manufacturing or calibration. The second tracking device can obtain the pose information of the scanning device in its corresponding coordinate system by observing the target measurement marker.

[0081] It is understandable that a local reference coordinate system is a local coordinate system used by the scanning device to express the relative positions of local point clouds and various markers / features. This local reference coordinate system can be defined by the tracking frame set on the scanning device, or it can be equivalent to the scanning device body coordinate system, scanning head coordinate system, mounting flange coordinate system, or other pre-defined assembly reference coordinate system. The local reference coordinate system can be used to predefine and record the relative position information of each target measurement feature and target measurement marker on the scanning device under this local reference coordinate system. The first tracking device coordinate system and the second tracking device coordinate system refer to the coordinate systems of two tracking devices (such as the first tracking device and the second tracking device), respectively (e.g., the laser tracker coordinate system corresponds to the first tracking device coordinate system, and the stereo vision tracker coordinate system corresponds to the second tracking device coordinate system). The connection between the two lies in the fact that, by using the coordinates of the target measurement features and target measurement markers in the known local reference coordinate system, and by having the first and second tracking devices observe these target measurement features and target measurement markers and provide their coordinates / poses in their respective coordinate systems, a spatial correspondence (rigid transformation relationship) can be established between the local reference coordinate system and the coordinate systems of the first and second tracking devices. Then, by performing global unified processing on the local scanning data using at least three sets of corresponding point pairs or poses, the local scanning data of the scanning device is unified to a specified global coordinate system. In some embodiments, the scanning device may include a scanning head and a tracking frame. The scanning head can be a scanning component for acquiring three-dimensional data of the surface of the object being measured, such as a laser line scanner, a structured light projection and imaging module, a phase ranging module, etc., whose output local point cloud is typically referenced to the coordinate system of the scanning head itself or the scanning device body. The tracking frame can be a mechanical support / frame structure rigidly connected to the scanning head (or the scanning device body). The tracking frame can be used to mount and carry target measurement features and / or target measurement markers (such as target balls, reflective marker arrays, coded visual markers, etc.) that can be identified by the tracking device, so that the tracking device can continuously solve information such as the spatial pose or key point position of the scanning device in its coordinate system.

[0082] Figure 2 This is a schematic diagram of a scanning device provided in an embodiment of this application.

[0083] See Figure 2 The scanning device may include a scanner and a tracking frame. The tracking frame may be fixedly mounted on the scanner. A target ball (a target measurement feature in one embodiment) and tracking frame markers (target measurement identifiers in one embodiment) may be disposed on the tracking frame.

[0084] Figure 3 This is a schematic diagram of a first tracking device, a second tracking device, and a scanning device located in three spatial positions, provided in an embodiment of this application.

[0085] See Figure 3 "Position 1", "Position 2", and "Position 3" represent three spatial positions in one embodiment. The gray elliptical area represents the observation area of ​​the first device, and the gray triangular area represents the observation area of ​​the second tracking device. "Position 1", "Position 2", and "Position 3" are all located within the overlapping area of ​​the observation areas of the first device and the second tracking device. In other words, the scanning device can move in a specified order, such as moving from "Position 1" to "Position 2" and then from "Position 2" to "Position 3". When the scanning device is located at "Position 1", "Position 2", or "Position 3", the first tracking device can track the target measurement features on the scanning device to obtain the spatial position information of the target measurement features in the coordinate system of the first tracking device. Simultaneously, the second tracking device can synchronously track the target measurement markers on the scanning device to obtain the pose information of the scanning device in the coordinate system of the second tracking device.

[0086] In some embodiments, before the relevant equipment leaves the factory, the coordinates of the marker points (target measurement identifiers) of the scanning system (scanning device in one embodiment) (relative position information between the target measurement identifier and the scanning device in one embodiment), and the center coordinates of the target ball (target measurement feature in one embodiment) in the tracking frame coordinate system (relative position information between the target measurement feature and the scanning device in one embodiment) can be predetermined. The marker points on the tracking frame of the scanning system can be determined in advance by photogrammetry or other methods. The center coordinates of the target ball in the tracking frame coordinate system can be achieved in various ways. For example, a stereo vision tracker (a second tracking device in one embodiment) identifies and reconstructs the marker points of the tracking frame on the scanning system 1 to obtain the coordinates of the marker points of the tracking frame on the scanning system 1 in the stereo vision tracker; at the same time, another scanning system (scanning system 2) tracks and scans the outline of the target ball on the scanning system 1 in the stereo vision tracker coordinate system (the second tracking device coordinate system in one embodiment) to determine the center coordinates of the target ball in the stereo vision tracker coordinate system. Based on the coordinates of the marker points of scanning system 1 in the stereo vision tracker coordinate system, and the coordinates of the center of the target ball on scanning system 1 in the stereo vision tracker coordinate system, the corresponding representation of the coordinates of the target ball on scanning system 1 in the tracking frame coordinate system of scanning system 1 can be determined.

[0087] In some embodiments, the first tracking device and the second tracking device can scan the target measurement features and target measurement identifiers on the devices respectively for tracking in a specified cooperative manner. "Specified cooperative manner" can refer to a flexible cooperation strategy adopted by the first and second tracking devices during tracking to adapt to the limitations of multi-device hardware architecture and time synchronization. In this manner, the devices can simultaneously or sequentially acquire data on the same target, specifically manifested in two scenarios: hard synchronization, soft synchronization, and / or other synchronization (alignment) methods. Hard synchronization refers to, under strict time synchronization conditions, the first and second tracking devices acquire data on target measurement features or target measurement identifiers at at least three spatial locations within the same preset time window. For example, while the second tracking device acquires data about a marker point (a target measurement identifier in one embodiment), the first tracking device acquires data about a target ball (a target measurement feature in one embodiment), thereby ensuring that the recorded information has a consistent timestamp. Soft synchronization allows the first and second tracking devices to acquire data at different time points. In this mode, the second tracking device (such as a visual tracking device) can acquire the position information of the marker point at one moment, while the first tracking device (such as a laser tracker) can acquire the position of the target ball at a later time point. For example, the first tracking device can acquire data on target measurement features at at least three spatial locations, and the second tracking device can acquire data on target measurement markers at at least three spatial locations. The data acquisition times of the first and second tracking devices do not need to be strictly aligned. For instance, with the scanning head's pose remaining constant, the second tracking device acquires position information about the marker points in the second second, while the first tracking device acquires position information about the target ball in the fourth second (corresponding to the same spatial position information). This soft synchronization ensures data accuracy, improves overall measurement efficiency, adapts to measurement needs in dynamic environments, reduces reliance on synchronization accuracy, and enables greater operational flexibility.

[0088] It should be noted that "specified coordination methods" can also include at least one of the following: event / state-triggered alignment, buffer-pairing alignment, interpolation / extrapolation alignment, and segmented locking alignment. Event / state-triggered alignment refers to using conditions such as "scanning devices are in the same spatial position / pose remains unchanged," "tracking is effective," or "position signal triggering" as data acquisition alignment conditions, rather than absolute timestamp alignment. Buffer-pairing alignment can refer to two tracking devices continuously sampling and buffering data, with the control module performing data pairing in the background based on timestamp proximity, pose change thresholds, or spatial consistency constraints. Interpolation / extrapolation alignment can refer to interpolating or extrapolating the discrete samples of the other tracking device when one tracking device has a higher sampling frequency to obtain matching data at the corresponding spatial position. Segmented locking alignment can refer to locking the scanning device pose within a measurement segment, completing observations for both the first and second tracking devices separately, and then switching to the next spatial position. Any of the above methods or combinations thereof can be used to ensure that the relevant data of the first tracking device and the relevant data of the second tracking device correspond to the same spatial position (or correspond within the allowable error range).

[0089] In some embodiments, the spatial location information, the pose information, and the pre-determined relative position information between the target measurement feature and the scanning device can be used to determine the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system. This coordinate transformation relationship is used to transform at least a portion of the local scanning data collected by the scanning device to a specified global coordinate system to generate global scanning data. Those skilled in the art can, according to actual scenario requirements, utilize the spatial location information, the pose information, and the pre-determined relative position information between the target measurement feature and the scanning device to transform at least a portion of the local scanning data collected by the scanning device to a specified global coordinate system. The specific process of "transforming at least a portion of the local scanning data collected by the scanning device to a specified global coordinate system" is not specifically limited here.

[0090] Understandably, the purpose of "pre-determined relative position information between the target measurement feature and the scanning device" is to establish a correspondence between the observation results of the first tracking device in its local coordinate system (such as the first tracking device's coordinate system) and the observation results of the second tracking device in its local coordinate system. For example, when the second tracking device calculates the pose information of the scanning device or the tracking frame, or when the tracking frame is observed at several positions, the known relative position information between the target measurement feature and the scanning device (such as the position of the target measurement feature in the scanning device's coordinate system) can be used to deduce the theoretical position of the target measurement feature in the second tracking device's coordinate system, thus serving as a known reference for the registration of the two coordinate systems. This pre-determined data can reduce the need for repeated on-site measurements of basic geometric parameters, ensuring the feasibility and accuracy of subsequent coordinate mapping solutions.

[0091] In some embodiments, the coordinate transformation relationship between the first and second tracking device coordinate systems can refer to a mathematical expression describing the spatial rigid body transformation between the two reference coordinate systems. For example, the coordinate transformation relationship can include rotation transformations (such as a 3×3 rotation matrix R or quaternions) and translation vectors T. The coordinate transformation relationship can also be represented by a 4×4 homogeneous transformation matrix. This coordinate transformation relationship characterizes how to transform a point or pose belonging to the second tracking device coordinate system to its corresponding representation in the first tracking device coordinate system, and is reversible in the inverse transformation. The solution to the coordinate transformation relationship is based on observed corresponding point pairs (such as at least three pairs of points and several pose pairs for the same physical identifier in the two coordinate systems). This coordinate transformation relationship can be used to transform at least a portion of the local scanning data collected by the scanning device to a specified global coordinate system to generate global scanning data. Furthermore, in multi-station measurements, point clouds or poses from different stations can be unified to the same specified global coordinate system to complete data fusion.

[0092] In some embodiments, the coordinate transformation relationship can be determined according to the following general process. First, data preparation and pairing. For example, at least three sets of source points in the first tracking device coordinate system and the second tracking device coordinate system are collected and paired, i.e., the aforementioned at least three spatial location information and the aforementioned at least three spatial location information. For example, a first point set {P1_i} (i=1…N) and a second point set {P2_i} (i=1…N) are collected, ensuring that each pair (P1_i, P2_i) represents the coordinate data of the target measurement feature on the scanning device in the first tracking device coordinate system, and the coordinate data of the target measurement feature on the scanning device in the second tracking device coordinate system, respectively. This step may involve time synchronization or confirmation of index correspondence. Second, the above point sets can be preprocessed. For example, obvious measurement outliers can be removed, samples with large noise can be smoothed or filtered out, and incorrect pairings can be identified and excluded based on residual thresholds or robust statistical methods to improve the robustness and final accuracy of the solution. Third, the preliminary calculation results of the coordinate transformation relationship are obtained. For example, first calculate the centroids c1=mean(P1_i) and c2=mean(P2_i) of the two point sets, and center the point sets to obtain Q1_i=P1_i-c1 and Q2_i=P2_i-c2. Construct the covariance matrix H =Σ Q2_i·Q1_i^T, and apply singular value decomposition to H: H = U·Σ·V^T. Let R = U · diag(1,1, det(U·V^T)) · V^T, ensuring that det(R)=+1, and the translation vector is T = c2 -R·c1. Those skilled in the art can adjust the above general process for solving coordinate transformation relationships according to actual needs; no specific restrictions are imposed here.

[0093] In some embodiments, at least a portion of the local point cloud data acquired by the scanning device can be converted to a specified global coordinate system in the following manner. For example, for at least a portion or each frame of local point cloud data, its point coordinates in the specified global coordinate system can be obtained using the following expression: X_global = R_rel,k X_local + T_rel,k, where R_rel,k and T_rel,k represent the rotation matrix and translation vector, respectively, and X_local and X_global can represent the coordinate values ​​of the local point cloud data in a local coordinate system (such as the second tracking device coordinate system) and a specified global coordinate system (such as the first tracking device coordinate system), respectively. By applying this transformation relationship to the local point cloud data, local data collected from different stations or at different times can be unified to the same reference system, thereby stitching and fusing them into a coherent global point cloud data. This coordinate transformation relationship can be used for real-time data fusion (such as generating global point cloud data while scanning) and also for offline processing in conjunction with subsequent related algorithms (such as least squares-based global optimization or loop closure correction) to improve stitching accuracy.

[0094] For example, the above-described joint measurement method can be performed according to the following general procedure. First, a laser tracker (a first tracking device in one embodiment) and a stereo vision tracker (a second tracking device in one embodiment) are arranged such that their measurement areas overlap. When scanning begins, the scanner of the scanning system (a scanning device in one embodiment) acquires local point cloud data. The stereo vision tracker can track the pose of the scanning system by observing the marker points (target measurement markers in one embodiment) on the tracking frame of the scanning system, thereby unifying the local point cloud data of the scanning system into the coordinate system of the stereo vision tracker (the coordinate system of the second tracking device in one embodiment). During the scanning process, the scanning system can be driven to at least three different spatial positions so that the target sphere (a target measurement feature in one embodiment) is tracked by the laser tracker, and the aforementioned marker points are tracked by the stereo vision tracker. This enables synchronous observation, obtaining three spatial center point data of the target sphere in the laser tracker coordinate system (a first tracking device coordinate system in one embodiment) (spatial position information of the target measurement feature in the first tracking device coordinate system in one embodiment) and three spatial center point data of the target sphere in the stereo vision tracker coordinate system (spatial position information of the target measurement feature in the second tracking device coordinate system in one embodiment). The spatial center point data of the target sphere in the stereo vision tracker coordinate system can be obtained through the tracking pose of the scanning system by the stereo vision tracker (pose information in one embodiment) and the known coordinates of the target sphere in the scanning system (relative position information between the target measurement feature and the scanning device in one embodiment). Based on the above three sets of point data in the two coordinate systems, the coordinate transformation relationship between the laser tracker coordinate system (a first tracking device coordinate system in one embodiment) and the stereo vision tracker coordinate system (a second tracking device coordinate system in one embodiment) is determined. Based on this coordinate transformation relationship, the local point cloud data in the coordinate system of the stereo vision tracker under the relative pose can be unified to the coordinate system of the laser tracker, thus achieving coordinate system unification.

[0095] As can be seen, the embodiments of this application can unify local scanning data collected from different stations / times into the same designated global coordinate system without additional on-site calibration fixtures or complex alignment processes, thereby improving the efficiency, automation, and stitching consistency of joint measurements. This is because by using the "spatial position information of the target measurement features in the first tracking device coordinate system," the "pose information of the scanning device in the second tracking device coordinate system," and the known "relative position information between the target measurement features and the scanning device body," sufficient geometric constraints can be formed at at least three spatial locations to obtain a stable unified transformation chain; therefore, the point cloud in the scanning device body coordinate system can be batch transformed to the designated global coordinate system, thereby ensuring the spatial consistency of cross-location data and generating a global point cloud.

[0096] In some embodiments, the centers of the at least three target measurement features corresponding to the at least three spatial location information may not be collinear.

[0097] In some embodiments, the center of the target measurement feature may refer to the geometric center of the target measurement feature.

[0098] In some embodiments, based on the pose information described above and the predetermined relative position information between the target measurement feature and the scanning device, at least three spatial position information of the target measurement feature in the coordinate system of the second tracking device can be calculated. The centers of the at least three target measurement markers corresponding to the at least three spatial position information of the target measurement feature in the coordinate system of the second tracking device may not be collinear.

[0099] In some embodiments, the target measurement marker center may refer to the geometric center of the target measurement marker. Alternatively, the target measurement marker center may refer to the geometric center of multiple target measurement markers on the scanning device.

[0100] In some embodiments, the purpose of ensuring that "the centroids of the at least three target measurement features corresponding to the at least three spatial location information are not collinear" is to ensure that the coordinate transformation relationship can be uniquely and stably determined by the two sets of corresponding point pairs. If the spatial positions of the relevant identifiers corresponding to the above-mentioned point pairs are geometrically collinear or nearly collinear, then rotation about the line direction will result in unobservable or ill-conditioned conditions, leading to non-unique or numerically unstable rotation matrices and / or translation vectors. By ensuring that the centroids of the at least three target measurement features and the at least three target measurement identifiers are not collinear, the corresponding point pairs can have non-zero areas in the plane, thereby providing favorable conditions and uniqueness for solving the coordinate transformation relationship.

[0101] In some embodiments, the non-collinearity of the centroids of the at least three target measurement features and the at least three target measurement markers can be achieved through any of the following methods: For example, driving the scanning device to undergo at least three non-collinear changes in its spatial position; wherein, at each spatial position, the second tracking device should be able to observe the target measurement marker and the first tracking device should be able to observe the target measurement feature. Another example is moving the scanning device from a first pose to a second pose, a third position, or rotating / tilting the scanning device in place to change the centroids of the target measurement features and the target measurement markers. Yet another example is synchronously observing and recording the spatial position information and the spatial position information of the target measurement features in the coordinate system of the second tracking device at each spatial position; afterwards, after data acquisition, numerical judgment (such as calculating the area of ​​the triangle formed by the three points or the determinant of the vectors of the three points) can be used to verify whether the three points meet the non-collinearity requirement; if not, the positions are supplemented or adjusted until the condition is met.

[0102] In some embodiments, the "target measurement feature" and / or "target measurement identifier" may be a structure or device with physical dimensions (such as a spherical target, reflective sphere, reflective marker, coded label, etc.), which may not be an ideal geometric point in space. To facilitate the establishment of stable and computable geometric constraints, the "center" can be used to characterize the position of the target measurement feature and / or target measurement identifier, that is, its geometric center, fitting center (such as the sphere center fitting result), or the center point determined based on the recognition algorithm, can be used as the representative point of the "target measurement feature" and / or "target measurement identifier" in space.

[0103] In some embodiments, the phrase "at least three target measurement feature centers corresponding to at least three spatial locations are not collinear" means that the target measurement feature center points acquired at at least three spatial locations form three distinct three-dimensional points in the coordinate system of the first tracking device, and these three points are not on the same straight line (or not approximately collinear). This expression of "center point" avoids misinterpreting situations where "attitude changes (such as rotation around an axis, or changes in the normal vector) but the spatial position of the center point remains unchanged" as meeting the requirement of "three spatial locations." In other words, multiple observations where only the orientation changes but the center points coincide or approximately coincide should not be considered valid data.

[0104] In some embodiments, to further reduce ambiguity and ensure the effectiveness of geometric constraints, additional requirements may be added, such as requiring that the center points corresponding to the at least three spatial locations (e.g., the center of the target measurement feature) satisfy a minimum displacement threshold or a minimum triangle area threshold. For example, it may be determined that the distance between any two center points is greater than a preset distance threshold, or that the area of ​​the triangle formed by the three center points is greater than a preset area threshold, in order to improve degraded data that is "nominally different but substantially coincident / approximately collinear" due to measurement noise, minute movements, or only attitude changes.

[0105] In some embodiments, when the pose information output by the second tracking device indicates that the scanning device has only rotated and the translation is insufficient (e.g., the displacement is less than a preset threshold), the user can be prompted or the scanning device can be controlled to move to a new position, so that the target measurement feature center generates sufficient spatial displacement in the coordinate system of the first tracking device to form three sets of center point data that satisfy the non-collinearity condition. Through the above constraint and judgment mechanism, the uniqueness and stability of the subsequent coordinate transformation relationship can be ensured, and the noise robustness can be improved.

[0106] As can be seen, by reducing the redundancy of degrees of freedom or the uncertainty of the solution caused by collinear points, the embodiments of this application can significantly improve the noise robustness of solving the coordinate transformation relationship, thereby obtaining a unique and accurate coordinate transformation relationship.

[0107] In some embodiments, for the same spatial location, the spatial location information and the pose information may be acquired by a first tracking device and a second tracking device respectively within a preset time window; wherein, within the preset time window, the pose change of the scanning device is within a specified pose change range.

[0108] In some embodiments, a "preset time window" can refer to a time interval set for reliably pairing the spatial location information acquired by the first tracking device with the pose information acquired by the second tracking device. This time window can be defined using start and end times, or it can be defined based on a "collection trigger event" (e.g., extending forward / backward from the timestamp of the first tracking device completing a point acquisition). In other words, it is not required that the two devices (e.g., the first and second tracking devices) sample at exactly the same time, but it is required that their sampling fall within the same time window, so as to approximate observation data corresponding to the "same spatial location".

[0109] In some embodiments, the "pose change of the scanning device" can refer to the degree of change in the pose of the scanning device within the preset time window. The "pose change of the scanning device" can be used to characterize whether the scanning device can be approximated as "remaining stationary" or "having negligible changes" within the preset time window. The pose change can include two parts: translational change and rotational change. The translational change can refer to the displacement modulus of the scanning device reference point (such as the origin of the scanning device coordinate system, the origin of the tracking frame, or the mounting reference point of the scanning head) in three-dimensional space. The rotational change can refer to the minimum rotation angle between two poses within the preset time window (such as the axis angle obtained from the relative rotation matrix, or the included angle calculated from the quaternion dot product). Alternatively, the translational change and rotational change can be weighted and combined into a single scalar change, or thresholds can be set separately for dual-condition judgment.

[0110] In some embodiments, "specified pose change range" can refer to a threshold interval or upper limit constraint used to determine whether the pose of the scanning device is sufficiently stable within a preset time window. This range may include at least one of a specified translational change range and a specified rotational change range. The purpose of setting a specified pose change range is to reduce situations where, for example, the scanning device has moved / rotated significantly between the completion of spatial position information acquisition by the first tracking device and the completion of pose information acquisition by the second tracking device, resulting in the two types of data no longer corresponding to the same spatial position, thus introducing pairing errors and hindering globally unified processing.

[0111] It is understandable that the function of "for the same spatial location, the spatial location information and the pose information are collected by the first tracking device and the second tracking device respectively within a preset time window; wherein, within the preset time window, the pose change of the scanning device is within a specified pose change range" is to achieve effective correlation of observation data without forcing hardware-level time synchronization. Furthermore, by using a time window plus pose stability constraints, systematic errors caused by different device sampling times, operator jitter, or micro-movements or rotations of the scanning device can be significantly reduced, improving the accuracy consistency when the final point cloud is unified to a specified global coordinate system. It also enhances the feasibility of on-site operations, allowing non-strictly synchronized processes such as "taking the marker point in the second second and the target ball in the fourth second" to still be permitted when the condition of "negligible pose change within the window" is met.

[0112] In some embodiments, the above mechanism can be implemented in the following general process. First, enter the "data acquisition at the same spatial location" state, control the scanning device to stay at the target position, or prompt the operator to stop the scanning device. At the same time, the second tracking device continuously outputs the scanning device pose sequence (with timestamps), and the first tracking device triggers one or more point measurements (with timestamps) of the target measurement features when needed. Second, construct a preset time window [t1-Δt / 2, t1+Δt / 2] (or [t2-Δt / 2, t2+Δt / 2]) based on the time t1 when the first tracking device completes a measurement (or the time t2 when the second tracking device outputs a pose). Third, retrieve the pose data output by the second tracking device within this window (the pose at the most recent time, the average pose within the window, or the pose aligned with t1 through interpolation estimation). Fourth, calculate the change in the scanning device pose within this window. For example, the translational change Δt and rotational change Δθ can be calculated using the starting pose Pose_start and ending pose Pose_end of the window, or the maximum-minimum difference within the window can be used as the change. If both changes fall within the specified pose change range, the spatial position information and pose information are determined to be valid paired data for "the same spatial position"; otherwise, the pairing is discarded and a prompt for re-acquisition is displayed, or the process is automatically extended until the device stabilizes before triggering acquisition again.

[0113] In some embodiments, to improve robustness, the above process may further include: filtering the pose sequence of the second tracking device (e.g., moving average, Kalman filtering) to suppress jitter noise; repeatedly sampling the spatial position information of the first tracking device and taking the mean / median; and automatically adjusting the preset time window when a failure is detected (e.g., shortening the preset time window to reduce the probability of motion, or reopening the preset time window after the device stabilizes). Furthermore, "the pose change meets a threshold" can also be used as a trigger condition. For example, when it is detected that the scanning device meets the corresponding trigger condition within a certain continuous duration, the first tracking device is automatically triggered to collect spatial position information, and the pose information of the second tracking device is selected near the trigger time to complete the pairing, thereby achieving semi-automatic or automatic synchronous acquisition.

[0114] In some embodiments, performing global unified processing on the local scanning data may include: calculating based on the spatial location information, the pose information, and the relative position information to determine the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system; and based on the coordinate transformation relationship, transforming at least a portion of the local scanning data to the specified global coordinate system to generate the global scanning data.

[0115] In some embodiments, "coordinate transformation relationship" can refer to the mathematical relationship used to describe the spatial rigid body transformation between the first tracking device coordinate system and the second tracking device coordinate system. The "coordinate transformation relationship" can be used to realize the mutual transformation of points and poses between the two coordinate systems. The coordinate transformation relationship can include rotational and translational components, for example, represented by a rotation matrix R and a translation vector T, or equivalently by a 4×4 homogeneous transformation matrix. When the coordinates P2 of a point in the second coordinate system are known, its coordinates P1 in the first coordinate system can be obtained through P1 = R × P2 + T (the reverse transformation can be achieved through the inverse transformation).

[0116] It is understandable that the purpose of "calculating based on the spatial location information, the pose information and the relative position information to determine the coordinate transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device" is to establish a unified reference for the output data of the two tracking devices, so that the local scanning data can be accurately mapped to the specified global coordinate system, thereby realizing cross-device and cross-station data fusion and consistent expression, and reducing splicing errors caused by inconsistency in coordinate systems.

[0117] In some embodiments, the coordinate transformation relationship can be determined according to the following general process. Based on the spatial location information, the pose information, and the relative position information, the position of the target measurement feature in the coordinate system of the second tracking device is calculated inversely, thereby forming a set of corresponding points of the "same physical point" in the two coordinate systems. Subsequently, based on this set of corresponding points, rigid body registration (such as least squares) is used to obtain the rotation and translation, i.e., the coordinate transformation relationship.

[0118] It is understandable that the purpose of "converting at least a portion of the local scanning data to the specified global coordinate system based on the coordinate transformation relationship to generate the global scanning data" is to uniformly map the local scanning data obtained by the scanning device in its own local coordinate system to the same specified global coordinate system, thereby improving the coordinate inconsistency problem caused by different device coordinate systems and different station acquisitions, and facilitating the stitching and fusion of multi-frame / multi-station point cloud data to form an overall 3D model (such as global point cloud data).

[0119] In some embodiments, global point cloud data can be generated according to the following general process: For each point in at least a portion of the local point cloud acquired by the scanning device, a coordinate transformation is performed based on the coordinate transformation relationship (such as a rigid body transformation involving rotation matrices and translation vectors, or an equivalent homogeneous transformation matrix), transforming the point from its original local coordinate system to a specified global coordinate system. Next, the transformed point cloud data can be accumulated and merged with transformed data from other times / other stations (optionally performing denoising, downsampling, or fine-tuning for overlapping region registration) to generate global point cloud data.

[0120] As can be seen, this embodiment of the application first calculates the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system, and then uses this transformation relationship to transform the local point cloud to the specified global coordinate system. This enables rapid unification and consistent stitching of scanning data from different spatial locations, improving the spatial consistency and measurement efficiency of global scanning data. The "coordinate system alignment" and "point cloud transformation" can be decoupled, facilitating the repeated use of the same transformation relationship for batch processing of multi-frame / multi-station point clouds, reducing manual intervention. This is because, based on spatial location information, pose information, and known relative position information, geometrically corresponding constraints between the two coordinate systems on the same rigid body / feature can be established, thereby solving the rigid body coordinate transformation (such as rotation + translation) between the two coordinate systems. Once this coordinate transformation relationship is determined, the local scanning data can be mapped to the specified global coordinate system according to the same rigid body transformation, thus achieving the expected global unification and consistency effect.

[0121] To address the issue in related methods where changes in the relative pose between the first and second tracking devices lead to the failure of the original coordinate transformation relationship, preventing the accurate transformation and unification of local point clouds to a specified global coordinate system (e.g., causing point cloud stitching misalignment, global coordinate inconsistency, and decreased measurement accuracy), in some embodiments, the spatial position information can be output by the first tracking device, and the pose information can be output by the second tracking device. The method may further include: when the relative pose between the first and second tracking devices changes, re-receiving the spatial position information and the pose information for at least three spatial locations; and performing global unified processing on the local scan data based on the relative position information, the re-received spatial position information, and the pose information.

[0122] In some embodiments, the relative pose can refer to the relative pose relationship between the first tracking device and the second tracking device. The relative pose can include the position and orientation of the first and second tracking devices. When either the first or second tracking device moves or rotates, causing a change in rigid body transformation (such as position or orientation) between them, the relative pose can be considered to have changed. Throughout the joint measurement system, this relative pose is the basis for establishing and maintaining the coordinate transformation relationship described above. When the relative pose remains unchanged, the calculated coordinate transformation relationship can be continuously applied to transform at least a portion of the local scan data acquired by the scanning device to a specified global coordinate system; conversely, once the relative pose changes, the previous coordinate transformation relationship will no longer be accurate, and the coordinate transformation relationship must be redefined to ensure measurement accuracy and global consistency.

[0123] It is understandable that the purpose of "re-receiving the spatial position information and the pose information at at least three spatial locations when the relative pose between the first and second tracking devices changes" is that when the first or second tracking device moves, the support posture changes, there is a collision or vibration, re-deployment, or field-of-view occlusion leads to re-acquisition, the relative geometric relationship between the two tracking devices will change, making the previously established correspondence of multi-source measurement data based on this relative geometric relationship unreliable. By re-acquiring the spatial position information output by the first tracking device and the pose information output by the second tracking device at at least three spatial locations after the relative pose changes, the cross-device observation consistency constraint on the "same scanning device entity / same identification component" can be re-established, improving the sufficiency of the basis for data consistency verification, error assessment, and anomaly identification during subsequent fusion processing. In particular, using "at least three spatial locations" can improve the problem of insufficient constraints caused by the degradation of the spatial distribution of sampling points (e.g., near collinearity or insufficient variation), thereby improving the support capability and robustness of the re-received data for subsequent global processing.

[0124] It is understandable that the function of "performing global unified processing on the local scanning data based on the relative position information, the re-received spatial position information, and the pose information" is to utilize the pre-determined relative position information as a stable prior constraint after a change in relative pose, and combine it with the re-received spatial position information and pose information to perform global unified processing on the local point cloud collected before and after the relative pose change, so that each segment of the local point cloud can maintain continuity and consistency in the same global result. This "global unified processing" can be achieved by explicitly solving or calling coordinate transformation relationships, or by other methods. For example, grouping and associating point cloud segments based on prior structural constraints and multi-location observation data; optimizing each segment of the point cloud by applying overall consistency constraints (such as global least squares / robust optimization with identifiers or scanning device structural parameters as constraints); performing weighted fusion based on registration of overlapping regions and using spatial position information / pose information as initial values ​​or weights; or adding unified global labels and reference benchmarks to the point cloud segments in the output stage to complete the consistent representation. This reduces the risk of point cloud splicing breaks, cumulative drift, or local misalignment caused by changes in the relative pose of the equipment, and improves the stability, traceability, and measurement accuracy of global point cloud results in multi-station, long-process measurement scenarios.

[0125] It should be noted that, in the event of a change in relative pose, the process of re-receiving at least three spatial position information and at least three pose information can be essentially the same as the process of receiving at least three spatial position information and at least three pose information before the change in relative pose. The specific process of "performing global unified processing on the local scan data based on the relative position information, the re-received spatial position information, and the pose information" can be found in the preceding description of "performing global unified processing on the local scan data."

[0126] As can be seen, in the embodiments of this application, when the relative pose of the two tracking devices changes, spatial position information and pose information are reacquired for at least three spatial locations, and global unified processing is performed accordingly. This ensures that subsequent local scanning data can still be stably and accurately converted to the specified global coordinate system, maximizing the consistency and accuracy continuity of the global scanning data. It also reduces the rework and manual recalibration costs caused by equipment movement, support micro-movement, or station relocation, improving the robustness and efficiency of on-site operations.

[0127] In some embodiments, performing global unified processing on the local scanning data may include: calculating based on the relative position information, the re-received spatial position information, and the pose information to update the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system; and based on the updated coordinate transformation relationship, transforming at least a portion of the local scanning data to the specified global coordinate system to generate updated global scanning data.

[0128] It is understandable that the function of "calculating based on the relative position information, the re-received spatial position information, and the pose information to update the coordinate transformation relationship between the coordinate systems of the first and second tracking devices" is to, after a change in the relative pose between the first and second tracking devices, use the pre-determined relative position information as a rigid prior constraint, and combine it with the re-acquired multi-spatial position observation data to re-estimate the correspondence between the coordinate systems of the two tracking devices, thereby reducing coordinate system offsets caused by device relocation, re-deployment, or re-acquisition. Through this update operation, cross-device data can regain consistency under the same geometric reference, providing an accurate basic relationship for subsequent point cloud conversion and fusion.

[0129] Understandably, the purpose of "converting at least a portion of the local scan data to the specified global coordinate system based on the updated coordinate transformation relationship to generate updated global scan data" is to uniformly map the local point clouds acquired before and after relative pose changes to the same specified global coordinate system, reducing problems such as discontinuous segmentation of global point clouds, repeated superposition misalignment, or overall drift. This allows for the continued accumulation and generation of consistent global point cloud results even with changes in equipment deployment, and improves the comparability and reusability of the global model.

[0130] It should be noted that the update process for coordinate transformation relationships can refer to the determination process for coordinate transformation relationships described earlier. The specific process for "generating updated global scan data" can refer to the relevant description in the "generating global scan data" section above.

[0131] As can be seen, the embodiments of this application can promptly redetermine the above coordinate transformation relationship when the relative pose between the first tracking device and the second tracking device changes, which can reduce global coordinate ambiguity and ensure the accuracy of point cloud stitching and measurement as much as possible, thereby improving robustness and automation.

[0132] To address the issue that when the first tracking device changes position (from a first pose to a second pose) while the second tracking device remains stationary, the resulting global point clouds generated in different positions cannot be unified into the same specified global coordinate system, leading to global coordinate breaks / misalignments and hindering continuous stitching and cumulative modeling. In some embodiments, when the first tracking device changes position from a first pose to a second pose while the second tracking device's pose remains unchanged, the method may further include: determining a first coordinate transformation relationship between the first and second tracking device coordinate systems when the first tracking device is in the first pose, and a second coordinate transformation relationship between the first and second tracking device coordinate systems when the first tracking device is in the second pose; calculating a third coordinate transformation relationship between the first and second tracking device coordinate systems when the first tracking device is in the first pose and when the first tracking device is in the second pose; and based on the third coordinate transformation relationship, converting at least a portion of the global scan data obtained according to the second coordinate transformation relationship to the specified global coordinate system corresponding to the first pose.

[0133] In some embodiments, the first pose may refer to the spatial pose (including position and orientation) of the first tracking device during the first deployment / initial deployment of the joint measurement. The first pose corresponds to "the first coordinate transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device when the first tracking device is in the first pose".

[0134] In some embodiments, the second pose may refer to the spatial pose of the first tracking device after it moves to another deployment location during the measurement process to expand the measurement coverage, improve occlusion, or meet the requirements for continued measurement. The second pose corresponds to "a second coordinate transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device when the first tracking device is in the second pose".

[0135] In some implementations, the coordinate system of the first tracking device when the first tracking device is in the first pose can be selected as the designated global coordinate system, or as the reference of the designated global coordinate system.

[0136] In some implementations, the first coordinate transformation relationship may refer to the coordinate mapping / rigid body transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device when the first tracking device is in the first pose (e.g., represented by a rotation matrix R and a translation vector T, or a 4×4 homogeneous transformation matrix).

[0137] In some implementations, the second coordinate transformation relationship can refer to the coordinate mapping / rigid body transformation relationship between the coordinate system of the first tracking device and the coordinate system of the second tracking device when the first tracking device is in the second pose. Its mathematical form can be the same as the first coordinate transformation relationship, but it corresponds to the transformation between the new coordinate system of the first tracking device and the coordinate system of the second tracking device after the first tracking device moves to a different position.

[0138] In some embodiments, "when the first tracking device changes from a first pose to a second pose, while the pose of the second tracking device remains unchanged" means that during the measurement process, the first tracking device is moved (e.g., its position / orientation changes, thus its coordinate system changes), while the second tracking device remains fixed and does not move or rotate. Therefore, the coordinate system of the second tracking device remains stable throughout the process. Thus, the coordinate system of the second tracking device can serve as a common reference across stations, allowing the derivation of a third coordinate transformation relationship between the first tracking device coordinate systems of the two stations through "the first coordinate transformation relationship between the first and second tracking device coordinate systems when the first tracking device is in the first pose" and "the second coordinate transformation relationship between the first and second tracking device coordinate systems when the first tracking device is in the second pose." This enables the further transformation and unification of the scan data generated in the second pose stage (e.g., point clouds already unified to the specified global coordinate system corresponding to the second pose) to the specified global coordinate system corresponding to the first pose.

[0139] It is understandable that the purpose of "determining the first coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the first pose, and the second coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the second pose" is to determine the coordinate bridging of "the first coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the first pose" and "the second coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system when the first tracking device is in the second pose", so that the second tracking device coordinate system can become the intermediate coordinate system between the two station deployments, providing a basis for subsequently calculating the third coordinate transformation relationship between the first tracking device coordinate systems of the two station deployments.

[0140] For example, when the first tracking device is in the first pose, the scanning device can be placed in at least three spatial positions (which can be different positions within the same overlapping observation area). The first tracking device acquires the spatial position information of the target measurement features in the coordinate system of the first tracking device, while the second tracking device acquires the pose information of the scanning device in the coordinate system of the second tracking device. Combined with the pre-determined relative position information between the first identifier and the scanning device, the first coordinate transformation relationship is calculated. Then, the first tracking device moves to the second pose while the second tracking device remains stationary, and the above acquisition and calculation process is repeated to obtain the second coordinate transformation relationship. The above "separate determination" does not necessarily require strict time synchronization of the two types of data; it only needs to ensure that the corresponding data reflects the observation results when the scanning device is in the same spatial position / same stable posture (e.g., soft synchronization acquisition is achieved by briefly stopping the movement of the scanning device).

[0141] In some embodiments, the third coordinate transformation relationship can refer to the coordinate mapping / rigid body transformation relationship between the first tracking device coordinate system corresponding to the first tracking device in the first pose and the first tracking device coordinate system corresponding to the second pose. The third coordinate transformation relationship can be used to achieve a unified representation of data in the first tracking device coordinate system before and after two station deployments (relocations). The third coordinate transformation relationship can be represented by a rotation matrix and a translation vector, or a 4×4 homogeneous transformation matrix. The essence of the third coordinate transformation relationship is the coordinate bridging relationship between the "coordinate system of the first tracking device before relocation" and the "coordinate system of the first tracking device after relocation".

[0142] It is understandable that the function of "calculating based on the first and second coordinate transformation relationships to determine the third coordinate transformation relationship between the first tracking device coordinate system when the first tracking device is in the first pose and the first tracking device coordinate system when the first tracking device is in the second pose" is to, under the premise that the pose of the second tracking device remains unchanged, use the second tracking device coordinate system as a common intermediate coordinate system, and use the first and second coordinate transformation relationships to perform composite / inverse operations to derive the direct transformation between the first tracking device coordinate systems of the two station deployments (i.e., the third coordinate transformation relationship). Through this third coordinate transformation relationship, the scan data that has been transformed based on the second coordinate transformation relationship and is in the "specified global coordinate system corresponding to the second pose" can be further transformed and unified to the "specified global coordinate system corresponding to the first pose", ensuring the continuity and consistency of cross-station point cloud stitching.

[0143] For example, the first and second coordinate transformation relationships can be obtained separately. Next, one transformation relationship is inverted and multiplied / combined with the other to obtain the third coordinate transformation relationship between the coordinate systems of the two station deployments of the first tracking device (e.g., it can be calculated as "third transformation = second transformation × (first transformation)^{-1}" or its equivalent form, depending on the agreed-upon transformation direction). Then, this third coordinate transformation relationship is used to perform coordinate transformation on the global scan data obtained in the second pose stage, causing it to fall into the specified global coordinate system corresponding to the first pose, thereby achieving the fusion of data before and after the first tracking device's station relocation under the same global reference.

[0144] It is understandable that the function of "converting at least a portion of the global scan data obtained according to the second coordinate transformation relationship to the specified global coordinate system corresponding to the first pose" is that when the first tracking device moves (from the first pose to the second pose), although the corresponding global scan data can be unified to the "coordinate system of the first tracking device corresponding to the second pose" based on the second coordinate transformation relationship, this coordinate system is different from the initially selected specified global coordinate system. In some embodiments, by introducing the third coordinate transformation relationship, the global scan data obtained after moving can be further "back-transmitted / bridged" to the specified global coordinate system corresponding to the first pose, thereby ensuring that the cross-station point cloud is always at the same global reference, which facilitates continuous stitching, detection and modeling.

[0145] For example, the local scan data acquired in the second pose stage can be first converted into global scan data corresponding to the second pose (i.e., the first tracking device coordinate system falling under the second pose) according to the second coordinate transformation relationship. Secondly, a third coordinate transformation relationship (such as rotation + translation or homogeneous matrix transformation) is applied to the above scan data to transform its coordinates as a whole to the specified global coordinate system corresponding to the first pose, and finally fused / output with the global point cloud in the first pose stage within the same coordinate frame.

[0146] In some embodiments, "the first tracking device changes from a first pose to a second pose, while the second tracking device remains in the same position" means that during the measurement process, the first tracking device moves from its initial position to another position to continue covering or measuring a larger area, while the placement and orientation of the second tracking device in space remain unchanged.

[0147] In some embodiments, the third coordinate transformation relationship serves to transform at least local scan data or measurement data in the second pose to a specified global coordinate system corresponding to the first pose, or to transform at least part of the local scan data or measurement data in the first pose to a specified global coordinate system corresponding to the second pose, thereby achieving unified and continuous stitching of data from different stations. This third coordinate transformation relationship can be used to unify at least local scan data or measurement data collected by the scanning device at different stations of the first tracking device to the same specified global coordinate system, or it can serve as a link in a global coordinate chain to reduce coordinate ambiguity caused by station changes.

[0148] In some embodiments, the third coordinate transformation relationship can be determined according to the following general process. For example, firstly, synchronous observations are performed at the first pose and the second pose respectively, acquiring at least three or more sets of non-collinear corresponding point pairs at each station. Secondly, based on the corresponding point pairs at each station, the coordinate transformation relationship at that station is solved (e.g., obtaining the first coordinate transformation relationship R_1, T_1 at the first pose and the second coordinate transformation relationship R_2, T_2 at the second pose). Specifically, the coordinate transformation relationship at the corresponding station can be calculated using methods such as rigid body registration based on singular value decomposition, nonlinear least squares, or maximum likelihood estimation. Furthermore, the third coordinate transformation relationship between stations can be obtained through the composition and inverse operation of the coordinate transformation relationship, such as by matrix operation R_rel=R_2. R_1^T, T_rel=T_2-R_rel T_1 (or an equivalent form) calculates the rotation and translation components of the second pose relative to the first pose. Secondly, the calculated third coordinate transformation relationship can be checked for consistency and globally optimized to confirm whether the accuracy meets the corresponding requirements.

[0149] In some embodiments, "the designated global coordinate system corresponding to the first pose" may refer to the designated global coordinate system selected when the first tracking device is in the first pose and the pose of the second tracking device remains unchanged.

[0150] For example, the situation where the relative pose between the first tracking device and the second tracking device changes can include at least the following scenarios. One scenario is that the position of the laser tracker (the first tracking device in one embodiment) remains unchanged, while only the position of the stereo vision tracker (the second tracking device in one embodiment) changes. Another scenario is that the laser tracker, at one position (e.g., position 1), unifies the measurement data of the stereo vision tracker at multiple positions, and then changes the position of the laser tracker (e.g., position 2). In this case, since only the position of the laser tracker has changed, the third coordinate transformation relationship between the laser tracker at position 1 and the stereo vision tracker at position 2 can be confirmed through the coordinate transformation relationship between the laser tracker at position 1 and the stereo vision tracker at position 2 (the first coordinate transformation relationship in one embodiment), and the coordinate transformation relationship between the laser tracker at position 2 and the stereo vision tracker at position 2 (the second coordinate transformation relationship in one embodiment). Therefore, when the laser tracker continues to unify the measurement data of the stereo vision tracker at multiple positions at position 2, the data of the laser tracker at positions 1 and 2 can still be unified through the third coordinate transformation relationship between positions 1 and 2. In other words, during joint measurement, the position of the first tracking device can be changed. Furthermore, if the position of the first tracking device changes while the pose of the second tracking device remains unchanged, a third coordinate transformation relationship can be determined in reverse using two or more sets of corresponding coordinate transformation relationships (such as corresponding first and second coordinate transformation relationships). This relationship is between the coordinate system of the first tracking device (e.g., a laser tracker) in the first pose (e.g., position 1) and the coordinate system of the first tracking device in the second pose (e.g., position 2). The process of redetermining the coordinate transformation relationships (e.g., corresponding first and second coordinate transformation relationships) and determining the aforementioned third coordinate transformation relationship can be performed before or during scanning. The position of any laser tracker or any stereo vision tracker can be used as the designated global coordinate system.

[0151] For example, the coordinate transformation relationship between a laser tracker (a first tracking device in one embodiment) and a stereo vision tracker (a second tracking device in one embodiment) can be determined according to the following general process. First, it is known that the tracking frame of the scanning system (a scanning device in one embodiment) has... L A target ball (a target measurement feature in one embodiment) P i ( i =1, ..., L ), L The coordinates of the target spheres in the tracking frame coordinate system of the scanning system (relative position information between the target measurement feature and the scanning device in one embodiment) The tracking point data (spatial position information) of the target ball in the laser tracker coordinate system (the coordinate system of the first tracking device in one embodiment) is as follows: .in, i Indicates the number of the target ball. j The symbol indicates the spatial position of the target ball, and T1 represents the coordinate system of the laser tracker. Only one target ball needs to be tracked; for example, tracking target ball 1 at position [0, 1]. j Tracking point data at each spatial location The tracking point data of the target ball in the coordinate system of the stereo vision tracker (the spatial position information of the target measurement features in the coordinate system of the second tracking device in one embodiment) is as follows: . T2 This represents the coordinate system of the stereo vision tracker (the coordinate system of the second tracking device in one embodiment). The stereo vision tracker can synchronously track the tracking frame of the scanning system to obtain the tracking pose information of the tracking frame of the scanning system at the j-th spatial position in the stereo vision tracker coordinate system (the pose information of the scanning device in the second tracking device coordinate system in one embodiment). R j and T j : Secondly, the tracking pose information of the tracking frame at the j-th spatial position in the stereo vision tracker coordinate system can be combined. R j and T j and the coordinates of the target ball in the tracking frame coordinate system. This allows us to obtain the target ball's position in the stereo vision tracking coordinate system. j Point data of a spatial location (spatial location information of target measurement features in the coordinate system of a second tracking device, according to one embodiment) The specific calculation process can be performed according to the following expression: Therefore, based on the above process, the position data of the j-th position of the same target ball in the coordinate system of the laser tracker can be obtained (the spatial position information of the target measurement feature in the coordinate system of the first tracking device in one embodiment). And the first in the stereo vision tracker coordinate system j Location data of a target (in one embodiment, spatial location information of the target measurement feature in the coordinate system of the second tracking device). When point data from at least three spatial locations are obtained, the coordinate transformation relationship between the laser tracker coordinate system and the stereo vision tracker coordinate system at the k-th relative pose can be obtained. and .based on and get and The specific process can be found as follows:

[0152] .

[0153] in, .for and The solution can be achieved through singular value decomposition, nonlinear optimization, maximum likelihood estimation, and other methods. Based on the first... k Coordinate transformation relationship between the laser tracker coordinate system and the stereo vision tracker coordinate system in a relative pose and This allows point cloud data from the stereo vision tracker coordinate system to be unified into the laser tracker coordinate system:

[0154] .

[0155] in, This represents point cloud data in the coordinate system of the laser tracker. This represents point cloud data in the coordinate system of the stereo vision tracker.

[0156] In some embodiments, when the laser tracker moves (e.g., changes from a first pose to a second pose), the general process of unifying the coordinate system is as follows. First, the laser tracker moves from position 1 (the first pose in one embodiment) to position 2 (the second pose in one embodiment). At this time, the laser tracker and the stereo vision tracker form a relative pose 1 at position 1, and the coordinate transformation relationship under the relative pose 1 can be obtained through the aforementioned method. and The laser tracker, at position 2, forms a relative pose 2 with the stereo vision tracker. The coordinate transformation relationship under the relative pose 2 can be obtained through the aforementioned method. R rela,2 and T rela,2 .pass R rela,1 , T rela,1 , R rela,2 and T rela,2 It is possible to calculate the third coordinate transformation relationship between "the first tracking device coordinate system when the first tracking device (such as a laser tracker) is in the first pose (such as position 1)" and "the first tracking device coordinate system when the first tracking device is in the second pose (such as position 2)". R rela,12 and T rela,12For example, it can be calculated using the following expression:

[0157] .

[0158] Secondly, based on the third coordinate transformation relationship between "the first tracking device coordinate system when the first tracking device (such as a laser tracker) is in the first pose (such as station 1)" and "the first tracking device coordinate system when the first tracking device is in the second pose (such as station 2)," the unified point cloud data of the laser tracker at station 2 can be unified to the laser tracker coordinate system at station 1.

[0159] .

[0160] in, R rela,12 -1 and T rela,12 -1 They represent R rela,12 inverse matrix and T rela,12 The inverse matrix; This indicates that the laser tracker provides uniform point cloud data at station 2. This indicates the unified point cloud data of the laser tracker at station 1.

[0161] In some embodiments, the joint measurement method of this application embodiment can be performed according to the following general process. First, the positions of the relevant devices are set so that the laser tracker (a first tracking device in one embodiment) and the stereo vision tracker (a second tracking device in one embodiment) have a common observation area. Second, before or during scanning, the coordinate transformation relationship between the laser tracker and the stereo vision tracker is determined. Third, based on the coordinate transformation relationship between the laser tracker and the stereo vision tracker, some workpiece data (such as at least some local point cloud data) in the stereo vision tracker coordinate system is unified to the laser tracker coordinate system. Fourth, the position of the stereo vision tracker is changed, and the scanning device scans the workpiece to be scanned to collect another part of the data. The coordinate transformation relationship between the laser tracker and the stereo vision tracker can be re-determined before or during scanning. Fifth, based on the re-determined coordinate transformation relationship between the laser tracker and the stereo vision tracker, other parts of the workpiece data (such as local scan data) in the stereo vision tracker coordinate system are unified to the laser tracker coordinate system. Secondly, if the laser tracker's position shifts, the coordinate transformation relationship between the laser tracker and the stereo vision tracker before and after the shift (a first coordinate transformation relationship corresponding to the first pose in one embodiment), determined before or during scanning, can be used to obtain the coordinate transformation relationship before and after the shift of the first pose of the laser tracker (a third coordinate transformation relationship in one embodiment). Then, the unified data after the laser tracker's shift (at least a portion of the local scan data corresponding to the second pose in one embodiment) can be unified to the coordinate system of the laser tracker before the shift (a designated global coordinate system corresponding to the first pose in one embodiment). Those skilled in the art can adjust the above general process according to actual needs (such as adding or deleting corresponding steps).

[0162] As can be seen, in large-space multi-station measurements, the embodiments of this application can achieve global uniformity of the coordinate system without the use of additional calibration fixtures or adapters.

[0163] As can be seen, the embodiments of this application can, after the first tracking device moves from the first pose to the second pose, still unify the global point cloud generated / transformed in the second pose to the specified global coordinate system corresponding to the first pose, thereby maintaining the coordinate consistency and continuity of the global point cloud and reducing the data breakage and realignment costs caused by device relocation. It can also improve the efficiency and automation of large-scale, multi-station joint measurements, reducing reliance on additional reference fixtures or repetitive calibration processes on-site. It facilitates the unified integration of automation and multi-station data, improving measurement reliability and work efficiency. This is because the first and second coordinate transformation relationships are obtained separately, and the third coordinate transformation relationship between the two first tracking device station coordinate systems is obtained through their composite / inverse calculation (essentially a closed rigid body transformation chain across stations). Furthermore, the pose of the second tracking device remains unchanged, and its coordinate system acts as a common intermediate / bridging coordinate system, allowing the two calibration results to be correlated under the same reference. Therefore, the point cloud in the second pose can be stably and reversibly mapped back to the specified global coordinate system corresponding to the first pose using the third coordinate transformation relationship.

[0164] In some embodiments, the method further includes: outputting at least one of the spatial location information, the pose information, the relative position information, the local scan data, and the global scan data according to a specified data format.

[0165] In some embodiments, "output according to a specified data format" can refer to saving and exporting any one or more of the aforementioned data in a predefined or user-selected format for interoperability, archiving, or direct reading by downstream software. The purpose of "output according to a specified data format" is to ensure that the data can be reproduced and used by other modules or other devices. This setting is easy to verify and can support automated processing.

[0166] In some embodiments, those skilled in the art may select at least one of the following data to output, based on actual needs: spatial location information, pose information, relative position information, coordinate transformation relationship, local scan data, and global scan data.

[0167] As can be seen, the embodiments of this application can achieve data interoperability, automated post-processing and traceability, reduce the cost of manual conversion and format adaptation, and improve the efficiency and reliability of the overall measurement and splicing process.

[0168] In some embodiments, the coordinate transformation relationship (such as the first coordinate transformation relationship) may be determined during the process of the scanning device acquiring the local scanning data; or, the coordinate transformation relationship (such as the first coordinate transformation relationship) may be determined before the scanning device acquires the local scanning data.

[0169] In some embodiments, the phrase "the coordinate transformation relationship (such as the first coordinate transformation relationship) can be determined during the process of the scanning device acquiring the local scanning data" means that the coordinate transformation relationship can be dynamically calculated and updated while the scanning device is acquiring the local scanning data or during the scanning operation, for example, the coordinate transformation relationship can be determined online / in real time. Therefore, coordinate system alignment can be completed in real time without prior calibration, improving the flexibility of deploying related equipment and the automation of joint measurements, and the coordinate transformation relationship can be updated instantly as the equipment position changes.

[0170] In some embodiments, the phrase "the coordinate transformation relationship (such as the first coordinate transformation relationship) can be determined before the scanning device acquires the local scanning data" means that the coordinate transformation relationship has been solved before the formal acquisition of local scanning data begins, i.e., solved offline or pre-calibrated. Therefore, when the scene, location, or equipment configuration is relatively fixed and it is desired that the scanning device performs scanning with higher confidence or faster processing speed, the computational burden during data acquisition can be reduced and the initial registration accuracy improved. For example, after on-site setup, the scanning device can be placed in several known locations, and the coordinate transformation relationship can be solved. Then, local scanning data is acquired based on the coordinate transformation relationship obtained from the solution.

[0171] For example, once the laser tracker (a first tracking device in one embodiment) and the stereo vision tracker (a second tracking device in one embodiment) have determined their positions, their relative positions can remain unchanged during the scanning process. The process of determining the coordinate transformation relationship between the stereo vision tracker coordinate system (the coordinate system of the second tracking device in one embodiment) and the laser tracker coordinate system (the coordinate system of the first tracking device in one embodiment) can be performed before or during the scanning process. When their relative poses change, it is necessary to redetermine the coordinate transformation relationship between the stereo vision tracker coordinate system and the laser tracker coordinate system. This redetermining process can be performed before or during the scanning process.

[0172] It can be seen that the implementation of this application can balance flexibility and efficiency. For example, determining the above coordinate transformation relationship online can adapt to actual placement errors and environmental changes on site, improve robustness and support automated processes; while determining the above coordinate transformation relationship offline in advance can reduce the delay of on-site calculation and speed up deployment.

[0173] The above describes the joint measurement method. This application also provides a joint measurement system. Figure 4 This is a schematic diagram of a combined measurement system provided in an embodiment of this application.

[0174] See Figure 4 The system includes: a scanning device 101 for outputting local scanning data; the scanning device is provided with at least one target measurement feature and multiple target measurement markers; a first tracking device 102 for tracking the target measurement feature and outputting the spatial position information of the target measurement feature in the coordinate system of the first tracking device; a second tracking device 103 for tracking the target measurement markers and outputting the pose information of the scanning device in the coordinate system of the second tracking device; and a control module 104 for receiving local scanning data output by the scanning device at one or more spatial locations; wherein the local scanning data is located in the coordinate system of the scanning device itself; and for at least three spatial locations where the scanning device is located. For each spatial location, the system receives: spatial position information of the target measurement feature on the scanning device in the first tracking device coordinate system, and pose information of the scanning device in the second tracking device coordinate system. Based on the spatial position information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the predetermined relative position information between the target measurement feature and the scanning device body, the system performs global unified processing on the local scanning data to ensure that the local scanning data from different spatial locations maintains spatial consistency in the same specified global coordinate system, and generates global scanning data.

[0175] In some embodiments, the system further includes a data export module, configured to output at least one of the spatial location information, the pose information, the relative position information, the local scan data, and the global scan data in a specified data format.

[0176] In this embodiment, the specific functions and effects achieved by the joint measurement system can be explained by referring to other embodiments of this application, and will not be repeated here.

[0177] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements any of the methods described in the above embodiments.

[0178] This application also provides a computer program product, which includes a computer program that, when executed by a processor, implements any of the methods described above.

[0179] The computer program product may be a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the computer program product of the embodiments of this application is not limited thereto, and the computer program product may be any combination of one or more computer-readable media.

[0180] See Figure 5 , Figure 5 This is a structural block diagram of a computer device provided in an embodiment of this application.

[0181] This application also provides a computer device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement any of the methods described in the above embodiments.

[0182] The embodiments of this application do not limit the computer device, which may be, for example, a local computer device, a cloud computer device, a distributed computer device, etc.

[0183] The computer device may include: a memory 110, a processor 120, and a communication interface 130. The memory 110, the processor 120, and the communication interface 130 are connected through internal connection paths.

[0184] The memory 110 is used to store computer programs, which in some implementations may include code for implementing the methods of the embodiments of this application.

[0185] The processor 120 executes the computer program stored in the memory 110 to control the communication interface 130 to receive input data and information, and output operation results and other data. In some implementations, when the solutions of the embodiments of this application are implemented by software or firmware, the computer program used to implement the solutions of the embodiments of this application can be stored in the processor 120 and executed by the processor 120.

[0186] The memory 110 may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory may be random access memory (RAM). It should be noted that the memory 110 described herein is intended to include, but is not limited to, any memory of these and other suitable types. As an example, the memory 110 includes random access memory (RAM), cache memory, and read-only memory (ROM). The memory 110 stores a computer program that can be executed by processor 120, causing processor 120 to implement the steps of any of the methods described above.

[0187] The processor 120 can be a central processing unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor, or the processor 120 can be any conventional processor.

[0188] In implementation, each step of the above method can be completed by the integrated logic circuitry of the hardware in the processor 120 or by instructions in software form. The method disclosed in the embodiments of this application can be directly implemented by the hardware processor, or by a combination of hardware and software modules in the processor 120. The software modules can be located in mature storage media in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or registers. This storage medium is located in the memory 110, and the processor 120 reads the information in the memory 110 and, in conjunction with its hardware, completes the steps of the above method. To avoid repetition, detailed descriptions are not provided here.

[0189] In some implementations, in addition to the hardware units described above, computer devices may also include software modules, such as operating systems, basic input / output systems (BIOS), and application software.

[0190] An operating system is used to manage the hardware and / or software resources of a computer device; it is the kernel and foundation of the computer. The operating system handles fundamental tasks such as managing and configuring memory, determining the priority of system resource allocation, controlling input and output devices, operating the network, and managing the file system. To facilitate user operation, most operating systems provide a user interface for interaction with the system.

[0191] The BIOS is used to perform hardware initialization during the power-on boot phase and to provide runtime services for the operating system and applications. In some implementations, the BIOS can also monitor and display processor temperature and execute temperature protection strategies.

[0192] Application software, also known as an application program, can be understood as software written for a specific user application purpose, and is one of the main categories of computer software. For example, application software can be a program used to achieve purposes such as power control and temperature management.

[0193] It is understood that the specific examples in this application are only intended to help those skilled in the art better understand the implementation of this application, and are not intended to limit the scope of protection of this application.

[0194] It is understood that in the various embodiments of this application, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of this application.

[0195] It is understood that the various implementation methods described in this application can be implemented individually or in combination, and this application does not limit them.

[0196] Unless otherwise stated, all technical and scientific terms used in this application have the same meaning as commonly understood by one of ordinary skill in the art. The terminology used in this application is for the purpose of describing particular embodiments only and is not intended to limit the scope of this application. The singular forms “a,” “the,” and “the” used in this application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.

[0197] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0198] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the embodiments described above can be referred to the corresponding processes in other embodiments, and will not be repeated here.

[0199] In the embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0200] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of the technical solution in this application, depending on actual needs.

[0201] In addition, the functional units in the various embodiments of this application 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.

[0202] If a function 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 this application, essentially, or the part that contributes to related technologies, 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 several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0203] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A joint measurement method, characterized in that, The method includes: Receive local scanning data output by a scanning device at one or more spatial locations; wherein the local scanning data is located in the coordinate system of the scanning device itself; For each of the at least three spatial locations where the scanning device is located, receive the spatial location information of the target measurement features on the scanning device in the first tracking device coordinate system, and the pose information of the scanning device in the second tracking device coordinate system, corresponding to the spatial location. Based on the spatial position information of the target measurement feature in the first tracking device coordinate system, the pose information of the scanning device in the second tracking device coordinate system, and the predetermined relative position information between the target measurement feature and the scanning device body, the local scanning data is subjected to global unified processing so that the local scanning data from different spatial locations maintain spatial consistency in the same specified global coordinate system, and global scanning data is generated.

2. The method according to claim 1, characterized in that, The pose information is obtained by the second tracking device tracking multiple target measurement markers on the scanning device.

3. The method according to claim 1, characterized in that, The centers of the at least three target measurement features corresponding to the at least three spatial locations are not collinear.

4. The method according to claim 1, characterized in that, For the same spatial location, the spatial location information and the pose information are acquired by the first tracking device and the second tracking device respectively within a preset time window; wherein, within the preset time window, the pose change of the scanning device is within a specified pose change range.

5. The method according to claim 1, characterized in that, The global unified processing of the local scan data includes: Calculations are performed based on the spatial location information, the pose information, and the relative position information to determine the coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system. Based on the coordinate transformation relationship, at least a portion of the local scan data is transformed to the specified global coordinate system to generate the global scan data.

6. The method according to claim 5, characterized in that, The coordinate transformation relationship is determined during the process of the scanning device acquiring the local scanning data; or, the coordinate transformation relationship is determined before the scanning device acquires the local scanning data.

7. The method according to claim 1, characterized in that, The spatial location information is output by the first tracking device, and the pose information is output by the second tracking device. The method further includes: When the relative pose between the first tracking device and the second tracking device changes, the spatial position information and the pose information are re-received for at least three spatial locations. Based on the relative position information, the re-received spatial position information, and the pose information, the local scan data undergoes globally unified processing.

8. The method according to claim 7, characterized in that, The global unified processing of the local scan data includes: The coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system is updated based on the relative position information, the re-received spatial position information and the pose information. Based on the updated coordinate transformation relationship, at least a portion of the local scan data is transformed to the specified global coordinate system to generate updated global scan data.

9. The method according to claim 8, characterized in that, When the first tracking device changes from a first pose to a second pose, while the pose of the second tracking device remains unchanged, the method further includes: When the first tracking device is in the first pose, a first coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system is determined, and when the first tracking device is in the second pose, a second coordinate transformation relationship between the first tracking device coordinate system and the second tracking device coordinate system is determined. A third coordinate transformation relationship is determined by calculating based on the first coordinate transformation relationship and the second coordinate transformation relationship between the first tracking device coordinate system when the first tracking device is in the first pose and the first tracking device coordinate system when the first tracking device is in the second pose. Based on the third coordinate transformation relationship, at least a portion of the global scan data obtained according to the second coordinate transformation relationship is transformed into a specified global coordinate system corresponding to the first pose.

10. The method according to claim 1, characterized in that, The method further includes: Output at least one of the spatial location information, pose information, relative position information, local scan data, and global scan data according to a specified data format.

11. The method according to claim 1, characterized in that, The first tracking device includes at least one of laser tracking and optical tracking devices; the second tracking device includes at least one of stereo vision tracker, photogrammetric tracking system and optical tracking system.

12. A combined measurement system, characterized in that, The system includes: A scanning device for outputting local scanning data; the scanning device is provided with at least one target measurement feature and multiple target measurement identifiers. A first tracking device is used to track the target measurement features and output the spatial position information of the target measurement features in the coordinate system of the first tracking device. The second tracking device is used to track the target measurement marker and output the pose information of the scanning device in the coordinate system of the second tracking device. A control module is configured to receive local scanning data output by a scanning device at one or more spatial locations, wherein the local scanning data is located in the coordinate system of the scanning device body; for each of the at least three spatial locations where the scanning device is located, the module receives, corresponding to the spatial location, the spatial position information of the target measurement feature on the scanning device in the coordinate system of a first tracking device, and the pose information of the scanning device in the coordinate system of a second tracking device; based on the spatial position information of the target measurement feature in the coordinate system of the first tracking device, the pose information of the scanning device in the coordinate system of the second tracking device, and the predetermined relative position information between the target measurement feature and the scanning device body, the module performs global unified processing on the local scanning data to ensure that the local scanning data from different spatial locations maintains spatial consistency in the same specified global coordinate system, and generates global scanning data.

13. The system according to claim 12, characterized in that, The system also includes: The data export module is used to output at least one of the following data in a specified data format: spatial location information, pose information, relative position information, local scan data, and global scan data.

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

15. A computer device, characterized in that, The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to implement the method of any one of claims 1 to 11.

16. A computer program product, characterized in that, The computer program product includes a computer program that, when executed by a processor, implements the method of any one of claims 1 to 11.