Systems, devices, and methods for reducing signal noise

By using adaptive filter technology and photoplethysmography (PPG) sensor signals through reference sensor signal processing, the problem of unstable noise reduction in existing technologies is solved, and effective noise removal and signal improvement are achieved in environments with limited accuracy.

CN121866006APending Publication Date: 2026-04-14EMPATICA SRL
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-26
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

Existing signal reduction methods are unstable and computationally intensive in finite-precision arithmetic environments, and cannot effectively handle noise caused by sensor motion, especially the noise problem in photoplethysmography (PPG) sensors.

Method used

Adaptive filter technology is employed to process the source signal using reference signals measured by one or more reference sensors. Through the QR-RLS algorithm and cascaded filter structure, noise components in the source signal are reduced, including the use of different types of sensors such as PPG sensors and accelerometers as reference signals.

Benefits of technology

It achieves stable noise reduction with low computational intensity under limited precision conditions, effectively removes artifacts caused by sensor motion, and improves signal quality and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121866006A_ABST
    Figure CN121866006A_ABST
Patent Text Reader

Abstract

An apparatus includes one or more source sensors configured to measure one or more source signals, the one or more source signals including a source signal component and a source noise component; and at least one reference sensor configured to measure at least one reference signal. The apparatus includes a processor operably coupled to the one or more source sensors and the at least one reference sensor. The processor is configured to receive the one or more source signals and the at least one reference signal, process the one or more source signals using one or more adaptive filters to produce a filtered output, the one or more adaptive filters use as a reference at least one reference signal from at least one reference sensor, the filtered output having a smaller or equal source noise component than the one or more source signals.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references to related applications

[0002] This application claims priority and benefit to U.S. Provisional Patent Application No. 63 / 515829, filed July 26, 2023, entitled “SYSTEMS, DEVICES, AND METHODSFOR REDUCING SIGNAL NOISE,” the disclosure of which is incorporated herein by reference in its entirety. Technical Field

[0003] The devices, systems, and methods disclosed herein relate to reducing signal noise. Background Technology

[0004] Signals from sensors such as photoplethysmography (PPG) sensors often include noise associated with the sensor itself (e.g., high-frequency noise) as well as noise from sensor movement, such as when the sensor is a component in a wearable device. Adaptive noise removal is a method for estimating the true value / properties of a signal that has been corrupted by additive noise or interference.

[0005] Previous methods for noise reduction have included the use of fixed-lag Kalman smoothing, which can be computationally intensive and not configured for use on microcontrollers. Recursive least squares (RLS) methods have also been used to reduce noise in signals. However, RLS can exhibit instability issues (e.g., divergent output) when operating under the influence of finite-precision arithmetic environments, particularly single-precision environments. Furthermore, existing methods may not account for sensor motion, which can affect noise. Therefore, there is a need for stable, computationally inefficient, and accurate noise reduction devices, systems, and / or methods. Summary of the Invention

[0006] This document describes systems, apparatus, and methods for motion artifact removal.

[0007] In some embodiments, an apparatus includes one or more source sensors configured to measure one or more source signals. The one or more source signals include source signal components and source noise components. The apparatus includes at least one reference sensor configured to measure at least one reference signal. The apparatus includes a processor operatively coupled to the one or more source sensors and the at least one reference sensor. The processor is configured to receive the one or more source signals and the at least one reference signal, and process the one or more source signals using one or more adaptive filters to produce a filtered output, the one or more adaptive filters using the at least one reference signal from the at least one reference sensor as a reference. The filtered output has a source noise component smaller than or equal to the one or more source signals.

[0008] In some embodiments, a method includes receiving one or more source signals measured by one or more source sensors. The method includes receiving a plurality of reference signals measured by a plurality of reference sensors, the plurality of reference sensors including at least two different types of sensors. The method includes processing the one or more source signals using one or more adaptive filters to produce a filtered output, the one or more adaptive filters using at least one of the plurality of reference signals as a reference, the filtered output having a source noise component smaller than or equal to that of the one or more source signals.

[0009] In some embodiments, a method includes receiving one or more source signals measured by one or more source sensors. The method includes receiving a plurality of reference signals measured by at least one sensor associated with a user and at least one sensor configured to measure movement. The plurality of reference sensors includes at least two different types of sensors. The method includes processing the one or more source signals using a first adaptive filter to generate a first output, the first adaptive filter using at least one reference signal from the at least one sensor associated with the user as a reference. The method includes processing the first output using one or more adaptive filters to generate a filtered output, the one or more adaptive filters using at least one reference signal from the at least one sensor configured to measure movement as a reference, the filtered output having a source noise component smaller than or equal to that of the one or more source signals. Attached Figure Description

[0010] Figure 1A This is a block diagram of a system for motion artifact removal according to an embodiment.

[0011] Figure 1B According to the embodiments Figure 1A A block diagram of the computing device of the system.

[0012] Figure 2This is a block diagram of a network of systems and devices for motion artifact removal according to an embodiment.

[0013] Figure 3 This is a schematic diagram of a sensing device according to an embodiment.

[0014] Figure 4 This is a flowchart illustrating a method for motion artifact removal according to an embodiment.

[0015] Figure 5 This is a diagram of the motion artifact removal workflow according to an embodiment.

[0016] Figure 6 This is an example of implementing a motion artifact removal method according to an embodiment.

[0017] Figure 7 This is another example of implementing a motion artifact removal method according to an embodiment. Detailed Implementation

[0018] In some embodiments, systems, apparatus, and methods for noise reduction or removal are disclosed herein. The aspects disclosed herein adaptively remove noise from an input / source / master signal when a reference signal and / or additional sensor data associated with the noise source is available. For example, when the master signal is a PPG signal associated with a user, the reference input may be an auxiliary PPG signal and / or additional sensor data such as accelerometer data. When the input signal has noise, artifacts, and / or is generally non-stationary, aspects of the adaptive methods disclosed herein can avoid undesirable patterns that typically occur due to prior art methods failing to account for non-stationary properties.

[0019] Figure 1A This is a block diagram of a system for motion artifact removal according to an embodiment. The system can be configured to generate, receive, and process signals or data from one or more sensors. The system includes a sensing device 110 operatively coupled to a computing device 120. In some embodiments, the sensing device 110 and the computing device 120 can be implemented as separate or different devices that can be operatively coupled to each other. In some embodiments, the sensing device 110 and the computing device 120 can be implemented on the same device.

[0020] Sensing device 110 can be configured to collect information about a user. Sensing device 110 may be, for example, included in a wearable device such as a smartwatch, sleeve, wristband, etc. In some embodiments, sensing device 110 is configured to measure one or more characteristics or other data associated with the user and / or sensing device 110. For example, sensing device 110 may be configured to measure one or more of the following: volume change, electrical activity, cardiac vibration, heart rate, pulse rate, blood pressure, muscle potentials, neural potentials, temperature, brain waves, motion, measures of activity, number of steps taken, location, acceleration, pace, distance, altitude, direction, speed, rate, elapsed time, remaining time, and / or similar data. In some embodiments, sensing device 110 may be configured to collect user data at predetermined times and / or time intervals. In some embodiments, sensing device 110 may be configured to collect user data during predetermined activities (e.g., during rest and / or sleep). The sensing device 110 includes a processor 112, a memory 114, one or more source sensors 116, one or more reference sensors 117, an input / output (I / O) device 118, and a communication interface 119 (or a plurality of such components), which are operatively coupled to each other (e.g., via a system bus, a network, etc.).

[0021] Processor 112 may be, for example, a hardware-based integrated circuit (IC), or any other suitable processing device configured to run and / or execute a set of instructions or code. For example, processor 112 may be a general-purpose processor, a central processing unit (CPU), an accelerated processing unit (APU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a programmable logic array (PLA), a complex programmable logic device (CPLD), a programmable logic controller (PLC), and / or similar devices. Processor 112 may be operatively coupled to memory 114 via a system bus (e.g., an address bus, a data bus, and / or a control bus).

[0022] Memory 114 may be, for example, random access memory (RAM), a memory buffer, a hard disk drive, flash memory, read-only memory (ROM), erasable programmable read-only memory (EPROM), and / or similar devices. In some embodiments, memory 114 may store, for example, one or more software programs and / or code, which may include instructions that cause processor 112 to perform one or more processes, functions, etc. In some embodiments, memory 114 may include expandable storage units that can be added and used incrementally. In some embodiments, memory 114 may be a portable memory (e.g., a flash drive, portable hard disk, etc.) that can be operatively coupled to processor 102. In some cases, memory 114 may be operatively coupled to sensing device 110 and / or another computing device (e.g., computing device 120 or another computing device not shown). For example, a remote database device may be used as memory and operatively coupled to sensing device 110 and / or computing device 120. In some embodiments, memory 114 and processor 112 may be implemented on a single chip. In other embodiments, they may be implemented on separate chips.

[0023] One or more source sensors 116 may include one or more sensors configured to measure user characteristics (e.g., PPG, electrical skin activity (EDA), blood pressure, heart rate, skin temperature, etc.) and generate source signals. One or more source sensors 116 may include PPG sensors, EDA sensors, accelerometers, skin temperature sensors, ambient temperature sensors, gyroscopes, GPS sensors, electrical sensors, conductivity sensors, magnetometers, capacitance sensors, optical sensors, barometer sensors, respiration sensors, blood pressure sensors, humidity sensors, cameras, etc. In embodiments, one or more source sensors 116 may be PPG sensors for capturing PPG information. In some embodiments, one or more source sensors 116 may be green PPG sensors, i.e., PPG sensors configured to operate at green or near-green light wavelengths. Alternatively, one or more source sensors 116 may be red PPG sensors, i.e., PPG sensors configured to operate at red, infrared, or other near-red light wavelengths. In some embodiments, one or more source sensors 116 may be configured to operate at any light wavelength. In some embodiments, data from one or more source sensors 116 is stored in memory 114. In some embodiments, processor 112 may be configured to control the operation of one or more source sensors 116. For example, processor 112 may be configured to activate one or more source sensors 116 and / or change one or more operating parameters of one or more source sensors 116 (e.g., light wavelength, length intensity, sampling frequency, etc.). One or more source sensors 116 may be configured to operate continuously, intermittently, and / or periodically.

[0024] One or more reference sensors 117 may include one or more sensors configured to measure characteristics of the user and / or sensing device 110 and generate one or more reference signals. Measurements from the one or more reference sensors may be used to process source signals from the one or more source sensors 116, for example, to reduce noise in the source signals. The one or more reference sensors 117 may include one or more sensors of the same, similar, and / or complementary type to the one or more source sensors 116 and / or other types of sensors. For example, the one or more reference sensors 117 may include PPG sensors, EDA sensors, accelerometers, skin temperature sensors, ambient temperature sensors, gyroscopes, Global Positioning System (GPS) sensors, electrical sensors, conductivity sensors, magnetometers, capacitance sensors, optical sensors, barometer sensors, respiration sensors, blood pressure sensors, humidity sensors, cameras, etc. In some embodiments, the one or more reference sensors 117 may include 3-axis accelerometers and / or 3-axis gyroscopes configured to measure one or more of movement and / or position. In some embodiments, one or more source sensors 116 may include a green PPG sensor, and one or more reference sensors 117 may include a red PPG sensor and / or an accelerometer. In some embodiments, one or more source sensors 116 and one or more reference sensors 117 may be the same type of sensor (e.g., a PPG sensor) but operate under different conditions (e.g., at different wavelengths, at different locations or distances relative to the skin surface, at different light intensities, etc.).

[0025] In some embodiments, parameters associated with one or more source sensors 116 and / or one or more reference sensors 117 (e.g., sampling rate, power, etc.) may be adjusted during operation. In some embodiments, one or more source sensors 116 and / or one or more reference sensors 117 may be configured to operate intermittently. For example, one or more source sensors 116 and / or one or more reference sensors 117 may be intermittently turned off during operation to save power (e.g., battery power).

[0026] I / O device 118 may include input devices and / or output devices, such as displays (e.g., cathode ray tube (CRT) displays, liquid crystal displays (LCDs), light-emitting diode (LED) displays, organic light-emitting diode (OLED) displays, etc.), mice, keyboards, microphones, touchscreens, speakers, scanners, headsets, printers, cameras, etc. For example, I / O device 118 may include input devices for users to input commands and / or output devices for users to receive outputs (e.g., PPG readings, electrodermal activity readings, etc. on a display device). In some embodiments, I / O device 118 may be used as one or more source sensors to provide an alert to a user, for example, indicating to the user that there is too much movement to allow sensor data capture. In some embodiments, I / O device 118 may instruct the user to perform certain activities (e.g., lie down or minimize movement) to facilitate clearer data capture from one or more sensors. In some embodiments, I / O device 118 may display information received from computing device 120.

[0027] The communication interface 119 of the sensing device 110 can be configured to receive information and / or send information to other devices (e.g., the sensing device 110). The communication interface 119 can be a wired or wireless communication interface. The communication interface 119 can, for example, be configured to send information from one or more source sensors 116 and / or one or more reference sensors 117 to the computing device 120. In some embodiments, the communication interface 119 can receive data, signals, and / or instructions from the computing device 120.

[0028] Computing device 120 may be configured to process and / or analyze (e.g., sensor data received from sensing device 110) and / or (e.g., other data received from users, databases, or other sources). For example, computing device 120 may be configured to filter, rectify, differentiate, integrate, enhance, preprocess, or combine the sensor data. In some embodiments, computing device 120 may be located near sensing device 110, such as a local computer, laptop computer, mobile device, tablet computer, etc. In some embodiments, computing device 120 may be a server located remotely from sensing device 110 but capable of communicating with sensing device 110, for example, via a network. In some embodiments, sensing device 110 may be configured to transmit sensor data to a nearby device (e.g., a user device such as a mobile device) via a wireless network (e.g., Wi-Fi, Bluetooth, etc.), and that device may then be configured to transmit the sensor data to computing device 120 for further processing and / or analysis. In some embodiments, computing device 120 is implemented as a user device or includes a user device.

[0029] Computing device 120 may include processor 122, memory 124, I / O device 128, and communication interface 128 (or multiple such components). Memory 124 may be, for example, random access memory (RAM), memory buffer, hard disk drive, flash memory, database, erasable programmable read-only memory (EPROM), electrically erasable read-only memory (EEPROM), read-only memory (ROM), etc. In some embodiments, memory 124 stores instructions that cause processor 122 to execute modules, processes, and / or functions associated with processing and / or analyzing sensor data from sensing device 110. In some embodiments, memory 124 stores information associated with more than one user. For example, computing device 120 may be a family account, healthcare provider account, etc., and memory 124 may be configured to store information associated with one or more users associated with that account. An administrator account may be used to allow one or more users (e.g., healthcare professionals, caregivers, etc.) to access information during operation.

[0030] The processor 122 of computing device 120 can be any suitable processing device configured to run and / or perform functions associated with processing and / or analyzing sensor data from sensing device 110. Processor 122 can be a general-purpose processor, microcontroller, field-programmable gate array (FPGA), application-specific integrated circuit (ASIC), digital signal processor (DSP), etc. In some embodiments, processor 122 is the same processor as processor 112. In some embodiments, processor 122 can be configured to process source signals and / or other sensed information from one or more source sensors 116, for example, to reduce signal noise in the source signals and / or extract certain information from the source signals. The sensed information can include one or more of, for example, raw sensor signal information, processed sensor signal information, timestamp information, time window information, context information, etc. In some embodiments, the sensed information can indicate the time period during which the sensed information was acquired / collected. In some embodiments, processor 122 can be configured to send instructions to sensing device 110 to cause sensing device 110 to operate according to one or more parameters. For example, processor 122 can be configured to send instructions to sensing device 110 to perform measurements at predetermined times and / or intervals.

[0031] The source signal may include a source noise component. In some embodiments, the source noise component may include noise from multiple sources. The processor 122 may also receive one or more reference signals and / or other sensed information from one or more reference sensors 117. The one or more reference signals may each include a reference noise component. The reference noise component may be associated with a noise source (e.g., motion). The reference noise component may be associated with a source noise component. In particular, the source signal and the reference signal may be collected during the same time period, such that the reference noise component can be used to identify (e.g., isolate or approximate) the source noise component.

[0032] In some embodiments, processor 122 may be configured to filter the source signal and / or (one or more) reference signals. Filtering the signal may include artifact removal. For example, artifact removal may be based on a predetermined bandwidth and remove all artifacts outside the predetermined bandwidth. In some embodiments, the filter may include a bandpass filter, a high-pass filter, and / or other types of filters. The type of filter applied by processor 122 may depend on the type of source data being collected. For example, when the source signal is a PPG signal, processor 122 may be configured to apply a filtering algorithm that removes data frequencies that are typically associated with heart rate (e.g., 24-240 beats per minute).

[0033] In some embodiments, processor 122 may be configured to process the source signal using a motion artifact removal (MAR) algorithm. The MAR algorithm can implement adaptive noise removal or cancellation to reduce the amount of noise in the source signal. In some embodiments, the MAR algorithm is configured to use one or more reference signals captured by one or more reference sensors 117 as reference signals, for example, to remove artifacts from the source signal. In some embodiments, the MAR algorithm may use one or more QR-RLS algorithms or one or more recursive least squares algorithms based on QR decomposition to process the source signal. The one or more QR-RLS algorithms may be adaptive because the algorithm(s) recursively adjust one or more coefficients (e.g., based on one or more reference signals) to reduce the cost of the weighted linear least squares cost function associated with the signal input to the one or more QR-RLS algorithms(s). Other algorithms may also be utilized. For example, other adaptive filters that adjust coefficients using one or more noise-related reference signals may be used. For example, least mean square (LMS), normalized LMS (NLMS), other recursive least squares (RLS) algorithms, etc., may be utilized.

[0034] In some embodiments, the MAR algorithm may include a cascade of filters, where each filter uses a different reference signal with different noise components. For example, if the source signal comes from a first PPG sensor (e.g., a green PPG sensor), then a first filter may use a second PPG sensor signal (e.g., a red PPG sensor signal) as a reference to filter the source PPG signal, a second filter may use an x-axis accelerometer signal as a reference to filter the output of the first filter, a third filter may use a y-axis accelerometer signal as a reference to filter the output of the second filter, and a fourth filter may use a z-axis accelerometer signal as a reference to filter the output of the third filter. In some embodiments, the output of the MAR algorithm may be post-processed by processor 122. Post-processing may include changing the format of the output (e.g., to a user-readable format), identifying anomalies in the output, etc. Post-processing may include smoothing the output signal (e.g., via averaging) and / or removing residual baseline drift (e.g., applying a bandpass filter). In some embodiments, post-processing may be replaced by a simple smoother such as a low-pass filter.

[0035] In some embodiments, processor 122 may be configured to implement other adaptive filtering algorithms. Suitable examples of other adaptive filtering algorithms are described in U.S. Patent No. 10,134,378, published November 20, 2018, entitled “SYSTEMS, APPARATUSES ANDMETHODS FOR ADAPTIVE NOISE REDUCTION”.

[0036] In some embodiments, processor 122 may be configured to generate and present output to a user. The output may include a processed signal in a user-understandable format. In some embodiments, processor 122 may provide the filtered output to another process (e.g., implemented by processor 122 and / or another processor operatively coupled to processor 122) for further analysis. For example, the clean output after applying filtering may be provided to heart or pulse rate processing and / or other processing for assessing one or more physiological characteristics and / or conditions of the user. While processors 112 and 122 are described above as having specific functions, it will be appreciated that processor 112 of sensing device 110 may be configured to perform some or all of the processing of processor 122, and vice versa.

[0037] The I / O device 128 of computing device 120 may be similar to the I / O device 118 of sensing device 110. For example, I / O device 128 may include an input device for receiving one or more inputs and / or commands from a user and / or an output device for presenting information to a user. I / O device 128 may include any type of peripheral device, such as an input device, output device, mouse, keyboard, microphone, touchscreen, speaker, scanner, headset, printer, camera, etc. In some embodiments, I / O device 128 may be used by a user to view processed data. For example, if the system processes PPG or heart rate data, then I / O device 128 may be used to display a heart rate metric derived from the PPG or pulse rate data to the user.

[0038] The communication interface 129 of the computing device 120 can be configured to receive information and / or communicate with other devices (e.g., sensing device 110, and / or such as...). Figure 2 (Other computing devices depicted in the diagram) send information. Communication interface 128 may be a wired or wireless communication interface. In some embodiments, communication interface 129 may be configured to receive data from sensing device 110, including data associated with one or more source sensors 116 and / or one or more reference sensors 117.

[0039] Figure 1B A more detailed view of computing device 120 is provided. As described above, computing device 120 can be configured to process or adaptively filter source signals (e.g., using one or more adaptive filters) from source sensors 116 and a reference signal including one or more noise components associated with the noise components of the source signals.

[0040] Memory 124 may store instructions that cause processor 122 to execute or implement modules, processes, and / or functions illustrated as preprocessing 124a and motion artifact removal 124b. Preprocessing 124a may be optional. In some embodiments implementing preprocessing 124a, it may include smoothing, for example, through low-pass filtering, band-pass filtering, spike noise correction, and / or other types of filtering and / or averaging. In some embodiments, preprocessing 124a may first include spike noise correction, one or more source signal selections and / or combinations, followed by filtering and / or averaging. In some embodiments, multiple PPG source sensor signals are combined to obtain a single source signal. In some embodiments, motion artifacts are removed from the multiple PPG source signals, and the outputs are combined into a single source signal. Preprocessing 124a may remove one or more artifacts from the source signals. For example, preprocessing 124a may include applying a band-pass filter to remove artifacts outside a predetermined frequency bandwidth. The specific type of filtering or smoothing applied may be based on the type of the source signal and / or reference signal. For example, if the source signal is a PPG signal, then the predetermined bandwidth can correspond to the range of heartbeats per minute.

[0041] After preprocessing 124a, or without preprocessing 124a if it is not implemented, motion artifact removal algorithm or MAR 124b can be implemented. In some embodiments, MAR 124b includes one-step filtering (e.g., a red PPG-based filter), three-step filtering (e.g., a 3-axis accelerometer-based filter), or four-step filtering (e.g., a red PPG-based filter and a 3-axis accelerometer-based filter). MAR 124b may include one or more adaptive filters, including a first adaptive filter 124c, a second adaptive filter 124d, a third adaptive filter 124e, and a fourth adaptive filter 124f. Although in Figure 1BFour adaptive filters are depicted, but it will be appreciated that MAR 124b may include additional and / or fewer adaptive filters. Adaptive filters 124c, 124d, 124e, and 124f can be any type of adaptive filter capable of reducing signal noise. For example, adaptive filters 124c, 124d, 124e, and 124f may include Kalman filters (e.g., fixed-hysteresis Kalman smoothers), least mean square (LMS) filters, normalized least mean square (NLMS) filters, recursive least squares (RLS) filters, and / or QR-RLS filters. In some embodiments, each adaptive filter 124c, 124d, 124e, and 124f may be a filter of the same type. For example, each adaptive filter 124c, 124d, 124e, and 124f may be a QR-RLS filter. Alternatively, one or more of the adaptive filters 124c, 124d, 124e, and 124f may be different from each other.

[0042] In some embodiments, adaptive filters 124c, 124d, 124e, and 124f may be cascaded, wherein the output of the first filter is provided as input to the second filter, and so on. For example, the first adaptive filter 124c may receive a preprocessed signal from 124a as input and generate a first output, the second adaptive filter 124d may receive the first output as input and generate a second output, the third adaptive filter 124e may receive the second output as input and generate a third output, and the fourth adaptive filter 124f may receive the third output as input and generate the final output. In some embodiments, the order of the adaptive filters 124c, 124d, 124e, and 124f of MAR 124b may be changed, or some of the adaptive filters 124c, 124d, 124e, and 124f may be omitted, for example, depending on one or more source signals and / or one or more reference signals.

[0043] Although not depicted, in some embodiments, memory 124 may store additional instructions associated with post-processing of the output of MAR 124b. For example, after processing one or more source signals with MAR 124b, further smoothing, averaging, and / or feature extraction may be performed.

[0044] In some embodiments, adaptive filters 124c, 124d, 124e, and 124f may have a first input or main input as a source signal (e.g., a source signal captured by one or more source sensors 116) or a pre-processed source signal, and a second input or reference input as a reference signal or a pre-processed reference signal. As described above, the reference signal may be a signal that includes noise components related to the noise components of the source signal. Therefore, the reference signal can be used to isolate noise components in the source signal. In some embodiments, each adaptive filter 124c, 124d, 124e, and 124f may use a different reference signal. For example, when the source signal is a PPG signal (e.g., a green PPG signal), the first adaptive filter 124c may use a different PPG signal (e.g., a red PPG signal) as its reference, the second adaptive filter 124d may use an x-axis accelerometer signal as its reference, the third adaptive filter may use a y-axis accelerometer signal as its reference, and the fourth adaptive filter may use a z-axis accelerometer signal as its reference.

[0045] Reference signals can be used to identify or isolate noise components associated with the source signal during micro-motion (e.g., low-intensity movement, such as typing) and macro-motion (e.g., high-intensity movement, such as gestures, arm swings, etc.). When the source signal is a PPG signal, using another PPG signal as a reference can be effective for filtering out noise components attributable to both micro-motion and macro-motion. Using an accelerometer signal (e.g., a 3-axis accelerometer signal) can be effective for filtering out noise components attributable to both macro-motion and movement. Therefore, when the source signal is a PPG signal, using both a PPG signal and a 3-axis accelerometer signal allows for the filtering out of various motion artifacts from the source signal.

[0046] In an example embodiment, computing device 120 may receive source signals from one or more source sensors 116 and multiple reference signals from multiple reference sensors 117. The source signals may be PPG signals captured by a green PPG sensor, while the reference signals may include PPG signals captured by a red PPG sensor and x, y, and z-axis acceleration signals captured by one or more accelerometers. The source PPG signals may be preprocessed, for example, via preprocessing 124a. For example, a bandpass filter may be applied to the source PPG to remove artifacts. The MAR algorithm 124b may then be applied to the source PPG signals. Specifically, a first adaptive filter 124c, implemented as a QR-RLS filter, may receive the source PPG signals as the main input and the reference PPG signals as auxiliary or reference inputs, and generate a first output. A second adaptive filter 124d, implemented as a QR-RLS filter, may receive the first output as the main input and the x-axis acceleration signal as an auxiliary or reference input, and generate a second output. The third adaptive filter 124e, implemented as a QR-RLS filter, can receive the second output as its main input and the y-axis acceleration signal as an auxiliary or reference input, and generate the third output. The fourth adaptive filter 124f, also implemented as a QR-RLS filter, can receive the third output as its main input and the z-axis acceleration signal as an auxiliary or reference input, and generate the fourth output. The fourth output can be post-processed, for example, to further refine and / or smooth it to produce the final output. The final output can represent the source signal after the noise components of the source signal have been significantly reduced.

[0047] Figure 2 This is a block diagram of a network including systems and devices for MAR according to embodiments. Such systems and devices can be configured to process source signals to remove noise (e.g., noise due to motion). In some embodiments, systems and devices for MAR may include sensing device 210 (e.g., functionally and / or structurally similar to...). Figure 1A The sensing device 110) and / or computing device 220 (e.g., functionally and / or structurally similar to) Figure 1A Computing devices 120 and / or Figure 2 The computing device 220. The sensing device 210 and / or the computing device 220 may be operatively coupled to one or more other computing devices, including, for example, a server 250, a database 260, and / or one or more other devices 290, via one or more networks 202. In some embodiments, the system and apparatus for MAR may optionally include one or more other devices 290, such as one or more additional sensing devices (e.g., functionally and / or structurally similar to...). Figure 1AThe sensing device 110) and / or one or more additional computing devices (e.g., functionally and / or structurally similar to) Figure 1A Computing devices 120 and / or Figure 2 Computing device 220).

[0048] Network 202 can be any type of network implemented as a wired and / or wireless network and used to operatively couple sensing device 210, computing device 220, server 250, database 260, and / or one or more other devices 290. Communication can be encrypted or unencrypted. A wireless network can refer to any type of digital network that is not connected by any kind of cable. Examples of wireless communication in a wireless network include, but are not limited to, cellular, radio, satellite, and microwave communication. However, a wireless network can connect to a wired network to connect via an interface to the Internet, other carrier voice and data networks, business networks, and personal networks. Wired networks are typically carried on copper twisted-pair, coaxial, and / or fiber optic cables. There are many different types of wired networks, including wide area networks (WANs), metropolitan area networks (MANs), local area networks (LANs), Internet regional networks (IANs), campus area networks (CANs), global area networks (GANs, such as the Internet), and virtual private networks (VPNs).

[0049] Network 202 may include or be coupled to server 250 and database 260 for processing and / or storage. Database 260 may be any device configured to store data from other components of the system. For example, database 260 may include instructions for processing signals, signal data, processed signal data, and / or signal libraries, etc. In some embodiments, database 260 may include the final output from processing source signals (e.g., signals captured by one or more source sensors 116 of sensing device 110). Server 250 may be any device configured to process signals and / or data received from sensing device 210 and / or computing device 220. In some embodiments, server 250 may be configured to perform some of the processing of sensing device 210 and / or computing device 220.

[0050] Similar to other sensing devices described above, sensing device 210 can be operatively coupled to computing device 220. For example, sensing device 210 can be operatively coupled to computing device 220 via near-field communication, wireless connectivity (e.g., Wi-Fi, Bluetooth, etc.), and / or wired connectivity. Optionally, sensing device 210 can be coupled to network(s) 202 and / or other computing devices (e.g., server 250, database 260, (one or more) other devices 290). Sensing device 210 can be operatively coupled to computing device 220 and / or one or more other computing devices, enabling sensing device 210 to send information (e.g., sensor signals) to one or more such devices and / or receive information (e.g., instructions, operating parameters, etc., for monitoring a patient or subject).

[0051] In some embodiments, one or more other devices 290 may include (for example, functionally and / or structurally similar) Figure 1A The sensing device 110) and / or one or more additional computing devices (e.g., functionally and / or structurally similar to) Figure 1A Computing devices 120 and / or Figure 2 (Computing device 220). In some embodiments, one or more other devices 290 may include computing devices associated with one or more third parties (such as, for example, an administrator, physician or health insurance provider, hospital, caregiver, etc.).

[0052] Figure 3 The sensing device 310 according to the embodiment (e.g., structurally and / or functionally similar) Figure 1A The sensing device 110 and / or Figure 2 A schematic diagram of sensing device 210. Sensing device 310 may include one or more PPG sensors and / or other sensors. In embodiments, sensing device 310 may be configured to measure the pulse rate associated with a blood vessel V of a subject (e.g., a user, patient, etc.). In some embodiments, blood vessel V includes a single blood vessel. In some embodiments, blood vessel V includes more than one blood vessel. Figure 3 As shown, the sensing device 310 can be placed near the blood vessel V, for example, adjacent to and / or connected to the surface of the tissue T near the blood vessel V. More specifically, the sensing device 310 can be placed on the skin surface above the blood vessel V.

[0053] Sensing device 310 includes processor 312 (e.g., structurally and / or functionally similar to...). Figure 1A The processor 112), and the source sensor (e.g., functionally and / or structurally similar to) Figure 1A The source sensor (one or more) 110) and the reference sensor (e.g., functionally and / or structurally similar to) Figure 1A The reference sensor 117 may include a first PPG sensor (also referred to herein as a source PPG sensor) comprising an electromagnetic radiation (EMR) or light emitter 316a and a corresponding EMR or light detector or receiver 316b. The reference sensor may include a second PPG sensor (also referred herein as a reference PPG sensor) comprising an EMR / light emitter 317a and an EMR / light detector or receiver 317b, and an accelerometer 317c. The source sensor and reference sensors 316a / 316b, 317a / 317b, and 317c may be operatively or communicatively coupled to the processor 312. In some embodiments, the reference sensor may comprise any combination of any number of sensors. In some embodiments, each sensor of the reference sensor may sequentially flash light of different wavelengths to obtain additional sensor data.

[0054] The source PPG sensor can be configured to measure the PPG waveform or signal of a subject. Specifically, transmitter 316a is configured to direct EMR or light toward a blood vessel V, and detector 316b is configured to measure the EMR or light, including EMR or light reflected by the blood vessel V. The EMR or light signal measured by detector 316b may include a blood pulse reflection (BPR) component and a noise component (e.g., due to ambient light and / or other environmental conditions). Transmitter 316a and detector 316b can be configured to operate at specific light wavelengths and / or intensities. For example, transmitter 316a can be configured to emit any light wavelength that is safe and suitable for capturing the pulsatile movement of the blood vessel V, and detector 316b can be configured to detect the light wavelength emitted by transmitter 316a (or a wavelength range including the light wavelength emitted by transmitter 316a). In an example embodiment, the source PPG sensor may be a green PPG sensor; therefore, transmitter 316a can be configured to emit green or near-green light wavelengths, and detector 316b can be configured to detect green or near-green light wavelengths.

[0055] In some embodiments, processor 312 may be configured to control the operation of transmitter 316a and / or detector 316b. For example, processor 312 may control the wavelength and / or intensity of the output of transmitter 316a, the operating time of transmitter 316a, etc. Furthermore, processor 312 may receive source signals measured by detector 316b. In some embodiments, processor 312 may be configured to preprocess and / or package source signals for transmission to a computing device (e.g., computing device 120, 220).

[0056] Similarly, a second PPG sensor can also be configured to measure the PPG waveform or signal of the subject. Specifically, transmitter 317a is configured to guide EMR or light toward a vessel V, and detector 317b is configured to measure EMR or light, including EMR or light reflected by the vessel V. The signal measured by detector 317b can be a reference signal including a BPR component and a noise component. When the source PPG sensor (including transmitter-detector pairs 316a, 316b) and the reference PPG sensor (including transmitter-detector pairs 317a, 317b) operate substantially simultaneously, the noise component of the reference PPG signal can be correlated with the noise component of the source PPG signal. In some embodiments, processor 312 can control the operation of transmitter 317a and / or detector 317b. In some embodiments, processor 312 can be configured to receive the reference signal measured by detector 317b, and optionally, preprocess and / or package the signal for transmission to a computing device (e.g., computing devices 120, 220).

[0057] Accelerometer 317c is configured to measure acceleration or motion data associated with sensing device 310 and / or a subject. For example, accelerometer 317c may be configured to measure acceleration data along one or more axes (e.g., the x-axis, y-axis, and / or z-axis in a reference coordinate system). In some embodiments, processor 312 may be configured to control the operation of accelerometer 317c, such as, for example, accelerometer activation. Measurement results from accelerometer 317c may be received by processor 312. In some embodiments, processor 312 may process accelerometer 317c data. For example, processor 312 may calculate the magnitude of acceleration. In some embodiments, processor 312 may receive and process other data, such as gyroscope data.

[0058] As described above, processor 312 can be configured to transmit signals received from source and reference sensors to a computing device (e.g., computing device 120, 220), for example, via a communication interface (e.g., communication interface 119). The computing device can be configured to process the signals from the source and reference sensors. Specifically, the computing device can be configured to process source sensor signals using one or more signals from the reference sensor to remove motion artifacts. Alternatively, or additionally, processor 312 can be configured to process signals from the source and reference sensors, for example, to remove motion artifacts or to perform part of a process associated with MAR.

[0059] Figure 4 This is a flowchart illustrating a method 400 for implementing MAR according to an embodiment. Method 400 can be implemented by any system and device described herein (such as, for example...). Figure 1A System 100 Figure 2 The system, and / or Figures 1A to 3 The method is performed by one or more computing or sensing devices as described herein. Although method 400 is described with reference to PPG signals and processing PPG signals, it will be appreciated that method 400 can be applied to reduce noise and artifacts in other types of signals and / or data.

[0060] At 401, method 400 includes measuring a source PPG signal during a set time period (e.g., 1 second, 5 seconds, 30 seconds, 1 minute, 5 minutes, 30 minutes, 1 hour, etc.). The source PPG signal can be measured by a sensor (such as any source sensor described herein, for example). In some embodiments, the source PPG signal is measured using a green PPG sensor. In some embodiments, the set time period can be set and / or adjusted by a user. In some embodiments, the duration of the set time period can depend on the type of data being measured, the user's current state or activity level, the time of day, etc. In some embodiments, the duration of the set time period can be selected to reduce the risk of erroneous or anomalous readings. Simultaneously with 401, at 402, method 400 includes measuring a reference PPG signal during the same set time period. The reference PPG signal can be measured by a sensor (such as any of one or more reference sensors described herein, for example). In some embodiments, a different sensor than the one used to measure the source PPG signal can be used to measure the reference PPG signal. For example, a green PPG sensor can be used to measure the source PPG signal and a red PPG sensor can be used to measure the reference PPG signal, or vice versa. Optionally, method 400 includes determining at 403 whether one or both of the source PPG signal or the reference PPG signal are saturated. If one or both PPG signals are saturated (403: yes), then optionally, PPG sensor parameters are adapted at 404. In some embodiments, the position of the sensor or sensing device may be adjusted such that subsequent signals measured by the sensor are not saturated. In some embodiments, the sensors may continue to measure until they capture an unsaturated signal that can therefore be processed using a MAR algorithm. In some embodiments, the sensing device and / or computing device (such as any device described herein) may implement methods for compensating for saturation. For example, the sensing device and / or computing device may adjust the operation of the PPG sensor (e.g., by decreasing or increasing the intensity of the light / EM and / or adjusting the position of the light / EM transmitter and / or receiver). Alternatively, the sensing device and / or computing device may adjust the gain of the amplifier, introduce a compensation voltage and / or current, or implement a compensation algorithm (e.g., by determining a baseline or offset). If the source PPG signal and the reference PPG signal are not saturated (403: No), then the source PPG signal and / or the reference PPG signal may optionally be preprocessed at 405, for example, by using a preprocessing algorithm, such as a reference PPG signal. Figure 1BThe preprocessing algorithm described in preprocessing 124a is as follows. For example, a bandpass filter can be used to filter the source PPG signal and / or the reference PPG signal. In some embodiments, spikes and / or artifacts can be canceled during 405. In some embodiments, preprocessing may include selection and / or combination of PPG source signals(s). In some embodiments, preprocessing may first include spike noise correction, selection and / or combination of source signals(s), and finally filtering and / or averaging of the signal. In some embodiments, the bandpass filter may have a bandwidth selected to correspond to a frequency typically associated with heartbeats (e.g., between 24 heartbeats per minute and 240 heartbeats per minute). Such a bandpass filter can remove artifacts outside the heartbeat range, such as artifacts introduced by breathing or other movements.

[0061] At 406, method 400 includes measuring accelerometer data during a set time period. The accelerometer data may be measured by a sensor, such as any of the reference sensors described herein, including, for example, accelerometer 317c. In some embodiments, the accelerometer data includes x-axis acceleration signals, y-axis acceleration signals, z-axis acceleration signals, and / or acceleration signals along other axes. Optionally, the accelerometer data may be preprocessed at 407 (e.g., using a bandpass filter). In some embodiments, at 408, additional reference data may also be collected during the set time period. Examples include gyroscope data, magnetometer data, position data, pressure data, electrodermal activity data, and / or additional PPG or accelerometer data. Optionally, such data may also be preprocessed at 409 (e.g., using a bandpass filter).

[0062] At 420, method 400 includes processing the source PPG signal using a MAR algorithm. In some embodiments, the MAR algorithm includes cascading implementations of multiple filter modules or algorithms (e.g., a first adaptive filter 124c, a second adaptive filter 124d, a third adaptive filter 124e, and a fourth adaptive filter 124f), wherein each filter module uses a different noise reference signal (e.g., a reference PPG signal, an accelerometer signal, and / or other reference signals).

[0063] Specifically, the MAR algorithm includes processing the source PPG data at 422 using a first adaptive filter (e.g., first adaptive filter 124c). In some embodiments, the first adaptive filter is implemented as a first QR-RLS module or algorithm. The source PPG signal can be provided as input to the first QR-RLS module, and the first QR-RLS module can process the source PPG signal using one of the reference signals (e.g., a reference PPG signal). The output of the first QR-RLS module can then be passed to a second adaptive filter (e.g., second adaptive filter 124d). In some embodiments, the second adaptive filter is implemented as a second QR-RLS module. At 424, the second QR-RLS module can process the output of the first QR-RLS module using another reference signal (e.g., an x-axis acceleration signal). The output of the second QR-RLS module can then be passed to a third adaptive filter (e.g., third adaptive filter 124e). In some embodiments, the third adaptive filter is implemented as a third QR-RLS module. At 426, the third QR-RLS module can use yet another reference signal (e.g., the y-axis acceleration signal) as a reference to process the output of the second QR-RLS module. The output of the third QR-RLS module can then be passed to a fourth adaptive filter (e.g., a fourth adaptive filter 124f). In some embodiments, the fourth adaptive filter is implemented as a fourth QR-RLS module. At 428, the fourth QR-RLS module can use yet another reference signal (e.g., the z-axis acceleration signal) as a reference to process the output of the third QR-RLS module.

[0064] Although the MAR algorithm is Figure 4 The MAR algorithm is described as having four processing steps, but it will be understood that it may include fewer or additional processing steps. For example, the MAR algorithm may process the source PPG signal with one, two, three, four, five, six, seven, eight, nine, ten or more adaptive filters. In some embodiments, each adaptive filter utilizes a different reference signal.

[0065] At 430, method 400 includes providing a processed output. In some embodiments, the processed output may correspond to the output of a MAR algorithm. In some embodiments, the output of the MAR algorithm may be further processed (e.g., using a post-processing algorithm), and the processed output may correspond to the processed output of the MAR algorithm. The processed output may be a source PPG signal with artifacts and other signal noise removed. In some embodiments, method 400 may be repeated, or multiple instances of method 400 may be implemented together. In some embodiments, method 400 may operate continuously in real time.

[0066] Figure 5 This is a diagram of an adaptive noise reduction workflow, illustrating different views of a method for processing source PPG signals according to an embodiment. This workflow can be implemented using any system and device described herein (such as, for example...). Figure 1A System 100 Figure 2 The system, and / or Figures 1A to 3 (Performed by one or more computing devices or sensing devices described in the document). Figure 5 The workflow shown may involve references Figure 4 The described method has 400 similar elements. Therefore, this article will not describe certain details of the workflow.

[0067] like Figure 5 As shown, the data processing workflow begins with the source signal S502 (e.g., a green PPG signal) being filtered by filter 524a and output as the filtered source signal S504. In some embodiments, the original source signal is selected based on criteria (e.g., time of day, desired signal type, etc.). The first adaptive filter 524c (e.g., functionally and / or structurally similar to...) Figure 1B The first adaptive filter 524c receives the filtered source signal S504 as input and receives the first reference signal S506 (e.g., a red PPG signal) as a reference input. The first adaptive filter 524c processes the filtered source signal S504 to generate the first adaptive filter output S508. The second adaptive filter 524d (e.g., functionally and / or structurally similar to...) Figure 1B The second adaptive filter 524d receives the output S508 of the first adaptive filter as input and receives the second reference signal S506 as a reference input. The second adaptive filter 524d processes the output S508 of the first adaptive filter to generate the second adaptive filter output S512. The third adaptive filter 524e (e.g., functionally and / or structurally similar to...) Figure 1B The third adaptive filter 524e receives the output S512 of the second adaptive filter as input and receives the third reference signal S514 as a reference input. The third adaptive filter 524e processes the output S512 of the second adaptive filter to generate the third adaptive filter output S516. The fourth adaptive filter 524f (e.g., functionally and / or structurally similar to...) Figure 1BThe fourth adaptive filter 124c) receives the third adaptive filter output S516 as input and the fourth reference signal S518 as a reference input. The fourth adaptive filter 524f processes the third adaptive filter output S516 to generate the fourth adaptive filter output S520. In some cases, the fourth adaptive filter output may have artifacts that result in an unsmooth and / or noisy output. Therefore, the post-processor 524g processes the fourth adaptive filter output S520 to generate the final output S522 of the smoothed signal illustrated. In some embodiments, each of the first, second, third, and fourth adaptive filters can be a QR-RLS filter.

[0068] Figures 6 to 7 The source and reference signals are described, along with the methods and workflows described herein (e.g., Figure 4 Method 400 and described in the middle Figure 5 Examples of the processed outputs of each stage of the workflow depicted in the diagram. Figure 6 Corresponding to the PPG signal and reference signal acquired when the user is typing on the keyboard, it can be mainly composed of micro-motions. Figure 7 Corresponding to the PPG signal and reference signal acquired during the user's running, it can include macro-motion and micro-motion. For example... Figure 6 and Figure 7 As shown in the processed output, the different stages of the MAR algorithm described in this paper can be better suited for removing artifacts associated with micro-motion and / or macro-motion.

[0069] exist Figure 6In this process, the raw green PPG signal S602 can be measured during a set time period, for example, via a source sensor (e.g., source sensor 116). The raw PPG signal S602 can be filtered by applying a bandpass filter with a bandwidth corresponding to 24 to 240 beats per minute to produce a filtered green PPG signal S604. The red PPG signal S606 can also be measured during the set time period, for example, via a reference sensor (e.g., reference sensor 117). The red PPG signal S606 can be used as a reference signal for the QR-RLS filter module (e.g., first adaptive filter 124c) to process the filtered green PPG signal S604. The output of the first QR-RLS filter is shown as signal S608. As this output shows, most motion artifacts (e.g., micro-motions associated with typing) can be canceled by the first QR-RLS filter. During a set time period, the x-axis acceleration signal S610, y-axis acceleration signal S614, and z-axis acceleration signal S618 can also be measured, for example, via one or more reference sensors (e.g., one or more reference sensors 117). The x-axis acceleration signal S610 can be used as a reference signal for a second QR-RLS filter module (e.g., a second adaptive filter 124d) to process the output of the first QR-RLS filter. The output of the second QR-RLS filter is shown as signal S612. The y-axis acceleration signal S614 can be used as a reference signal for a third QR-RLS filter module (e.g., a third adaptive filter 124e) to process the output of the second QR-RLS filter. The output of the third QR-RLS filter is shown as signal S616. The z-axis acceleration signal S618 can be used as a reference signal for a QR-RLS filter module (e.g., a fourth adaptive filter 124f) to process the output of the third QR-RLS filter. The output of the fourth QR-RLS filter is shown as signal S620. Further post-processing (e.g., smoothing, such as that done by post-processor 524g) can be performed on the output of the fourth QR-RLS filter, which can provide the final output S622.

[0070] like Figure 6 As shown, the second, third, and fourth QR-RLS filter modules, which use acceleration measurements as a reference, do not significantly alter their respective input signals. This is because users primarily make micro-movements during typing, and such micro-movements do not cause significant artifacts associated with x, y, and / or z-axis accelerations.

[0071] In addition to artifacts associated with noise in the original source signal (e.g., the original green PPG signal), which can be observed in the MAR algorithm, Figure 6 The different stages shown have been removed. Figure 7 Provided with Figure 6A similar view of the signals processed through the methods and workflows described in this paper. Specifically, in Figure 7 In this process, the raw green PPG signal S702 can be measured during a set time period while the user is running. The raw PPG signal S702 can be filtered by applying a bandpass filter with a bandwidth corresponding to 24 to 240 beats per minute to produce a filtered green PPG signal S704. The red PPG signal S706 can also be measured during this set time period. The red PPG signal S706 can be used as a reference signal for a first QR-RLS filter module (e.g., a first adaptive filter 124c) to process the filtered green PPG signal S704. The output of the first QR-RLS filter is shown as signal S708. As this output shows, the first QR-RLS filter does not cancel or remove significant motion artifacts from the green PPG signal. This could be due to a lack of correlation between the green and red PPG signals, for example, because the user is running.

[0072] The x-axis acceleration signal S610, y-axis acceleration signal S714, and z-axis acceleration signal S718 can also be measured during a set time period. The x-axis acceleration signal S710 can be used as a reference signal for a second QR-RLS filter module (e.g., a second adaptive filter 124d) to process the output of the first QR-RLS filter. The output of the second QR-RLS filter is shown as signal S712. The y-axis acceleration signal S714 can be used as a reference signal for a third QR-RLS filter module (e.g., a third adaptive filter 124e) to process the output of the second QR-RLS filter. The output of the third QR-RLS filter is shown as signal S716. The z-axis acceleration signal S718 can be used as a reference signal for a fourth QR-RLS filter module (e.g., a fourth adaptive filter 124f) to process the output of the third QR-RLS filter. The output of the fourth QR-RLS filter is shown as signal S720. Further post-processing (e.g., smoothing, such as that done by post-processor 524g) can be performed on the output of the fourth QR-RLS filter, which can provide the final output S722.

[0073] As shown in the figure, the second QR-RLS filter module, using the x-axis acceleration signal, can remove or eliminate most of the artifacts in the green PPG signal. This may be due to the high correlation between periodic artifacts in the green PPG signal (e.g., as a result of running) and the x-axis acceleration signal. The third and fourth QR-RLS filter modules do not significantly alter their respective input signals. In the final output S722, the pulsating signal associated with blood flow in the user's vessels can be seen.

[0074] It should be understood that the disclosed embodiments are not intended to be exhaustive, and functional, logical, operational, organizational, structural, and / or topological modifications may be made without departing from the scope of this disclosure. Therefore, all examples and / or embodiments are considered non-limiting throughout this disclosure.

[0075] All definitions defined and used herein should be understood to govern dictionary definitions, definitions incorporated by reference in other documents, and / or the general meaning of the defined terms.

[0076] Examples of computer code include, but are not limited to, microcode or microinstructions, machine instructions (such as those generated by a compiler), code for generating web services, and files containing higher-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using Python, Java, JavaScript, C++, and / or other programming languages ​​and development tools. Additional examples of computer code include, but are not limited to, control signals, encryption code, and compression code.

[0077] The accompanying drawings are primarily for illustrative purposes and are not intended to limit the scope of the subject matter described herein. The drawings are not necessarily drawn to scale; in some cases, various aspects of the subject matter disclosed herein may be exaggerated or enlarged in the drawings to facilitate understanding of different features. In the drawings, the same reference numerals generally refer to similar features (e.g., functionally similar and / or structurally similar elements).

[0078] Actions performed as part of the disclosed method(s) can be ordered in any suitable manner. Accordingly, embodiments can be constructed that perform processes or steps in an order different from that shown in the illustrations, and even actions shown as sequential in the illustrative embodiments may include the simultaneous execution of some steps or processes. In other words, it should be understood that such features may not be limited to a particular order of execution, but can be performed in a manner consistent with this disclosure in a serial, asynchronous, concurrent, parallel, simultaneous, synchronous, etc., manner by any number of threads, processes, services, servers, etc. Accordingly, some of these features may be contradictory, as they cannot coexist in a single embodiment. Similarly, some features may apply to one aspect of the innovation but not to others.

[0079] Where a range of values ​​is provided, it should be understood that, unless the context explicitly specifies otherwise, every intermediate value, one-tenth of a unit to the lower limit, between the upper and lower limits of that range, and any other stated or intermediate value within that range is included in this disclosure. The upper and lower limits of these smaller ranges may be independently included within a smaller range, which is also included in this disclosure, but subject to any explicitly excluded limits within the range. Where the range includes one or two limits, the range excluding one or both of those included limits is also included in this disclosure.

[0080] As used herein in the specification and embodiments, the phrase “and / or” should be understood to mean “any one or both” of the elements so combined, that is, elements that exist together in some cases and separately in others. Multiple elements listed with “and / or” should be understood in the same way, that is, “one or more” of the elements so connected. In addition to the elements specifically identified by the “and / or” clause, other elements may optionally exist, whether related to or unrelated to those specifically identified elements. Thus, as a non-limiting example, when used in conjunction with open-ended language such as “including,” a reference to “A and / or B” may in one embodiment refer only to A (optionally including elements other than B); in another embodiment, only to B (optionally including elements other than A); in yet another embodiment, to A and B (optionally including other elements); and so on.

[0081] As used herein in the specification and embodiments, “or” should be understood to have the same meaning as “and / or” as defined above. For example, when items in a list are separated, “or” or “and / or” should be interpreted as inclusive, i.e., including multiple elements or at least one of the elements in the list, but also including more than one, and (optionally) additional items not listed. Terms that explicitly indicate the opposite, such as “only one” or “exactly one”, or, when used in embodiments, “consisting of…”, will refer to including only multiple elements or one element in the list. In general, the term “or” as used herein should be interpreted as indicating an exclusive substitution (i.e., “one of two or the other, but not both”) only when the signature contains exclusive terms (such as “any one,” “one of them,” “only one of them,” or “exactly one of them”). When used in embodiments, “consisting of…” should have the ordinary meaning used in the field of patent law.

[0082] As used in the description and embodiments herein, the phrase “at least one” refers to a list of one or more elements and should be understood to mean at least one element selected from one or more elements in the list of elements, but does not necessarily include at least one of every element specifically listed in the list of elements, and does not exclude any combination of elements in the list of elements. This definition also allows for the optional presence of elements other than those specifically identified in the list of elements referred to by the phrase “at least one”, whether related to or unrelated to those specifically identified elements. Thus, as a non-limiting example, “at least one of A and B” (or equivalently, “at least one of A or B”, or equivalently, “at least one of A and / or B”) may, in one embodiment, mean at least one, optionally including more than one A, with no B (and optionally including elements other than B); in another embodiment, mean at least one, optionally including more than one B, with no A (and optionally including elements other than A); in yet another embodiment, mean at least one, optionally including more than one A, and at least one, optionally including more than one B (and optionally including other elements); and so on.

[0083] In the embodiments and the above description, all transitional phrases such as “comprising,” “including,” “carrying,” “having,” “containing,” “involving,” “holding,” “consisting of,” etc., should be understood as open-ended, that is, indicating including but not limited to. As described in Section 2111.03 of the U.S. Patent Examination Procedure Manual, only the transitional phrases “consisting of” and “substantially consisting of” should be closed or semi-closed transitional phrases, respectively.

[0084] Some embodiments described herein relate to computer storage products having a non-transitory computer-readable medium (also referred to as a non-transitory processor-readable medium) having instructions or computer code for performing operations of various computer implementations. A computer-readable medium (or processor-readable medium) is non-transitory in the sense that it does not include the transient propagation signal itself (e.g., propagating electromagnetic waves carrying information over a transmission medium such as space or a cable). The medium and computer code (also referred to as code) can be those designed and constructed for one or more specific purposes. Examples of non-transitory computer-readable media include, but are not limited to, magnetic storage media such as hard disks, floppy disks, and magnetic tapes; optical storage media such as optical discs / digital video discs (CD / DVD), optical disc read-only memories (CD-ROMs), and holographic devices; magneto-optical storage media such as optical discs; carrier signal processing modules; and hardware devices specifically configured to store and execute program code, such as application-specific integrated circuits (ASICs), programmable logic devices (PLDs), read-only memories (ROMs), and random access memories (RAMs). Other embodiments described herein relate to computer program products that may include, for example, the instructions and / or computer code discussed herein.

[0085] Some of the embodiments and / or methods described herein can be implemented by software (executing on hardware), hardware, or a combination thereof. Hardware modules may include, for example, processors, field-programmable gate arrays (FPGAs), and / or application-specific integrated circuits (ASICs). Software modules (executing on hardware) may include instructions stored in memory operatively coupled to the processor and may be expressed in various software languages ​​(e.g., computer code), including C, C++, Java™, Ruby, Visual Basic™, and / or other object-oriented, procedural, or other programming languages ​​and development tools. Examples of computer code include, but are not limited to, microcode or microinstructions, machine instructions (such as those generated by a compiler), code for generating web services, and files containing higher-level instructions executed by a computer using an interpreter. For example, embodiments may be implemented using imperative programming languages ​​(e.g., C, Fortran, etc.), functional programming languages ​​(Haskell, Erlang, etc.), logic programming languages ​​(e.g., Prolog), object-oriented programming languages ​​(e.g., Java, C++, etc.), or other suitable programming languages ​​and / or development tools. Additional examples of computer code include, but are not limited to, control signals, encryption code, and compression code.

Claims

1. An apparatus comprising: One or more source sensors configured to measure one or more source signals, the one or more source signals including source signal components and source noise components; At least one reference sensor configured to measure at least one reference signal; as well as A processor operatively coupled to the one or more source sensors and the at least one reference sensor, the processor being configured to: Receive the one or more source signals and the at least one reference signal; as well as The one or more source signals are processed using one or more adaptive filters to produce a filtered output, wherein the one or more adaptive filters use at least one reference signal from at least one reference sensor as a reference. The filtered output has a source noise component that is smaller or equal to that of the one or more source signals.

2. The apparatus of claim 1, wherein the one or more source sensors comprise at least one of a green wavelength photoplethysmography (PPG) sensor, a red PPG sensor, an infrared PPG sensor, an accelerometer, or a gyroscope.

3. The apparatus of claim 1, wherein the at least one reference sensor comprises at least one of a red wavelength photoplethysmography (PPG) sensor, a green PPG sensor, an infrared PPG sensor, an accelerometer, or a gyroscope.

4. The apparatus of claim 3, wherein the at least one reference signal comprises a PPG signal measured by a red PPG sensor, a green PPG sensor, or an infrared PPG sensor.

5. The apparatus of claim 3, wherein the at least one reference signal comprises at least one of an accelerometer signal measured by an accelerometer or a gyroscope signal measured by a gyroscope.

6. The apparatus of claim 1, wherein processing the one or more source signals comprises: The one or more source signals are processed by a first adaptive filter to produce a first output, wherein the first adaptive filter uses a first reference signal among the at least one reference signal as a reference; as well as The first output is processed by a second adaptive filter to produce a second output, wherein the second adaptive filter uses a second reference signal from the at least one reference signal as a reference. as well as The second output is processed using a third adaptive filter to produce the filtered output, the third adaptive filter using a third reference signal from the at least one reference signal as a reference.

7. The apparatus of claim 6, wherein the at least one reference sensor comprises a 3-axis accelerometer configured to measure accelerometer signals, and The first reference signal is the first axis of the accelerometer signal, the second reference signal is the second axis of the accelerometer signal, and the third reference signal is the third axis of the accelerometer signal.

8. The apparatus of claim 1, wherein processing the one or more source signals comprises: The one or more source signals are processed by a first adaptive filter to produce a first output, wherein the first adaptive filter uses a first reference signal among the at least one reference signal as a reference; as well as The first output is processed by a second adaptive filter to produce a second output, wherein the second adaptive filter uses a second reference signal from the at least one reference signal as a reference. The second output is processed by a third adaptive filter to produce a third output, the third adaptive filter using a third reference signal from the at least one reference signal as a reference; as well as The second output is processed using a fourth adaptive filter to produce the filtered output, the fourth adaptive filter using a fourth reference signal from the at least one reference signal as a reference.

9. The apparatus of claim 8, wherein the one or more reference sensors include a red wavelength PPG sensor, an infrared PPG sensor, or a green PPG sensor configured to measure photoplethysmography (PPG) signals, and an accelerometer configured to measure accelerometer signals, and The first reference signal is the PPG signal, the second reference signal is the first axis of the accelerometer signal, the third reference signal is the second axis of the accelerometer signal, and the fourth reference signal is the third axis of the accelerometer signal.

10. The apparatus of claim 9, wherein the second output has a smaller source noise component than the first output, the third output has a smaller source noise component than the second output, and the filtered output has a smaller source noise component than the third output.

11. The apparatus of claim 1, wherein the one or more reference sensors include a gyroscope configured to measure gyroscope signals, wherein the at least one reference signal includes at least one of an x-axis gyroscope signal measured by the gyroscope, a y-axis gyroscope signal measured by the gyroscope, or a z-axis gyroscope signal measured by the gyroscope.

12. A method comprising: Receive one or more source signals measured by one or more source sensors; Receive multiple reference signals measured by multiple reference sensors, the multiple reference sensors including at least two different types of sensors; as well as The one or more source signals are processed using one or more adaptive filters to produce a filtered output, wherein the one or more adaptive filters use at least one of the plurality of reference signals as a reference; The filtered output has a source noise component that is smaller or equal to that of the one or more source signals.

13. The method of claim 12, wherein the one or more source signals are not saturated.

14. The method of claim 12, further comprising: Compensate for saturation associated with the one or more source signals.

15. The method of claim 14, wherein compensating for the saturation includes adjusting the operation of the one or more source sensors.

16. The method of claim 14, wherein compensating for the saturation comprises using at least one of adjusting gain, using compensation voltage, using compensation current, or using a compensation algorithm.

17. A method comprising: Receive one or more source signals measured by one or more source sensors; Receive multiple reference signals measured by at least one sensor associated with a user and at least one sensor configured to measure movement, the multiple reference sensors including at least two different types of sensors; as well as The one or more source signals are processed using a first adaptive filter to produce a first output, the first adaptive filter using at least one reference signal from the at least one sensor associated with the user as a reference; The first output is processed using one or more adaptive filters to produce a filtered output, the one or more adaptive filters using at least one reference signal from the at least one sensor configured to measure movement as a reference; The filtered output has a source noise component that is smaller or equal to that of the one or more source signals.

18. The method of claim 17, wherein the at least one sensor associated with the user comprises at least one of a red wavelength photoplethysmography (PPG) sensor, a green PPG sensor, or an infrared PPG sensor.

19. The method of claim 17, wherein the at least one sensor configured to measure movement comprises an accelerometer.

20. The method of claim 17, wherein the at least one sensor configured to measure movement comprises a gyroscope.

21. The method of claim 17, wherein the one or more source sensors or at least one of the plurality of reference sensors operates intermittently.

Citation Information

Patent Citations

  • Systems, apparatuses and methods for adaptive noise reduction

    US10134378B1