Generating a stress score
A stress score calculation method using heart rate variability and heart rate indices addresses the lack of real-time stress measurement in physiological monitors, offering continuous and actionable stress feedback.
Patent Information
- Application Number
- JP2025534262
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-10-30
- Filing Date
- 2023-12-12
- Publication Date
- 2026-01-14
AI Technical Summary
Existing physiological monitoring devices lack continuous or real-time objective measurements of stress, which are necessary for practical user decision-making and self-assessment.
A method and system that calculates a stress score based on a weighted combination of heart rate variability and heart rate indices, using first and second weights adjusted by the user's resting state, with real-time display and intervention recommendations.
Provides a continuous, objective, and quantitative stress score for real-time user guidance and decision-making, enabling timely interventions based on current stress levels.
Smart Images

Figure 2026501155000001_ABST
Abstract
Description
[Technical Field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application claims priority to U.S. Provisional Patent Application No. 63 / 594,258, filed October 30, 2023, and U.S. Provisional Patent Application No. 63 / 431,877, filed December 12, 2022, the entire contents of each of which are incorporated herein by reference. [Background technology]
[0002] The present disclosure relates generally to generating a stress score based on data from a wearable physiological monitor.
[0003] background Some physiological monitoring devices capture user data over a period of time, such as several days, and then generate daily summaries of metrics related to, for example, sleep, strain, and recovery. These calculations are often data-intensive and computationally expensive, requiring a review of data accumulated over a period of time in the past, such as a 24-hour period.
[0004] There is a need for continuous or real-time, objective measurements of current stress that provide a practical benchmark for user decision-making and self-assessment.
[0005] overview Stress scores from physiological monitors provide a local, objective, quantitative measure of stress in a numerical form that can be used as a basis for real-time guidance, decision making, and the like.
[0006] In some aspects, a method disclosed herein may include providing a heart rate variability index for a user; providing a heart rate index for the user; determining a resting state of the user; and calculating a stress score for the user, wherein the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index, the weighted combination using a first weight for a first component of the stress score based on the heart rate index, the first weight being based on the user's resting state, and the weighted combination using a second weight for a second component of the stress score based on the heart rate variability index, the second weight being based on the user's resting state. Other embodiments of this aspect include corresponding computer systems, apparatus, and computer programs recorded on one or more computer storage devices, each configured to perform the operations of the method.
[0007] Implementations may include one or more of the following features: The second weight may be equal to 1 minus the first weight; The first weight may approach 1 as the heart rate index approaches a resting heart rate for the user; The first weight may monotonically approach 1 as the heart rate index approaches a resting heart rate; The first weight may sigmoidally approach 1 as the heart rate index approaches a resting heart rate; The first weight may increase with the user's proximity from a resting state to a sleep state; The method may include periodically calculating a stress score over an interval, thereby providing a timeline of stress scores for the user over the interval; The method may include displaying the timeline of stress scores as a stress score graph on the user device; Providing the heart rate variability index and the heart rate index may include obtaining the heart rate variability index and the heart rate index from a physiological monitor worn by the user. The method may include displaying a stress score on one or more of the wearable physiological monitor and the user device. The method may include generating an intervention recommendation for the user based on the stress score. The intervention recommendation may include a real-time recommendation based on a current stress score. The intervention recommendation may include a real-time recommendation based on a current activity. The method may include identifying a stress score threshold indicative of acute stress. The method may include reporting the acute stress to the user. The method may include recommending a remedy for the acute stress to the user. The method may include identifying a stress score threshold indicative of autonomic activation. The resting state may be based on a circadian rhythm state of the user. The circadian rhythm state may be based on a probability of a sleep state of the user. The circadian rhythm state may be based on a population circadian rhythm model. The circadian rhythm state may be based on a user circadian rhythm model. The resting state may be based on a difference between the user's heart rate indicator and the user's resting heart rate. The resting state may be a discrete resting state including at least one of a sleep state and a wake state.The sleep state may include one or more sub-states for one or more corresponding sleep stages. A first weight for weighting the heart rate index may be increased if the resting state is a sleep state. The resting state may be a distinct resting state selected based on one or more predetermined ranges of heart rate. Providing the heart rate index may include obtaining aggregate heart rate measurements over an interval using a wearable physiological monitor. Providing the heart rate variability index may include obtaining aggregate heart rate variability measurements over an interval using a wearable physiological monitor. The method may include adjusting a stress score based on motion data obtained from a wearable monitor worn by a user. Providing the heart rate variability index may include scaling the heart rate variability measurement based on a distribution of past heart rate variability measurements. Providing the heart rate index may include scaling the heart rate measurement based on a distribution of past heart rate measurements. Implementations of the described technologies may include hardware, methods or processes, or computer software on a computer-accessible medium.
[0008] In some aspects, a computer program product disclosed herein may include computer-executable code embodied in a non-transitory computer-readable medium that, when executing on one or more computing devices, causes the one or more computing devices to perform the following steps: provide a heart rate variability index for the user; provide a heart rate index for the user; determine a resting state of the user; and calculate a stress score for the user, wherein the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index, the weighted combination using a first weight for the heart rate index based on the user's resting state and the weighted combination using a second weight for the heart rate variability index based on the user's resting state.
[0009] In some aspects, a system disclosed herein may include a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire heart rate data of a user based on signals from the one or more sensors; and one or more processors communicatively coupled to the wearable physiological monitor, wherein the one or more processors may be configured with computer-executable code to receive data from the wearable physiological monitor and to: calculate a heart rate variability index of the user based on the heart rate data; calculate a heart rate index of the user based on the heart rate data; determine a resting state of the user based on the heart rate data; and calculate a stress score for the user, wherein the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index, wherein the weighted combination uses a first weight for the heart rate index based on the user's resting state and the weighted combination uses a second weight for the heart rate variability index based on the user's resting state. The system may also include a display device in communication with the one or more processors, the display device including a user interface configured to present a value indicative of the stress score to a user.
[0010] Implementations may include one or more of the following features: At least one processor of the one or more processors may be located on a display device; At least one processor of the one or more processors may be located on a remote server; At least one processor of the one or more processors may be located on a user device; One processor of the one or more processors may be located on a remote server and another processor of the one or more processors may be located on the user device.
[0011] In some aspects, the computer program product disclosed herein may include computer-executable code embodied in a non-transitory computer-readable medium that, when executed on one or more computing devices, performs the following steps: providing a machine learning model trained to report a stress level based on heart rate, heart rate variability, and movement measured from the monitor; obtaining multiple measurements of the stress level based on data from the monitor about the user over an interval; processing the multiple measurements of the stress level over the interval to provide a stress estimate for the interval; scaling the stress estimate with a function that converts the stress estimate into a value within a predetermined range; and presenting the value to the user on a display as a dynamic stress value.
[0012] In some aspects, the methods disclosed herein may include providing a machine learning model trained to report a stress level based on heart rate, heart rate variability, and movement measured from a monitor; obtaining multiple measurements of stress level over an interval based on data from the monitor about the user; and processing the multiple measurements of stress level over the interval to provide a stress estimate for the interval. Other embodiments of this aspect include corresponding computer systems, devices, and computer programs stored on one or more computer storage devices, each configured to perform the operations of the method.
[0013] Implementations may include one or more of the following features. The method may include scaling the stress estimate with a function that converts the stress estimate into a value within a predetermined range and presenting the value to the user on a display as a dynamic stress value. The method may include displaying the dynamic stress value on a wearable monitor. The method may include displaying the dynamic stress value on a user device. The function may include nonlinear scaling that converts a majority of the individual's multiple stress estimates into a minimum dynamic stress value. The method may include generating an intervention recommendation for the user based on the stress estimate. The intervention recommendation may include a real-time recommendation based on a current stress estimate. The intervention recommendation may include a real-time recommendation based on a current activity. The machine learning model may be trained using a training set including a set of measured physiological responses of a plurality of users to one or more predetermined stressors, each physiological response tagged with a stress score from a corresponding one of the plurality of users when exposed to a corresponding one of the one or more predetermined stressors. The method may include identifying a threshold value of the stress estimate that indicates acute stress. The method may include reporting the acute stress to the user. The method may include recommending a remedy for acute stress to the user. The method may include identifying a threshold stress estimate indicative of autonomic activation. The multiple measurements of stress level may include measurements at least every 30 seconds. The interval may be between 3 and 10 minutes. Implementations of the described techniques may include hardware, a method or process, or computer software on a computer-accessible medium.
[0014] In some aspects, the methods disclosed herein may include providing a model configured to output a stress level based on heart rate, heart rate variability, and movement measured from a monitor; obtaining a plurality of measurements of stress level over an interval based on data from the monitor about the user; and processing the plurality of measurements of stress level over the interval with the model to provide a stress estimate for the interval. Other embodiments of this aspect include corresponding computer systems, devices, and computer programs stored on one or more computer storage devices, each configured to perform the operations of the method.
[0015] Implementations may include one or more of the following features: The model may include a machine learning model trained to report stress levels based on heart rate, heart rate variability, and movement measured from the monitor. The model may include an analytical model that uses a combination of scaled heart rate scores and scaled heart rate variability scores. The analytical model may weight the contributions of the scaled heart rate scores and scaled heart rate variability scores based on movement detected by the monitor. Implementations of the described technologies may include hardware, methods or processes, or computer software on a computer-accessible medium.
[0016] In some aspects, the computer program product disclosed herein may include computer-executable code embodied in a non-transitory computer-readable medium that, when executed on one or more computing devices, performs the following steps: create a first model, the first model including a machine learning model trained to generate a probability distribution of expected fractional heart rate reserves based on a first set of features of training data for a user population of a type of physiological monitor; receive user data from a wearer of a first physiological monitor of the type of physiological monitor; calculate a fractional heart rate reserve for the wearer based on the user data from the first physiological monitor; generate a probability distribution of expected fractional heart rate reserves for the wearer based on the first set of features of the user data; and calculate a stress score for the wearer based on a comparison of the fractional heart rate reserve to the probability distribution of expected fractional heart rate reserves.
[0017] Implementations may include one or more of the following features. The computer program product may include code for creating a second model, the second model including a classification model trained to identify activity types based on a second set of features of training data for a user population of a type of physiological monitor. The second model may be used to modify the stress score to better match the wearer's expected stress score. The activity types may include one or more of active, sedentary, and sleeping. The computer program product may include code for classifying the user's activity type based on the second set of features of the user data, and refining the stress score based on the activity type, thereby providing an improved stress score. The computer program product may include code for providing a recommendation to the user based on the improved stress score. The activity types may include one or more of active, sedentary, and sleeping. Generating the probability distribution may include generating a set of heart rate reserves corresponding to each of a number of quantiles of the probability distribution. The computer program product may include code for performing the steps of displaying a stress score on one or more of the wearable monitor and the user device. The computer program product may include code for generating an intervention recommendation for the wearer based on the stress score. The intervention recommendation may include a real-time recommendation based on a current stress score. The intervention recommendation may include a real-time recommendation based on a current activity. The computer program product may include code for performing the steps of identifying a stress score threshold indicative of acute stress. The computer program product may include code for performing the steps of reporting the acute stress to the wearer. The computer program product may include code for performing the steps of recommending a remedy for the acute stress to the wearer. The computer program product may include code for performing the steps of identifying a stress score threshold indicative of autonomic activation.Implementations of the described techniques may include hardware, a method or process, or computer software on a computer-accessible medium.
[0018] In some aspects, the methods disclosed herein may include: creating a first model, the first model including a machine learning model trained to generate a probability distribution of a physiological indicator based on a first set of features of training data for a user population of a certain type of physiological monitor; receiving user data from a wearer of the first physiological monitor of the certain type of physiological monitor; calculating a value of the physiological indicator for the wearer based on the user data from the first physiological monitor; generating a probability distribution of the physiological indicator for the wearer based on the first set of features of the user data; and calculating a stress score for the wearer based on a comparison of the value of the physiological indicator to the probability distribution of the physiological indicator. Other embodiments of this aspect include corresponding computer systems, devices, and computer programs stored on one or more computer storage devices, each configured to perform the operations of the method.
[0019] Implementations may include one or more of the following features: The method may include creating a second model, where the second model includes a classification model trained to identify activity types based on a second set of features of training data for a user population of a type of physiological monitor. The second model may be used to refine the stress score to better match the wearer's expected stress score. The physiological indicators may include a heart rate indicator. The physiological indicators may include an indicator correlated with stress. The physiological indicators may include one or more of heart rate reserve, heart rate reserve ratio, heart rate variability, instantaneous heart rate, aggregate heart rate, skin temperature, core body temperature, respiration rate, blood pressure, and skin conductance. Implementations of the described technologies may include hardware, a method or process, or computer software on a computer-accessible medium.
[0020] In some aspects, a method disclosed herein may include measuring a user's aggregate heart rate over an interval with a physiological monitor; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; responsive to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on multiple measurements of heart rate, heart rate variability, and movement obtained from the physiological monitor during the interval; responsive to determining that the aggregate heart rate is within the predetermined range, calculating a stress score for the user based on the multiple measurements using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used if the aggregate heart rate was determined to be outside the predetermined range; and displaying a value indicative of the stress score for the interval to the user. Other embodiments of this aspect include corresponding computer systems, devices, and computer programs stored on one or more computer storage devices, each configured to perform the operations of the method.
[0021] Implementations may include one or more of the following features. The method may include updating a cumulative stress score for the user based on the stress score. In response to determining that the aggregate heart rate is outside a predetermined range, the method may apply a first algorithm to calculate a stress score for the user, and in response to determining that the aggregate heart rate is within the predetermined range, apply a second algorithm to calculate a stress score for the user, the second algorithm including a lower weighted contribution of heart rate variability compared to the first algorithm. The lower weighted contribution of heart rate variability may be scaled relative to a distance from the user's resting heart rate. The distance may include a sigmoidal distance to the resting heart rate determined using a sigmoidal function that assesses the closeness of the heart rate to the user's resting heart rate. The stress score may be scaled with a function that converts the stress score to a value. Scaling the stress score places the value within a predetermined range. The value may be displayed on at least one of the physiological monitor and a user device in communication with the physiological monitor. The method may include generating an intervention recommendation for the user based on the stress score. Implementations of the described techniques may include hardware, a method or process, or computer software on a computer-accessible medium.
[0022] In some aspects, a computer program product disclosed herein may include computer-executable code embodied in a non-transitory computer-readable medium that, when executed on one or more computing devices, performs the following steps: measuring a user's aggregate heart rate over an interval with a physiological monitor; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; in response to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on a plurality of measurements of heart rate, heart rate variability, and movement obtained from the physiological monitor during the interval; in response to determining that the aggregate heart rate is within the predetermined range, calculating the user's stress score based on the plurality of measurements using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used if the aggregate heart rate was determined to be outside the predetermined range; and displaying a value indicative of the stress score for the interval to the user.
[0023] In some aspects, a system disclosed herein may include a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire data including a user's heart rate, heart rate variability, and movement based on signals from the one or more sensors; and a second processor communicatively coupled to the wearable physiological monitor. The second processor may be configured with computer-executable code to receive data from the wearable physiological monitor and to: measure the user's aggregate heart rate over an interval; determine whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; calculate a stress score for the user over the interval based on data from the wearable physiological monitor acquired during the interval, in response to determining that the aggregate heart rate is outside the predetermined range; and calculate a stress score for the user based on data from the wearable physiological monitor acquired during the interval using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used when the aggregate heart rate was determined to be outside the predetermined range. The system may also include a display device in communication with the second processor, the display device including a user interface configured to present to the user a value indicative of the stress score for the interval. The second processor may be located in one or more of the wearable physiological monitor, the display device, and the remote server.
[0024] These and other objects, features, and advantages of the devices, systems, and methods described herein will become apparent from the following description of specific embodiments as illustrated in the accompanying drawings. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the devices, systems, and methods described herein. In the drawings, like reference characters generally identify corresponding elements. [Brief explanation of the drawings]
[0025] [Figure 1]FIG. 1 illustrates a physiological monitoring device.
[0026] [Figure 2] FIG. 1 illustrates a physiological monitoring system.
[0027] [Figure 3] FIG. 1 illustrates a smart clothing system.
[0028] [Figure 4] FIG. 1 is a block diagram of a computing device.
[0029] [Figure 5] FIG. 1 illustrates a system for dynamic stress monitoring.
[0030] [Figure 6] 1 is a flow diagram of a method for dynamic stress monitoring.
[0031] [Figure 7] 1 is a flow diagram of a method for determining a stress score.
[0032] [Figure 8] FIG. 1 illustrates a process for calculating a stress score.
[0033] [Figure 9] FIG. 10 illustrates a user interface displaying a dynamic stress score.
[0034] explanation The present embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments are shown. The foregoing may, however, be embodied in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that this disclosure will convey the scope of the invention to those skilled in the art.
[0035] All documents mentioned herein are incorporated herein by reference in their entirety. Reference to a singular item should be understood to include the plural item, and vice versa, unless expressly stated otherwise or evident from the context. Grammatical conjunctions are intended to represent any and all disjunctive and conjunctive combinations of coordinated clauses, sentences, words, and the like, unless otherwise stated or apparent from the context. Thus, the term "or" should be understood generally to mean "and / or," etc.
[0036] The description of ranges of values herein is not intended to be limiting; instead, unless otherwise indicated herein, reference is made individually to any and all values falling within that range, and each separate value within such range is incorporated herein as if it were individually set forth herein. The use of the words "approximately," "about," or the like when accompanying a numerical value should be interpreted as indicating a deviation that would be understood by one of ordinary skill in the art to operate satisfactorily for the intended purpose. Similarly, approximation words such as "approximately" or "substantially," when used in connection with physical properties, should be understood to contemplate a range of deviation that would be understood by one of ordinary skill in the art to operate satisfactorily for the corresponding use, function, purpose, etc. Value ranges and / or numerical values herein are provided as examples only and do not limit the scope of the described embodiments. When a range of values is provided, it is also intended to include each value within the range as if it were individually set forth unless explicitly stated to the contrary. The use of any and all examples or exemplary language ("for example," "such as," or the like) provided herein is intended only to better illustrate the embodiments and does not impose limitations on the scope of the embodiments. No terminology herein should be construed as indicating any non-claimed element as essential to the practice of the embodiment.
[0037] In the following description, it will be understood that terms such as "first," "second," "top," "bottom," "upper," "lower," "above," and "below," etc., are words of convenience and should not be construed as limiting terms unless specifically stated to the contrary.
[0038] As used herein, the term "user" refers to any type of animal, human, or non-human entity whose physiological information may be monitored using an exemplary wearable physiological monitoring system.
[0039] The term "continuous" as used herein in connection with heart rate data means acquiring heart rate data frequently enough to allow detection of individual heartbeats, and also refers to collecting heart rate data over extended periods, such as an hour, a day, or more (including acquisition throughout the day and night). More generally, with respect to physiological signals that may be monitored by a wearable device, "continuous" or "continuously" is understood to mean physically, continuously at a rate and duration suitable for intended time-based processing, and at a cyclical rate (e.g., multiple times per heartbeat and breath) sufficient to elucidate desired physiological characteristics, such as heart rate, heart rate variability, maximum heart rate detection, and pulse waveform. At the same time, continuous monitoring is not intended to exclude interruptions in normal data acquisition, such as temporary displacement of the monitoring hardware due to sudden movement, changes in external lighting, power loss, physical manipulation and / or adjustment by the wearer, and physical displacement of the monitoring hardware due to external forces. It is also noted that heart rate data or monitored heart rate in this context may more generally refer to raw sensor data, such as light intensity signals, or data processed therefrom, such as heart rate data, signal peak data, heart rate variability data, or any other physiological or digital signal suitable for recovering heart rate information as contemplated herein. Furthermore, such heart rate data may generally be captured over a period of time in the past and may then be correlated with various other data or metrics related to, for example, sleep state, perceived athletic activity, resting heart rate, and maximum heart rate.
[0040] As used herein, the term "computer-readable medium" refers to a non-transitory storage medium, such as storage hardware, storage devices, or computer memory, that can be accessed by a controller, microcontroller, microprocessor, or computing system, or any other module or component of a computing system, and that can encode computer-executable instructions, software programs, and / or other data. A "computer-readable medium" can be accessed by a computing system or a module of a computing system to retrieve and / or execute computer-executable instructions or software programs encoded thereon. Non-transitory computer-readable media can include, but are not limited to, one or more types of hardware memory, persistent tangible media (e.g., one or more magnetic storage disks, one or more optical disks, one or more USB flash drives), virtual or physical computer system memory, and physical memory hardware, such as random access memory (such as DRAM, SRAM, EDO RAM), etc. Although not shown, any of the devices or components described herein may include a computer-readable medium or other memory for storing program instructions, data, and the like.
[0041] FIG. 1 illustrates a physiological monitoring system. The system 100 may include a wearable monitor 104 configured for physiological monitoring. The system 100 may also include a removable and replaceable battery 106 for recharging the wearable monitor 104. The wearable monitor 104 may include a strap 102 or other retention system(s) for securing the wearable monitor 104 in a predetermined position on a wearer's body for acquiring physiological data as described herein. For example, the strap 102 may include a thin elastic band formed from any suitable elastic material, such as rubber, or woven polymer fibers, such as woven polyester, polypropylene, nylon, spandex, and the like. The strap 102 may be adjustable to accommodate different wrist sizes and may include any latch, clasp, or the like for securing the wearable monitor 104 in an intended position for monitoring physiological signals. While a wrist-worn device is illustrated, it should be understood that the wearable monitor 104 may be configured for placement at any suitable location on the user's body based on the sensing modality and the nature of the signal to be acquired. For example, the wearable monitor 104 may be configured for use on the wrist, ankle, biceps, chest, or any other suitable location(s), and the strap 102 may be or include a waistband or other elastic band within a garment or accessory. Additionally or alternatively, the wearable monitor 104 may be structurally configured for placement on or within a garment, e.g., permanently or in a removable and replaceable manner. As such, the wearable monitor 104 may be shaped and sized for placement within a pocket, slot, and / or other housing coupled to or embedded within the garment. In such a configuration, the garment's pocket or other retention structure may include a sensing window or the like to allow the wearable monitor 104 to operate while positioned for use within the garment.US Pat. No. 11,185,292 describes non-limiting exemplary embodiments of suitable wearable monitors 104 and is incorporated herein by reference in its entirety.
[0042] System 100 may include any hardware components, subsystems, etc., for supporting various functions of wearable monitor 104, such as data collection, processing, display, and communication with external resources. For example, system 100 may include hardware for a heart rate monitor using, for example, photoplethysmography, electrocardiography, or any other technology(ies). System 100 may be configured such that when wearable monitor 104 is placed for use around the wrist (or some other body part), system 100 begins acquiring physiological data from the wearer. In some embodiments, pulse or heart rate may be acquired optically based on a light source (such as a light-emitting diode (LED)) and a photodetector in wearable monitor 104. The LED may be positioned to direct illumination toward the user's skin, and a photodetector, such as a photodiode, may be used to capture illumination intensity measurements indicative of illumination from the LED reflected and / or transmitted by the wearer's skin.
[0043] System 100 may be configured to record other physiological and / or biomechanical parameters, including, but not limited to, skin temperature (using a thermometer), galvanic skin response (using a galvanic skin response sensor), movement (using one or more multi-axis accelerometers and / or gyroscopes), and blood pressure, as well as environmental or situational parameters, such as ambient light, ambient temperature, humidity, and time of day. For example, wearable monitor 104 may include an accelerometer and / or gyroscope for motion detection, a sensor for ambient temperature detection, a sensor for measuring electrodermal activity (EDA), and a sensor for measuring galvanic skin response (GSR). Additionally or alternatively, system 100 may include other systems or subsystems to support additional functionality of wearable monitor 104. For example, system 100 may include a communication system to support, for example, near-field communication, proximity sensing, Bluetooth® communication, Wi-Fi communication, cellular communication, satellite communication, and the like. Additionally or alternatively, the wearable monitor 104 may include components such as a geographic positioning system (e.g., based on the Global Positioning System (GPS)), a display and / or user interface, and a clock and / or timer.
[0044] The wearable monitor 104 may include one or more battery power sources, such as a first battery within the wearable monitor 104 and a second battery 106 that is removable from and replaceable in the wearable monitor 104 for recharging the battery within the wearable monitor 104. Additionally or alternatively, the system 100 may include multiple wearable monitors 104 (and / or other physiological monitors) that share a battery power source or can power each other. The system 100 may perform a number of functions related to continuous monitoring, such as automatically detecting when the user is asleep, awake, exercising, etc., which may be performed locally on the wearable monitor 104 or by a remote service communicatively coupled to and receiving data from the wearable monitor 104. In general, system 100 supports continuous and independent monitoring of physiological signals such as heart rate, and the underlying acquired data can be stored long-term on wearable monitor 104 until it can be uploaded to a remote processing resource for more computationally complex analysis.
[0045] In one aspect, the wearable monitor may be a photoplethysmograph worn on the wrist.
[0046] 2 illustrates a physiological monitoring system. More specifically, FIG. 2 illustrates a physiological monitoring system 200 that may be used in conjunction with any of the methods or devices described herein. In general, system 200 may include a physiological monitor 206, a user device 220, a remote server 230 with remote data processing resources (such as any of the processors or processing resources described herein), and one or more other resources 250, all of which may be interconnected via a data network 202.
[0047] Data network 202 may be any of the data networks described herein. For example, data network 202 may be any network(s) or interconnected network(s) suitable for conveying data and information between participants in system 200. This may include public networks like the Internet, private networks, telecommunications networks like the public switched telephone network, or cellular networks using third-generation (e.g., 3G or IMT-200), fourth-generation (e.g., LTE (E-UTRA) or WiMAX-Advanced (IEEE 802.16m)), fifth-generation (e.g., 5G), and / or other technologies, as well as various enterprise or local area networks and other switches, routers, hubs, gateways, etc. that may be used to transmit data between participants in system 200. It may also include local or short-range communications infrastructure suitable, for example, for coupling physiological monitor 206 to user device 220 or for supporting communication with local resources. By way of non-limiting example, short-range communication may include Wi-Fi communication, Bluetooth communication, infrared communication, near field communication, communication with an RFID tag or reader, and the like.
[0048] The physiological monitor 206 may generally be any physiological monitoring device or system, such as any of the wearable monitors or other monitoring devices or systems described herein. In one embodiment, the physiological monitor 206 may be a wearable physiological monitor shaped and sized to be worn on the wrist or other body part. The physiological monitor 206 may include a wearable housing 211, a network interface 212, one or more sensors 214, one or more light sources 215, a processor 216, a haptic device 217 or other user input / output hardware, memory 218, and a strap 210 for holding the physiological monitor 206 in a desired position on the user. In one embodiment, the physiological monitor 206 may be configured to intermittently or substantially continuously acquire heart rate data and / or other physiological data from the wearer. In another embodiment, the physiological monitor 206 may be configured to support long-term, continuous acquisition of physiological data, for example, over several days, a week, or more.
[0049] The network interface 212 of the physiologic monitor 206 may be configured to communicatively couple the physiologic monitor 206 to one or more other components of the system 200, either directly, such as via a mobile data connection, or indirectly via a short-range wireless communication channel that locally couples the physiologic monitor 206 to a wireless access point, router, computer, laptop, tablet, mobile phone, or other device capable of processing data locally, and / or relays data from the physiologic monitor 206 to a remote server 230 or other resource(s) 250 necessary or useful for obtaining and processing data from the physiologic monitor 206.
[0050] The one or more sensors 214 may include any of the sensors described herein or any other sensor or subsystem suitable for physiological monitoring or suitable for supporting functionality. By way of example and without limitation, the one or more sensors 214 may include one or more of a light source, a light sensor, an accelerometer, a gyroscope, a temperature sensor, a galvanic skin response sensor, a capacitance sensor, a resistance sensor, an environmental sensor (e.g., for measuring ambient temperature, humidity, lighting, etc.), a geolocation sensor, a global positioning system (GPS) hardware / software, a proximity sensor, an RFID tag reader, an RFID tag, a time sensor, and an electrodermal sensor, etc. The one or more sensors 214 may be disposed within the wearable housing 211 or may be otherwise disposed and configured for physiological monitoring or other functionality described herein. In one aspect, the one or more sensors 214 include a photodetector configured to provide light intensity data to the processor 216 (or remote server 230) for calculating heart rate and heart rate variability. Additionally or alternatively, the one or more sensors 214 may include an accelerometer, gyroscope, or the like configured to provide motion data to the processor 216, for example, to detect activities such as sleep states, resting states, wake-up events, movement, and / or other user activities. In one implementation, the one or more sensors 214 may include a sensor for measuring a user's galvanic skin response. Additionally or alternatively, the one or more sensors 214 may include electrodes, or the like, for capturing electronic signals, for example, to obtain an electrocardiogram and / or other electrically derived physiological measurements.
[0051] The processor 216 and memory 218 may be any of the processors and memories described herein. In one aspect, the memory 218 may store physiological data obtained by monitoring the user with one or more sensors 214, and / or any other sensor data, program data, or other data useful for the operation of the physiological monitor 206 or other components of the system 200. As will be appreciated, while only the memory 218 on the physiological monitor is shown, any other device(s) or component of the system 200 may also or instead include memory for storing program instructions, raw data, processed data, user input, and the like. In one aspect, the processor 216 of the physiological monitor 206 may be configured to obtain heart rate data from the user, such as heart rate data including or based on raw data from the sensors 214. The processor 216 may also or alternatively be configured to determine or assist in determining a user's condition, for example, related to health, fitness, strain, restorative sleep, or any of the other conditions described herein.
[0052] One or more light sources 215 may be coupled to the wearable housing 211 and controlled by the processor 216. At least one of the light sources 215 may be directed toward the user's skin adjacent the wearable housing 211. Light from the light sources 215, or more generally, light of one or more wavelengths of the light sources 215, may be detected by one or more sensors 214 and processed by the processor 216 as described herein.
[0053] System 200 may further include remote data processing resources executing on remote server 230. The remote data processing resources may include any of the processors and associated hardware described herein and may be configured to receive data transmitted from memory 218 of physiological monitor 206 and process the data to detect or infer physiological signals of interest, such as heart rate, heart rate variability, respiratory rate, blood oxygen level, blood pressure, etc. Additionally or alternatively, remote server 230 may assess a user's status, such as recovery state, sleep state, exercise activity, type of exercise, sleep quality, fatigue due to daily activities, and any other state of health or well-being that may be detected based on such data.
[0054] System 200 may include one or more user devices 220 that may interface with physiological monitor 206 to, for example, provide a display for user data and analysis, or more generally, user input / output, and / or provide a communications bridge from network interface 212 of physiological monitor 206 to data network 202 and remote server 230. For example, physiological monitor 206 may communicate locally with user device 220, such as a user's smartphone, via short-range communications (e.g., Bluetooth) to exchange data between physiological monitor 206 and user device 220, and user device 220 may in turn communicate with remote server 230 via data network 202 to transfer data from physiological monitor 206 and receive analysis results and results from remote server 230 for presentation to the user. In one aspect, user device(s) 220 may support physiological monitoring by processing or pre-processing data from physiological monitor 206 to support extraction of heart rate or heart rate variability data from raw data acquired by physiological monitor 206. In another aspect, computationally intensive processing may be advantageously performed on a remote server 230, which may have greater memory capacity and processing power than physiological monitor 206 and / or user device 220.
[0055] User device 220 may include any suitable computing device(s), including, but not limited to, a smartphone, a desktop computer, a laptop computer, a network computer, a tablet, a mobile device, a personal digital assistant, a mobile phone, a portable media or entertainment device, or any other computing device described herein. User device 220 may provide a user interface 222 for user access and analysis of data and / or to support user control of the operation of physiological monitor 206. User interface 222 may be maintained by one or more applications executing locally on user device 220, or user interface 222 may be provided and presented remotely on user device 220, for example, from a remote server 230 or one or more other resources 250.
[0056] In general, remote server 230 may include data storage, a network interface, and / or other processing circuitry. Remote server 230 may process data from physiological monitor 206, perform physiological and / or health monitoring / analysis, or any of the other analyses described herein (e.g., sleep analysis, strain determination, and recovery assessment, etc.), and may provide a user interface for remote access to this data, for example, from user device 220. Remote server 230 may include a web server or other program front end that facilitates web-based access by user device 220 or physiological monitor 206 to the capabilities of remote server 230 or other components of system 200.
[0057] System 200 may include other resources 250, such as any resources that may be usefully utilized in the devices, systems, and methods described herein. For example, these other resources 250 may include other data networks, databases, processing resources, cloud data storage, data mining tools, computational tools, data monitoring tools, algorithms, and the like. In another aspect, other resources 250 may include one or more administrative or programmatic interfaces for human parties, such as programmers, researchers, annotators, editors, analysts, and coaches, to interact with any of the foregoing. Additionally or alternatively, other resources 250 may include any other software or hardware resources that may be usefully utilized in network applications as contemplated herein. For example, other resources 250 may include a payment processing server or platform used to authorize payments for access, content, or option / feature purchases. In another aspect, other resources 250 may include an authentication server or other security resource for third-party identity verification, data encryption or decryption, and the like. In another embodiment, other resources 250 may include user device 220, wearable strap 210, or a desktop computer that is co-located with remote server 230 (e.g., on the same local area network or directly coupled via a serial or USB cable), etc. In this case, other resources 250 may provide complementary functionality to components of system 200, such as firmware upgrades, a user interface, and storage and / or pre-processing of data from physiologic monitor 206 before transmission to remote server 230.
[0058] Additionally or alternatively, other resources 250 may include one or more web servers that provide web-based access to / from any of the other participants in system 200. Although shown as a separate network entity, as will be readily understood, additional resources 250 (e.g., web servers) may also or alternatively be logically and / or physically associated with one of the other devices described herein and may, for example, include or provide a user interface 222 for web access to remote server 230 or database or other resource(s) to facilitate user interaction (e.g., from physiological monitor 206 or user device 220) over data network 202.
[0059] In another embodiment, other resources 250 may include fitness equipment or other fitness infrastructure. For example, a strength training machine may automatically record the number of repetitions and / or the weight applied during a repetition, and these records may be wirelessly accessible by physiological monitor 206 or other user devices 220. More generally, a gym may be configured to track a user's movement from machine to machine and report activity from each machine, tracking various strength training activities during a workout. Additionally or alternatively, other resources 250 may include other monitoring equipment or infrastructure. For example, system 200 may include one or more cameras for tracking the movement of free weights and / or the user's body position during repetitions, such as strength training activities. Similarly, a user may wear or have embedded in their clothing tracking fiducials, such as visually identifiable objects for image-based tracking, or wireless beacons for other tracking. In another embodiment, the weights themselves may be equipped with, for example, sensors for recording and communicating detected movements and / or beacons for self-identification of type, weight, etc., to facilitate automatic detection and tracking of athletic activity by other connected devices.
[0060] One limitation of wearable sensors can be their attachment to the body. The devices are typically wrist-based and may occupy a location that users prefer to reserve for other devices or jewelry, or that they prefer not to adorn for aesthetic or functional reasons. This location may also constrain what measurements can be taken and limit the user's activities. For example, a user may not be able to wear boxing gloves while wearing a sensing (detection) device on their wrist. To address this issue, and / or instead, physiological monitors may be embedded in clothing, which may be specifically adapted for physiological monitoring by adding communication interfaces, power sources, device location sensors, environmental sensors, geolocation hardware, payment processing systems, and any other components to provide infrastructure and expansion for wearable physiological monitors. Such "smart clothing" may provide additional space on the user's body to support monitoring hardware and may also enable sensing technologies not feasible with a single sensing device. For example, embedding multiple physiological sensors or other electronic / communication devices in a shirt may enable the collection of electrocardiogram (ECG)-based heart rate measurements from the wearer's torso region; positioning wireless antennas above the top of the thoracic spine to obtain desired communication signals; embedding contactless payment systems in the cuffs for interaction with payment terminals; and collecting muscle oxygen saturation measurements from muscles such as the pectoralis major, latissimus dorsi, biceps brachii, and other major muscle groups. This non-exhaustive list represents just a few examples of technologies that may be incorporated into a single garment.
[0061] Smart clothing may also free up body surface area for other devices: for example, if the sensors of a wrist-worn device for heart rate monitoring and step counting could be embedded in the user's underwear rather, the user could still receive desired biometric information and wear jewelry or other accessories where appropriate.
[0062] The present disclosure generally includes smart clothing systems and technologies. As will be appreciated, "smart clothing" as described herein generally includes clothing incorporating infrastructure and devices for supporting, enhancing, or complementing various physiological monitoring modes. Such clothing may include a wired local communication bus for in-garment hardware communication, a wireless communication system for in-garment hardware communication, a wireless communication system for out-of-garment communication, etc. Additionally or alternatively, the clothing may include a power source, a power management system, processing hardware, data storage, etc., any of which may support the enhanced functionality of the smart clothing.
[0063] 3 illustrates a smart clothing system. Generally, the system 300 may include multiple components (e.g., garment 310, one or more modules 320, controller 330, processor 340, and memory 342) that are capable of communicating with each other via a data network 302. The garment 310 may be wearable by a user 301 and configured to communicate with a module 320 having physiological sensors 322 structurally configured to detect physiological parameters of the user 301. As described herein, the module 320 may be controllable by the controller 330 based at least in part on a location 316 where the module 320 is located on or within the garment 310. This location-based information may be derived from interactions and / or communications between the module 320 and the garment 310 using various techniques. As will be appreciated, although two controllers 330 are shown, the garment 310 may include a single in-garment controller, or any number of separate controllers 330 in any number of garments 310 (e.g., one per garment, or one for all garments worn by a person, etc.), and / or the controllers may be integrated into other modules 320.
[0064] For communication over the data network 302, the system 300 may include a network interface 304, which may be integrated into the garment 310, included in the controller 330, or some other module or component of the system 300, or a combination thereof. The network interface 304 may generally include any combination of hardware and software configured to wirelessly communicate data to a remote resource. For example, the network interface 304 may use a local connection to a laptop, smartphone, or the like, and then couple to a wide area network, e.g., to access web-based or other network-accessible resources. Additionally or alternatively, the network interface 304 may be configured to couple to a local access point, such as a router or wireless access point, to connect to the data network 302. In another embodiment, the network interface 304 may be a cellular data connection for a direct wireless connection to a cellular network, or the like.
[0065] The data network 302 may generally include any communication network through which computer systems may exchange data. For example, the data network 302 may include, but is not limited to, the Internet, an intranet, a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), a wireless network, a cellular data network, an optical network, etc. To exchange data over the data network 302, the system 300 and the data network 302 may use various methods, protocols, and standards, including, but not limited to, token ring, Ethernet, wireless Ethernet, Bluetooth, TCP / IP, UDP, HTTP, FTP, SNMP, SMS, MMS, SS7, JSON, XML, REST, SOAP, CORBA, IIOP, RMI, DCOM, and Web Services. To ensure that data transfer is secure, the system 300 may transmit data over the data network 302 using various security measures, including, but not limited to, TSL, SSL, and VPN. As an example, some embodiments of the system 300 may be configured to wirelessly stream information to social networks, data centers, cloud services, and the like.
[0066] In some embodiments, data streamed from system 300 to data network 302 may be accessed by user 301 (or other users) via a website. Thus, network interface 304 may be configured to wirelessly stream data collected by system 300 to remote processing facility 350, database 360, and / or server 370 for processing and access by a user. In some embodiments, data may be transmitted automatically without user interaction, for example, by storing the data locally and transmitting the data via available local area network resources, such as a local access point, such as a wireless access point, or an intermediary device (such as a laptop, tablet, or smartphone) if available. In some embodiments, system 300 may include a cellular system or other hardware for accessing network resources independently from garment 310, without requiring a local network connection.
[0067] In one example, the network interface 304 may be configured to stream data to a nearby device, such as a mobile phone or tablet, using Bluetooth or Bluetooth Low Energy (BLE) technology for forwarding to other resources on the data network 302. In another example, the network interface 304 may be configured to stream data using cellular data services, such as over a 3G, 4G, or 5G cellular network. As will be appreciated, the network interface 304 may include a computing device, such as a mobile phone. Additionally or alternatively, the network interface 304 may include or be included in another component or some combination of components of the system 300. Where this can advantageously conserve battery power or communication resources, the system 300 may prioritize the use of local network resources when available, reserving cellular communication for situations where the data storage capacity of the garment 310 is reaching capacity. Thus, for example, the garment 310 may store data locally up to some predetermined threshold of local data storage, below which data is transmitted over the local network when available. Additionally, the garment 310 may transmit data to a central resource using a cellular data network only if the data in the local storage exceeds a predetermined threshold.
[0068] The garment 310 may provide suitable compressibility to hold the module 320 against the wearer's skin with an appropriate level of force for signal acquisition and / or stability of one or more sensors contained therein. The garment 310 may include one or more fabric layers (e.g., multiple layers having an inner layer that provides compressibility and an outer layer that provides aesthetics or other functionality). The garment 310 may include one or more of a shirt (or other top), shorts / pants (or other bottoms), underwear (e.g., undershirts, underwear, bras, etc.), socks or other footwear, shoes, a face mask, a hat or helmet (or other headwear), compression sleeves, sweatbands, kinesiology tape or elastic therapeutic tape, gloves, etc. More generally, the garment 310 may include any type(s) of wearable clothing or accessories suitable for a user to wear and for holding one or more sensing modules as contemplated herein.
[0069] The garment 310 may include one or more designated areas 312 for placing a module for detecting physiological parameters of the user 301 wearing the garment 310. The one or more designated areas 312 may be specially tailored to receive the module 320 therein or thereon. For example, the designated area 312 may include a pocket structurally configured to receive the module 320 therein. Additionally or alternatively, the designated area 312 may include a first fastener configured to cooperate with a second fastener disposed on the module 320. One or more of the first fastener and the second fastener may include at least one of a hook-and-loop fastener, a button, a clamp, a clip, a snap, a protrusion, and a gap.
[0070] The designated regions 312 may include at least one of a torso region, a spine region, a limb region (e.g., one or more of an arm region such as a sleeve and a leg region such as a pant leg), a waistband region, a cuff region, etc. Additionally or alternatively, the one or more designated regions 312 may include at least a region adjacent to one or more muscle groups of the user 301 (e.g., a muscle group including at least one of the pectoralis major, latissimus dorsi, and biceps, etc.). By way of example, the designated regions 312 may include at least one of a wrist, an ankle, a biceps, a waist, a side of the torso (e.g., an area included under a side strap of a bra or the like), a chest region (e.g., a location known to provide usable ECG data such as the center of the chest), a finger, and one or more locations at or around the head (e.g., the forehead, neck, ears, etc.).
[0071] By placing a pocket or the like in one of these designated areas 312, the location of the module 320 can be controlled, and if an RFID tag, sensor, or the like is used, the designated area 312 can specifically detect when the module 320 is placed there for monitoring and communicate the detected location to any appropriate control circuitry. In this manner, the garment 310 may facilitate placement of modules 320 in many different discrete locations, the placement of these modules 320 can be controlled by the configuration of the garment 310, and the use of these modules 320 can be automatically detected when the corresponding control module 320 is placed there for use. Additionally or alternatively, the garment 310 may facilitate placement of modules 320 over a relatively large area of the garment 310. For example, the garment 310 may include a relatively large area (in terms of surface area) to which modules 320 can be attached or otherwise secured, for example, by loops, straps, buttons, sheets of hook-and-loop fasteners, and the like.
[0072] Generally, each designated area 312 may include a pocket, such as any of those described above, or other attachment or mounting combination. If a pocket is used, it may be configured as described above to preferentially bias the module 320 therein toward the user's skin under normal pressure. Without limiting the generality of the foregoing, this may generally include an outer layer of the pocket that is less elastic than the inner surface of the pocket, such that when circumferential tension is applied (e.g., when the garment 310 is worn), the pocket preferentially biases the sensor contact surface inward toward the intended target surface at least with a predetermined normal force (assuming the garment 310 is appropriately sized for the user). In this regard, it will be understood that some variation in normal force between the user and the garment is inevitable, but typical tensions for comfortable use of properly fitting athletic apparel are generally known, and appropriate contact forces for obtaining high-quality physiological signals are generally known and, in any event, readily observable in the acquired data. Thus, the appropriate circumferential tension and resulting normal contact force required to promote good contact between the sensing area of the module 320 (such as an LED, capacitive touch sensor, photodiode, etc.) and the user's skin may be easily determined, advantageously facilitating the use of a wrist-worn sensor housing such as described above with one of the garments 310 described herein for monitoring away from the wrist, if desired.
[0073] In one embodiment, the designated regions 312 may be usefully positioned where reinforcing elastic bands are typically found on garments (e.g., around the mid-torso of a sports bra, around the waist of shorts or underwear, or on the sleeves of a T-shirt). In one embodiment, the designated regions 312 may also be usefully positioned according to the intended physiological measurement, for example, near major arteries suitable for heart rate detection using photoplethysmography. In one embodiment, the garment 310 may usefully position these designated regions 312 (and supporting infrastructure such as wired connectors and location identification tags) at the intersection of areas where a good physiological signal can be obtained and areas where the garment can generate a normal force appropriate for good sensor contact. For example, this may include the ankles, lower back, mid-torso, biceps, wrists, and forehead.
[0074] Additionally or alternatively, the garment 310 may incorporate other infrastructure 315 for interfacing with the module 320. For example, the garment infrastructure 315 may include infrastructure 315 associated with an ECG device, such as ECG pads (or conductive sensor pads and / or electrodes that connect to the module 320, the controller 330, and / or other components of the system 300), leads, etc. As a further example, the garment infrastructure 315 may include wires embedded in the garment 310 to facilitate wired data or power transmission between the installed module 320 and other system components (including other modules 320). Additionally or alternatively, the infrastructure 315 may include integration functionality for, for example, providing power to modules, supporting data communication between modules, and supporting operation of the system 300. Additionally or alternatively, infrastructure 315 may include location or identification tags or hardware, a power source for powering modules 320 or other hardware, a communications infrastructure as described herein, a wired in-garment network, or auxiliary components such as a processor, Global Positioning System (GPS) hardware / software, timing devices for synchronizing signals from multiple garments, and beacons for synchronizing signals between multiple modules 320. More generally, any hardware, software, or combination thereof suitable for augmenting the operation of garment 310 and the physiological monitoring system used therewith may be incorporated into garment 310 as infrastructure 315 as contemplated herein.
[0075] The modules 320 may generally be sized and shaped for placement on or within one or more designated areas 312 of the garment 310. For example, in certain implementations, one or more modules 320 may be permanently secured on or within the garment 310. In such cases, the modules 320 may be washable. Also, or alternatively, in certain implementations, one or more modules 320 may be removable and replaceable from the garment 310. In such cases, the modules 320 need not be washable, although the modules 320 may be designed to be washable and / or durable enough to withstand long-term engagement with the designated areas 312 of the garment 310. The modules 320 may be capable of being placed in two or more of the designated areas 312 of the garment 310. That is, one or more of the multiple modules 320 may be configured to detect data using physiological sensors 322 in the multiple designated areas 312 of the garment 310.
[0076] Removable and replaceable modules 320 may provide several advantages, such as ease of garment care (e.g., washing) and power management (e.g., removal for recharging). Additionally, removability may facilitate replacement and / or rearrangement of modules within the garment 310, such as for different sensing activities or other reconfigurations, and replacement of damaged or defective modules 320.
[0077] The module 320 may include one or more physiological sensors 322 and a communication interface 324 programmed to transmit data from the at least one physiological sensor 322. For example, the physiological sensors 322 may include one or more of a heart rate monitor (e.g., one or more PPG sensors), an oxygen monitor (e.g., a pulse oximeter), a blood pressure monitor, a thermometer, an accelerometer, a gyroscope, a position sensor, a global positioning system, a clock, a galvanic skin response (GSR) sensor, or any other electrical, acoustic, optical, or other sensor or combination of sensors useful for physiological, environmental, or other monitoring as described herein. In one embodiment, the physiological sensors 322 may include a conductivity sensor, such as those used for electromyography, electrocardiography, electroencephalography, or other physiological sensing based on electrical signals. The data received from the physiological sensors 322 may include at least one of heart rate data and / or similar data related to blood flow (e.g., from a PPG sensor), muscle oxygen saturation data, temperature data, motion data, position / location data, environmental data, time data, and blood pressure data, etc.
[0078] In one embodiment, the module 320 may be configured for use with multiple body sites. For example, the module 320 may be one of the wrist-worn sensors described above. The module 320 may be adapted for use with the apparel 310 in a variety of ways. In one embodiment, the module 320 may have a relatively smooth, continuous outer surface to facilitate sliding in and out of a pocket, such as any of the pockets described herein, or any other suitable retention structure(s). In another embodiment, the LED and / or sensor area may protrude from the surface of the module 320 sufficiently to extend beyond the restraining apparel material to a user-contacting surface. The module 320 may also include hardware to facilitate such use. For example, the module 320 may usefully incorporate a contact sensor for detecting contact with the user. However, the exposed contact surface of the module 320 may be different when held by a wrist strap (or other limb strap) than when held by a apparel pocket. To facilitate multiple hold modes, module 320 may usefully incorporate two or more contact sensors (e.g., capacitance or other touch sensors, switches, etc.) in two different locations, each sensor positioned to detect contact with the wearer in a different hold mode. For example, module 320 may include a capacitance sensor adjacent to an optical detection system that contacts the user's skin when module 320 is held by a wrist strap. Also or alternatively, module 320 may optically detect contact even when the capacitance sensor is covered, such as by clothing fabric, that prevents direct contact with the skin, or a second capacitance sensor may be positioned in another area exposed by the garment 310 that holds the system. In another aspect, garment 310 may include a capacitance sensor that provides a signal to module 320 or some other system controller, etc., when an area of the garment near module 320 is in contact with the user's skin.
[0079] In one aspect, the physiological sensor 322 may include a heart rate monitor or pulse sensor, where, for example, heart rate is optically detected from an artery such as the radial artery. In one embodiment, the garment 310 may be configured such that the module 320 is placed on the user's wrist and the physiological sensor 322 of the module 320 is secured over the user's radial artery or other blood vessel. Secure connection and placement of the pulse sensor over the radial artery or other blood vessel facilitates measurement of heart rate, blood oxygen levels, and the like. It should be understood that this configuration is provided for illustrative purposes only, and other sensors, sensor locations, and monitoring techniques may be utilized without departing from the scope of the present disclosure and / or in the alternative.
[0080] In some embodiments, heart rate data may be obtained using an optical sensor coupled with one or more light emitting diodes (LEDs) all in contact with the user 301. To facilitate optical sensing, the garment 310 may be designed to ensure that the physiological sensor 322 remains in continuous contact with the skin and to reduce external light interference with optical sensing by the physiological sensor 322.
[0081] Thus, certain embodiments include one or more physiological sensors 322 configured to continuously provide heart rate measurements using, for example, photoplethysmography. The physiological sensors 322 may include one or more light emitters for emitting light at one or more desired frequencies toward the user's skin and one or more photodetectors for receiving light reflected from the user's skin. The photodetectors may include photoresistors, phototransistors, photodiodes, and the like. A processor may process the light data from the photodetector(s) to calculate the heart rate based on the measured reflected light. The light data may be combined with data from one or more motion sensors (e.g., accelerometers and / or gyroscopes) to minimize or eliminate noise in the heart rate signal caused by movement or other artifacts. Additionally or alternatively, the physiological sensors 322 may perform at least one of continuous motion detection, environmental temperature detection, electrodermal activity (EDA), and / or galvanic skin response (GSR), and the like.
[0082] The system 300 may include different types of modules 320. For example, multiple different modules 320 may each provide a specific function. Thus, the garment 310 may house one or more of a temperature module, a heart rate / PPG module, a muscle oxygen saturation module, a tactile module, a wireless communication module, or a combination thereof, any of which may be integrated into a single module 320 or may be arranged in separate modules 320 that can communicate with each other. Some measurements, such as temperature, motion, and optical heart rate detection, may have preferred or fixed locations, and pockets or fixtures within the garment 310 may be adapted to receive particular types of modules 320 at specific locations within the garment 310. For example, motion may be preferentially detected at or near the extremities, while heart rate data may be preferentially collected near major arteries. In another aspect, some measurements, such as body temperature, may be measured anywhere but may be preferably measured in a single location to avoid certain calibration issues that may arise with arbitrary placement.
[0083] In another embodiment, the system 300 may include two or more modules 320 located at different locations and configured to perform differential signal analysis. For example, pulse wave velocity and the degree of cardiac signal attenuation may be detected at two or more locations (e.g., the user's biceps and wrist, or other locations similarly positioned along the arteries) using two or more modules. These multiple measurements support differential analysis that enables useful inferences about cardiac strength, circulatory flexibility, blood pressure, and other aspects of the cardiovascular system that may indicate cardiac age, cardiac health, and cardiac disease. Similarly, muscle activity detection may be measured at different locations to facilitate differential analysis, such as to identify activity types and determine muscle strength. More generally, multiple sensors can facilitate differential analysis. To facilitate this type of analysis more accurately, the garment's infrastructure may include beacons or clocks to synchronize signals among multiple modules, especially when data is temporarily stored locally at each module or when data is transmitted wirelessly to a processor from different locations where packet loss, latency, and the like can pose challenges for real-time processing.
[0084] The communication interface 324 may be any of those described herein, including, for example, any of the features of the network interface 304 described above. The communication interface 324 may be a separate device that provides the ability for the modules 320 to communicate with each other and / or other components of the system 300, or there may be a central module that communicates with the other modules 320 (or other components of the system 300). As will be appreciated, communications may be usefully secured using any suitable encryption technique to ensure the privacy and security of user data. This may include, for example, encryption of local (wired or wireless) communications between the modules 320 and / or controller 330 within the garment 310. Also, or alternatively, this may include encryption of remote communications to servers and other remote resources. In one aspect, the garment 310 and / or controller 330 may provide a cryptographic infrastructure for securing local communications, for example, by managing public / private key pairs for use in asymmetric encryption, authentication, digital signatures, and the like. Also, or alternatively, the keys for this infrastructure may be managed by an external trusted third party.
[0085] The controller 330 may be configured, for example, by computer executable code, to determine the position of the module 320. This may be based on situational measurements, such as accelerometer data, from the module 320, which may be analyzed by machine learning models or the like to estimate body position. In another embodiment, this may be based on other signals from the module 320. For example, signals from sensors, such as photodiodes, temperature sensors, resistors, capacitors, and the like, may be used alone or in combination to estimate body position. In another embodiment, the position may be determined based on the proximity of the module 320 to a proximity sensor, RFID tag, or the like, at or near one of the designated areas 312 of the garment 310. Based on the position, the controller 330 may adapt the operation of the module 320 for location-specific operation. This may include filter selection, processing models, physiological signal detection, and the like. It will be appreciated that the operations of the controller 330 (which may be any controller, microcontroller, microprocessor, or other processing circuit, etc.) may be performed in cooperation with another component of the system 300, such as the processor 340 described herein, one or more modules 320, or another computing device. It will also be appreciated that the controller 330 may be located in a local component of the system 300 (e.g., on the garment 310, in the module 320, etc.), or may be located as part of a remote processing facility 350, or some combination thereof. Thus, in one embodiment, the controller 330 is included in at least one of the multiple modules 320. In another embodiment, the controller 330 is a separate component of the garment 310 and serves to coordinate the functionality of the various modules 320 connected to it. Additionally or alternatively, the controller 330 may be remote from each of the multiple modules 320, or some combination thereof.
[0086] Additionally, position detection (i.e., of the module 320 and / or physiological sensor 322) may be usefully recorded and used in a variety of ways by a human user and / or by the system 300. For example, the detected positions may be stored with the corresponding garment, allowing the user to search the placement history and return the module 320 of a particular garment to a previous position if necessary. In another aspect, the detected positions may be used by the system 300 to analyze the data and make garment-specific recommendations. For example, the system 300 may assess signal quality using any conventional metric, such as signal-to-noise ratio, or using quality metrics specific to physiological signals (such as correlation with expected signal or pulse shape, consistency with a rate or magnitude typical of the sensor, consistency between pulses for a particular user, or any other metric of signal quality using statistics, machine learning, digital signal processing techniques, etc.). However, the derived quality metrics may then be used to recommend a particular placement of the module 320 on the garment 310 to the user, or to recommend a particular garment 310 to the user. Thus, for example, after obtaining data regarding various garments and activities, system 300 may generate user-actionable recommendations such as, "When jogging, wearing an XL shirt with model number xxxxxx seems to provide the most accurate heart rate signal. You might want to wear this shirt for vigorous workouts, and you might want to buy more shirts of this type for everyday wear." As another example, a user-actionable recommendation might suggest, "When one of the modules is located in the elastic band on your sleeve, you don't seem to be getting accurate temperature readings. You might want to reposition this module or try a different garment." More generally, data quality might be measured for many different modules in various positions on various garments during various activities, and this data might be used to generate recommendations customized to the user on a garment-by-garment and location-by-location basis.These recommendations may also be tailored to the specific type of activity for which this data has been precisely recorded by the system 300, whether from user input, automatic detection, or some combination thereof.
[0087] The controller 330 may be configured to control one or more of: (i) the sensing performed by the physiological sensors 322 of the module 320; and (ii) the processing of data received from the physiological sensors 322 by the module 320. That is, in certain embodiments, the combination of sensors in the module 320 may vary based on where it is intended to be placed on the garment 310. In other embodiments, the processing of data from the module 320 may vary based on where it is placed on the garment 310. In this latter embodiment, a processing resource such as the controller 330, or some other local or remote processing resource coupled to the module 320, may detect location and adapt the processing of data from the module 320 based on the location. This may include, for example, selecting different models, algorithms, or parameters for processing the detected data.
[0088] In another aspect, this may involve selecting from a variety of different activity recognition models based on the detected location. For example, a variety of different activity recognition models, such as machine learning models, lookup tables, or analytical models, may be developed and applied to the accelerometer data to detect the type of activity. Additionally or alternatively, other motion data, such as gyroscope data, may be used, and the activity recognition process may be augmented with other potentially relevant data, such as data from barometers, magnetometers, and GPS systems. This may generally distinguish between sleeping, resting, and exercising, for example, or it may more finely distinguish between different types of athletic activities, such as walking, running, cycling, swimming, tennis, and squash. While a useful model for detecting activity may be developed in this way, the nature of the detection depends on where the accelerometer is located on the body. Thus, processing resources may usefully first determine location using a location detection system (such as a tag, electromechanical bus connection, etc.) integrated into the garment 310, and then use this detected location to select an appropriate model for activity recognition. This technique may similarly be applied to calibration models, physiological signal processing models, and the like, or to adapt the processing of signals from module 320 based on the location of module 320.
[0089] Determining the location of the module 320 may include receiving a detected location (hereinafter referred to as the detected location) of the module 320. The detected location may be provided by proximity detection circuitry such as a near-field communication (NFC) tag, an RFID tag (active or passive), a capacitance sensor, a magnetic sensor, electrical contacts, mechanical contacts, etc. Any corresponding hardware for such proximity detection may be disposed in the module 320 and the garment 310 for communication between the module 320 and the garment 310 to detect location, as appropriate. For example, in one embodiment, an NFC tag may be disposed on or within the garment 310, and the module may include a sensor 322, such as an NFC tag sensor, that can detect the tag and read some location-specific information therefrom. Additionally or alternatively, proximity detection may be performed using capacitively detected contact, electromagnetically detected proximity, mechanical contact, electrical coupling, etc. In this manner, the garment 310 may, among other things, provide information to the installed module 320 to inform the module 320 where it is located, or vice versa.
[0090] Thus, communication between the module 320 and the garment 310 (or a processor in the garment 310) can be used to determine the location of the module 320 on the garment 310. Communication of location information can be enabled using active technology, passive technology, or a combination thereof. For example, thin, flexible, inexpensive, and washable NFC tags can be sewn into the garment 310 at various locations where the module 320 can be placed. When the module 320 is placed on the garment 310, the module 320 may interrogate adjacent NFC tags to determine its location. Additionally, NFC technology or other similar technologies may provide the module 320 with other information, including details about the garment 310, such as size, whether it is gender-specific, manufacturer information, the garment's model number or serial number, and stock-keeping unit (SKU). Similarly, the tag may encode a unique identifier for the garment 310, which can be used to obtain other relevant information using online resources. Also, or alternatively, a module 320 may communicate information about itself to the garment 310 so that the garment 310 can synchronize processing with other modules 320, synchronize communications between modules 320, control or adjust signals from modules 320, etc. The module 320 may then configure itself within the context of the current garment 310 and associated modules 320 and / or may be configured to perform certain types of monitoring or data processing.
[0091] Additionally or alternatively, determining the location of the module 320 may be based at least in part on interpretation of data received from the physiological sensors 322 of the module 320. As one example, movement of the module 320 as detected by the sensors may provide information that can be used to predict a location on or within the garment 310. Additionally or alternatively, the type of data received from the module 320 may indicate where the module 320 is located on the garment 310. For example, the location may generate a unique signature, such as acceleration, gyroscope activity, capacitance data, optical data, and body temperature (temperature) data, depending on where the module 320 is located, and this data may be fused and analyzed in any suitable manner to obtain a location prediction.
[0092] In accordance with the above, and / or alternatively, determining the location of the module 320 may include receiving explicit input from the user 301, which may identify a designated region on the garment 310 or one of the general regions of the body (e.g., left wrist, right ankle, etc.). Because the location of the module 320 relative to the garment 310 may be determined from an analysis of multiple data sources, the system 300 may include a component (e.g., processor 340) configured to reconcile one or more potential sources of location information based on expected reliability, measured data quality, explicit user input, etc. In this context, a prediction reliability may also be usefully generated and may be used, for example, to determine whether to query the user for more specific location information. More generally, any of the foregoing techniques may be used in conjunction or combination with fail-safe measures that require user input if the location cannot be predicted with confidence. Also, or alternatively, the user may explicitly specify a prediction preemptively or as an override to an automatically generated prediction.
[0093] Once determined using any of the above techniques, the location of module 320 may be transmitted to a remote processing facility 350, database 360, or the like for storage and analysis. That is, in addition to module 320 using this information locally to configure itself with respect to the location in which module 320 is worn, module 320 may communicate this information to other modules 320, peripheral devices, or the cloud. Processing this information in the cloud may help an organization determine whether module 320 has ever been worn on apparel 310, which locations are most used, and how module 320 performs differently in different locations. These analyses may be useful for many purposes, such as to improve the design or use of module 320 and apparel 310 for a population, user type, or specific user.
[0094] As described above, the system 300 may further include a processor 340 and a memory 342. Generally, the memory 342 may include computer-executable code configured to be executed by the processor 340 and to perform processing of data received from one or more of the modules 320. The one or more processors 340 and memory 342 may be located in local components of the system 300 (e.g., the garment 310, the modules 320, and the controller 330, etc.) or may be located as part of a remote processing facility 350, etc., as shown in the figures. Thus, in one embodiment, the one or more processors 340 and memory 342 are included in at least one of the multiple modules 320. In this manner, processing may be performed on a central module or separately in each module 320. In another embodiment, the one or more processors 340 and memory 342 are remote from each of the multiple modules 320. For example, processing may be performed on a connected peripheral device, such as a smartphone, laptop, local computer, or cloud resources.
[0095] The memory 342 may store one or more algorithms, models, and supporting data (e.g., parameters, calibration results, user preferences, etc.) for transforming data received from the physiological sensors 322 of the module 320. Thus, appropriate models, algorithms, adjustment parameters, etc. may be selected for use in transforming the data based on the location of the module 320 as determined by the controller 330 and / or processor 340, as described herein. As an example, an algorithm for transforming data from an accelerometer in the module 320 into activity data or a user's step count may differ depending on whether the module 320 is worn on the user's wrist or on the user's waistband. Similarly, the intensity of LEDs and the sensitivity of corresponding photodetectors may differ for a PPG device placed on the wrist or the thigh. Thus, the module 320 may self-configure for location by controlling one or more of the sensor type, sensor parameters, processing model, etc., based on the detected location of the module 320.
[0096] Additionally or alternatively, the selection of the algorithm may include one or more analyses of sensor data, metadata, and the like. As an example, the algorithm may be selected at least in part based on metadata received from either the module 320 or the garment 310. This metadata may be derived from communication between the module 320 and the garment 310 (e.g., between a tag and a tag reader to exchange information). For example, the garment 310 may include garment-specific metadata stored on a tag, such as an NFC tag, or other wirelessly readable data source, readable by or transmittable to one or more of the modules 320, controller 330, and processor 340. Such garment-specific metadata may include at least one of the type of garment 310, the size of the garment 310, garment dimensions, gender preference of the garment 310, manufacturer, model number, serial number, SKU, materials, fit information, and the like. In one aspect, this information may be provided by one or more location identification tags described herein. In another embodiment, the garment 310 may include additional tags in appropriate locations (e.g., near or accessible to the processor or controller) that provide garment-specific information, while other tags provide location-specific information.
[0097] Additionally or alternatively, the metadata may include at least one of the user's 301 gender, the user's 301 weight, the user's 301 height, the user's 301 age, and metadata associated with the garment 310 (e.g., garment size, type, material, etc.). The metadata may be derived at least in part from input provided by the user or from information derived from the user 301, such as the user's account information as a participant in the system 300. As an example, a processing algorithm may be selected depending on the material of the garment 310, as conveyed by the serial number or model number of an identification tag, physiological characteristics of the user 301 implied by the garment size, etc. Additionally or alternatively, the metadata may be used to verify the authenticity of the garment 310 and to control access to the garment 310 and / or modules 320 coupled to the garment 310. In one aspect, the metadata (e.g., size, material) may be directly encoded into the garment metadata. In another aspect, the garment 310 may expose a unique identifier that can be used to retrieve relevant information from the manufacturer or other data sources. This latter approach advantageously allows for correlation of garment-specific data with other user-specific data such as height, weight, and body composition.
[0098] Simply knowing in advance where module 320 will be located may allow the use of algorithms developed to work optimally in that particular location. This may alleviate the heavy computational burden borne by module 320 to analytically estimate location based on available signals. Additionally or alternatively, other information may be used to select the optimal algorithm. For example, based on the gender or size of the garment, the algorithm may utilize different models or different model parameters.
[0099] The processor 340 may be configured to evaluate the quality of the data received from the physiological sensor 322 of the module 320. For example, the processor 340 may be configured to provide recommendations regarding at least one of the position of the module 320 and aspects of the garment 310 (e.g., size, fit, material, etc.) based on the quality of the data. For example, the processor 340 may be configured to detect when the garment does not properly fit the wearer for physiological data acquisition, e.g., by detecting when the module is moving (e.g., from accelerometer data) but the data quality of the detected physiological signal is insufficient or missing. In general, the garment 310 may store its own identifier and / or metadata, e.g., as described herein, or garment identification data may be stored, for example, on a tag in a designated area 312 of the garment 310. The processor 340 may be configured to use this garment identification information and / or metadata to provide the user 301 with recommendations regarding different garments 310 or adjustments to the current garment 310. For example, if a particular garment 310 is deemed to result in low quality data, the user 301 may be encouraged to select an alternative size or make some other adjustment. Additionally, data regarding how many times a garment 310 is used may be collected and used to inform business decisions, such as which garments 310 provide the highest quality data and which garments 310 are most preferred by the user 301.
[0100] System 300 may further include a database 360, which may be remotely located and in communication with system 300 via data network 302. Database 360 may store data related to system 300 as discussed herein, such as detected data, processed data, transformed data, metadata, physiological signal processing models and algorithms, and individual activity history. System 300 may further include one or more servers 370 that host data, provide a user interface, process data, etc., to facilitate use of module 320 and garment 310 as described herein.
[0101] As will be appreciated, the garment 310, module 320, and associated garment infrastructure and remote network / processing resources can be used advantageously in combination to improve physiological monitoring and enable monitoring modes not previously available.
[0102] One or more of the devices and systems described herein may include circuitry for both wireless charging and wireless data transmission, e.g., where the corresponding circuits can operate independently of one another and the corresponding antennas are located in close proximity to one another (e.g., the circuitry for wireless charging and the circuitry for wireless data transmission may include separate coils positioned along substantially the same plane or relatively close together within the device or system). In such aspects, one or more measures may be taken to prevent the wireless data transfer process from interfering with the wireless power transfer process (more specifically, by altering the resonant frequency or coupling the data circuitry to the electromagnetic field for wireless power transmission in a manner that detrimentally interferes with the power transfer, reducing its efficiency in charging the device). For example, a switch may be included to disable the circuitry for data transmission when a specific wireless charging activity is present, thereby allowing for relatively unimpeded and efficient wireless charging of the device. The switch may also be operable to enable operation of the data transmission circuitry when a specific wireless charging activity is absent.
[0103] Thus, in the context of a physiological monitor, such as any of the physiological monitors described herein, the physiological monitor may include both a wireless power receiver (or the like) and a wireless data tag reader (or the like). Generally, these subsystems may conform to one or more Near Field Communication (NFC) specifications for protocols and physical architecture, or any other standard suitable for wireless power and data transmission. The power circuit may be used, for example, to charge the physiological monitor's battery so that the device can be recharged without physically connecting it to a power source. The data circuit may be used, for example, as a wireless data tag reader, or the like, to read data from a nearby data source, such as an identification tag on a user's clothing. Generally, the physiological monitor may include separate circuits (separate coils) for these wireless power and data systems, such as separate processing circuits and / or separate antennas. The antennas may be positioned along substantially the same plane of the physiological monitor (e.g., one coil positioned substantially inside or adjacent to the other coil). In one aspect, the antennas may reside in parallel planes, although it is noted that the distance tolerance of NFC-compliant devices is relatively small, and the physical housing of these antennas preferably forces the distances of both antennas in such an architecture to be the same or substantially the same. In this regard, the antennas may be positioned as close to parallel as possible within reasonable manufacturing tolerances, or may be positioned as close to parallel as possible when located on two different layers of a shared printed circuit board, or preferably when located on a single layer of a shared printed circuit board. The physiological monitor may further include a switch (e.g., a radio frequency (RF) switch, etc.) in series with the coil for the wireless data tag reader to disable the wireless data tag reader when receiving power to mitigate any impact on the efficiency of the wireless power transfer process. In particular, the switch may be configured to open when power is being received and to close when the physiological monitor is seeking a data tag to read.
[0104] 4 is a block diagram of a computing device 400. The computing device 400 may be, for example, a device used for continuous physiological monitoring or any other device that supports a physiological monitor in the systems and methods described herein. Alternatively or alternatively, the device may be any of the local computing devices described herein, such as a desktop computer, laptop computer, or smartphone. Alternatively or alternatively, the device may be any of the remote computing resources described herein, such as a web server, cloud database, file server, application server, or any other remote resource. While described as a physical device, it should be understood that the exemplary computing device 400 may also or alternatively be implemented as a virtual computing device, such as a virtual machine running a web server or other remote resource on a cloud computing platform. In general, the device 400 may include one or more sensors 402, a battery 404, storage 406, a processor 408, memory 410, a network interface 414, and a user interface 416, or one or more virtual instances of the foregoing.
[0105] The sensors 402 may include any sensor or combination of sensors suitable for heart rate monitoring as contemplated herein, as well as sensors 402 for detecting calorie expenditure, location (e.g., via a global positioning system (GPS), etc.), movement, activity, etc. In one aspect, this may include an optical sensing system including an LED or other light source along with a photodiode or other optical sensor, which may be used in combination for photoplethysmographic measurement of heart rate, pulse oximetry measurement, and other physiological monitoring.
[0106] Additionally or alternatively, the sensors 402 may include one or more sensors for measuring activity. In some embodiments, the system may include one or more multi-axis accelerometers and / or gyroscopes to measure activity. In some embodiments, the accelerometer may further be used to filter signals from an optical sensor for measuring heart rate to provide more accurate heart rate measurements. In some embodiments, the wearable system may include a multi-axis accelerometer to measure movement and calculate distance. A motion sensor may be used to classify or categorize activities such as walking, running, playing another sport, standing, sitting, or lying down. The sensors 402 may include, for example, a thermometer for monitoring the user's body temperature or skin temperature. In one embodiment, the sensors 402 may be used to recognize sleep based on a decrease in body temperature, galvanic skin response data, a lack of movement or activity according to data collected by an accelerometer, a decrease in heart rate measured by a heart rate monitor, etc. Body temperature, in combination with heart rate monitoring and movement, can be used, for example, to interpret whether a user is asleep or simply resting, and how well an individual is sleeping. Body temperature, movement, and other detected data can also be used to determine whether a user is exercising, and to classify and / or analyze activity, as described in more detail below. In another embodiment, sensor 402 may include one or more contact sensors, such as capacitive or resistive touch sensors, for detecting the position of a physiological monitor for use with a user. More generally, sensor 402 may include any sensor or combination of sensors suitable for monitoring geographic location, physiological state, movement, movement, and the like, in any manner useful for physiological monitoring as contemplated herein.
[0107] The battery 404 may include one or more batteries configured to allow for continuous wearing and use of the wearable system. In one embodiment, the wearable system may include two or more batteries, such as an internal battery that maintains operation of the device 400 while the main battery is charging, along with a removable battery that can be removed and recharged using a charger. In another aspect, the battery 404 may include a wirelessly rechargeable battery that can be recharged using a short-range or long-range wireless recharging system.
[0108] The processor 408 may include any microprocessor, microcontroller, signal processor, or other processor or combination of a processor and other processing circuitry suitable for performing the processing steps described herein. Generally, the processor 408 may be configured with computer-executable code stored in the memory 410 to provide the activity recognition and other physiological monitoring functions described herein.
[0109] Generally, memory 410 may include one or more non-transitory computer-readable media for storing one or more computer-executable instructions or software for implementing exemplary embodiments. Non-transitory computer-readable media may include, but are not limited to, one or more types of hardware memory and non-transitory tangible media (e.g., one or more magnetic storage disks, optical disks, USB flash drives), etc. In one aspect, memory 410 may include computer system memory or random access memory, such as DRAM, SRAM, EDO RAM, etc. Memory 410 may also include other types of memory, or combinations thereof, as well as virtual instances of memory (e.g., where the device is a virtual device). Generally, memory 410 may store computer-readable and computer-executable instructions or software for implementing the methods and systems described herein. Memory 410 may also or alternatively store physiological data, user data, or other data useful for the operation of a physiological monitor or other device described herein (such as data collected by sensor 402 during operation of device 400).
[0110] Network interface 414 may be configured to wirelessly communicate data to server 420, for example, via an external network 418 (such as, for example, any public, private, or other data network described herein, including a local area network, the Internet, and a cellular data network, or any combination of the above). If the device is a physiological monitoring device, network interface 414 may be used, for example, to transmit raw or processed sensor data stored in device 400 to server 420, as well as to receive update information, receive configuration information, and communicate with remote resources and users to support the operation of the device. More generally, network interface 414 may include any interface configured to connect to one or more networks (e.g., a local area network (LAN), a wide area network (WAN), the Internet, or a cellular data network) via a variety of connections, including, but not limited to, a standard telephone line, a LAN or WAN link (e.g., 802.11, T1, T3, 56kb, X.25), a broadband connection (e.g., ISDN, Frame Relay, ATM), a wireless connection, or any combination of any or all of the above. Network interface 412 may include a built-in network adapter, a network interface card, a PCMCIA network card, a card bus network adapter, a wireless network adapter, a USB network adapter, a modem, or any other device suitable for connecting to and operating with any type of network with which computing device 400 can communicate and perform the operations described herein.
[0111] User interface 416 may include any components suitable for supporting interaction with a user. This may include, for example, a keypad, a display, a buzzer, a speaker, a light-emitting diode, a capacitive touch sensor or pad, and any other components for receiving input from or providing output to a user. In one aspect, device 400 may be configured to receive tactile input, such as by responding to a series of taps on the surface of the device, to change operational states, display information, and the like. User interface 416 may also or alternatively include a graphical user interface rendered on a display for graphical user interaction with programs executing on processor 408, and other content rendered by a physical display of device 400.
[0112] A system for dynamic stress scoring
[0113] Described herein are techniques for managing stress, including techniques for quantifying stress using, for example, physiological monitoring devices and / or any other suitable situational data to obtain continuous or periodic quantitative and objective indicators of stress, and techniques for analyzing such quantitative stress data to provide coaching or other guidance, feedback, recommendations, etc. Generally, stress as described herein may include any measurable physiological and / or psychological response to various stressors or stimuli, such as physical stressors, environmental stressors, and psychological stressors.
[0114] In one aspect, stress may be physiological stress in response to physiological stressors that physically induce stress in a user. For example, physiological stressors may include muscular and / or cardiovascular activity, such as training, sports activities, or other routine or sporadic activities that strain an individual due to physical demands. Additionally or alternatively, physical stressors may include illness, exposure (e.g., toxins, allergens, drugs, alcohol, etc.), dehydration, and inadequate or poor quality sleep that strain an individual due to behavioral or situational factors. In another aspect, stress may be environmental stress in response to environmental stressors, such as sound, odor, lighting, temperature, humidity, etc., any of which may strain an individual due to exposure. In another aspect, stress may be emotional stress in response to psychological stressors, such as work pressure, financial difficulties, relationship problems, and / or health concerns that strain an individual due to psychological or emotional conditions.
[0115] In some cases, a particular stimulus may induce one or more types of stress. For example, heat or cold may be an environmental stressor, and contact with cold (e.g., rapid immersion in cold water) or heat (e.g., contact with a hot metal surface) may elicit a short-term physiological response, such as the fight-or-flight response. However, heat or cold may also be a physiological stressor, for example, if a user has a physiological reaction to prolonged exposure to heat or cold. Similarly, sleep deprivation is known to result in suppressed immune function and emotional dysregulation. While these may be physiological stressors, they may also result in greater emotional stress throughout the day, thus creating additional psychological stressors for the user. Users may also be exposed to other compound or complex stressors. For example, excessive alcohol consumption may result in physiological stress as the body attempts to metabolize and process the ingested alcohol. This may also reduce sleep quality, causing further psychological stress later in the day. More generally, a user may be subjected to multiple stressors of various forms simultaneously or successively, which may contribute to accumulated stress over hours or days.
[0116] If possible, it may be useful to isolate and monitor various objectively measured contributors to a user's stress to provide more appropriate coaching feedback. For example, when facing a perceived threat, the brain sends a signal to the hypothalamus, which activates the sympathetic nervous system. This triggers the release of hormones such as adrenaline and cortisol, increasing heart rate, respiratory rate, and blood pressure. Small amounts of this type of stress can help prompt behavior to deal with challenging situations. However, chronic or excessive stress of this type can cause adverse effects such as anxiety, depression, fatigue, or a weakened immune system. At the same time, physiological stress responses can be a healthy response to strenuous activity. Progressive monitoring of various stress responses can support daytime updates to performance metrics and coaching recommendations, for example, to support updated workload calculations and / or real-time recommendations regarding new or ongoing exercise, dieting, and the like.
[0117] To this end, stress characterization can be aided by various forms of contextual data about the user. For example, contextual information can include environmental conditions such as temperature and air quality, which can be measured (e.g., by measuring ambient temperature with a wearable device) or obtained from a third-party source (e.g., based on reported air quality metrics) and used to estimate environmental contributions to the measured stress. In another aspect, contextual information can include motion data (e.g., when a user's activity is monitored with a motion sensor in a wearable device and used to isolate instances of stress due to physical activity). For example, if a user's heart rate is elevated, this can be attributed to exercise, and in this case, concurrent motion can be detected by a motion sensor in the wearable device and, in particular, identified as being associated with a particular type of activity (e.g., swimming, cycling, jogging, weightlifting, tennis, etc.).
[0118] In another aspect, the contextual data may include self-reported user activity (e.g., dieting, drinking, smoking, etc.), which may be used to estimate associated physiological responses that may appear in the stress data. In another aspect, the contextual data may include activity measured or inferred by a physiological monitor. For example, if a wearable monitor can measure core body temperature or blood pressure, these physiological indicators may be used to assess possible health issues that may affect the measured stress. As another example, if physiological data can be used to identify sleep patterns or activities, this may be leveraged in stress calculations. For example, elevated physiological responses (e.g., increased heart rate) during sleep, particularly during intervals limited to the dreaming sleep stage, may be interpreted as psychological stress, while persistent changes in heart rate or heart rate variability over longer sleep intervals may indicate signs of physical stress, such as recovery or illness.
[0119] Where circumstances permit, the calculated stress score may include situational adjustments or multiple scores for different forms of stress, or may include indicators of various factors contributing to an aggregate or momentary stress score measured for a user. As a significant advantage, the techniques described herein can facilitate real-time or near-real-time monitoring and management of psychological and physiological stress factors. As another advantage, the techniques described herein can facilitate separate measurement of different contributing factors to the calculated stress response, for example, to enable separation and analysis of contributing factors due to physical, environmental, and psychological stimuli.
[0120] 5 illustrates a system for dynamic stress monitoring. In general, physiological monitoring system 500 may include a wearable device 502, such as any of the physiological monitors described herein, a remote resource 504, such as any of the servers or other remote processing resources described herein, and a user device 506, such as any of the user devices described herein, and a data network 508 communicatively interconnecting these devices.
[0121] The wearable device 502 may continuously monitor, measure, and / or calculate physiological parameters such as heart rate, heart rate variability, body temperature, electrical characteristics (e.g., skin potential), blood pressure, stress, and movement, and transmit this data to a remote resource 504 via a data network 508. Based on this data, the remote resource may calculate metrics such as a daily sleep score (assessing the previous night's sleep), a daily strain score (assessing the previous day's strain), and / or a daily recovery score (assessing readiness to respond to strain), using, for example, the technology described in U.S. Patent No. 10,264,982, issued April 23, 2019, the entire contents of which are incorporated herein by reference. This server-based approach advantageously allows data-intensive and computationally intensive processing to be offloaded to a remote server or other computing system with appropriate capabilities, e.g., for metrics based on heart rate and motion data over a 24-hour period. However, this approach may be less effective for updating strain that changes gradually throughout the day.
[0122] Thus, in one aspect, the techniques described herein may be advantageously implemented to dynamically monitor stress throughout the day and update user metrics and coaching recommendations in real time or otherwise as needed. More specifically, the dynamic stress monitor 510 may be located locally on the wearable device 502 or at some other convenient location (such as the user device 506), where it can perform frequent local calculations to dynamically report and / or update user information. This approach also advantageously facilitates rapid detection of significant stress events so that appropriate interventions can be recommended.
[0123] As will be understood, in this context, "dynamic" scoring refers to scoring performed gradually over an extended period of time, such as hours or days, during a static, remote calculation performed on a server or other remote resource. While dynamic scoring generally involves a discrete calculation performed over a specific time period or interval, the scoring may be updated in any periodic (periodic) or substantially continuous manner so that the user receives a timely quantitative assessment. For example, this may include updates as close to instantaneous as possible, with little or no perceptible delay, so that the user experiences it in real time, or updates over short intervals, such as every second or every few seconds, so that the user can compare the current dynamic score to their current subjective state. In another aspect, if the stress calculation is more computationally complex and / or processed remotely, the current stress score may be calculated and updated for the user at intervals such as once per minute, or at shorter or longer intervals suitable for use by the user. This may also include changing the frequency, for example, to update more frequently and / or to provide a more up-to-date calculation while the user is viewing the stress score. For example, the dynamic score may be updated once per minute and also updated instantly (e.g., on-demand) whenever the user checks the stress score. As another example, implementations may include providing a user with information related to the accumulation of stress over a day or other time period, such as by presenting the user with the time (e.g., in minutes) spent in various stress zones throughout the day or other relevant time period. More generally, any amount or frequency of updates that facilitates dynamic tracking of stress and / or supports feedback to the user regarding their current stress state may be used to support tracking and reporting of a user's current subjective or physiological stress state.
[0124] In another aspect, a system described herein may include a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire heart rate data of a user based on signals from the one or more sensors; and one or more processors communicatively coupled to the wearable physiological monitor. The one or more processors may be configured with computer-executable code to receive data from the wearable physiological monitor, calculate a heart rate variability index of the user based on the heart rate data, calculate a heart rate index of the user based on the heart rate data, determine a resting state of the user based on the heart rate data, and calculate a stress score for the user. The stress score may be calculated based on a weighted combination of the heart rate variability index and the heart rate index, where the weighted combination uses a first weight for the heart rate index based on the resting state of the user and a second weight for heart rate variability based on the resting state of the user. The system may further include a display device in communication with the one or more processors, the display device including a user interface configured to present a value indicative of the stress score to a user. In some aspects, at least one processor of the one or more processors is located on the display device. In some aspects, at least one processor of the one or more processors is located on a remote server. In some aspects, at least one processor of the one or more processors is located on the user device. In some aspects, one processor of the one or more processors is located on the remote server and another processor of the one or more processors is located on the user device. Thus, it will be appreciated that at least a portion of the stress score may be calculated using processing power of both the user device and the remote server.
[0125] In another aspect, a system described herein includes a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire data of a user, including heart rate, heart rate variability, and movement, based on signals from the one or more sensors; and a second processor communicatively coupled to the wearable physiological monitor. The second processor may be configured with computer-executable code to receive data from the physiological monitor and measure an aggregate heart rate of the user over an interval; determine whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; calculate a stress score for the user over the interval based on data from the physiological monitor acquired during the interval, in response to determining that the aggregate heart rate is outside the predetermined range; and calculate a stress score for the user based on data from the physiological monitor acquired during the interval, using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used when the aggregate heart rate was determined to be outside the predetermined range. The system may further include a display device in communication with the second processor, the display device including a user interface configured to present to the user a value indicative of the stress score over the interval. The second processor may be located in one or more of the wearable physiological monitor, the display device, and a remote server.
[0126] As will be appreciated, when discussing heart rate and / or similar metrics (e.g., resting heart rate, heart rate variability, etc.) herein, the term “aggregate” (e.g., “aggregate heart rate” discussed in the previous paragraph) will include metrics that consider multiple measurements (e.g., over one or more particular time intervals). Thus, instead of analyzing individual data points, such aggregate metrics can be used to examine overall characteristics or trends of a data set. This aggregation process may include combining, averaging, summing, or otherwise summarizing values in the data set to derive a single “aggregate” metric. Such aggregate metrics may include, without limitation, at least one of the following: mean, median, mode, sum, range, rate, percentage, ratio, and the like. Additionally or alternatively, aggregate metrics may include or otherwise consider one or more of the following: variance, standard deviation, coefficient of variation, and the like.
[0127] In another aspect, a system disclosed herein includes a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire data including a user's heart rate, heart rate variability, and movement based on signals from the one or more sensors; and a second processor communicatively coupled to the wearable physiological monitor. The second processor may be configured by computer-executable code to receive data from the physiological monitor, determine a sleep state of the user, and, in response to determining the sleep state to be a wakefulness state, calculate a stress score for the user over an interval based on the data received from the physiological monitor; and, in response to determining the sleep state to be a sleep state, calculate a stress score for the user over an interval based on the data received from the physiological monitor using a weighted contribution of heart rate variability to heart rate that is lower than that of a wakefulness state. The system may further include a display device in communication with the second processor, the display device including a user interface configured to present a value indicative of the stress score over the interval to the user. The second processor may be located in one or more of the wearable physiological monitor, the display device, and a remote server.
[0128] Dynamic stress scoring using models
[0129] 6 is a flow diagram of a method for dynamic stress monitoring. Dynamically monitored stress may include physiological stress, psychological stress, or a combination thereof, and may be quantified and updated to provide current and cumulative measurements throughout the day, for example, based on data obtained by a continuously wearable physiological monitor, such as any described herein. Method 600 may be used to provide a user with recommendations for implementing basic interventions that may enable the user to, for example, adjust psychological stress stimuli and responses, adjust physiological stressors (e.g., exercise level, work, physical discomfort, noise, physical exposure, etc.), and / or the like.
[0130] As shown in step 602, method 600 may begin with creating a model for use in dynamic stress monitoring and scoring. Generally, the model may include one or more machine learning models, statistical models, deterministic models, empirical models, analytical models, differential equations, linear equations, non-linear equations, transformations, formulas, regressions, rules, algorithms, datasets, etc., which may be adapted alone or in combination to create a quantitative or qualitative score of current stress based on physiological data and other user conditions.
[0131] In one aspect, the model may include a machine learning model, and creating the model may include training the machine learning model to report a quantitative or qualitative stress level based on, for example, heart rate, heart rate variability, movement, blood pressure, respiration, etc. More generally, the machine learning model may be trained using any physiological signal or indicator that can be reasonably reliably correlated with objective or subjective stress, and through such training may be configured to provide a quantitative or qualitative assessment of current stress based on inputs corresponding to user data, user context, etc.
[0132] Additionally or alternatively, a machine learning model may be trained using subjective stress data reported by a user and / or collected from the user over a day or some other period of time. For example, a user may be queried at some regular interval (e.g., once per hour) and asked to report their subjective stress. A dataset may then be created based on the reported (or estimated) stress and physiological parameters such as heart rate, heart rate variability, movement, body temperature (e.g., skin temperature), respiration rate, skin conductance, blood pressure, etc., some or all of which may be captured as instantaneous measurements or aggregate measurements (e.g., average measurements) over a preceding time frame (e.g., 30 seconds, 1 minute, 5 minutes, etc.), or some combination thereof. The training set of physiological measurements and stress labels may be used to create a model that predicts subjective stress based on one or more measured physiological parameters. More generally, subjectively reported stress may be used as a label, etc., so that a machine learning model may be trained to generate a stress score that reflects data from physiological and / or environmental monitoring.
[0133] Additionally or alternatively, the machine learning model can be trained using a training set containing a set of measured physiological responses to one or more predetermined stressors for multiple users. In this case, the training set can be labeled with estimated stress responses to the predetermined stressors, or the physiological data can be labeled with subjective stress scores reported by users upon exposure to a corresponding one of the predetermined stressors. That is, a group of users may be subjected to multiple stressors of varying intensities while physiological parameters are measured. These predetermined stressors may also represent activities selected to specifically induce or inhibit mental or physical stress, for example, by exposing users to various types and intensities of sensory input, physical tasks, and mental tasks. This can facilitate experimental control for current stress posed by the environment while simultaneously measuring the user's response.
[0134] By way of non-limiting example, a user may be asked to perform an activity known to increase blood pressure, activate the sympathetic or parasympathetic nervous system, or stimulate or suppress an autonomic response. This may include activities such as isometric exercise, exposure to cold water, mental activity (e.g., math or puzzle solving), or other activities known to stimulate an autonomic response. Other, more specific measures for measuring responses to stress are also known in the art, such as respiratory arrhythmia (changes in heart rate caused by deep breathing), isometric grip exercise, cold pressor testing (e.g., immersing hands or feet in cold water at 4°C), diving reflex (e.g., face-up immersion), mental arithmetic, and active standing (changes in heart rate during transitions from supine to standing). An objective score may be associated with each activity based on fixed estimates or on concurrent measurements of heart rate, heart rate variability, or blood pressure from each user while they are engaged in the various activities. These numerical scores can be tagged with corresponding activity or stress scores and used as a dataset of measured responses to train a machine learning model. The resulting trained model can be used to predict mental or physical stress based on measurements, such as physiological parameters, such as those that can be easily captured from a wearable physiological monitor, and output a dynamic stress score, such as a quantitative or qualitative stress score, that indicates the user's stress as a function of the measured physiological parameters.
[0135] Additionally or alternatively, the model may include an analytical model for formulating and calculating a stress score based on stress-related factors, or an empirical model derived from an analysis of subjective and / or objective stress criteria. For example, the model may include an empirically derived model configured to analytically (e.g., via a formula or algorithm) provide a stress score or other indicator of mental or physical stress based on physiological data obtained from a wearable physiological monitor. Generally, the stress score may be calculated at predetermined time intervals (e.g., every minute or every five minutes). Stress may be measured on a predetermined scale (e.g., a scale from 0 to 3), where a score of 2-3 is high (meaning the user is likely to be excited, stressed, or very active), a score of 1-2 is medium (meaning the user is likely to be neutral, alert, or mildly activated), and a score of 0-1 is low (meaning the user is likely to be calm, relaxed, or asleep).
[0136] The empirical model may use data from a predetermined time frame (e.g., the most recent 1-minute or 5-minute frame) and may use a weighted combination of a heart rate variability (HRV) metric (e.g., heart rate variability or a statistic derived or transformed therefrom), a heart rate (HR) metric (e.g., heart rate, an aggregate heart rate (e.g., average heart rate), or a statistic derived or transformed therefrom), and a motion correction factor. Thus, in one aspect, the empirical model for calculating the dynamic stress score S may be based on the following equation (Equation 1): (Number 1) S=alpha*f(motion)*[w*(HR)+(1-w)*(HRV)] [Formula 1]
[0137] "HR" in the empirical model may be a score based on the user's measured heart rate and may take into account user-specific individual data, such as the user's personal baseline heart rate and maximum heart rate (e.g., using historical data, which may include a historical baseline). For example, the user's heart rate over the previous five minutes may be mapped to a score of 0 to 3, taking into account the user's baseline resting heart rate and maximum heart rate. Alternatively or alternatively, other intervals, such as 2 minutes, 1 minute, or 10 seconds, may be used for this mapping. Alternatively or alternatively, shorter or longer intervals may be used, provided they support meaningful metrics for calculating current stress. Thus, for example, a one-hour window integrates a long history of physical and emotional responses and generally does not reflect the user's current stress. Similarly, a fraction of a second may not provide enough data to adequately characterize heart rate or heart rate variability and / or may result in undesirable fluctuations in continuously reported metrics.
[0138] Various mappings can be used to convert measurements (e.g., heart rate) into scaled scores across a desired range. For example, a sigmoid function or other function or distribution can be provided over the interval between a user's resting heart rate and maximum heart rate and used to map current heart rate measurements to heart rate scores. For a sigmoid function, if a user's resting heart rate is 60 bpm and their maximum heart rate is 190 bpm, a heart rate of 100 may indicate that the user is relatively highly active, and the user may receive a HR score of, for example, 2.1. The mapping can be linear, nonlinear, lookup-based, etc., and the scale can be any range suitable for combination with the other factors listed above to provide an objective value of current stress. If a user's personal baseline heart rate is unavailable, for example because the user has just started using the device or has had a long window of non-use or intermittent use, a baseline from the general population or a similar cohort can be temporarily used as a substitute to facilitate calculation of the dynamic stress score.
[0139] "HRV" in the empirical model may be a score based on the user's measured heart rate variability and may take into account historical user data, such as the user's personal baseline HRV for a particular predetermined period, such as the average for the previous week, two weeks, or three weeks. A current HRV measurement, such as the HRV for the previous one, two, or five minutes, may be compared to the user's baseline HRV (or HRV distribution) distribution for the past 14 days, and the resulting value may be mapped to a score from 0 to 3 (again, these intervals are provided as examples, and other intervals are possible, also or instead). In one aspect, the score may be measured on a fixed scale, such as 0 to 3, where a score of 0 to 1 represents a calm, relaxed, or sleep state; a score of 1 to 2 represents a neutral, alert, or mildly activated state; and a score of 2 to 3 represents an excited, stressed, or highly activated state.
[0140] As will be appreciated, the "HRV" used in the empirical model and / or other stress score calculations included herein may use any suitable quantitative measure of heart rate variability. For example, HRV may use the root mean square of successive differences (RMSSD), a commonly used technique for assessing heart rate variability (HRV). RMSSD may be calculated, for example, by collecting heart rate interval data (e.g., R-R intervals), calculating successive differences of the R-R intervals, squaring the differences, and calculating the square root of the average of these squared differences. Generally, RMSSD is a measure of short-term heart rate variability and may be used as an index of parasympathetic nervous system activity. Higher RMSSD values generally indicate higher heart rate variability, which may be associated with better cardiovascular health and resilience to stress. Another measure that can be used to assess HRV involves examining the ratio of low-frequency (LF) to high-frequency (HF) components of the heart rate (i.e., the LF / HF index), where the LF and HF bands are derived from the power spectrum of heart rate variability. The LF / HF measure can be calculated by collecting beat-to-beat data (e.g., R-R intervals) and performing frequency-domain analysis (e.g., using Fourier transform or other spectral analysis techniques) to decompose the HRV signal into different frequency bands (in this case, the frequency bands of interest are often classified as LF (e.g., 0.04-0.15 Hz) and HF (e.g., 0.15-0.4 Hz)). The LF and HF power within the LF and HF frequency bands are then calculated, resulting in the LF / HF ratio. Generally, LF power reflects the influence of the sympathetic and parasympathetic nervous systems on the heart, while HF power is primarily associated with parasympathetic activity. Therefore, the LF / HF ratio may be used as an index of sympathovagal balance, with higher values indicating a relative dominance of sympathetic activity and lower values suggesting a greater influence of parasympathetic activity.Yet another measure that can be used to assess HRV is the standard deviation of normal-to-normal (SDNN), which quantifies the overall temporal variation of consecutive normal heartbeats (normal-to-normal, NN intervals or RR intervals) within a given time frame, where higher SDNN values generally indicate greater HRV. The SDNN measure can be calculated by collecting a series of NN intervals over a time frame, calculating the average NN interval over that time frame, calculating the squared difference between each NN interval and the average NN interval, calculating the variance by summing the squared differences, and calculating the square root of the variance. Other HRV measures are also or alternatively possible.
[0141] The mapping may, for example, use a logarithmic transformation of a 14-day history or distribution of HRV scores, identify the current HRV's location within that distribution, and apply a 0-3 scaling function (e.g., linear, sigmoid, lookup, etc.) to obtain a final HRV score of 0-3. In one embodiment, the mapping may be percentile-based, for example, by dividing the HRV distribution of the baseline HRV into percentiles, scaling these percentiles to a range of 0-3, placing the current HRV measurement within these percentiles, and assigning a score to the current HRV measurement based on the scale. This may include converting the baseline profile's HRV data to a distribution that more closely resembles a normal distribution, for example, using a logarithmic transformation. For example, if a user's HRV is generally between 43 milliseconds (ms) and 134 ms, and the previous 5-minute HRV was 67 ms (assuming 67 ms falls within a relatively high percentile range within the 14-day distribution), indicating a high level of activation, the user may receive an HRV score of 2.6. As with the transformed HR scores above, the HRV scores may be mapped using any suitable linear, non-linear, lookup-based, or other model, and the scale may be any range suitable for combining with the other factors above to provide an objective value of current stress.
[0142] If the user's individual HRV baseline distribution is unavailable or unknown, a default baseline, such as a population-based default HRV baseline for the user, may be used by the empirical model. After a certain number of HRV data values (e.g., more than 1000 values or more than 15 minutes of HRV data) have been obtained for a particular user, the default HRV baseline may be changed to the user's subjective HRV baseline. In another embodiment, the individualized HRV baseline may be postponed until at least one or two days' worth of HRV data are available.
[0143] The empirical model may use a weight "w" to weight the contributions of heart rate and heart rate variability. In one aspect, the weight may vary based on the current values of the HR score and HRV score, or based on other user conditions. For example, if HR is low (as tends to be the case during sleep), HR may be weighted more heavily to ensure that the stress score remains low during sleep. As a further example, if HR is above a certain threshold (e.g., 100 bpm), this may indicate that the user is likely awake, and the HR and HRV scores may be weighted equally (e.g., a weight of 0.5), so that the stress score reflects a combination of heart rate and heart rate variability. Additionally or alternatively, the weight may be dynamically adjusted based on the reliability of the measurements. As an example, if the quality of the data does not support reliable HRV measurements, the weight given to HRV may be reduced.
[0144] The motion score "f(motion)" may be used as a proxy for physical activity in the empirical model, using data from accelerometers, gyroscopes, and / or other motion sensors (e.g., located on a wearable physiological monitor) to measure motion and adjust the dynamic stress score accordingly. For example, motion data from one or more of these sensors may be converted into a motion score and then used to weight the stress score to reflect the degree of physical activity of the user. As an example, if the user is moving, the overall score may be reduced to account for the contribution of physical activity to corresponding changes in HR and HRV, while if the user is stationary, the motion score may be 1 or close to 1, reflecting that any elevated cardiac activity is likely the result of non-physical stress. Thus, if the user is sitting still, the motion score may be approximately 1 (e.g., 0.98), and the stress score may therefore be sufficiently responsive to changes in HR and HRV caused by non-physical demands and stressors. More generally, the motion score may be any function, equation, constant, variable, or combination thereof suitable for converting motion data into a value or values for use in adjusting a stress score calculated based on the user's detected motion data.
[0145] In general, the calculated stress score may be scaled by a fixed or variable scaling factor, alpha, which may be used to adapt the range of possible calculated scores to a desired reporting range for presenting the stress score to a user (e.g., 0-3) or for using the stress score in subsequent calculations. Thus, alpha may take on any value or range of values appropriate to the underlying data and calculations.
[0146] While the foregoing example provides a useful formula for relating motion, heart rate, and heart rate variability to the stress currently experienced by a user, it will be appreciated that other formulas, algorithms, and / or other mathematical models may also or alternatively be used to calculate a user's current estimated stress to enable dynamic, real-time, and / or intraday monitoring and reporting of a dynamic stress score. For example, a simplified model may rely solely on motion and heart rate to objectively calculate stress. Alternatively, a more complex model may incorporate respiration rate, skin temperature, hydration status, blood pressure, galvanic skin response, and the like. Still more generally, any analytical, machine learning, empirical, statistical, or other model or analytical framework, or combinations thereof, may be used to estimate a user's dynamic stress level for purposes of intraday monitoring, coaching, reporting, and the like.
[0147] As indicated at step 604, method 600 may include providing the model for use, for example, by distributing the model on a dynamic stress monitor, which may include hardware, software, or a combination thereof configured to apply the model to acquired data to generate a stress score indicative of the user's current stress. As a significant advantage, the machine learning model may be compressed for local deployment on a wearable physiological monitor or some other local user device, such as a smartphone, tablet, or laptop, facilitating local processing of continuous updates without the need for a server. Alternatively, the machine learning model may be deployed on a server or other remote processing resource, which allows for the use of larger, more sophisticated machine learning models but may introduce significant latency into the user experience when real-time estimation of stress may be required. Alternatively, other models, such as those described herein, may be adapted for deployment on a wearable physiological monitor or for distributed deployment among a wearable device, a user's personal computing device, and / or a remote server, for example, using the techniques described herein.
[0148] In general, deploying a model may include storing the model in a device's memory, e.g., as parameters, datasets, weights, rules, and instructions. If the model is to be deployed locally to a wearable monitor, this may include storing the model in the wearable monitor's memory. In another aspect, the model may be stored in the memory of a user device, such as a smartphone, tablet, or laptop, which may receive data from the wearable monitor and apply the received data to the model stored in its local memory. In another aspect, physiological monitoring data from the wearable device may be transmitted to a remote server at a remote location that stores the model for execution on the acquired data.
[0149] As shown in step 606, method 600 may include monitoring physiological activity using a wearable physiological monitor, such as any of the monitors described herein. This may include obtaining physiological data such as heart rate data, heart rate variability data, motion data, body temperature data, respiration rate data, skin temperature data, skin conductance data, blood pressure data, etc. Generally, this physiological data (also referred to herein as "physiological parameters") may be transmitted to a remote resource for calculating daily metrics such as strain, sleep, and recovery, as described herein.
[0150] In one aspect, monitoring physiological activity may include providing a heart rate variability index of a user wearing a physiological monitor. Generally, providing a heart rate variability index may include measuring or calculating the index, receiving the index from another source, and / or storing the index in memory. The heart rate variability index may be measured heart rate variability, calculated heart rate variability, a raw value related to heart rate variability, an aggregation of heart rate variability over an interval, the output of a calculation that includes heart rate variability as an input, etc. In particular aspects, providing a heart rate variability index includes obtaining the heart rate variability index directly or indirectly from a physiological monitor worn by the user. As an example, providing a heart rate variability index may include obtaining an aggregate heart rate variability measurement over an interval using a wearable physiological monitor and / or calculating or deriving the heart rate variability index based on physiological data from the monitor using any of the techniques described herein.
[0151] Additionally or alternatively, monitoring physiological activity may include providing a heart rate indicator to the user. Generally, providing the heart rate indicator may include measuring or calculating the indicator, receiving the indicator from another source, and / or storing the indicator in memory. The heart rate indicator may be a measured heart rate, a calculated heart rate, a raw value related to the heart rate, an aggregate heart rate or baseline heart rate over an interval, the output of a calculation that includes heart rate as an input, HRV or an HRV-related indicator, etc. In certain aspects, providing the heart rate indicator includes obtaining the heart rate indicator directly or indirectly from a physiological monitor worn by the user. As an example, providing the heart rate indicator may include obtaining aggregate heart rate measurements over an interval using a wearable physiological monitor and / or calculating or deriving the heart rate indicator based on physiological data from the monitor using any of the techniques and devices described herein.
[0152] As indicated at step 608, method 600 may include obtaining multiple stress measurements for the user, for example, by processing physiological data received from the wearable monitor using techniques described herein and generating a corresponding stress score. For example, this may include obtaining stress measurements by applying a model to physiological data obtained over any suitable interval in which stress may be assessed, such as 1 minute, 2 minutes, 5 minutes, 10 minutes, 30 minutes, or 60 minutes. The frequency of measurements may be any suitable frequency consistent with the capabilities of the computing platform running the dynamic stress monitor. For example, stress levels may be calculated once per second, once per 10 seconds, once per 30 seconds, once per 60 seconds, etc. As will be appreciated, the higher the desired measurement frequency or the lower the latency of stress reporting, the more advantageous it may be to locate the dynamic stress monitor locally on the wearable monitor or on another device locally coupled to the wearable monitor and available to the user.
[0153] The interval over which measurements are taken may also vary. In one embodiment, it may be useful for the interval to be in the range of 3 to 10 minutes, which provides a sufficient interval to avoid erroneous estimates of stress while excluding historical data that may not be directly relevant to an individual's current stress level. Longer or shorter intervals may also or alternatively be utilized, and method 600 may also include reporting stress levels for multiple intervals simultaneously, for example, by graphically displaying a time series of stress scores for overlapping or non-overlapping intervals, or by displaying short-term and long-term stress scores (e.g., 10-second and 10-minute).
[0154] In general, any of the techniques described herein for calculating a stress score or stress index may be used to calculate an instantaneous stress measurement of a set of physiological data from a monitor. Obtaining a stress measurement may also or alternatively include scaling the resulting calculated value using a function or algorithm to convert the stress estimate into a value within a predetermined range. For example, the stress estimate may be scaled to a range of 0 to 3, a range of 0 to 10, or some other range that provides the user with a useful indication of their current stress. In one aspect, scaling may include binning each stress measurement into integer values, or the like. In one aspect, scaling may also or alternatively include applying nonlinear scaling that converts a majority of an individual's stress estimates into the low end of a stress score range, e.g., such that some predetermined percentage of the lowest measurements receive a scaled value of 0 or 1. This algorithmically captures the concept that, for the majority of a day, a user is unlikely to experience significant stress that may require intervention or remediation or have a cumulative negative impact on stress readiness.
[0155] As shown in step 610, method 600 may include adjusting the stress measurement to the user's condition. For example, this may include determining the user's resting state, providing useful context for properly interpreting the cardiac indicator (e.g., a relatively high or low value of the indicator may have different meaning depending on the user's resting state). Also or alternatively, this may include determining a sleep state, automatically detecting a type of activity, or detecting or assessing the user's condition to better interpret physiological data obtained from a physiological monitor.
[0156] In one aspect, this may include adjusting stress measurements according to circadian rhythms. Components of stress scores, such as HR (especially resting) and HRV, may vary significantly and predictably throughout the day based on an individual's circadian rhythm and, more specifically, where the user is in their circadian rhythm at the time the physiological data is acquired. Cardiac metrics may have significantly different patterns and average values just before bed, during sleep, immediately after waking, and around noon. Therefore, these metrics may be normalized for the user according to time of day, for example, when using them as a baseline or measurement for detecting stress, particularly to more accurately detect deviations in the calculated current stress score related to stress factors when distinguishing between circadian rhythm effects. This approach has the advantage of more accurately supporting continuous or periodic stress monitoring outside of clinical settings and supporting more effective coaching and intervention. It is noted that these circadian rhythm adjustments may be performed on the raw data obtained, for example, in step 606 above, in which case received or calculated values such as HR and HRV may be directly calibrated to the circadian cycle, or these adjustments may be performed after calculating the stress measure according to the effect of changes in the raw indicators on the calculated stress measure. Either way, the resulting stress score may be better calibrated to the individual's current circadian rhythm state. In one aspect, the circadian rhythm may be detected or estimated for the user based on movement, activity, sleep, cardiac activity, etc. In another aspect, the circadian rhythm may be estimated based on time of day or other data.
[0157] For a population of users, heart rate has been shown to increase during the day (relative to the daily average) and decrease leading up to and throughout the night, while heart rate variability increases throughout sleep, peaking in the early morning and then decreasing throughout the day. Because heart rate and heart rate variability can exhibit periodicities that correspond to circadian rhythms, measurements that depend on these cardiovascular parameters (such as current stress) can be corrected for the time of day at which the measurements were taken. Similarly, daily measurements of, for example, representative resting heart rate or heart rate variability can be usefully taken each day at specific points in the circadian rhythm (e.g., just before waking, just after waking, some particular period or stage of sleep, etc.) to promote consistency of measurements and accuracy of resulting calculations.
[0158] Thus, in one aspect, a user's resting state may be determined based on the user's circadian rhythm state. For example, the user's sleep and wake cycles may be detected based on data from a wearable monitor, and the user's current circadian rhythm state may be evaluated and expressed, for example, as the user's sleep state and the probability of the user's detected sleep state. For example, in one aspect, a circadian rhythm model of a population (e.g., a population of users with similar characteristics to the user) or a specific user may be created and used to detect a sleep state based on patterns such as respiration rate, heart rate, movement, and skin temperature. When using circadian rhythm state as a surrogate indicator of resting state, the circadian rhythm state may be expressed as a separate state (e.g., sleep state or wake state). Furthermore, a sleep state may include one or more sub-states for one or more corresponding sleep stages. Thus, a resting state may be determined using a sleep detection algorithm that evaluates physiological indicators and / or movement to determine a user's sleep state. As described herein, for example, when calculating a stress score using Equation 1 above, the weight of a heart rate metric (e.g., w) may be increased if the user's resting state is a sleep state, and / or the complementary weight of a heart rate variability metric (e.g., 1-w) may be decreased if the user's resting state is a sleep state. In another aspect, the circadian rhythm state may be expressed as a probability (e.g., 90% chance of sleep), or the circadian rhythm state may be expressed as an estimated position within a 24-hour circadian cycle, either of which may be used to variably weight between different physiological metrics or to adjust the dynamic stress score to better reflect the user's stress based on the user's situation.
[0159] In another aspect, the dynamic stress score may be adjusted based on the user's resting state. The resting state may characterize a general state of activity, rather than, for example, a sleep state or circadian rhythm state, and may be assessed based on the difference between the user's current heart rate (or other suitable heart rate indicator) and the user's resting heart rate. For example, the weighted combination described in Equation 1 above may use a first weight for a first component of the stress score based on the heart rate indicator, where the first weight is based on the user's resting state, and the weighted combination may use a second weight for a second component of the stress score based on heart rate variability. In general, the first weight may increase as the difference decreases, e.g., as the current or average heart rate approaches the user's resting heart rate. For example, the first weight may approach 1 as the heart rate indicator approaches the user's resting heart rate. The first weight may monotonically approach 1 as the heart rate index approaches the resting heart rate, or the first weight may sigmoidally approach 1 as the heart rate index approaches the resting heart rate. In another aspect, the second weight may decrease as the user's current or average heart rate approaches the resting heart rate. The adjustment may include using the first weight w and the second weight 1-w as described above, or the adjustment may include independently controlling the second weight to decrease, for example, to a value between 0.5 and 0, as the heart rate index approaches the resting heart rate.
[0160] The resting heart rate used to assess the resting state may be measured automatically using, for example, any of the techniques described herein and may include a multi-day average, an average of several measurements during the user's sleep cycle, or some combination thereof, or any other suitable technique. Also in this regard, the current heart rate or heart rate index may be calculated as a moving average, windowed average, or other index that tends to smooth the heart rate over a local time interval (e.g., seconds or minutes) to reduce large momentary variations in the resulting calculated dynamic stress score.
[0161] In another aspect, the distance between the current or aggregate heart rate (e.g., average heart rate) and the resting heart rate may be characterized by bins, ranges, or other general categories to facilitate local continuity of calculations, e.g., from measurement to measurement over minutes or hours. Thus, in one aspect, determining the distance may include determining whether the heart rate indicator over an interval is within a predetermined range of the user's resting heart rate. For example, in response to determining that the heart rate indicator is outside the predetermined range of the user's resting heart rate, method 600 may include calculating a stress score for the user over the interval based on a first weighted combination of multiple measurements of heart rate and heart rate variability obtained during the interval from the physiological monitor. Method 600 may also include, in response to determining that the aggregate heart rate is within a predetermined range of the user's resting heart rate, calculating a stress score for the user based on the plurality of measurements using a second weighted contribution of heart rate variability to heart rate (more specifically, a lower weighted contribution of heart rate variability) than the first weighted combination used when the aggregate heart rate was determined to be outside the predetermined range.
[0162] More generally, adjusting the dynamic stress score for the user situation may include applying a first algorithm to calculate the user's stress score in response to determining that a heart rate indicator, such as the user's aggregate heart rate (e.g., average heart rate), is outside a predetermined range from the user's resting heart rate, and applying a second algorithm to calculate the user's stress score in response to determining that the heart rate indicator is within a predetermined range from the user's resting heart rate. The second algorithm may include a formula that uses a lower weighted contribution of heart rate variability compared to the first algorithm, but it will be appreciated that the second algorithm may more generally include any formula, algorithm, technique, or the like suitable for assessing a user's stress when their current heart rate is at or near their resting heart rate.
[0163] In another aspect, and / or instead, the resting state may be a discrete resting state selected based on one or more predetermined ranges of the user's heart rate, for example, relative to a resting heart rate or some other suitable cardiac benchmark.
[0164] As shown in Equation 1, calculating the stress score may also or alternatively take into account motion data obtained during the interval from a physiological monitor or another device. In general, a user's activity may provide useful context for adjusting the calculation of stress measurements. For example, a high-intensity physical stressor, such as exercise, may increase HR and decrease HRV for several hours after the physical stressor is removed due to persistent activation of the sympathetic nervous system and inhibition of the parasympathetic nervous system. Conversely, low-intensity exercise has been shown to decrease heart rate for up to 24 hours after exercise, likely due to an acute decrease in global and local vascular resistance. These activities can be detected based on the user's movement, and the corresponding physiological patterns can be used to shape expected HRV and HR values when calculating current stress, for example, using any of the models described herein. In another aspect, these patterns can be measured and characterized for an individual to better identify local stressors unrelated to physical activity and circadian rhythms, etc.
[0165] As shown in step 612, method 600 may include processing multiple stress measurements over an interval to provide a dynamic stress score that can be reported to the user for that interval. This may include, for example, averaging, summing, or aggregating individual stress measurements into a value representative of the interval of interest. As with individual stress measurements, processing multiple measurements over the interval may include scaling the resulting stress score using a function or algorithm that converts the aggregated or dynamic stress score into a value within a predetermined range. For example, stress scores may be scaled to a range of 0 to 3, a range of 0 to 10, or some other range that provides the user with a useful indication of their current stress. In one aspect, scaling may include binning stress scores into integer values, etc. Additionally or alternatively, scaling may include applying nonlinear scaling that converts a majority of an individual's dynamic stress scores into the lowest possible dynamic stress value. This algorithmically captures the concept that, for the majority of a day, a user is likely not experiencing significant stress that may require intervention or have a cumulative negative impact on readiness for strain.
[0166] Also, as described herein, stress scores may be generated to report or distinguish between mental stress (e.g., due to emotional, intellectual, or other psychological stress) and physical stress (e.g., due to physical activity, exposure, etc.) and to inform the user of the degree to which either or both of these components contribute to the current dynamic stress. For example, while individual stress scores are generally described, the dynamic stress score may also or alternatively be reported as two or more distinct scores that separately assess mental stress, physical stress, combined stress, etc. To measure these different stress factors independently, physiological signals such as heart rate and heart rate variability data may be individually weighted and combined to estimate overall physiological stress, and motion data may then be incorporated to separate the derived physical stress from other types of stress. In another aspect, the difference between measured and predicted heart rate (e.g., based on motion data) may be used to derive a score reflecting mental stress. More generally, any technique for separating and / or distinguishing the effects of different stress sources may be used to provide the user with multiple indicative stress scores.
[0167] As indicated in step 614, method 600 may include presenting the dynamic stress score or other derived indicator of short-term stress to the user on a display. This may include, for example, presenting the dynamic stress score on a display of the wearable physiological monitor, a display of some other user device such as a smartphone or tablet, or any other suitable user interface. Additionally or alternatively, this may include haptic feedback, such as haptic feedback provided by a haptic device within the wearable monitor, audio feedback, or other feedback functioning independently of or in conjunction with a display on the wearable physiological monitor. As described herein, the dynamic stress score may be evaluated using a combination of processing resources on the wearable physiological monitor, the user's computing device(s) (e.g., smartphone, tablet, laptop, etc.), a server, or other computing device(s), and combinations of the above. Thus, the score may be provided from and / or rendered on any suitable computing device, or combination of computing device and display system, useful for conveying the dynamic stress score to the user. Additionally or alternatively, displaying the dynamic stress scores may include displaying multiple index stress scores (e.g., for physical and mental stress components, or for different activities or time frames), a time series of the dynamic stress scores (e.g., such as a timeline or similar graph), a chart of recent scores, an average of recent scores, etc.
[0168] As shown in step 616, method 600 may include determining an intervention based on the dynamic stress value and / or presenting a suggested intervention to the user. Typically, this may include various coaching recommendations, lifestyle suggestions, short-term stress management exercises, and the like. In one aspect, this may include determining an appropriate threshold for intervention, for example, based on a typical range of stress scores for a user or population, based on explicit user preferences, or based on other factors, as well as combinations thereof. For example, this may include identifying a threshold for the dynamic stress score that indicates acute stress. Also, or alternatively, this may include identifying a threshold that indicates autonomic activation. Typically, the intervention may include an alert, such as a text, email, audible alert, or haptic alert. The wearable monitor may provide this alert if equipped with appropriate user interface capabilities, or the alert may be provided by some other user device, such as a smartphone or smartwatch. The intervention may include recommended remedies for eliminating stress (e.g., a general suggestion to stop or avoid stressful activities, or to stop current training, engage in deep breathing or other breathing techniques, or health-promoting exercises such as meditation, or to consult a healthcare provider). It may also or alternatively include recommendations for increasing attention depending on the user's needs, and interventions that can increase engagement and / or attention. These recommendations may be provided in real time, i.e., effectively as soon as acute stress is detected and without any perceptible delay to the user.
[0169] As will be appreciated, dynamic stress monitoring as described herein may include adjusting a stress score and / or stress alert depending on whether stress results from physical or mental stress, and stress scoring and intervention may include analysis to distinguish between these stress components. By way of example, a stress source may be identified using motion data, etc., as described herein, to estimate whether a user is physically active when under stress, or to separate physical and psychological contributions to elevated stress. Also or alternatively, such identification may use direct input from the user to determine whether the user is exercising (e.g., if the user manually provides input indicating that they are engaged in an activity) or whether the user is reporting subjective stress. Also or alternatively, such identification may be based on the user's state, such as type of activity and sleep state, any of which may be usefully automatically detected by a wearable physiological monitor, reported by the user, or some combination thereof.
[0170] Coaching may also or alternatively include intervention during physical activity (e.g., by recommending pausing or terminating physical activity if current stress is disproportionately high for the current physical activity level, or by recommending additional and / or alternative exercise if current stress is disproportionately low for the current physical activity level). More generally, any apparent discrepancy between measured stress and physical activity may be conveyed to the user with an alert and / or used as the basis for coaching or activity recommendations targeted at the discrepancy.
[0171] As shown in step 618, method 600 may include updating other calculations. For example, stress may be aggregated throughout the day and used to modify other user metrics. In one embodiment, a user's recovery score (indicating readiness to engage in physical activity) may be refined based on the aggregated dynamic stress by lowering the user's recovery score for the day as stress accumulates, or by refining coaching recommendations during the day, e.g., to reduce recommended physical activity for the day as stress accumulates. In another embodiment, accumulated stress, such as stress measured objectively in a dynamic stress score but not attributable to physical activity, may be added to the user's measure of strain for the day, such that, e.g., sleep and recovery metrics for the next day's cycle may be adjusted accordingly and / or coaching recommendations, such as the amount of recommended sleep, may be changed to account for the user's detected increase in stress.
[0172] As will be appreciated, the displays, visualizations, notifications, coaching, recommendations, etc. described in connection with FIG. 6 may also or alternatively be used in combination with any of the other stress scoring methods and systems described herein.
[0173] In accordance with the above, in one aspect, a method described herein includes providing a heart rate variability index for a user; providing a heart rate index for the user; determining a resting state of the user; and calculating a stress score for the user. The stress score may be calculated based on a weighted combination of the heart rate variability index and the heart rate index, where the weighted combination uses a first weight for the heart rate index based on the user's resting state and the weighted combination uses a second weight for the heart rate variability based on the user's resting state. The method may be embodied in a computer program product including computer-executable code stored on a non-transitory computer-readable medium that, when executed on one or more computing devices, performs corresponding steps.
[0174] In another aspect, a method described herein includes measuring a user's aggregate heart rate (e.g., average heart rate) over an interval using a physiological monitor; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; responsive to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on multiple measurements of heart rate, heart rate variability, and movement obtained from the physiological monitor during the interval; responsive to determining that the aggregate heart rate is within the predetermined range, calculating a stress score for the user based on the multiple measurements using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used when the aggregate heart rate was determined to be outside the predetermined range; and displaying to the user a value indicative of the stress score over the interval. The method may be embodied in a computer program product including computer-executable code stored on a non-transitory computer-readable medium that, when executed on one or more computing devices, performs corresponding steps.
[0175] In another aspect, a method described herein may include: determining a sleep state of a user; and, in response to determining that the sleep state is a wakefulness state, calculating a stress score for the user over an interval based on a plurality of measurements of heart rate, heart rate variability, and movement obtained during the interval from a physiological monitor worn by the user; in response to determining that the sleep state is a sleep state, calculating a stress score for the user based on the plurality of measurements, with a weighted contribution of heart rate variability to heart rate that is lower than for a wakefulness state; and displaying to the user a value indicative of the stress score for the interval. The method may be embodied in a computer program product including computer-executable code stored on a non-transitory computer-readable medium that, when executed on one or more computing devices, performs corresponding steps.
[0176] Dynamic stress scoring using probability distributions
[0177] 7 is a flow diagram of a method for calculating a stress score. Generally, a model may be trained to generate a probability distribution of expected heart rate indicators and / or other physiological indicators (e.g., electrodermal measurement / potential skin, blood pressure, respiration rate, skin temperature, body temperature, etc.) based on a user's situation, and a stress score may then be assessed by comparing the currently measured heart rate indicator with the predicted probability distribution of the indicators in the current situation. As with other models described herein, this model may generally be balanced to emphasize psychological stress (e.g., by using motion artifacts to reduce calculated stress) or physical stress (e.g., by using heart rate indicators independent of measured user movement) and / or to consider the impact of sleep periods and / or circadian rhythms on current stress.
[0178] As shown in step 702, method 700 may begin by creating a first model for generating a probability distribution of expected cardiac rate reserve and a second model for identifying activity type.
[0179] In general, the first model may be a heart rate reserve ratio prediction model trained to predict a user's heart rate reserve ratio ("HRR ratio" or "HRRR") based on other inputs, for example, from a physiological monitor worn by the user. For example, the model may be trained to predict the HRR ratio of a current heart rate based on inputs such as motion data characterizing the user's motion, e.g., based on data from an inertial measurement unit, gyroscope, and / or other motion detection system(s) within the physiological monitor. Also or alternatively, the model may be trained based on features extracted from these or other raw data feeds from the physiological monitor. For example, one or more features may be derived from motion data based on aggregation over one or more different time frames (e.g., the past 30, 60, and / or 90 minute frames) and may include summary statistics such as median, mean, maximum, minimum, standard deviation, autocorrelation, etc. If available, other motion data, such as GPS data, may also or alternatively be used as training data. More generally, any features, attributes, or derived quantities from individual measurements or time series of measurements can be used as engineered features and / or as training data for a machine learning model to predict HRR ratio distributions, especially if the underlying data is significantly correlated with the user's HRR ratio. As will be appreciated, other data, such as user attributes and / or features engineered or derived therefrom, can also or instead be used to train the model. This data can also be used to scale model inputs and / or adapt model results to particular users or user types. For example, user attributes such as age, height, weight, and gender may help accurately model expected HRR ratios and create accurate machine learning models for predicting HRR ratios based on other inputs, such as time series data from physiological monitors.
[0180] Generally, the model can be trained on these inputs using results or a labeled dataset based on the user's corresponding HRR ratio data. As will be appreciated, while the following description discusses a particular user's HRR ratio, the machine learning model can be trained more generally on a population, a subset of a population, a particular user, or some combination thereof (such as by training a large model based on population data and then refining or adapting the model using the particular user's data). Furthermore, while probability distributions of HRRR are described, other heart rate indicators (e.g., HRV) and / or other physiological indicators (e.g., electrodermal activity, blood pressure, respiration rate, skin temperature, body temperature, etc.) can also or instead be used.
[0181] Generally, HRR measures the range of expected heart rates and is generally expressed as the difference between maximum heart rate and resting heart rate. For the purposes of assessing a user's current stress level and training machine learning models, heart rate reserve ratio (HRRR) may be used as a target metric, where HRRR represents the current heart rate relative to HRR, as follows:
number
[0182] User's current heart rate (HR cur) may be the user's current heart rate, which may be measured in a number of ways. For example, it may include an instantaneous measurement of the current heart rate. Because this indicator may vary widely, the instantaneous heart rate may be windowed, averaged, or otherwise processed to obtain a more consistent measure of current exertion. For example, the current heart rate may be a moving average of the heart rate over a local interval, such as 10 seconds, 1 minute, or 5 minutes.
[0183] Baseline resting heart rate (HR base ) may represent a user's baseline sitting heart rate and may be measured in a variety of ways. For example, resting heart rate is traditionally measured immediately after waking up, and measurements may be taken automatically or manually at this time, for the current day, the previous day, or for previous days. In another aspect, a baseline resting heart rate may be measured based on one or more recent periods of inactivity during which a relatively low and stable heart rate was observed, for example, for the current day. In another aspect, resting heart rate may be measured during sleep, during a particular sleep stage such as deep sleep, or more specifically, during the last stage of deep sleep before waking up. For resting heart rate measured during sleep, the heart rate may be measured multiple times each night (e.g., for several consecutive deep sleep cycles), with cycles selected based on order (e.g., the last two or three deep sleep cycles before waking up) or data quality (e.g., the deep sleep cycle with the highest quality heart rate data acquisition). Additionally or alternatively, resting heart rate may be measured over several days to provide an aggregate resting heart rate (e.g., an average resting heart rate) and to avoid local variations in individual measurements and / or idiosyncratic cardiac activity that may not be indicative of the user's true resting heart rate. For example, the baseline resting heart rate may be a statistical value derived based on the median or average of resting heart rate measurements over the previous 14 days or some other time frame. In another aspect, the user may manually measure and input their resting heart rate for use in the HRRR calculation.
[0184] Maximum heart rate (HRmax ) may represent a user's estimated peak or maximum heart rate and may be measured in a number of ways. For example, one traditional measurement of maximum heart rate is calculated by subtracting the user's age from 220. For example, a 50-year-old person's estimated maximum heart rate is 170 beats per minute (bpm). The estimated maximum heart rate may also be adjusted according to, for example, gender, weight, and height. In another aspect, a user's historical heart rate data may be used to calculate a maximum heart rate, for example, based on a history of athletic activity over a time frame. In another aspect, the historical heart rate data may be used to adjust an age-based estimate of maximum heart rate, for example, by adjusting the estimate based on a history of peak heart rates (e.g., during detected athletic activity) that are consistently above or below the estimated maximum heart rate.
[0185] Resting heart rate (HR rest) may represent the resting heart rate. Similar to the baseline heart rate, the resting heart rate may be measured immediately after waking up, and measurements may be taken automatically or manually at this time, for the current day, the previous day, or for previous days. In another aspect, the resting heart rate may be measured based on one or more recent inactive periods during which a relatively low and stable heart rate was observed, for example, for the current day. In another aspect, the resting heart rate may be measured during sleep, during a particular sleep stage, such as deep sleep, or more specifically, during the last stage of deep sleep before waking up. For resting heart rate measured during sleep, the heart rate may be measured multiple times each night (e.g., for several consecutive deep sleep cycles), with the cycles selected based on order (e.g., the last two or three deep sleep cycles before waking up) or data quality (e.g., the deep sleep cycle with the highest quality heart rate data acquisition). Additionally or alternatively, resting heart rate may be measured over several days to provide an aggregate resting heart rate (e.g., an average resting heart rate) and to avoid local variations in individual measurements and / or idiosyncratic cardiac activity that may not be indicative of the user's true resting heart rate. For example, the resting heart rate may be a statistical value derived based on intermediate resting heart rate measurements over the previous 14 days or some other time frame.
[0186] In one embodiment, the resting heart rate (HR rest ) is the baseline resting heart rate (HR base), which advantageously normalizes heart rate reserve to exactly 1 when the current heart rate equals the maximum heart rate. In another embodiment, these values may be calculated separately based on different reference points, e.g., to incorporate both long-term and short-term heart rate trends into the heart rate reserve calculation. For example, the baseline heart rate may be calculated based on recent data, e.g., the heart rate immediately after waking up for the current day, or an average of the heart rates immediately after waking up for the last one or two days. This facilitates comparison of the current heart rate to the baseline resting heart rate for the day the heart rate reserve is being calculated. On the other hand, the resting heart rate may be calculated as a moving average of representative heart rates over an extended period (e.g., several days or a week) and may be based on heart rate measurements during sedentary periods (e.g., during one or more deep sleep periods over the previous day or the last few days). This may also or alternatively include a weighted average that weights recent measurements more heavily than older measurements, and / or may include a period spanning several weeks or more to better track overall well-being (physical health), for example, rather than potentially variable daily measurements.
[0187] More generally, it should be understood that heart rate reserve, heart rate reserve ratio, and each component index can be measured or calculated in many different ways. While indexes such as heart rate reserve are well known in the art and provide useful benchmarks for individual measures of cardiovascular activity or strain, any other heart rate index that objectively assesses the user's current heart rate relative to a range of possible or expected heart rates can be used in addition to or instead of the Heart Rate Reserve Ratio (HRRR) for purposes of training machine learning models and / or assessing a user's current cardiac activity level (e.g., to calculate a stress score as described herein). Also or alternatively, other physiological indexes (e.g., electrodermal, blood pressure, respiratory rate, skin temperature, body temperature, etc.) can be used, i.e., in addition to or instead of a heart rate index.
[0188] Using target metrics calculated over a time range, such as training data (e.g., motion data obtained from an accelerometer, gyroscope, etc.), heart rate data, engineered features, and user data, a machine learning model can be trained to predict a user's HRRR based on the corresponding input. In one aspect, the HRRR prediction model can be trained to predict a probability distribution of HRRR, expressed as a set of quantiles that characterize the distribution of expected HRRR values corresponding to the training data features. As a key advantage, this allows the user's current data to be scored against a range of possible outcomes, scaling the results within the probability distribution that fits the situation according to the current user data. Thus, for example, if the user is moving (e.g., running or walking), the distribution of expected HRRR will reflect a correspondingly elevated heart rate (and HRRR). The same elevated heart rate while the user is resting may indicate greater stress (e.g., emotional stress), which can be captured by comparing the user's calculated HRRR with the probability distribution corresponding to the user's motion data that indicates a lack of physical activity.
[0189] The probability distribution may be expressed at any suitable level of granularity (precision) for subsequent comparison with the user's actual HRRR data. In general, any quantization may be used for the distribution. For example, the quantiles may be distributed linearly across the range of possible values, such as as quartiles or deciles. For example, in the case of deciles, the first decile may be the 10th percentile below which 10% of HRRRs are expected to fall, the next the 20th percentile below which 20% of HRRRs are expected to fall, and so on. In another aspect, the distribution may be arranged nonlinearly, e.g., to provide finer granularity at both ends of the distribution. This may be more informative or sensitive to changes in stress associated with variations in measured heart rate and / or HRRR. Thus, for example, an HRRR distribution provided by an HRRR prediction model may provide bpm values corresponding to the 99th, 96th, 76th, 50th, 23rd, 3rd, and 1st percentiles of predicted cardiac HRRR values. Various data structures may be used to characterize the predicted distribution. For example, the HRRR prediction model may output a list of numeric values specifying an HRRR threshold for each corresponding percentile in the HRRR distribution.
[0190] A second model may also be created to classify the user's activity. In one aspect, this may include a machine learning model trained as a classification model on a target variable using multi-class labels that describe user activity. This may include specific activity types such as walking, running, swimming, sitting, etc., or it may include general activity types such as active, sedentary (sitting), and sleeping. This classification model may generally be trained using inputs related to movement and heart rate, including any of the engineered features described above or variations thereof, and may be adapted, for example, to the specific location of the wearable physiological monitor and specific user history. Various techniques for classifying activities based on data from wearable devices are known in the art and may be used to create an appropriate machine learning model or other process for classifying activities as described herein. Some common learning models include support vector machines, random forests, convolutional neural networks, recurrent neural networks, and long / short-term memory networks. For example, recurrent neural networks generally work well with continuous and variable inputs such as time series data and may be usefully deployed in this context. In another aspect, probabilistic models or the like may be used to estimate activity probabilities over individual time segments and then aggregate these into activity classifications over an interval. More generally, optimal model selection depends on various factors, such as the size and quality of the dataset, the complexity of the activity types, and the available computational resources.
[0191] As will be appreciated, the resulting models, tools, algorithms, or other stress-scoring resources may be compressed for local placement on the wearable physiological monitoring device to facilitate local processing of continuous updates without the need for a server. Alternatively, or in the alternative, the machine learning models or other components may be located on a server or other remote processing resource, which allows for the use of larger, more sophisticated machine learning models, but may introduce latency into the user experience when real-time information is required.
[0192] In accordance with the above, in one embodiment, method 700 may include creating a first model for generating a probability distribution of predicted heart rate reserve (referred to as predicted heart rate reserve). For example, the first model may include a machine learning model trained to generate a probability distribution of predicted heart rate reserve based on a first set of features of training data for a population of users of a certain type of physiological monitor. In one embodiment, generating the probability distribution includes generating a set of heart rate reserves including threshold heart rate reserves for each of a number of quantiles of the probability distribution. Method 700 may also include creating a second model for identifying activity types. This may include a classification model trained to identify activity types based on a second set of features of training data for a population of users of the physiological monitor. These models may generally be used to create stress scores and provide corresponding coaching or recommendations, as described herein. In one embodiment, the second model is used to modify the stress score to better match the wearer's predicted stress score, for example, if a relatively strenuous activity is identified by the second model.
[0193] As shown in step 704, method 700 may include receiving data for use in calculating a stress score. This may include, for example, receiving data from a monitor, such as any of the wearable physiological monitors described herein. The monitor may provide data such as heart rate data, motion data, and any other raw or processed data available from the monitor and any sensor or combination of sensors therein. Also, or alternatively, receiving data may include receiving data from a remote data store, such as a server that works in conjunction with the wearable monitor to provide data and analysis to the user. For example, useful summary data, such as the user's resting heart rate and the user's maximum heart rate, may be calculated and stored by the server and used in calculating a stress score as described herein.
[0194] As shown in step 706, method 700 may include calculating a current heart rate reserve ratio (HRRR), for example, using Equation 2 above. Generally, descriptive features (e.g., resting heart rate, baseline resting heart rate, maximum heart rate) may be calculated once and used throughout a period of interest, such as a day, two days, a week, or any other period during which maximum heart rate and resting heart rate are expected to remain relatively stable. However, the current heart rate is generally a current measurement for use in assessing a user's current stress level. For example, this may include an instantaneous measurement of the current heart rate. However, because this indicator is subject to high variability, the instantaneous heart rate may be advantageously windowed, averaged, filtered, or otherwise processed to obtain a more consistent measure of current exertion. For example, the current heart rate may be a moving average of instantaneous heart rates sampled over a recent interval, such as one minute, five minutes, etc. Generally, the current HRRR provides a benchmark for comparison with the HRRR distribution predicted by an HRRR prediction model.
[0195] As shown in step 708, method 700 may include predicting an HRRR distribution, for example, by generating a probability distribution of HRRR based on current data from the monitor. As noted above, this probability distribution (also referred to herein simply as the "HRRR distribution") is objectively determined based on data such as motion data from a physiological monitor worn by the user, and therefore provides a range and distribution of expected HRR ratios for the user based on the current user situation.
[0196] As shown in step 710, method 700 may include calculating a stress score, such as an initial stress score, for the wearer based on a comparison of the user's (current) heart rate reserve ratio as calculated in step 706 with the HRRR distribution generated in step 708. In one embodiment, the stress score may be calculated by scoring the current HRRR based on a quantile within the HRRR distribution. For example, the HRRR distribution may be scaled, e.g., from 0 to 1 (or any other suitable numerical range), where 0 represents the lowest HRRR in the HRRR distribution, 0.5 represents the median or average HRRR in the HRRR distribution, and 1 represents the highest HRRR in the HRRR distribution. Interpolative scoring within these intervals may be based on which quantile the current HRRR value falls within the HRRR distribution. For example, using linear quantile scaling, if the current HRRR falls in the 10th percentile, a score of 0.1 would be received, and if the current HRRR falls in the 90th percentile, a score of 0.9 would be received. As described above, the HRRR distribution may be generated as a discrete set of quantiles within the distribution, and the initial scoring may also or alternatively involve interpolating the quantiles or otherwise processing the HRRR distribution data and the current HRRR to identify the quantile that corresponds to the current HRRR, and the score may be based on that quantile.
[0197] Once the quantile is identified, the reported score may be calculated using any suitable formula. For example, the score may be expressed as a simple scaled version or quantile (e.g., score = quantile / 100). However, other scaling or scoring techniques may also or alternatively be used to score the current HRRR along the distribution, such as logarithmic or exponential scoring, for example, to weight the scoring toward or away from the distribution mean as appropriate.
[0198] While HRRR provides a useful indicator for assessing stress, other indicators may also be correlated to stress and used with the techniques described herein to assess stress using a probability distribution. For example, instead of HRRR, method 700 may use heart rate, heart rate variability, respiratory rate, blood pressure, and / or any other cardiac indicator. More generally, any physiological indicator that can be measured or inferred and correlated with stress may be used as a basis for real-time stress detection using the techniques described herein, for example, by creating a model to estimate a predicted range that is correlated with other observable indicators or model inputs, measuring the current value of the corresponding parameter, and then comparing the current value to the estimated range(s).
[0199] For example, method 700 may include calculating and applying heart rate metrics such as one or more of heart rate reserve, heart rate reserve ratio, heart rate variability, instantaneous heart rate, and aggregate heart rate (e.g., average heart rate). Additionally or alternatively, method 700 may include calculating and applying other physiological metrics such as skin temperature, core body temperature, respiration rate, skin conductance, blood pressure, and the like. Similarly, a machine learning model may be trained to generate a probability distribution of corresponding predicted heart rate metrics (or other physiological stress-related metrics), which may include any one or more of the aforementioned metrics. As will be further understood, while any one of a variety of heart rate metrics may be used, it is generally advantageous to calculate and / or measure current values of the same one or more metrics used to train the machine learning model or other model that generates the probability distribution. Improved accuracy may also be achieved under some conditions by combining one or more such indicators, by combining the results of models based on such indicators, and / or by using a probabilistic approach to select the indicator or model that is most likely to be accurate based on one or more characteristics of one or more indicators.
[0200] As indicated in step 712, method 700 may include classifying the user's activity. This may include applying data from the monitor (e.g., motion data, etc.) obtained in step 704 to a classification model such as any described herein to identify the activity type. More generally, any technique or combination of techniques suitable for determining a user's activity may be applied to classify the activity, including machine learning techniques, probabilistic techniques, explicit self-report (e.g., receiving user input specifying an activity and / or time interval), etc.
[0201] As shown in step 714, method 700 may include refining the stress score. In one aspect, this may include refining the stress score based on activity. For example, the heart rate score may be adjusted based on the predicted probability that the user is sleeping, active, sedentary, etc. This may include an aggregated adjustment according to the probability of various activities, or a single adjustment based on the most likely predicted activity, or some combination thereof. In one aspect, the stress score may be lowered in proportion to the probability that the user is sleeping, where sleep cycles may cause intermittent heart rate increases unrelated to stress. In another aspect, the stress score may be normalized according to possible physical activity. For example, the stress score may be moved closer to the mean in proportion to the probability that the user is active, or the stress score may be raised in proportion to the probability that the user is inactive.
[0202] Also, or alternatively, refining the stress score may include smoothing the stress score (e.g., by averaging a history of recent stress scores, by low-pass filtering a time series of recent stress scores over a period of time, or by otherwise adjusting the current stress score as reported to the user to reduce variability in moment-to-moment calculations of the stress score). In one aspect, both the moment-to-moment (or unsmoothed) stress score and the smoothed stress score may be presented to the user.
[0203] As indicated at step 716, method 700 may include taking other actions. Generally, once the user's stress score is determined, method 700 may include any suitable additional processing, such as by displaying the stress score, by providing recommendations, and by updating other user metrics, all as described herein.
[0204] Thus, in one aspect, a method is disclosed herein, the method including: creating a first model including a machine learning model trained to generate a probability distribution of a physiological indicator based on a first feature set of training data of a user population of a certain type of physiological monitor; creating a second model including a classification model trained to identify an activity type based on a second feature set of training data of a user population of a certain type of physiological monitor; receiving user data from a wearer of a first physiological monitor of the certain type of physiological monitor; calculating a value of a physiological indicator for the wearer based on the user data from the first physiological monitor; generating a probability distribution of the physiological indicator for the wearer based on the first feature set of the user data; and calculating a stress score for the wearer based on a comparison of the value of the physiological indicator with the probability distribution of the physiological indicator. The physiological indicator may include a heart rate indicator. The physiological indicator may include an indicator correlated with stress. The physiological indicators may include one or more of heart rate reserve, heart rate reserve ratio, heart rate variability, instantaneous heart rate, aggregate heart rate (e.g., average heart rate), skin temperature, core body temperature, respiratory rate, blood pressure, and skin conductance.
[0205] 8 illustrates a process for calculating a stress score, which may involve, for example, using any of the systems or methods described herein.
[0206] In general, feature engineering 802 may be utilized to provide feature data based on historical data, such as motion data and heart rate data, from a wearable physiological monitor for a user population or an individual user, or some combination thereof. The resulting engineered features (e.g., summary statistics, moving averages, filtered outputs, etc.) may provide training data for models such as HRRR prediction model 804 and classification model 806, which may then be used to support stress scoring as described herein.
[0207] Once these models are created, the current data 808 can be used to generate a current stress score 810. For example, engineered features of the current data 808 from the wearable physiological monitor that correspond to the engineered features used to train the HRRR prediction model 804 may be used to generate an HRRR distribution 812 based on the user's current state. The user's current heart rate may be used along with other user metrics, such as (baseline) resting heart rate and maximum heart rate, to calculate the user's current heart rate reserve 814. As described further herein, this current heart rate reserve 814 may be compared to the HRRR distribution 812 from the HRRR prediction model 804 to identify a quantile of the current HRRR in the context of the user's current activity state. This quantile may be used to create a raw score 816, which may be further refined based on an activity classification 818 (e.g., determined by applying the activity classification model 806 to the current data 808) to provide the user's stress score 810 based on the current heart rate reserve 814. This stress score 810 may be further scaled, refined, smoothed, and otherwise post-processed to provide a current stress score suitable for reporting to the user and / or making coaching recommendations as described herein.
[0208] 9 illustrates a user interface displaying a dynamic stress score. User interface 900 may be rendered, for example, on a user's smartphone or other computing device. In general, the dynamic stress score may be displayed in user interface 900 in any number of suitable formats. For example, user interface 900 may display a current value of the dynamic stress score 902, a historical timeline of the dynamic stress score 904, one or more coaching recommendations 906, etc., along with any other user information requested by or that may be of interest to the user. In general, user interface 900 may also include interactive controls for user interaction with a website, app, or other computing platform that supports the acquisition, analysis, and display of the user's stress data.
[0209] Dynamic stress scoring using multiple techniques
[0210] Calculating a dynamic stress score may usefully include a combination of the methods or individual steps described herein. In one aspect, this may include combining different stress calculation techniques to provide an average or ensemble measure of stress. For example, the present teachings may include any combination of one or more steps of system 500 of FIG. 5, method 600 of FIG. 6, and method 700 of FIG. 7.
[0211] In another aspect, this may involve using different calculation techniques to separate and report different stressors. For example, a calculation that includes the contribution of movement may be used to estimate stress due to physical activity, while a calculation that varies depending on whether the user's heart rate is at or near their resting heart rate may be used to estimate stress due to psychological stressors. Alternatively, a calculation that specifically seeks to eliminate or reduce the contribution due to physical movement may be used to separate and estimate stress due to emotional, intellectual, and / or other non-physical stressors. These techniques may be used in combination to estimate how much of a reported stress score is due to physical stressors and how much is due to non-physical stressors. Also, or alternatively, these techniques may be used in combination to report separate scores for psychological and physical stressors. This advantageously allows for separation of physical and psychological stressors, facilitating reporting both indicators to the user simultaneously so that the user can assess the importance of these measures together and in combination. Coaching recommendations may also be tailored to indicate which factors are likely contributing to the current stress score and provide appropriate interventions as needed. For example, if a user experiences an elevated heart rate despite being awake and immobile, this may indicate significant psychological stress. Appropriate interventions, such as breathing exercises or meditation, may be recommended to alleviate this detected non-physical stressor. Conversely, if a user experiences an elevated heart rate during physical activity, such as running, immediate intervention may not be appropriate, especially if the elevated heart rate is typical for the user at a similar level of physical activity.
[0212] In another aspect, decomposition of stressors, along with other user data regarding activity type, sleep activity, exercise, and diet, etc., can facilitate more customized coaching recommendations regarding lifestyle, work habits, training, etc.
[0213] More generally, the methods and systems described herein may be used alone or in combination, and any such combination suitable for dynamic stress scoring or otherwise suitable for assessing a user's current stress state is intended to fall within the scope of the present disclosure.
[0214] The above-described systems, devices, methods, processes, etc. may be implemented in hardware, software, or any combination thereof suitable for the control, data acquisition, and data processing described herein. This includes implementation in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors, or other programmable devices or processing circuits, along with internal and / or external memory. Additionally, or alternatively, this may include one or more application-specific integrated circuits, programmable gate arrays, programmable array logic components, or any other device(s) that can be configured to process electronic signals. It will be further recognized that implementations of the above-described processes or devices may include computer-executable code created using a structured programming language such as C, an object-oriented programming language such as C++, or any other high- or low-level programming language (including assembly language, hardware description languages, and database programming languages and techniques), which code may be stored, compiled, or interpreted for execution on any of the above-described devices, as well as heterogeneous combinations of processors, processor architectures, or different hardware and software combinations.
[0215] Thus, in one aspect, each of the above methods, and combinations thereof, may be embodied in computer-executable code that performs its steps when executed on one or more computing devices. In another aspect, the method may be embodied in a system that performs its steps, and may be distributed among devices in various ways, or all functionality may be integrated into a dedicated, standalone device or other hardware. The code may be stored in a persistent manner in computer memory. The computer memory may be memory from which the program executes (such as random access memory associated with a processor), or storage such as a disk drive, flash memory, or any other optical, electromagnetic, magnetic, infrared, or other device or combination of devices. In another aspect, any of the above systems and methods may be embodied in any suitable transmission or propagation medium that conveys the computer-executable code and / or any input or output from the computer-executable code. In another aspect, the means for performing the steps associated with the above processes may include any of the hardware and / or software described above. All such permutations and combinations are intended to be within the scope of the present disclosure.
[0216] The method steps of the embodiments described herein are intended to include any suitable manner of performing such method steps, consistent with the patentability of the following claims, unless a different meaning is expressly provided or apparent from the context. Thus, for example, performing step X includes any suitable manner of having another party, such as a remote user, a remote processing resource (e.g., a server or cloud computer), or a machine, perform step X. Similarly, performing steps X, Y, and Z may include any manner of directing or controlling any combination of such other individuals or resources to perform steps X, Y, and Z and obtain the benefit of such steps. Thus, the method steps of the embodiments described herein are intended to include any suitable manner of having one or more other parties or entities perform such steps, consistent with the patentability of the following claims, unless a different meaning is expressly provided or apparent from the context. Such parties or entities need not be under the direction or control of any other party or entity, nor need they be located within any particular jurisdiction.
[0217] It should be understood that the above-described methods and systems have been described by way of example, and not limitation. Numerous variations, additions, omissions, and other modifications will be apparent to those skilled in the art. Furthermore, the order or presentation of method steps in the above description and drawings is not intended to require that the described steps be performed in that order, unless a particular order is expressly required or apparent from the context. Thus, while specific embodiments have been shown and described, it will be apparent to those skilled in the art that various changes and modifications in form and detail may be made therein without departing from the spirit and scope of the disclosure, which are intended to form a part of the present invention as defined by the following claims.
Claims
1. providing a heart rate variability index for the user; providing a heart rate indicator for the user; determining a resting state of the user; calculating a stress score for the user; the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index; the weighted combination uses a first weight for a first component of the heart rate metric-based stress score, the first weight being based on a resting state of the user; The method, wherein the weighted combination uses a second weight for a second component of the heart rate variability index-based stress score, the second weight being based on the user's resting state.
2. The method of claim 1 , wherein the second weight is equal to 1 minus the first weight.
3. The method of claim 2 , wherein the first weight approaches 1 as the heart rate index approaches a resting heart rate for the user.
4. The method of claim 3 , wherein the first weight monotonically approaches 1 as the heart rate index approaches the resting heart rate.
5. The method of claim 3 , wherein the first weight sigmoidally approaches 1 as the heart rate index approaches the resting heart rate.
6. 10. A method according to any preceding claim, wherein the first weight increases with the proximity of the user from the resting state to a sleep state.
7. 10. A method according to any preceding claim, further comprising periodically calculating the stress score over an interval, thereby providing a timeline of the stress score for the user over the interval.
8. The method of claim 7 , further comprising displaying the timeline of the stress scores as a stress score graph on a user device.
9. 10. The method of any preceding claim, wherein providing the heart rate variability index and the heart rate index comprises obtaining the heart rate variability index and the heart rate index from a physiological monitor worn by a user.
10. 10. The method of any preceding claim, further comprising displaying the stress score on one or more of a wearable physiological monitor and a user device.
11. 10. The method of any preceding claim, further comprising generating an intervention recommendation for the user based on the stress score.
12. The method of claim 11 , wherein the intervention recommendation comprises a real-time recommendation based on a current stress score.
13. The method of claim 11 or 12, wherein the intervention recommendations comprise real-time recommendations based on current activity.
14. 10. The method of any preceding claim, further comprising identifying a threshold value of the stress score that indicates acute stress.
15. The method of claim 14 , further comprising reporting the acute stress to a user.
16. The method of claim 14 or 15, further comprising recommending to the user a remedy for the acute stress.
17. 10. The method of any preceding claim, further comprising identifying a threshold value for the stress score indicative of autonomic activation.
18. 10. A method according to any preceding claim, wherein the resting state is based on the user's circadian rhythm state.
19. 20. The method of claim 18, wherein the circadian rhythm state is based on a probability of a user's sleep state.
20. 20. The method of claim 18 or 19, wherein the circadian rhythm state is based on a population circadian rhythm model.
21. The method of any of claims 18 to 20, wherein the circadian rhythm state is based on a circadian rhythm model of the user.
22. 10. A method according to any preceding claim, wherein the resting state is based on the difference between the heart rate indicator of the user and the user's resting heart rate.
23. 10. A method according to any preceding claim, wherein the resting states are distinct resting states comprising at least one of a sleep state and a wake state.
24. 24. The method of claim 23, wherein the sleep state includes one or more sub-states for one or more corresponding sleep stages.
25. 25. The method of claim 23 or 24, wherein the first weight for weighting the heart rate indicator is increased if the resting state is a sleep state.
26. 10. A method according to any preceding claim, wherein the resting states are discrete resting states selected based on one or more predetermined ranges of the heart rate.
27. 10. A method according to any preceding claim, wherein providing the heart rate indicator comprises obtaining aggregate heart rate measurements over an interval using a wearable physiological monitor.
28. 28. The method of claim 27, wherein providing the heart rate variability index comprises obtaining aggregate heart rate variability measurements over an interval with the wearable physiological monitor.
29. 10. The method of any preceding claim, further comprising adjusting the stress score based on motion data obtained from a wearable monitor worn by the user.
30. 10. A method according to any preceding claim, wherein providing the heart rate variability index comprises scaling the heart rate variability measure based on a distribution of past heart rate variability measures.
31. 10. A method according to any preceding claim, wherein providing the heart rate indicator comprises scaling the heart rate measurement based on a distribution of past heart rate measurements.
32. 1. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executed on one or more computing devices, causes the one or more computing devices to perform the following steps: providing a heart rate variability index for the user; providing a heart rate indicator for the user; determining a resting state of the user; calculating a stress score for the user; the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index; the weighted combination uses a first weight for the heart rate metric based on a resting state of the user; The weighted combination uses a second weight for the heart rate variability index based on a user's resting state.
33. 1. A system comprising: a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire heart rate data of a user based on signals from the one or more sensors; One or more processors communicatively coupled to the wearable physiological monitor, the one or more processors configured by computer executable code to receive data from the wearable physiological monitor and perform the following: calculating a heart rate variability index of the user based on the heart rate data; calculating a heart rate index of the user based on the heart rate data; determining a resting state of the user based on the heart rate data; calculating a stress score for the user; the stress score is calculated based on a weighted combination of the heart rate variability index and the heart rate index; the weighted combination uses a first weight for the heart rate metric based on a resting state of the user; the weighted combination uses a second weight for the heart rate variability index based on a user's resting state; and a display device in communication with the one or more processors; The system, wherein the display device includes a user interface configured to present a value indicative of the stress score to a user.
34. 34. The system of claim 33, wherein at least one processor of the one or more processors is located in the display device.
35. 35. A system according to claim 33 or 34, wherein at least one processor of the one or more processors is located on a remote server.
36. The system of any one of claims 33 to 35, wherein at least one processor of the one or more processors is located on a user device.
37. 37. The system of claim 33, wherein one processor of the one or more processors is located on a remote server and another processor of the one or more processors is located on a user device.
38. 1. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executed on one or more computing devices, performs the following steps: providing a machine learning model trained to report stress levels based on heart rate, heart rate variability, and movement measured from the monitor; obtaining a plurality of measurements of stress level over an interval based on data from the monitor about the user; processing a plurality of measurements of the stress level over the interval to provide a stress estimate for the interval; scaling the stress estimate with a function that converts the stress estimate into a value within a predetermined range; and presenting the value to a user on a display as a dynamic stress value.
39. It is a method providing a machine learning model trained to report stress levels based on heart rate, heart rate variability, and movement measured from the monitor; obtaining a plurality of measurements of stress level over an interval based on data from the monitor about the user; processing a plurality of measurements of stress level over the interval to provide a stress estimate for the interval.
40. scaling the stress estimate with a function that converts the stress estimate into a value within a predetermined range; 40. The method of claim 39, further comprising presenting the value to the user on a display as a dynamic stress value.
41. 41. The method of claim 40, further comprising displaying the dynamic stress value on a wearable monitor.
42. 42. The method of claim 40 or 41, further comprising displaying the dynamic stress value on a user device.
43. 43. A method according to any one of claims 40 to 42, wherein the function comprises a non-linear scaling that transforms a majority of the individual's multiple stress estimates into the lowest of the dynamic stress values.
44. 44. The method of any one of claims 39 to 43, further comprising generating an intervention recommendation for a user based on the stress estimate.
45. 45. The method of claim 44, wherein the intervention recommendations comprise real-time recommendations based on current stress estimates.
46. 46. The method of claim 44 or 45, wherein the intervention recommendations comprise real-time recommendations based on current activity.
47. 47. The method of any one of claims 39 to 46, wherein the machine learning model is trained using a training set comprising a set of measured physiological responses to one or more predetermined stressors from a plurality of users, each physiological response tagged with a stress score from a corresponding one of the plurality of users when exposed to a corresponding one of the one or more predetermined stressors.
48. 48. The method of any one of claims 39 to 47, further comprising identifying a threshold value of the stress estimate that is indicative of acute stress.
49. 49. The method of claim 48, further comprising reporting the acute stress to a user.
50. 50. The method of claim 48 or 49, further comprising recommending to the user a remedy for acute stress.
51. 51. The method of any one of claims 39 to 50, further comprising identifying a threshold value for the stress estimate that is indicative of autonomic activation.
52. 52. A method according to any one of claims 39 to 51, wherein the plurality of measurements of stress level comprises a measurement at least every 30 seconds.
53. 53. A method according to any one of claims 39 to 52, wherein the interval is between 3 and 10 minutes.
54. 1. A method comprising: providing a model configured to output a stress level based on heart rate, heart rate variability, and movement measured from the monitor; obtaining a plurality of measurements of the stress level based on data from the monitor about the user over an interval; processing a plurality of measurements of the stress level over the interval using the model to provide a stress estimate for the interval.
55. 55. The method of claim 54, wherein the model comprises a machine learning model trained to report the stress level based on heart rate, heart rate variability, and movement measured from the monitor.
56. 56. The method of claim 54 or 55, wherein the model comprises an analytical model that uses a combination of scaled heart rate scores and scaled heart rate variability scores.
57. 57. The method of claim 56, wherein the analytical model weights the contributions of the scaled heart rate score and the scaled heart rate variability score based on movement detected by the monitor.
58. 1. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executed on one or more computing devices, performs the following steps: creating a first model comprising a machine learning model trained to generate a probability distribution of predicted fractional heart rate reserves based on a first set of features of training data for a population of users of a certain type of physiological monitor; receiving user data from a wearer of a first one of the types of physiological monitors; calculating a heart rate reserve ratio for the wearer based on the user data from the first physiological monitor; generating a probability distribution of predicted fractional heart rate reserve for the wearer based on the first set of features of the user data; calculating a stress score for the wearer based on a comparison of the heart rate reserve to a probability distribution of the predicted heart rate reserve.
59. 59. The computer program product of claim 58, further comprising code for performing the step of creating a second model, the second model comprising a classification model trained to identify activity types based on a second set of features of training data for a population of users of the type of physiological monitor.
60. 60. The computer program product of claim 59, wherein the second model is used to modify the stress score to better match an expected stress score for the wearer.
61. 61. A computer program product according to claim 59 or 60, wherein the activity types include one or more of: active, sedentary, and asleep.
62. 62. The computer program product of any one of claims 58 to 61, further comprising code for performing the steps of classifying an activity type of the user based on a second set of features of the user data, and refining a stress score based on the activity type, thereby providing an improved stress score.
63. 63. The computer program product of claim 62, further comprising code that performs the step of providing a recommendation to a user based on the refined stress score.
64. 64. A computer program product according to claim 62 or 63, wherein the activity types include one or more of: active, sedentary, and asleep.
65. 65. The computer program product of any one of claims 58 to 64, wherein generating the probability distribution comprises generating a set of cardiac rate reserves corresponding to each of a number of quantiles of the probability distribution.
66. 66. The computer program product of any one of claims 58 to 65, further comprising code for performing the step of displaying the stress score on one or more of a wearable monitor and a user device.
67. 67. A computer program product according to any one of claims 58 to 66, further comprising code for performing the step of generating an intervention recommendation for the wearer based on the stress score.
68. 68. The computer program product of claim 67, wherein the intervention recommendation comprises a real-time recommendation based on a current stress score.
69. 69. The computer program product of claim 67 or 68, wherein the intervention recommendations comprise real-time recommendations based on current activity.
70. 70. A computer program product according to any one of claims 58 to 69, further comprising code for performing the step of identifying a threshold value of the stress score that is indicative of acute stress.
71. 71. The computer program product of claim 70, further comprising code for performing the step of reporting the acute stress to the wearer.
72. 72. A computer program product according to claim 70 or 71, further comprising code for performing the step of recommending to the wearer a remedy for the acute stress.
73. 73. The computer program product of any one of claims 58 to 72, further comprising code for performing the step of identifying a threshold value of the stress score indicative of autonomic activation.
74. It is a method creating a first model comprising a machine learning model trained to generate a probability distribution of a physiological indicator based on a first set of features of training data for a population of users of a certain type of physiological monitor; receiving user data from a wearer of a first one of the types of physiological monitors; calculating a value of a physiological index of the wearer based on the user data from the first physiological monitor; generating a probability distribution of physiological indicators of the wearer based on the first set of features of the user data; calculating a stress score for the wearer based on a comparison of the value of the physiological index to a probability distribution of the physiological index.
75. 75. The method of claim 74, further comprising creating a second model, the second model comprising a classification model trained to identify activity types based on a second set of features of training data for a population of users of the type of physiological monitor.
76. 76. The method of claim 75, wherein the second model is used to refine the stress score to better match an expected stress score for the wearer.
77. 77. The method of any one of claims 74 to 76, wherein the physiological indicator comprises a heart rate indicator.
78. 78. The method of any one of claims 74 to 77, wherein the physiological indicators include indicators correlated with stress.
79. 79. The method of any one of claims 74 to 78, wherein the physiological indicators include one or more of heart rate reserve, heart rate reserve ratio, heart rate variability, instantaneous heart rate, aggregate heart rate, skin temperature, core body temperature, respiratory rate, blood pressure, and skin conductance.
80. 1. A system comprising: a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire user data including heart rate data of a wearer based on signals from the one or more sensors; a data store storing a first model including a machine learning model trained to generate a probability distribution of a physiological indicator based on a first set of features of training data for a population of users of a certain type of physiological monitor; one or more processors communicatively coupled to the wearable physiological monitor, the one or more processors configured with computer-executable code to receive data from the wearable physiological monitor and perform the steps of: receiving the user data from the wearable physiological monitor; calculating values of the physiological indicators of the wearer based on the user data from the wearable physiological monitor; generating a probability distribution of the physiological indicator of the wearer based on a first set of features of the user data; one or more processors for calculating a stress score for the wearer based on a comparison of the value of the physiological index to a probability distribution of the physiological index; a display device in communication with the one or more processors; The system, wherein the display device includes a user interface configured to present a value indicative of the stress score to a user.
81. 1. A method comprising: measuring the user's aggregate heart rate over an interval with a physiological monitor; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; responsive to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on a plurality of measurements of heart rate, heart rate variability, and movement obtained from the physiological monitor during the interval; responsive to determining that the aggregate heart rate is within the predetermined range, calculating the stress score for the user based on the plurality of measurements using a weighted contribution of heart rate variability to heart rate that is lower than the weighted contribution used if the aggregate heart rate was determined to be outside the predetermined range; displaying to a user a value indicative of the stress score for the interval.
82. 82. The method of claim 81, further comprising updating a user's cumulative stress score based on the stress score.
83. 83. The method of claim 81 or 82, wherein in response to a determination that the aggregate heart rate is outside the predetermined range, a first algorithm is applied to calculate the stress score for the user, and in response to a determination that the aggregate heart rate is within the predetermined range, a second algorithm is applied to calculate the stress score for the user, the second algorithm including a lower weighted contribution of heart rate variability compared to the first algorithm.
84. 84. A method according to any one of claims 81 to 83, wherein the low weighted contribution of heart rate variability is scaled relative to the distance from the user's resting heart rate.
85. 85. The method of claim 84, wherein the distance comprises a sigmoid distance to a resting heart rate determined using a sigmoid function that assesses closeness of a heart rate to the user's resting heart rate.
86. 86. A method according to any one of claims 81 to 85, wherein the stress score is scaled with a function that converts the stress score into a value.
87. 87. The method of claim 86, wherein scaling the stress score places the value within the predetermined range.
88. 88. The method of any one of claims 81 to 87, wherein the value is displayed on at least one of the physiological monitor and a user device in communication with the physiological monitor.
89. 89. The method of any one of claims 81 to 88, further comprising generating an intervention recommendation for the user based on the stress score.
90. 1. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executed on one or more computing devices, performs the following steps: measuring the user's aggregate heart rate over an interval with a physiological monitor; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; responsive to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on a plurality of measurements of heart rate, heart rate variability, and movement obtained from the physiological monitor during the interval; responsive to determining that the aggregate heart rate is within the predetermined range, calculating the stress score for the user based on the plurality of measurements using a weighted contribution of heart rate variability to the heart rate that is lower than the weighted contribution used if the aggregate heart rate was determined to be outside the predetermined range; and displaying to the user a value indicative of the stress score for the interval.
91. 1. A system comprising: a wearable physiological monitor including one or more sensors and a first processor configured to continuously acquire data including a user's heart rate, heart rate variability, and movement based on signals from the one or more sensors; a second processor communicatively coupled to the wearable physiological monitor, the second processor configured by computer executable code to receive data from the wearable physiological monitor and to: measuring the user's aggregate heart rate over an interval; determining whether the aggregate heart rate over the interval is within a predetermined range of the user's resting heart rate; responsive to determining that the aggregate heart rate is outside the predetermined range, calculating a stress score for the user over the interval based on data from the wearable physiological monitor acquired during the interval; a second processor configured to, in response to determining that the aggregate heart rate is within the predetermined range, calculate a stress score for the user based on data from the wearable physiological monitor acquired during the interval using a weighted contribution of heart rate variability to the heart rate that is lower than the weighted contribution used if the aggregate heart rate was determined to be outside the predetermined range; and a display device in communication with the second processor; The system, wherein the display device includes a user interface configured to present to a user a value indicative of the stress score for the interval.
92. 92. The system of claim 91, wherein the second processor is located in one or more of the wearable physiological monitor, the display device, and a remote server.