The current state of the art is to perform calibration online (i.e. in real time, with some latency) because typically these measurements are used downstream for real-time applications. Given the time-critical nature of some real-time applications, it becomes pointless to calibrate if it is not done so in a timely manner. So, existing calibration algorithms have to be optimized for highly constrained hardware and software limitations. Therefore, existing algorithms trade-off quality for reduced latency. There is interest in receiving highly accurate measurements before it is used offline for training an AI/ML model to make a critical (e.g., a health-related) inference or decision. So, technically, the calibration algorithms have no theoretical limitations on the compute power or latency. One novel aspect of the present invention is to use all of the data needed to effectively back-calibrate the erroneous measurements offline resulting in lower overall cumulative error.
The current state of the art for calibrating the different IMU sensors does not account for dynamically changing bias and sensitivity parameters due to time-varying factors such as temperature and shock. Typically, a factory calibration is performed at the time the device is manufactured and/or a recalibration routine is performed every so often to proactively adjust for the drift or other things that causes the calibration to become void. Instead, one of the novel ideas is to systematically react to inconsistency in the calibration to enable faster recovery from erroneous calibration parameter estimates using some of the techniques discussed in this paragraph. Another novel idea is to use a suboptimal online calibration to provide time-sensitive situational awareness but do an offline correction to provide a more accurate inference at an acceptable later time with relaxed time and compute-power constraints.
The ability to perform back-calibration of sensors impacted by time-varying calibration parameters is also novel and does not currently exist and that deficiency is remedied by the present invention.
The disclosed embodiments provide a system for sensor calibration. The system receives raw accelerometer data, raw gyroscope data, and raw magnetometer data and performs spatial calibration at an inertial measurement unit (IMU). A plurality of calibration parameters are then output from the inertial measurement unit. Calibrated data from the accelerometer, gyroscope, and magnetometer are transmitted to a sensor fusion module, where the sensor fusion module computes an orientation. The orientation and calibrated accelerometer data are then transmitted to a gravity removal module, where the gravity removal module calculates corrected linear acceleration.
In certain embodiments, there may be eighteen calibration parameters and in others, up to thirty-six calibration parameters.
In other embodiments, the calibration is dynamically performed.
In yet other embodiments, the system further transmits calibrated accelerometer data, calibrated magnetometer data, and calibrated gyroscope data from the sensor fusion module to an AI algorithm module.
In other embodiments, the AI algorithm module is trained to perform an offline correction using the calibrated accelerometer data, calibrated magnetometer data, and calibrated gyroscope data for subsequent iterations
A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings, wherein:
In describing a preferred embodiment of the invention illustrated in the drawings, specific terminology will be resorted to for the sake of clarity. However, the invention is not intended to be limited to the specific terms so selected, and it is to be understood that each specific term includes all technical equivalents that operate in a similar manner to accomplish a similar purpose. Several preferred embodiments of the invention are described for illustrative purposes, it being understood that the invention may be embodied in other forms not specifically shown in the drawings.
Disclosed herein is a medical-grade wearable device which is comprised of physiological sensors including PPG (“Photoplethysmography”), GSR (“Galvanic Skin Response”), and temperature sensors. In certain embodiments, the device is utilized in conjunction with custom data pipeline and backend to collect physiological data that will be used for training AI/ML models to perform medically relevant diagnostic inferences as well as for patient monitoring. Rajant desires the most accurate and precise physiological sensor data that can be provided by the device. To that end, the device is further equipped with a 9-axis IMU (“Inertial Measurement Unit”) comprising one or more accelerometers, gyroscopes, and magnetometers. In certain embodiments, the IMU may also include one or more temperature sensors.
Among other uses, the IMU is used to reduce motion artifacts in the PPG sensor data introduced due to motion by the patient. In particular, the accelerometer data will be utilized to correct the PPG signals by removing motion-induced artifacts. The gravitational component of the acceleration must then be removed from the signal in order to compute the true linear acceleration of the device. That is achieved using a process referred to as sensor fusion, which combines the outputs of the accelerometer, gyroscope and the magnetometer to determine the orientation (and heading) of the device and subtracting the contribution of gravity along each axis. The accelerometer, gyroscope, and magnetometer produce noisy measurements which need to be corrected. Furthermore, the measurements are adversely impacted if the sensors are not calibrated properly. Calibration is an additional correctional step that is performed to offset the error in the raw measurements to account for the bias and sensitivity parameters of the sensors.
In order to perform a calibration online, one common way is to categorize each new data point obtained into groups (i.e. labels) indicating usability of the data point toward calibrating a certain sensor. So, when sufficient data points have been collected, the sensors can then be calibrated. Subsequently, the sensor measurements are then fused to provide a better orientation estimate for the device using one of several estimation methods such as Kalman or Particle filter (or its variants). Better estimates can be provided at a faster rate if the search for potential solutions is focused on solution spaces that are more probable given the estimated trajectory of the device (such as a car that is driving on a road). However, there is interest in applications where the trajectory of the device in question may seem ad hoc (such as human motion). One novel idea is to come up with better and more informative categories/labels for each data point enabled by AI to assist the calibration and sensor fusion. For example, performing activity recognition (i.e. walking, running, etc.) could inform the calibration/fusion procedures about potential trajectories that the device might take, thereby enabling faster and more effective calibration/fusion (both online and offline).
Each computer 120 is comprised of a central processing unit 122, a storage medium 124, a user-input device 126, and a display 128. Examples of computers that may be used are: commercially available personal computers, open source computing devices (e.g. Raspberry Pi), commercially available servers, and commercially available portable devices (e.g. smartphones, smartwatches, tablets). In one embodiment, each of the peripheral devices 110 and each of the computers 120 of the system may have software related to the system installed on it. In such an embodiment, system data may be stored locally on the networked computers 120 or alternately, on one or more remote servers 140 that are accessible to any of the peripheral devices 110 or the networked computers 120 through a network 130. In alternate embodiments, the software runs as an application on the peripheral devices 110, and includes web-based software and iOS-based and Android-based mobile applications.
Online IMU Calibration and Sensor Fusion
Online calibration and sensor fusion utilizes real-time IMU measurements to update the bias and sensitivity parameters of the accelerometer, gyroscope and magnetometer. When an appropriate solution to the parameters has been found, errors introduced by the biases and offsets are significantly reduced.
Sensor Fusion
Sensor fusion 218 utilizes calibrated IMU data to estimate the orientation of the device in world coordinates. Dynamic calibration results in more accurate sensor fusion estimation for time and temperature varying IMU bias and sensitivity parameters than static calibration. Faster recovery is achieved by the sensor fusion with dynamic calibration. Sensor fusion detects inaccuracies in IMU parameter estimates.
Gravity Removal
The quaternion 222 and calibrated accelerometer 220 describing IMU orientation from the sensor fusion algorithm is used to determine acceleration due to gravity that is projected onto the x, y & z axes of the IMU. The gravitational projection is removed 224 from the accelerometer readings to provide linear acceleration estimates 226 in world coordinates.
Offline IMU Calibration and Sensor Fusion
Real time IMU calibration makes use of historical data only to update bias and sensitivity parameters. However, given a set of recorded raw IMU data, offline calibration can be executed to possibly achieve more accurate IMU parameters. At any point in time, past and future IMU samples can be used to determine the optimal set of bias and sensitivity estimates. Just as in the online application, offline calibration is capable of tracking dynamic IMU parameters that are time and temperature varying.
Offline calibration takes advantage of large data sets by leveraging machine learning (ML) and artificial intelligence (AI) algorithms. The AI algorithms predict when calibration parameters are out of tolerance and also quantify the quality of calibration measurements.
Offline Storage
Data can be stored locally to an IMU device, smartphone, edge processing nodes, etc. until ready for processing. Offline processing can occur on a backend machine or at remote nodes.
As shown in
Sensor Fusion
Sensor fusion 526 utilizes calibrated IMU data to estimate the orientation of the device in real world coordinates. Dynamic calibration results in a more accurate sensor fusion estimation for time and temperature varying IMU bias and sensitivity parameters than static calibration. Faster recovery is achieved by the sensor fusion with dynamic calibration. Sensor fusion detects inaccuracies in IMU parameter estimates.
Sensor fusion 526 data is transmitted to AI algorithm modules 528 that are used for training an AI/ML model systematically to react to inconsistency in the calibration to enable faster recovery from erroneous calibration parameter estimates using some of the techniques described above. A suboptimal online calibration may be used to provide time-sensitive situational awareness but does an offline correction to provide a more accurate inference at an acceptable later time with relaxed time and compute-power constraints. As shown in
Gravity Removal
The quaternion 532 and calibrated acceleration 530 describing IMU orientation from the sensor fusion algorithm is used to determine acceleration due to gravity that is projected onto the x, y & z axes of the IMU. The gravitational projection is removed 534 from the accelerometer readings to provide linear acceleration estimates 536 in real world coordinates.
As shown in
In operation, the IMU Sensors 806 collect various sensor data and transmit that raw IMU data to the Online CNSF 810 and the Data Transfer Service 808. The Online CNSF 810 is primarily responsible for performing calculations and coverts the raw IMU data to calibrated IMU data with annotations, while also calculating calibration values with metrics and quality. Recalibration of the raw IMU data is necessitated by such factors as a change in temperature, mechanical shock and/or time. Other reasons for recalibration will be readily apparent to one of ordinary skill in the art. The Online CNSF 810 stores the calibrated IMU data with annotations and calibration values at a Local Store. The Online CNSF 810 then transmits the calibrated IMU data with annotations and calibration values to the Data Transfer Service 808. The Data Transfer Service 808 stores the calibrated IMU data with annotations, the calibration values, and raw IMU data at a Local Store 818. The Online CNSF 810 is also connected to the External Calibration Updater 812, which provides real-time external calibration data to the Online CNSF 810. That external calibration data can be used by the Online CNSF 810 to calculate the calibrated IMU data and the calibration values with metrics and quality.
The Data Transfer Service 808 and the External Calibration Updater 812 are each connected to the Bluetooth Module 814. The Data Transfer Service 808 and External Calibration Updater 812 transmit one or more of raw IMU data, calibration data, calibrated IMU data with annotations, and calibration values with metrics and quality to and from the Bluetooth Module 814. The Bluetooth Module 814 is capable of communicating with the Edge App 820, an application that connects the wearable 110 to the backend 140. The wearable 802 and the backend 804 are in continuous two-way communication through the Edge App 820.
The backend 804 is comprised of a Recalibration Service 824, a DB Manager 826, an Offline CNSF 828, and a Remote Store 830. The Offline CNSF 828 receives the calibration data from the Edge App and compares it against calibration data that is received from the DB Manager 826, which queries the Remote Store 830 for historical, previously calculated data received from the wearable 802. If the calibration data received from the wearable 802 is determined to be less accurate than the historical data, then the Offline CNSF 828 signals the Recalibration Service 824 to request that the External Calibration Updater 812 perform an updated calibration and analysis of the IMU data at the wearable 802. That request for recalibration is transmitted through the Edge App 820 and the Bluetooth Module 814, to the External Calibration Updater 812.
The foregoing description and drawings should be considered as illustrative only of the principles of the invention. The invention is not intended to be limited by the preferred embodiment and may be implemented in a variety of ways that will be clear to one of ordinary skill in the art. Numerous applications of the invention will readily occur to those skilled in the art. Therefore, it is not desired to limit the invention to the specific examples disclosed or the exact construction and operation shown and described. Rather, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention. All references cited herein are incorporated by reference.
This application claims the benefit of U.S. Prov. App. No. 63/401,448, filed Aug. 26, 2022, the entire contents of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
63401448 | Aug 2022 | US |