Performance test method, device and equipment of wearable device and storage medium

By acquiring and aligning the device pose data of wearable devices with the actual pose data of the motion capture system in real time, and calculating the trajectory error index, the problems of high manpower consumption and untimely analysis in the SLAM accuracy testing of wearable devices are solved, and the automated testing of the accuracy performance of SLAM algorithms is realized.

CN122149523APending Publication Date: 2026-06-05GOERTEK INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
GOERTEK INC
Filing Date
2024-11-28
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies for SLAM accuracy testing of wearable devices are labor-intensive, have a high error rate, and the analysis process is not timely, making the testing process complex and inefficient.

Method used

The system acquires real-time device pose data from wearable devices and actual pose data from motion capture systems. Through steps such as data alignment, format conversion, time synchronization, and spatial alignment, it calculates the trajectory error index of localization and mapping performance, thereby achieving automated testing of SLAM algorithm accuracy.

Benefits of technology

The system automates the accuracy and performance testing of SLAM algorithms for wearable devices, significantly improving testing efficiency and solving the problems of high manpower costs and untimely analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122149523A_ABST
    Figure CN122149523A_ABST
Patent Text Reader

Abstract

The application discloses a performance test method, device and equipment of wearable device and a storage medium. The method comprises the following steps: acquiring device pose data collected by the wearable device and actual pose data corresponding to the wearable device in real time; performing data alignment on the device pose data and the actual pose data to obtain first pose data corresponding to the device pose data and second pose data corresponding to the actual pose data; performing pose error calculation according to the first pose data and the second pose data to obtain a trajectory error index corresponding to positioning and mapping performance; and determining a performance test result according to the trajectory error index. In the foregoing manner, the problems of high labor cost, high error rate and untimely analysis process in the current SLAM precision test of the wearable device are solved, the trajectory error value between the two pose data can be analyzed in real time, the automation of the SLAM algorithm precision performance test of the wearable device is realized, and the test efficiency is significantly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of wearable device technology, and in particular to performance testing methods, apparatus, devices and storage media for wearable devices. Background Technology

[0002] Currently, a typical testing method for the dynamic accuracy performance of SLAM (Simultaneous Localization and Mapping) involves a PC (Personal Compute Service) connected to a wearable device via USB to send commands and save the device's pose. The data trajectory acquisition process requires holding both the PC and the wearable device. Meanwhile, another PC uses a motion capture system to acquire the ground truth pose. The acquired device pose needs to be exported from the device to the PC, and the ground truth pose needs to be exported from the motion capture system to the PC. This process often results in mismatches between the data pose and the ground truth pose. Data comparison and analysis are only performed after all data acquisition is complete. Therefore, current dynamic accuracy performance testing of SLAM algorithms on wearable devices is labor-intensive and prone to errors in data acquisition. Furthermore, data analysis is not timely, making it impossible to calculate KPIs (Key Performance Indicators) in real time. The testing process is complex and inefficient. Summary of the Invention

[0003] The main objective of this application is to provide a performance testing method, apparatus, device, and storage medium for wearable devices, aiming to solve the technical problems of high manpower consumption, high error rate, and untimely analysis process in the existing technology for SLAM accuracy testing of wearable devices.

[0004] To achieve the above objectives, this application proposes a performance testing method for wearable devices, the performance testing method for wearable devices comprising:

[0005] Real-time acquisition of device pose data collected by wearable devices and the actual pose data corresponding to the wearable devices;

[0006] The device pose data and the actual pose data are aligned to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0007] Based on the first pose data and the second pose data, the pose error is calculated to obtain the trajectory error index corresponding to the localization and mapping performance;

[0008] The performance test results of the wearable device are determined based on the trajectory error index.

[0009] In one embodiment, the step of aligning the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data includes:

[0010] The device pose data and the actual pose data are converted according to a preset data format to obtain the third pose data corresponding to the device pose data and the fourth pose data corresponding to the actual pose data.

[0011] The third pose data and the fourth pose data are synchronized in time to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data;

[0012] Spatially align the fifth pose data and the sixth pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0013] In one embodiment, the step of synchronizing the third pose data and the fourth pose data in time to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data includes:

[0014] Timestamp information is extracted from the third pose data and the fourth pose data respectively to obtain a first timestamp sequence corresponding to the third pose data and a second timestamp sequence corresponding to the fourth pose data;

[0015] Based on the target synchronization point corresponding to the target motion state, the first timestamp sequence and the second timestamp sequence are translated to obtain the third timestamp sequence.

[0016] A fourth timestamp sequence is generated based on the target scaling factor and the third timestamp sequence.

[0017] The second timestamp sequence and the fourth timestamp sequence are time-stamped to generate the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data.

[0018] In one embodiment, the step of spatially aligning the fifth pose data and the sixth pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data includes:

[0019] Feature extraction is performed on the fifth pose data and the sixth pose data respectively to obtain the device pose feature points corresponding to the fifth pose data and the actual pose feature points corresponding to the sixth pose data;

[0020] Perform feature matching between the device pose feature points and the actual pose feature points to obtain matching point pairs;

[0021] Calculate the rotation matrix and translation vector based on the target rigidity transformation algorithm and the matching point pair;

[0022] The fifth pose data and the sixth pose data are transformed according to the rotation matrix and the translation vector to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0023] In one embodiment, the step of calculating the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance includes:

[0024] The absolute pose error is calculated based on the first pose data and the second pose data to obtain the real-time absolute pose error between the device pose data and the actual pose data.

[0025] The relative pose error is calculated based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data.

[0026] The trajectory error index corresponding to the localization and mapping performance is obtained based on the real-time absolute pose error and the real-time relative pose error.

[0027] In one embodiment, the step of calculating the relative pose error based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data includes:

[0028] The device pose change is calculated based on the first pose data and the target time point;

[0029] The actual pose change of the actual pose data is calculated based on the second pose data and the target time point.

[0030] Calculate the translation error and rotation error between the device pose data and the actual pose data based on the device pose change and the actual pose change;

[0031] The real-time relative pose error between the device pose data and the actual pose data is determined based on the translation error and the rotation error.

[0032] In one embodiment, the step of acquiring in real time the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device includes:

[0033] Obtain the wireless communication connection status of the wearable device and the network port communication connection status of the motion capture system;

[0034] When both the wireless communication connection state and the network port communication connection state are in a normal communication state, the device pose data collected by the wearable device and the true pose data collected by the motion capture system are acquired in real time.

[0035] The actual pose data corresponding to the wearable device is determined based on the true pose data.

[0036] Furthermore, to achieve the above objectives, this application also proposes a performance testing apparatus for wearable devices, the performance testing apparatus for wearable devices comprising:

[0037] The acquisition module is used to acquire in real time the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device;

[0038] An alignment module is used to align the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0039] The calculation module is used to calculate the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance.

[0040] The processing module is used to determine the performance test results of the wearable device based on the trajectory error index.

[0041] In addition, to achieve the above objectives, this application also proposes a performance testing device for wearable devices, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the performance testing method for wearable devices as described above.

[0042] In addition, to achieve the above objectives, this application also proposes a storage medium, which is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of the performance testing method for wearable devices as described above.

[0043] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the performance testing method for wearable devices as described above.

[0044] The method of this application includes: acquiring device pose data and actual pose data corresponding to the wearable device in real time; aligning the device pose data and the actual pose data to obtain first pose data corresponding to the device pose data and second pose data corresponding to the actual pose data; calculating pose error based on the first pose data and the second pose data to obtain a trajectory error index corresponding to the localization and mapping performance; and determining the performance test result of the wearable device based on the trajectory error index. By acquiring device pose data and actual pose data in real time and comparing them in real time to determine the trajectory error index corresponding to the localization and mapping performance, the performance test result of the SLAM algorithm accuracy of the wearable device is obtained. This solves the problems of high manpower consumption, high error rate, and untimely analysis in current SLAM accuracy testing of wearable devices. It enables real-time analysis of the trajectory error value between device pose data and actual pose data, automating the performance testing of the SLAM algorithm accuracy of wearable devices and significantly improving testing efficiency. Attached Figure Description

[0045] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0046] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0047] Figure 1 A flowchart illustrating an embodiment of the performance testing method for wearable devices in this application;

[0048] Figure 2 This is a flowchart illustrating Embodiment 2 of the performance testing method for wearable devices in this application.

[0049] Figure 3 This is a schematic diagram of the module structure of the performance testing device for wearable devices according to an embodiment of this application;

[0050] Figure 4 This is a schematic diagram of the hardware operating environment involved in the performance testing method of the wearable device in this application embodiment.

[0051] The purpose, features, and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0052] It should be understood that the specific embodiments described herein are merely illustrative of the technical solutions of this application and are not intended to limit this application.

[0053] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0054] The main solution of this application embodiment is: to acquire in real time the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device; to perform data alignment on the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data; to calculate the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance; and to determine the performance test result of the wearable device based on the trajectory error index.

[0055] Currently, typical testing methods for SLAM (Simultaneous Localization and Mapping) dynamic accuracy performance testing often result in a mismatch between the data pose and the ground truth pose. The data acquisition process is labor-intensive and prone to errors. Furthermore, the data analysis process is not timely and cannot calculate KPIs (Key Performance Indicators) in real time. The testing process is complex and inefficient.

[0056] This application provides a solution that acquires device pose data and actual pose data collected by wearable devices in real time, compares the device pose data and actual pose data in real time, determines the trajectory error index corresponding to the localization and mapping performance, and obtains the performance test results of the SLAM algorithm accuracy of wearable devices. This solves the problems of high manpower consumption, high error rate and untimely analysis in the current SLAM accuracy testing of wearable devices. It can analyze the trajectory error value between device pose data and actual pose data in real time, realize the automation of SLAM algorithm accuracy performance testing of wearable devices, and significantly improve testing efficiency.

[0057] It should be noted that the executing entity in this embodiment can be a computing service device with data processing, network communication, and program execution functions, such as a tablet computer, personal computer, or mobile phone, or a performance testing device for wearable devices capable of performing the above functions. The following description uses a performance testing device for wearable devices as an example to illustrate this embodiment and the subsequent embodiments.

[0058] Based on this, embodiments of this application provide a performance testing method for wearable devices, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the performance testing method for wearable devices according to this application.

[0059] In this embodiment, the method includes steps S10 to S40:

[0060] Step S10: Real-time acquisition of device pose data collected by the wearable device and the actual pose data corresponding to the wearable device.

[0061] It should be noted that the wearable device performance testing equipment in this embodiment connects to the wearable device via wireless communication methods such as Wi-Fi or Bluetooth, and acquires the pose data collected in real time by the wearable device through wireless communication; the wearable device performance testing equipment also includes a motion capture system, which acquires the ground truth pose data collected in real time through Ethernet communication. In this embodiment, the wearable device refers to a device that needs to calculate its own pose data in real time using the SLAM algorithm, such as VR (Virtual Reality) devices or AR (Augmented Reality) devices; the motion capture system is a technology that uses sensors and technical means to capture and record the movement of objects or the human body.

[0062] Understandably, the performance testing equipment for wearable devices acquires in real-time the pose data calculated by the wearable device using its own SLAM algorithm during movement, as well as the ground truth pose data collected by the motion capture system during movement. In this embodiment, device pose data refers to the pose data calculated by the wearable device using its own SLAM algorithm; actual pose data refers to the ground truth pose data collected by the motion capture system.

[0063] In one feasible implementation, step S10 may include steps A11 to A13:

[0064] Step A11: Obtain the wireless communication connection status of the wearable device and the network port communication connection status of the motion capture system.

[0065] It should be noted that the wireless communication parameters, such as signal strength and data packet transmission, between the wearable device and the performance testing device for the wearable device are checked against preset normal communication standards to determine the wireless communication connection status between them. In this embodiment, the wireless communication connection status includes a normal communication status and a communication abnormal status.

[0066] Understandably, the network connection between the motion capture system and the wearable device is checked to ensure it is normal and that there is no significant delay or loss in data packet transmission, thereby obtaining the Ethernet communication connection status between the two. In this embodiment, the wireless communication connection status includes a normal communication status and a communication abnormal status.

[0067] Step A12: When both the wireless communication connection state and the network port communication connection state are in a normal communication state, the device pose data collected by the wearable device and the true pose data collected by the motion capture system are acquired in real time.

[0068] Step A13: Determine the actual pose data corresponding to the wearable device based on the true pose data.

[0069] It should be noted that when both the wireless communication connection and the network port communication connection are in a normal communication state, the device pose data calculated by the wearable device using the SLAM algorithm is acquired in real time via wireless communication; the ground truth pose data collected by the motion capture system is acquired in real time via network port communication, and this ground truth pose data is used as the actual pose data corresponding to the wearable device. Before acquiring data, it is necessary to ensure that the motion capture system, the performance testing equipment for the wearable device, and the wearable device are synchronized in time.

[0070] Step S20: Align the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0071] It should be noted that real-time data analysis is performed on the acquired device pose data and actual pose data. First, the device pose data and actual pose data are formatted uniformly. Then, the format-uniformed device pose data and format-uniformed actual pose data are synchronized in time and aligned in spatial pose to obtain processed device pose data and processed actual pose data. In this embodiment, the first pose data refers to the processed device pose data; the second pose data refers to the processed actual pose data.

[0072] Understandably, since the data sampling rates of wearable devices and motion capture systems are inconsistent, the timestamp difference method can be used to align the device pose data and the actual pose data on the time axis. The timestamp synchronization point between the device pose data and the actual pose data can be found according to the specific motion state. Based on the synchronization point, the data of the two can be made consistent on the timestamp by translating or scaling the time axis.

[0073] In the specific implementation, a feature matching algorithm (such as SIFT algorithm) is used to match the features of the time-synchronized device pose data and the actual pose data. Based on the feature matching results, the transformation matrix between the motion capture system and the wearable device coordinate system is calculated. The transformation matrix is ​​used to transform the time-synchronized device pose data into the motion capture system coordinate system, thereby achieving spatial pose alignment between the device pose data and the actual pose data.

[0074] Step S30: Calculate the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance.

[0075] It should be noted that real-time absolute pose error and real-time relative pose error are calculated based on the first pose data and the second pose data to obtain the real-time absolute pose error and real-time relative pose error between the device pose data and the actual pose data. In this embodiment, the localization and mapping performance refers to the accuracy performance of the SLAM algorithm of the wearable device, and the trajectory error indicators include, but are not limited to, the real-time absolute pose error and real-time relative pose error between the device pose data and the actual pose data.

[0076] In one feasible implementation, step S30 may include steps B11 to B13:

[0077] Step B11: Calculate the absolute pose error based on the first pose data and the second pose data to obtain the real-time absolute pose error between the device pose data and the actual pose data.

[0078] It should be noted that the Umeyama algorithm is used to align the trajectory of the first pose data and the trajectory of the second pose data. The position and orientation errors of each corresponding point in the aligned trajectory are calculated, and the real-time absolute pose error between the device pose data and the actual pose data is calculated based on the position and orientation errors of each corresponding point. In this embodiment, the real-time absolute pose error includes statistical indicators such as average error, maximum error, minimum error, root mean square error (RMSE), sum of squared errors (SSE), and standard deviation (std).

[0079] Step B12: Calculate the relative pose error based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data.

[0080] It should be noted that, by using the first pose data and the second pose data, the difference in pose change at the same two timestamps is calculated. Based on the translation error and rotation error, the root mean square error is used to calculate the real-time relative pose error between the device pose data and the actual pose data.

[0081] Step B13: Obtain the trajectory error index corresponding to the localization and mapping performance based on the real-time absolute pose error and the real-time relative pose error.

[0082] It should be noted that after calculating the real-time absolute pose error and the real-time relative pose error between the device pose data and the actual pose data, the real-time absolute pose error and the real-time relative pose error can be used as the trajectory error indicators corresponding to the positioning and mapping performance of the wearable device.

[0083] In one feasible implementation, step B12 may include steps C11 to C14:

[0084] Step C11: Calculate the device pose change of the device pose data based on the first pose data and the target time point.

[0085] It should be noted that, based on the acquisition time of the first and second pose data, multiple pairs of time points (t1, t2) are randomly selected and used as target time point pairs. The pose change and rotation change of the first pose data between the two time points of the target time point pair are calculated. In this embodiment, the device pose change includes the position change and rotation change of the device pose data between the target time point pairs.

[0086] Step C12: Calculate the actual pose change of the actual pose data based on the second pose data and the target time point.

[0087] It should be noted that the calculation involves the pose change and rotation change of the second pose data between the two time points of the target time point pair. In this embodiment, the actual pose change includes the position change and rotation change of the actual pose data between the target time point pair.

[0088] Step C13: Calculate the translation error and rotation error between the device pose data and the actual pose data based on the device pose change and the actual pose change.

[0089] It should be noted that the translation error between the device pose data and the actual pose data is calculated based on the position change in the device pose change and the position change in the actual pose change; the rotation error between the device pose data and the actual pose data is calculated based on the rotation change in the device pose change and the rotation change in the actual pose change.

[0090] Step C14: Determine the real-time relative pose error between the device pose data and the actual pose data based on the translation error and the rotation error.

[0091] It should be noted that the root mean square error of translation error and the root mean square error of rotation error are calculated, and the real-time relative pose error between the device pose data and the actual pose data is obtained based on the root mean square error of translation error and the root mean square error of rotation error.

[0092] Step S40: Determine the performance test results of the wearable device based on the trajectory error index.

[0093] It should be noted that after obtaining the trajectory error index of the positioning and mapping performance, the performance test results of the wearable device's positioning and mapping performance can be obtained. When the performance test results show that the positioning and mapping performance is not up to standard, the SLAM algorithm can be optimized, or the sensor configuration of the wearable device can be improved.

[0094] The method of this embodiment includes: acquiring device pose data and actual pose data corresponding to the wearable device in real time; aligning the device pose data and the actual pose data to obtain first pose data corresponding to the device pose data and second pose data corresponding to the actual pose data; calculating pose error based on the first pose data and the second pose data to obtain a trajectory error index corresponding to the localization and mapping performance; and determining the performance test result of the wearable device based on the trajectory error index. By acquiring device pose data and actual pose data in real time and comparing them in real time to determine the trajectory error index corresponding to the localization and mapping performance, the performance test result of the SLAM algorithm accuracy of the wearable device is obtained. This solves the problems of high manpower consumption, high error rate, and untimely analysis in current SLAM accuracy testing of wearable devices. It enables real-time analysis of the trajectory error value between device pose data and actual pose data, automating the performance testing of the SLAM algorithm accuracy of wearable devices and significantly improving testing efficiency.

[0095] Based on the first embodiment of this application, in the second embodiment of this application, the content that is the same as or similar to that in the first embodiment described above can be referred to the above description, and will not be repeated hereafter. Based on this, please refer to... Figure 2 The performance testing method for the wearable device further includes steps S21 to S23 in step S20:

[0096] Step S21: Convert the device pose data and the actual pose data according to the preset data format to obtain the third pose data corresponding to the device pose data and the fourth pose data corresponding to the actual pose data.

[0097] It should be noted that in this embodiment, the preset data format is TUM format, but other formats can also be set as needed, and this embodiment does not limit this. The device pose data and the actual pose data are converted to TUM format. The device pose data after format conversion is the third pose data, and the actual pose data after format conversion is the fourth pose data.

[0098] Step S22: Synchronize the third pose data and the fourth pose data in time to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data.

[0099] It should be noted that the timestamp interpolation method is used to align the third pose data corresponding to the device pose data and the fourth pose data corresponding to the actual pose data on the time axis. Based on a specific motion state, the timestamp synchronization point between the third and fourth pose data is found. Based on this synchronization point, the time axis is translated or scaled to ensure that the two data are consistent in terms of timestamps. In this embodiment, the time-synchronized third pose data is the fifth pose data; the time-synchronized fourth pose data is the sixth pose data.

[0100] In one feasible implementation, step S22 may further include steps D11 to D14:

[0101] Step D11: Extract timestamp information from the third pose data and the fourth pose data respectively to obtain the first timestamp sequence corresponding to the third pose data and the second timestamp sequence corresponding to the fourth pose data.

[0102] It should be noted that timestamps are extracted from the third pose data and the fourth pose data respectively, thereby forming the first timestamp sequence corresponding to the third pose data and the second timestamp sequence corresponding to the fourth pose data.

[0103] Step D12: Perform a translation operation on the first timestamp sequence and the second timestamp sequence according to the target synchronization point corresponding to the target motion state to obtain the third timestamp sequence.

[0104] It should be noted that a specific running state is taken as the target motion state, such as being at rest or in uniform linear motion. Under the target motion state, the first timestamp sequence T is found. H Second timestamp sequence T D The target synchronization point is the point where the timestamps of the third pose data and the fourth pose data are closest.

[0105] Understandably, based on the target synchronization point, the first timestamp sequence is shifted to align with the second timestamp sequence, resulting in the third timestamp sequence T′. H =[tH +(tt H for t∈T H ].

[0106] Step D13: Generate a fourth timestamp sequence based on the target scaling factor and the third timestamp sequence.

[0107] It should be noted that after finding the target synchronization point in the first timestamp sequence and the second timestamp sequence respectively, the target synchronization point t in the first timestamp sequence can be used as a reference. H The target synchronization point t in the second timestamp sequence D Calculate the target scaling factor

[0108] Understandably, a new timestamp sequence is generated based on the target scaling factor and the third timestamp sequence, resulting in a fourth timestamp sequence T. H = [t' H ×αfor t' H ∈T′ H ].

[0109] Step D14: Difference the timestamps of the second timestamp sequence and the fourth timestamp sequence to generate the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data.

[0110] It should be noted that for each time point t” in the device pose data H If t” H Not in T D In the process, T is generated using interpolation methods. D In t” H Pose data at time t; for each time point t in the actual pose data D If t D Not in T″ H In the middle, the interpolation method is used to generate T″. H In t D The pose data at time T″. In this embodiment, the interpolated T″ is used. H Combined with the device pose data, the fifth pose data corresponding to the third pose data is formed, and the interpolated T... D The fourth pose data is combined with the actual pose data to form the fifth pose data.

[0111] Step S23: Spatial alignment is performed on the fifth pose data and the sixth pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0112] It should be noted that a feature matching algorithm (such as SIFT algorithm) is used to match the features of the fifth pose data corresponding to the device pose data and the sixth pose data corresponding to the actual pose data. Based on the feature matching results, a transformation matrix between the motion capture system and the wearable device coordinate system is calculated. The transformation matrix is ​​used to transform the time-synchronized device pose data into the motion capture system coordinate system, thereby achieving spatial pose alignment between the device pose data and the actual pose data, and thus obtaining the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0113] In one feasible implementation, step S23 may further include steps E11 to E14:

[0114] Step E11: Perform feature extraction on the fifth pose data and the sixth pose data respectively to obtain the device pose feature points corresponding to the fifth pose data and the actual pose feature points corresponding to the sixth pose data.

[0115] It should be noted that feature points are extracted from the fifth pose data and the sixth pose data respectively. These feature points can be key points in the image, specific points in the pose data, etc. In this embodiment, the feature points extracted from the fifth pose data are the device pose feature points, and the feature points extracted from the sixth pose data are the actual pose feature points.

[0116] Step E12: Perform feature matching on the device pose feature points and the actual pose feature points to obtain matching point pairs.

[0117] It should be noted that feature matching algorithms (such as SIFT) are used to match device pose feature points with actual pose feature points to obtain matching point pairs between device pose data and actual pose data. Each matching point pair contains one device pose feature point and one actual pose feature point.

[0118] Step E13: Calculate the rotation matrix and translation vector based on the target rigid transformation algorithm and the matching point pair.

[0119] Step E14: Perform data conversion on the fifth pose data and the sixth pose data according to the rotation matrix and the translation vector to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0120] It should be noted that the target rigid transformation algorithm in this embodiment refers to the Umeyama algorithm. Using the target rigid transformation algorithm, the rotation matrix and translation vector are calculated based on the matching point pairs. The transformation matrix can be determined based on the rotation matrix and translation vector. Through the transformation matrix, the fifth pose data corresponding to the device pose data is transformed from the coordinate system of the wearable device to the coordinate system of the motion capture system. For each pose data point in the fifth pose data, its corresponding point in the coordinate system of the motion capture system is calculated according to the transformation matrix, thus obtaining the transformed fifth pose data. In this embodiment, the fifth pose data after coordinate transformation is the first pose data corresponding to the device pose data; the sixth pose data maintains the same coordinate system and is used as the second pose data corresponding to the actual pose data.

[0121] This embodiment converts the device pose data and the actual pose data according to a preset data format to obtain third pose data corresponding to the device pose data and fourth pose data corresponding to the actual pose data; it then synchronizes the third pose data and fourth pose data in time to obtain fifth pose data corresponding to the third pose data and sixth pose data corresponding to the fourth pose data; finally, it spatially aligns the fifth pose data and sixth pose data to obtain first pose data corresponding to the device pose data and second pose data corresponding to the actual pose data. This method ensures accurate alignment of the device pose data and actual pose data, guaranteeing the accuracy of subsequent error calculations.

[0122] It should be noted that the above examples are only for understanding this application and do not constitute a limitation on the performance testing method of the wearable device of this application. Any simple modifications based on this technical concept are within the protection scope of this application.

[0123] This application also provides a performance testing device for wearable devices; please refer to [reference needed]. Figure 3 The performance testing device for the wearable device includes:

[0124] The acquisition module 10 is used to acquire in real time the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device.

[0125] Alignment module 20 is used to align the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0126] The calculation module 30 is used to calculate the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance.

[0127] The processing module 40 is used to determine the performance test results of the wearable device based on the trajectory error index.

[0128] Optionally, the alignment module 20 is further configured to:

[0129] The device pose data and the actual pose data are converted according to a preset data format to obtain the third pose data corresponding to the device pose data and the fourth pose data corresponding to the actual pose data. The third pose data and the fourth pose data are time-synchronized to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data. The fifth pose data and the sixth pose data are spatially aligned to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0130] Optionally, the alignment module 20 is further configured to:

[0131] Timestamp information is extracted from the third pose data and the fourth pose data respectively to obtain a first timestamp sequence corresponding to the third pose data and a second timestamp sequence corresponding to the fourth pose data; a translation operation is performed on the first timestamp sequence and the second timestamp sequence according to the target synchronization point corresponding to the target motion state to obtain a third timestamp sequence; a sequence is generated according to the target scaling factor and the third timestamp sequence to obtain a fourth timestamp sequence; the timestamp difference is calculated between the second timestamp sequence and the fourth timestamp sequence to generate a fifth pose data corresponding to the third pose data and a sixth pose data corresponding to the fourth pose data.

[0132] Optionally, the alignment module 20 is further configured to:

[0133] Feature extraction is performed on the fifth pose data and the sixth pose data respectively to obtain the device pose feature points corresponding to the fifth pose data and the actual pose feature points corresponding to the sixth pose data; feature matching is performed on the device pose feature points and the actual pose feature points to obtain matching point pairs; rotation matrix and translation vector are calculated according to the target rigidity transformation algorithm and the matching point pairs; data transformation is performed on the fifth pose data and the sixth pose data according to the rotation matrix and the translation vector to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

[0134] Optionally, the computing module 30 is further configured to:

[0135] The absolute pose error is calculated based on the first pose data and the second pose data to obtain the real-time absolute pose error between the device pose data and the actual pose data; the relative pose error is calculated based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data; and the trajectory error index corresponding to the positioning and mapping performance is obtained based on the real-time absolute pose error and the real-time relative pose error.

[0136] Optionally, the computing module 30 is further configured to:

[0137] The device pose change is calculated based on the first pose data and the target time point; the actual pose change is calculated based on the second pose data and the target time point; the translation error and rotation error between the device pose data and the actual pose data are calculated based on the device pose change and the actual pose change; and the real-time relative pose error between the device pose data and the actual pose data is determined based on the translation error and the rotation error.

[0138] Optionally, the acquisition module 10 is further configured to:

[0139] The wireless communication connection status of the wearable device and the network port communication connection status of the motion capture system are obtained. When both the wireless communication connection status and the network port communication connection status are in a normal communication state, the device pose data collected by the wearable device and the true pose data collected by the motion capture system are obtained in real time. The actual pose data corresponding to the wearable device is determined based on the true pose data.

[0140] The wearable device performance testing apparatus provided in this application, employing the wearable device performance testing method described in the above embodiments, can solve the technical problems of high manpower consumption, high error rate, and untimely analysis process in existing technologies for SLAM accuracy testing of wearable devices. Compared with the prior art, the beneficial effects of the wearable device performance testing apparatus provided in this application are the same as those of the wearable device performance testing method provided in the above embodiments, and other technical features in the wearable device performance testing apparatus are the same as those disclosed in the methods of the above embodiments, and will not be repeated here.

[0141] This application provides a performance testing device for wearable devices, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, which are executed by the at least one processor to enable the at least one processor to perform the performance testing method for wearable devices described in Embodiment 1 above.

[0142] The following is for reference. Figure 4 The diagram illustrates a structural schematic of a performance testing device suitable for implementing the embodiments of this application. The performance testing device for the wearable device in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Description), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 4 The performance testing device for wearable devices shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0143] like Figure 4 As shown, the performance testing device for wearable devices may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1002 or a program loaded from storage device 1003 into random access memory (RAM) 1004. The RAM 1004 also stores various programs and data required for the operation of the performance testing device for wearable devices. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input devices 1007 including, for example, touchscreens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the wearable device performance testing equipment to wirelessly or wiredly communicate with other devices to exchange data. Although the figure shows a wearable device performance testing equipment with various systems, it should be understood that it is not required to implement or possess all the systems shown. More or fewer systems can be implemented alternatively.

[0144] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0145] The wearable device performance testing equipment provided in this application, employing the wearable device performance testing method described in the above embodiments, can solve the technical problems of high manpower consumption, high error rate, and untimely analysis process in existing technologies for SLAM accuracy testing of wearable devices. Compared with the prior art, the beneficial effects of the wearable device performance testing equipment provided in this application are the same as those of the wearable device performance testing method provided in the above embodiments, and other technical features in this wearable device performance testing equipment are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0146] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0147] The above description is merely a specific embodiment 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.

[0148] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, the computer-readable program instructions being used to execute the performance testing method for the wearable device in the above embodiments.

[0149] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0150] The aforementioned computer-readable storage medium may be included in the performance testing equipment for the wearable device; or it may exist independently and not assembled into the performance testing equipment for the wearable device.

[0151] The aforementioned computer-readable storage medium carries one or more programs. When these programs are executed by a performance testing device for a wearable device, the performance testing device for the wearable device causes the following to occur: In real time, it acquires device pose data collected by the wearable device and actual pose data corresponding to the wearable device; it aligns the device pose data and the actual pose data to obtain first pose data corresponding to the device pose data and second pose data corresponding to the actual pose data; it calculates pose error based on the first pose data and the second pose data to obtain a trajectory error index corresponding to the localization and mapping performance; and it determines the performance test result of the wearable device based on the trajectory error index.

[0152] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a Local Area Network (LAN) or a Wide Area Network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0153] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0154] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0155] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the performance testing method for the wearable device described above. This solves the technical problems of high manpower consumption, high error rate, and untimely analysis in existing SLAM accuracy testing of wearable devices. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the performance testing method for wearable devices provided in the above embodiments, and will not be repeated here.

[0156] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the performance testing method for wearable devices as described above.

[0157] The computer program product provided in this application can solve the technical problems of high manpower consumption, high error rate, and untimely analysis process in the existing technology for SLAM accuracy testing of wearable devices. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as the beneficial effects of the performance testing method for wearable devices provided in the above embodiments, and will not be repeated here.

[0158] The above description is only a part of the embodiments of this application and does not limit the patent scope of this application. All equivalent structural transformations made under the technical concept of this application and using the contents of the specification and drawings of this application, or direct / indirect applications in other related technical fields, are included in the patent protection scope of this application.

Claims

1. A performance testing method for wearable devices, characterized in that, The performance testing method for the wearable device includes: Real-time acquisition of device pose data collected by wearable devices and the actual pose data corresponding to the wearable devices; The device pose data and the actual pose data are aligned to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data. Based on the first pose data and the second pose data, the pose error is calculated to obtain the trajectory error index corresponding to the localization and mapping performance; The performance test results of the wearable device are determined based on the trajectory error index.

2. The method as described in claim 1, characterized in that, The step of aligning the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data includes: The device pose data and the actual pose data are converted according to a preset data format to obtain the third pose data corresponding to the device pose data and the fourth pose data corresponding to the actual pose data. The third pose data and the fourth pose data are synchronized in time to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data; Spatially align the fifth pose data and the sixth pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

3. The method as described in claim 2, characterized in that, The step of synchronizing the third pose data and the fourth pose data in time to obtain the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data includes: Timestamp information is extracted from the third pose data and the fourth pose data respectively to obtain a first timestamp sequence corresponding to the third pose data and a second timestamp sequence corresponding to the fourth pose data; Based on the target synchronization point corresponding to the target motion state, the first timestamp sequence and the second timestamp sequence are translated to obtain the third timestamp sequence. A fourth timestamp sequence is generated based on the target scaling factor and the third timestamp sequence. The second timestamp sequence and the fourth timestamp sequence are time-stamped to generate the fifth pose data corresponding to the third pose data and the sixth pose data corresponding to the fourth pose data.

4. The method as described in claim 2, characterized in that, The step of spatially aligning the fifth pose data and the sixth pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data includes: Feature extraction is performed on the fifth pose data and the sixth pose data respectively to obtain the device pose feature points corresponding to the fifth pose data and the actual pose feature points corresponding to the sixth pose data; Perform feature matching between the device pose feature points and the actual pose feature points to obtain matching point pairs; Calculate the rotation matrix and translation vector based on the target rigidity transformation algorithm and the matching point pair; The fifth pose data and the sixth pose data are transformed according to the rotation matrix and the translation vector to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data.

5. The method as described in claim 1, characterized in that, The step of calculating the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance includes: The absolute pose error is calculated based on the first pose data and the second pose data to obtain the real-time absolute pose error between the device pose data and the actual pose data. The relative pose error is calculated based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data. The trajectory error index corresponding to the localization and mapping performance is obtained based on the real-time absolute pose error and the real-time relative pose error.

6. The method as described in claim 5, characterized in that, The step of calculating the relative pose error based on the first pose data and the second pose data to obtain the real-time relative pose error between the device pose data and the actual pose data includes: The device pose change is calculated based on the first pose data and the target time point; The actual pose change of the actual pose data is calculated based on the second pose data and the target time point. Calculate the translation error and rotation error between the device pose data and the actual pose data based on the device pose change and the actual pose change; The real-time relative pose error between the device pose data and the actual pose data is determined based on the translation error and the rotation error.

7. The method according to any one of claims 1 to 6, characterized in that, The step of acquiring the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device in real time includes: Obtain the wireless communication connection status of the wearable device and the network port communication connection status of the motion capture system; When both the wireless communication connection state and the network port communication connection state are in a normal communication state, the device pose data collected by the wearable device and the true pose data collected by the motion capture system are acquired in real time. The actual pose data corresponding to the wearable device is determined based on the true pose data.

8. A performance testing device for wearable devices, characterized in that, The performance testing device for the wearable device includes: The acquisition module is used to acquire in real time the device pose data collected by the wearable device and the actual pose data corresponding to the wearable device; An alignment module is used to align the device pose data and the actual pose data to obtain the first pose data corresponding to the device pose data and the second pose data corresponding to the actual pose data. The calculation module is used to calculate the pose error based on the first pose data and the second pose data to obtain the trajectory error index corresponding to the localization and mapping performance. The processing module is used to determine the performance test results of the wearable device based on the trajectory error index.

9. A performance testing device for wearable devices, characterized in that, The performance testing of the wearable device includes: a memory, a processor, and a performance testing program for the wearable device stored in the memory and executable on the processor, wherein the performance testing program for the wearable device is configured to implement the performance testing method for the wearable device as described in any one of claims 1 to 7.

10. A storage medium, characterized in that, The storage medium stores a performance testing program for a wearable device, which, when executed by a processor, implements the performance testing method for a wearable device as described in any one of claims 1 to 7.