WO2018218310A1 - Digital health monitoring system - Google Patents

Digital health monitoring system Download PDF

Info

Publication number
WO2018218310A1
WO2018218310A1 PCT/AU2018/050548 AU2018050548W WO2018218310A1 WO 2018218310 A1 WO2018218310 A1 WO 2018218310A1 AU 2018050548 W AU2018050548 W AU 2018050548W WO 2018218310 A1 WO2018218310 A1 WO 2018218310A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
communicator
sensor data
physiological parameters
user
Prior art date
Application number
PCT/AU2018/050548
Other languages
French (fr)
Inventor
Razali Bin MOHAMAD
Luke David BOLLAM
Marcus Charles TUREWICZ
Original Assignee
Alerte Digital Health Pte. Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2017902097A external-priority patent/AU2017902097A0/en
Application filed by Alerte Digital Health Pte. Ltd. filed Critical Alerte Digital Health Pte. Ltd.
Publication of WO2018218310A1 publication Critical patent/WO2018218310A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/48Other medical applications
    • A61B5/4806Sleep evaluation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0002Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
    • A61B5/0015Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by features of the telemetry system
    • A61B5/0022Monitoring a patient using a global network, e.g. telephone networks, internet
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/02Detecting, measuring or recording pulse, heart rate, blood pressure or blood flow; Combined pulse/heart-rate/blood pressure determination; Evaluating a cardiovascular condition not otherwise provided for, e.g. using combinations of techniques provided for in this group with electrocardiography or electroauscultation; Heart catheters for measuring blood pressure
    • A61B5/024Detecting, measuring or recording pulse rate or heart rate
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/145Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue
    • A61B5/14542Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue for measuring blood gases
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • A61B5/361Detecting fibrillation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • A61B5/363Detecting tachycardia or bradycardia
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/389Electromyography [EMG]
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/48Other medical applications
    • A61B5/4806Sleep evaluation
    • A61B5/4818Sleep apnoea

Definitions

  • the present invention relates to health monitoring applications for mobile devices and in particular to automated health monitoring applications via mobile devices.
  • the invention has been developed primarily for use in methods and systems for automated and real time health monitoring via mobile devices and will be described hereinafter with reference to this application. However, it will be appreciated that the invention is not limited to this particular field of use.
  • One embodiment provides a computer program product for performing a method as described herein.
  • One embodiment provides a non-transitive carrier medium for carrying computer executable code that, when executed on a processor, causes the processor to perform a method as described herein.
  • One embodiment provides a system configured for performing a method as described herein.
  • a process where physiological data is recorded by a monitor and the data is classified by an analysis algorithm.
  • the classification may be verified or corrected by a human with relevant expert knowledge in the field to form a verified data set.
  • the verified data is sent to an Al training server comprising of one or more computation devices connected on a network where the data and verified classification joins an historical verified data set.
  • the full or subset of the verified data set may be used by the training server to train or optimise the performance of the algorithm.
  • the optimised algorithm replaces the original Analysis Algorithm.
  • the monitor connects to the training server via an intermediate communicator.
  • the communicator is configured to execute the analysis algorithm. When a new analysis algorithm is available, it is transmitted by the training server to the communicator. The communicator then uses the improved analysis algorithm.
  • the monitor connects directly to a training server.
  • the monitor is configured to execute the analysis algorithm.
  • a new analysis algorithm is ready, it is transmitted to the monitor.
  • the monitor then uses the improved analysis algorithm.
  • One or more monitors may be configured to transmit unverified data and labels computed by the analysis algorithm in use directly to a labelling interface. The data is verified on the labelling interface, then sent to the training server.
  • One or more communicators may be configured to transmit unverified data and labels computed by the analysis algorithm in use directly to the labelling interface. The data is verified on the labelling interface, then sent to the training server.
  • a system for providing autonomous health monitoring of a user may comprise a monitoring device.
  • the monitoring device may comprise one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of the user.
  • the system may further comprise a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data.
  • the communicator may comprise an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm.
  • the system may further comprise a server device in communication with the communicator.
  • the server may be adapted to receive data comprising historical physiological parameters.
  • the server may be further adapted to perform calculations to analyse the historical physiological parameters.
  • the server may be further adapted to perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm.
  • the communicator may be configured to receive the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm.
  • the communicator may be further configured to perform calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.
  • a system for providing autonomous health monitoring of a user comprising: a monitoring device, comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data;, the communicator comprising an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm and a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters; perform calculations to analyse the historical physiological parameters and; perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm; wherein the communicator receives the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm and performs calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.
  • the predetermined analysis algorithm for analysis of the physiological parameters may be adapted for monitoring for the monitored physical condition in real time.
  • the communicator may comprise a mobile computing device.
  • the communicator may be integrated with the monitoring device.
  • the communicator may be configured to transmit the sensor data to the server device for storage as historical physiological parameters.
  • the system may further comprise a plurality of communicators in communication with at least a corresponding plurality of monitoring devices for recording sensor data in relation to at least a corresponding plurality of users.
  • Each communicator may be configured to analyse corresponding sensor data in accordance with the predetermined analysis algorithm.
  • the server may be configured to transmit the computed coefficients to each of the plurality of communicators for use by a corresponding analysis module of each of the plurality of communicators.
  • the plurality of communicators may comprise either a mobile computing device or a monitoring device comprising a communicator.
  • the plurality of communicators may be connected to the server device within a distributed network.
  • the server may comprise a global labelling interface configured to receive global alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters.
  • the communicator may be configured to transmit the sensor data and calculated label data to the global labelling interface for verification of the calculated label data.
  • the communicator may comprise a local labelling interface configured to receive local alarm state data correlating to positive identification of the predetermined physiological condition.
  • the communicator may be configured to transmit the local alarm state data to the global labelling interface for inclusion with the global alarm state data.
  • the server may comprise an artificial neural network.
  • the system may comprise a plurality of communicators. Each communicator may comprise an artificial neural network.
  • the artificial neural network may be trained by the server utilising: data from a plurality of communicators; and/or data from the labelling interface.
  • the system may comprise a plurality of monitoring device. Each monitoring device may comprise an artificial neural network.
  • the artificial neural network may be trained by the server utilising data from a plurality of monitoring devices.
  • the artificial neural network may be trained by the server utilising data from a plurality of communicators and/or data from the labelling interface.
  • the artificial neural network may be distributed across a plurality of communicators and/or a plurality of monitoring devices.
  • the server may be configured to receive sensor data and perform calculations to determine coefficients in relation to a predetermined analysis algorithm such that analysis of sensor data using the predetermined analysis algorithm is adapted to identify a predetermined physical condition represented in the analysed sensor data.
  • the predetermined analysis algorithm may be adapted to identify a predetermined physical condition represented in the analysed sensor data in real-time.
  • the labelling interface may be configured to cause the server to recalculate the coefficients of the predetermined analysis algorithm on receipt of alarm state data.
  • the server may be configured to transmit the recalculated coefficients to the communicator.
  • a method for providing autonomous health monitoring of a user may comprise the step of providing a monitoring device.
  • the monitoring device may comprise one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user.
  • the method may comprise the further step of providing a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data.
  • the method may comprise the further step of providing a server device in communication with the communicator.
  • the server device may be configured to receive data comprising historical physiological parameters.
  • the server device may be further configured to perform calculations to analyse the historical physiological parameters.
  • the server device may be further configured to perform calculations to compute coefficients in respect of a computational algorithm for real time analysis of the physiological parameters.
  • the method may comprise the further step of receiving from the server device the computed algorithm coefficients on the communicator for analysis of the physiological parameters.
  • the method may comprise the further step of performing calculations on the communicator to analyse the physiological parameters of the user in accordance with the computational algorithm.
  • the method may comprise the further step of labelling the sensor data with calculated label data and raising an alarm state when the analysis of the sensor data correlates to a monitored physical condition.
  • a method for providing autonomous health monitoring of a user comprising the steps of: providing a monitoring device, comprising: one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; providing a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data; and providing a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters; perform calculations to analyse the historical physiological parameters and; perform calculations to compute coefficients in respect of a computational algorithm for real time analysis of the physiological parameters; receiving from the server device the computed algorithm coefficients on the communicator for analysis of the physiological parameters; performing calculations on the communicator to analyse the physiological parameters of the user in accordance with the computational algorithm; and label the sensor data with calculated label data and raising an alarm state when the analysis of the sensor data correlates to a monitored physical condition.
  • the method may further comprise the step of performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition.
  • the calculations to analyse the historical physiological parameters may comprise an artificial neural network.
  • the computational algorithm for analysis of the physiological parameters may be adapted for monitoring for the predetermined physical condition in real time.
  • the communicator may comprise a mobile computing device.
  • the communicator may be integrated with the monitoring device.
  • the communicator may comprise an analysis module comprising a predetermined computational algorithm for use with the computed coefficients for analysing the sensor data.
  • the method may comprise the further step of the analysis module raising an alarm state in the event the analysis of the sensor data correlates to a predetermined physiological condition of the user.
  • the method may comprise the further step of the communicator communicating the recorded sensor data to the server device for storage as historical physiological parameters.
  • the method may comprise the further step of the communicator communicating the recorded sensor data correlating to the predetermined medical condition to the server device for storage as historical physiological parameters.
  • the method may comprise the further step of utilising the stored sensor data for performing further calculations by the server device to recalculate the coefficients for the computational algorithm and transmitting to the communicator the recalculated coefficients for improving the determination of the predetermined medical condition by the analysis module in analysing recorded sensor data.
  • the method may comprise the further step of receiving alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters.
  • the method may comprise the further step of reviewing the sensor data in relation to the identified physiological condition and receiving expert input relating to the positive indication of the predetermined physiological condition; and storing the sensor data and the expert input as historical physiological parameters for use in further recalculations of the coefficients of the predetermined analysis algorithm.
  • the method may further comprise transmitting the recalculated coefficients to the communicator.
  • a computer program product having a computer readable medium having a computer program recorded therein for providing autonomous health monitoring of a user.
  • the computer program product may comprise computer program code means for communicating with a monitoring device comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user.
  • the computer program product may further comprise computer program code means for receiving data comprising the sensor data.
  • the computer program product may further comprise computer program code means for receiving a computational algorithm for analysis of the physiological parameters from a server device, the server device adapted to perform calculations to compute the computational algorithm.
  • the computer program product may further comprise computer program code means for performing calculations to analyse the sensor data.
  • the computer program product may further comprise computer program code means for labelling the sensor data with calculated label data and raising an alarm state when the analysis of the physiological parameters of the user correlates to a monitored physical condition.
  • a computer program product having a computer readable medium having a computer program recorded therein for providing autonomous health monitoring of a user
  • said computer program product comprising: computer program code means for communicating with a monitoring device comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; computer program code means for receiving data comprising the sensor data; and computer program code means for receiving a computational algorithm for analysis of the physiological parameters from a server device, the server device adapted to perform calculations to compute the computational algorithm; computer program code means for performing calculations to analyse the sensor data; computer program code means for labelling the sensor data with calculated label data and raising an alarm state when the analysis of the physiological parameters of the user correlates to a monitored physical condition.
  • the server may comprise computer program code means for receiving data comprising historical physiological parameters.
  • the server may further comprise computer program code means for performing calculations to analyse the historical physiological parameters.
  • the server may further comprise computer program code means for performing calculations to compute coefficients of a predetermined analysis algorithm for real time analysis of the physiological parameters.
  • a computer program product may further comprise computer program code means for performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition.
  • the calculations to analyse the historical physiological parameters may comprise an artificial neural network.
  • the computer program product may further comprise computer program code means for providing a user interface configured to permit a user to interact with the monitoring device and/or the communicator.
  • the computer program code means for providing the user interface may be further configured to receive input in relation to the labelled sensor data.
  • the computer program product may further comprise computer program code means for transmitting the received input to the server device for performing calculations to compute coefficients of a predetermined analysis algorithm.
  • Figure 1 A shows a system 100 as disclosed herein adapted for digital automated health monitoring of a user
  • Figure 1 B shows a particular arrangement of the system 100 as disclosed herein comprising a mobile computing device/communicator including a data analyser;
  • Figure 1 C shows a particular arrangement of the system 100 as disclosed herein comprising a monitor device including a data analyser;
  • Figure 1 D shows a particular arrangement of the system 100 as disclosed herein comprising a network connected monitor device
  • Figure 1 E shows a particular arrangement of the system 100 as disclosed herein comprising a peer-to-peer (P2P) labelling interface;
  • P2P peer-to-peer
  • Figure 2 shows a functional diagram of a health monitor device 103 as disclosed herein;
  • Figure 3 shows a functional view of a communicator 105 configured to execute a mobile health application 700 as disclosed herein;
  • Figure 4 shows a schematic representation of a labelling interface process 800 for labelling events in sampled sensor data from the monitor device as disclosed herein;
  • Figure 5 shows a schematic representation of a training process 900 configured to update the computation algorithm via an artificial neural network process on the basis of a trigger signal received be the training server;
  • Figure 6 shows a schematic representation of an example computing device 1000 for implementation of the systems and methods disclosed herein. Definitions
  • real-time for example “displaying real-time data” refers to the display of the data without intentional delay, given the processing limitations of the system and the time required to accurately measure and process the data.
  • near-real-time for example “obtaining real-time or near-real-time data” refers to the obtaining of data either without intentional delay (“real-time”) or as close to real-time as practically possible (i.e. with a small, but minimal, amount of delay whether intentional or not within the constraints and processing limitations of the of the system for obtaining, recording, processing, or transmitting the data.
  • exemplary is used in the sense of providing examples, as opposed to indicating quality. That is, an "exemplary embodiment” is an embodiment provided as an example, as opposed to necessarily being an embodiment of exemplary quality for example serving as a desirable model or representing the best of its kind.
  • the various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and/or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a framework or virtual machine.
  • inventive concepts may be embodied as a computer readable storage medium (or multiple computer readable storage media) (e.g. a computer memory, one or more floppy discs, compact discs, optical discs, magnetic tapes, flash memories, circuit configurations in Field Programmable Gate Arrays or other semiconductor devices, or other non-transitory medium or tangible computer storage medium) encoded with one or more programs that, when executed on one or more computers or other processors, perform methods that implement the various embodiments of the invention discussed above.
  • the computer readable medium or media can be transportable, such that the program or programs stored thereon can be loaded onto one or more different computers or other processors to implement various aspects of the present invention as discussed above.
  • program or “software” are used herein in a generic sense to refer to any type of computer code or set of computer-executable instructions that can be employed to program a computer or other processor to implement various aspects of embodiments as discussed above. Additionally, it should be appreciated that according to one aspect, one or more computer programs that when executed perform methods of the present invention need not reside on a single computer or processor, but may be distributed in a modular fashion amongst a number of different computers or processors to implement various aspects of the present invention.
  • Computer-executable instructions may be in many forms, such as program modules, executed by one or more computers or other devices.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
  • functionality of the program modules may be combined or distributed as desired in various embodiments.
  • data structures may be stored in computer-readable media in any suitable form.
  • data structures may be shown to have fields that are related through location in the data structure. Such relationships may likewise be achieved by assigning storage for the fields with locations in a computer-readable medium that convey relationship between the fields.
  • any suitable mechanism may be used to establish a relationship between information in fields of a data structure, including through the use of pointers, tags or other mechanisms that establish relationship between data elements.
  • inventive concepts may be embodied as one or more methods, of which an example has been provided.
  • the acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments.
  • a reference to "A and/or B", when used in conjunction with open-ended language such as “comprising” can refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
  • the phrase "at least one”, in reference to a list of one or more elements, should be understood to mean at least one element selected from any one or more of the elements in the list of elements, but not necessarily including at least one of each and every element specifically listed within the list of elements and not excluding any combinations of elements in the list of elements.
  • This definition also allows that elements may optionally be present other than the elements specifically identified within the list of elements to which the phrase "at least one" refers, whether related or unrelated to those elements specifically identified.
  • “at least one of A and B" can refer, in one embodiment, to at least one, optionally including more than one, A, with no B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, with no A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
  • a communicating device such as a mobile computing device that utilises artificial intelligence (Al) for the purpose of continuous monitoring and recognition of particular events.
  • Al artificial intelligence
  • the events are logged by the system and remain available for further analysis.
  • the communicating device may connect with a distributed network of computers that utilises robust methods for developing and deploying algorithms and/or algorithm coefficients across a distributed network of devices utilising aggregated data so that artificial intelligence models may be trained and further improved and deployed to the system over time.
  • data may be obtained or acquired by taking physiological measurements from numerous sensors or monitors such as those arranged in pieces of monitoring hardware described herein. These monitors communicate and stream data in real time or alternatively on request to a communicating device such as a mobile computing device where the sensor or monitor is either separate or embedded within the communicating device.
  • a communicating device such as a mobile computing device where the sensor or monitor is either separate or embedded within the communicating device.
  • the communicator may be connected to a distributed network of computing devices including a server or multiple servers, other mobile devices, and any other device that allows input into the system by the user or operator of information that may also include historical and third party data. Any of the devices on the distributed network including the communicator or mobile device may also be configured to allow communication of alerts, warnings, and other information to the user or operator.
  • the system may utilise a user interface that allows the user or operator to interact with the system, input information, obtain alerts and warnings, and review information obtained, as well as activating settings to allow for sensible configuration of the system.
  • the user interface may appear on a display screen located on the mobile device or on any other device connected to the distributed network.
  • the user interface may also provide additional tools that may assist in reviewing and analysing any data that has been obtained.
  • the user interface may include a labelling interface that allows experts to view data with labels generated by the analysis algorithm and correct these labels if wrong, confirm these labels if correct, and additionally add any further labels to the data.
  • the verified labels may be saved and uploaded to the training server to form a Verified Data Set.
  • the user interface may also be configured to allow the input of historical data and when configured this historical data input interface provides a pathway for data to enter the training server without needing to be recorded by the monitor.
  • the network is configured for the purpose of developing and deploying algorithms for training and subsequently improving and updating artificial intelligence models designed through techniques such as machine learning, deep learning, artificial neural networks, etc. as well as rules based algorithms and regressions.
  • the network is also configured so that any artificial intelligence model trained by one part of the network may be deployed to any other part of the network, including to the mobile device or within the sensor hardware.
  • the data management architecture for this system may be designed based on a hybrid of local data and cloud paradigms.
  • the system may utilise a training server that takes aggregated data or verified data sets from across the distributed network of devices and generates an analysis algorithm that includes new artificial intelligence models.
  • the training server may exist on a local network or in a remote network.
  • the training server may utilise data that has been obtained from the monitoring devices or alternatively from historical data that has been entered into the system through a historical data input interface.
  • the training of new algorithms and/or artificial intelligence models may be triggered by an operator or through automatically generated events. If a new analysis algorithm or artificial intelligence model performs better than an existing algorithm or artificial intelligence model, a deployment algorithm may be initiated that instructs communicating devices on the network to obtain the latest analysis algorithm or artificial intelligence model.
  • the data may be streamed or processed through artificial intelligence models with calculations performed on whichever device or devices it has been deployed, either in real time or on request, so the system may recognise the specific health events for which it has been trained and so it may provide analysis and assessment of the risk of any future adverse events.
  • Possible health applications for the system include the monitoring of general conditions such as sleep through the integration of data from multiple sensor sources or alternatively more specific conditions such as heart arrhythmia detected through the acquisition and processing of an electrocardiogram signal.
  • FIG. 1 A shows a system 100 adapted for digital automated health monitoring of a user 101 by a device 103 (for example a wearable device) in communication with a communicator 105.
  • communicator 105 may be realised as a hardware device such as, for example, a smart phone or tablet device.
  • the functionality of the communicator may be provided either by a collection of hardware components configured to interact in such a way as to provide the required functionality.
  • communicator 105 may be realised as a software application 700 as disclosed herein and be configured to be executed by a processor module comprised in a suitable hardware device.
  • monitor device 103 may optionally comprise the required hardware components (such as a processor and memory) to realise communicator 105 comprised therein.
  • Communicator 105 is in communication with a cloud server device 107.
  • Device 103 comprises electronics, monitoring sensors and communications capability to exchange data with the communicator 105.
  • Communicator 105 provides data storage and management, real time Al analysis, the health monitoring application 700 as disclosed herein and communicator data synchronisation with the cloud server 107.
  • the mobile health software application 700 is used to program the communicator 105 such that it may communicate with both the health monitoring device 103 and a distributed network of devices including one or more servers or a cloud 107 that may contain a database 109 with relevant health information.
  • Cloud server 107 provides backend support for system 100 which forms the foundation for the health monitoring platform and includes data management tools used, Al training systems and services that support the mobile health monitoring application.
  • the system 100 may be described through the example of an embodiment adapted for automated digital health monitoring of a user utilising a health monitoring device 103 with one or more sensors (for example a wearable device) in communication with communicator 105 such as, for example, a smart watch, smartphone, mobile telephone, tablet, or similar portable computing device.
  • the communicator 105 is also able to communicate with a distributed network of other devices across the network.
  • An example of such a distributed network is an amorphous computing cloud.
  • the wearable device 103 comprises monitoring sensors, electronics, and communications capability to exchange data and information with the communicator 105.
  • the communicator 105 provides data storage and management, real time artificial intelligence analysis, a health monitoring application, and data synchronisation with the cloud.
  • the communicator 105 is driven by software that provides a mobile health application 700 which also allows the user to interact with the system 100.
  • the health monitoring application 700 is, at the most generic level, adapted to receive health data relevant to a subject (e.g. a patient, or user) from one or more health monitors comprising of sensors in communication with the subject. Such sensors may be adapted to measure and transmit health related data, such as for example, pulse rate, blood pressure, blood oxygen saturation levels, electrical impulse data (e.g. cardiac ECG data, brain EEG data, or musculature EMG data), respiratory rate or temperature relevant to the subject.
  • a subject e.g. a patient, or user
  • health monitors comprising of sensors in communication with the subject.
  • Such sensors may be adapted to measure and transmit health related data, such as for example, pulse rate, blood pressure, blood oxygen saturation levels, electrical impulse data (e.g. cardiac ECG data, brain EEG data, or musculature EMG data), respiratory rate or temperature relevant to the subject.
  • the distributed network provides backend support for the system 100 which forms the foundation for the health monitoring platform and includes data management tools, artificial intelligence training systems, and services that support the mobile health monitoring application.
  • FIG. 2 A functional schematic representation of a health monitoring device 103 as disclosed herein is shown in Figure 2.
  • the role of the Monitoring Device 103 (known also as the Monitor) is to sample data either in real-time or otherwise from at least one or a plurality of sensors 200.
  • Each sensor 200 may accept human input via a user interface, or it may collect data autonomously at a fixed sample rate, or when a certain condition is met.
  • the sample data can be, but isn't limited to, bio-potentials, images, video, text or audio.
  • the monitoring device 103 may store the data and transmit it periodically, or it may not have any local storage and transmit it continuously in real-time. Alternatively monitoring device 103 may both store the sample data locally and transmit it continuously in real-time or at a later time.
  • the important aspect of the monitor device 103 is that it contains one or more sensors 200 or other means to generate and digitise data.
  • the Monitor is a printed circuit board comprising of a microcontroller 213, a power supply and a number of attached sensors 200.
  • the sensor data is sent to a communicator 105 such as mobile computing device (e.g. smartphone, tablet computing device or the like) via a short-range transmitter 1 10 in accordance with a suitable wireless communications protocol e.g. Bluetooth etc.
  • a communicator 105 such as mobile computing device (e.g. smartphone, tablet computing device or the like) via a short-range transmitter 1 10 in accordance with a suitable wireless communications protocol e.g. Bluetooth etc.
  • the monitoring device 103 is itself a mobile computing device with network capabilities, which is recording data via embedded sensors 200.
  • the monitor device 103 can transmit data directly to the training server network 107 and does not require an intermediate communicator 105.
  • the health monitoring device 103 is a piece of hardware that advantageously comprises a combination of sensors and electronics and which may comprise, at least, the following features:
  • the monitoring device 103 is configured to be attached to the user in a wearable manner and designated as a Wearable Device.
  • monitoring device 103 may be configured for attachment on the wrist, on an arm band or leg band, through an adhesive attached to the torso, clipped onto the ear, within clothing such as shirts or trousers, within other apparel such as glasses and hats, or through any other means that makes it convenient for the user to wear on their body during their daily activities.
  • Monitoring device 103 is configured such that, when attached to the user, one or more sensors of the device are provided in substantive communication with one or more physiological characteristic indicators relevant to the user.
  • the monitoring device 103 comprises one or more sensors that are provided to measure predetermined physiological signals from a person, for example electrocardiography (ECG), electromyography (EMG), electroencephalography (EEG), oxygen saturation (Sp0 2 ), blood pressure, heart rate, respiratory rate and temperature.
  • ECG electrocardiography
  • EMG electromyography
  • EEG electroencephalography
  • Sp0 2 oxygen saturation
  • the sensors may also measure biochemical signals related to the body's physiology such as glucose, Cortisol, electrolytes, lactic acid, and alcohol. Sensors for other measurements such as sound and movement may also be provided.
  • the monitoring device 103 is capable of wireless communication with a communicator 105 such as a mobile computing device (e.g. smartphone, tablet computer or the like), for example through the use of industry standard protocols such as WiFi, Bluetooth, and Zigbee, or other similar wireless protocols including those that allow connection to mobile wireless sensor networks and ad hoc wireless networks.
  • a communicator 105 such as a mobile computing device (e.g. smartphone, tablet computer or the like), for example through the use of industry standard protocols such as WiFi, Bluetooth, and Zigbee, or other similar wireless protocols including those that allow connection to mobile wireless sensor networks and ad hoc wireless networks.
  • the monitoring device 103 contains one or more microcontrollers 213 or microprocessors to control the stream of sensory data in the device and relay this data to other computing machines such as smartphones, tablets, desktop computers, servers, or other devices with computing capability for the purpose of performing artificial intelligence analysis.
  • microcontrollers 213 or microprocessors to control the stream of sensory data in the device and relay this data to other computing machines such as smartphones, tablets, desktop computers, servers, or other devices with computing capability for the purpose of performing artificial intelligence analysis.
  • the system 100 described above is particularly designed so that it may include any available medical monitoring device with wireless capabilities that uses a suitable communication protocol.
  • the communication protocol is selected so as to be compatible with a mobile computing device such that monitor device 103 can connect to the mobile computing device (or Communicator) 105. In this manner, the monitor device is able to access and use the automated digital health monitoring system 100 and mobile software application as disclosed herein.
  • An example arrangement of a Health Monitoring Device 103 is provided as a wearable device configured for monitoring of a subject's sleep and sleep patterns such as sleep quality.
  • sensors measure the subject's physiological signals including, for example: surface (skin) electrical potential sensors (e.g. ECG, EMG); optical blood-oxygen saturation analysis (e.g. Sp0 2 ); microphones (e.g. sound); and one or more accelerometers (e.g. movement) to recognise the sleep state and respiratory characteristics of the user.
  • surface (skin) electrical potential sensors e.g. ECG, EMG
  • optical blood-oxygen saturation analysis e.g. Sp0 2
  • microphones e.g. sound
  • accelerometers e.g. movement
  • An alternative arrangement of a Health Monitoring Device 103 is provided as a wearable device configured for cardiac monitoring.
  • a set of leads are used to measure an ECG signal across at least two points of contact to recognise cardiac rhythm.
  • sensors 202 are attached to electronic circuitry contained within the wearable device 103.
  • the circuitry comprises of common electrical components such as resistors, capacitors, inductors, transistors and diodes as well as integrated circuitry such as microcontrollers, memory devices, and communication boards. Circuitry may also be provided for regulation of power with low noise.
  • Circuitry may be configured to filter signals obtained from the sensors to remove unwanted noise and signal drift over time.
  • capacitors and resistors are arranged as filters for the ECG signal, so as to remove frequencies below 0.05Hz and above 150Hz from the raw ECG data received from an ECG sensor connected to monitor device 103.
  • electrical circuitry may optionally be included in the device 103, to protect the wearer from electrical danger, for example, by using components such as resistors in series with any ECG electrodes to ensure current through the body remains within safe limits, typically less than 10 ⁇ .
  • firmware or similar software code
  • the primary purpose of the firmware is to control the hardware of monitor device 103 such that measurement readings may be collected in a coordinated fashion from multiple sensors and other data sources and subsequently transmitted (e.g. to the communicator 105) via on board communication systems included in the monitor device 103.
  • the firmware code of monitor device 103 is programmed to control the circuitry of the wearable device 103 such that measurement readings are taken from the sensors at precise predetermined or selectable time period intervals so that the sample rate of the sensor measurements can be used with confidence in subsequent calculations.
  • the firmware is optimised to provide constant and reliable operation, preferably real-time operation, thus allowing the health monitoring device 103 to be worn for prolonged periods of time without restarting or without the need for recharging.
  • the firmware may utilise a real time operating system with software counters based upon embedded hardware such as crystal oscillators to schedule tasks in real time.
  • the tasks performed by device 103 typically consist of processes configured to service a specific function such as interrogation of a specific sensor or communication through a particular set of electronic circuitry.
  • the tasks may be configured to run independently of each other with each task having its own section allocated within the memory stack of the microcontroller.
  • selected tasks may be configured to have a predetermined degree of interaction with related or complementary tasks.
  • the real time operating system and the microcontroller may utilise methods such as time slicing and semaphores for switching between tasks and monitoring of events such as hardware interrupts and clock cycles.
  • ECG signals may be measured at a rate of at least 250Hz to ensure sufficient resolution of the features of the subject's measured ECG waveform.
  • Serial Peripheral Interface SPI
  • I2C Inter-integrated circuit
  • the wearable device 103 may communicate with a communicator 105 such as a smartphone through the use of the embedded communication module as is described in greater detail below.
  • the microcontroller may be used to control data transfer between the sensors and the communication module of device 103 which is selected to utilise a communication protocol with lowest power demands whilst maintaining an acceptable data transfer rate and allowing sufficient separation between wearable device 103 and communicator 105.
  • the example devices 103 described herein through embodiments optimised for sleep monitoring and cardiac monitoring preferably utilise the Bluetooth communication protocol for data communications with the communicator 105.
  • Bluetooth is an advantageous protocol as it allows data transfer rates over 30kB/s whilst minimising transmission power to less than 100mA.
  • the microcontroller configures the on-board Bluetooth chip with settings such as baud rate, serial port profile, and device name.
  • the wireless connectivity of the device 103 may be provided by such example wireless communications protocols as BLE, ZigBee, Z-wave, 6L0WPAN, Thread, Wifi-ah, @G (GSM), 3G, 4G or 5G telecommunications protocols, LTE (Cat 0, 1 , & 3), ANT & ANT+, Digimesh or alternate wireless communication protocol as would be appreciated by the skilled addressee provided that the alternate protocol meets the design requirements for providing sufficient throughput bandwidth for measurement data received from sensors 200, as well as having sufficiently small power requirements to permit sustained wireless communications over the expected measurement window required for the particular monitor device's application.
  • wireless communications protocols as BLE, ZigBee, Z-wave, 6L0WPAN, Thread, Wifi-ah, @G (GSM), 3G, 4G or 5G telecommunications protocols, LTE (Cat 0, 1 , & 3), ANT & ANT+, Digimesh or alternate wireless communication protocol as would be appreciated by the skilled addressee provided that the alternate protocol meets the
  • the microcontroller and the communication module of wearable device 103 preferably utilise buffers for data to be accumulated and stored whilst awaiting packaging for transmission to the communicator 105.
  • This data storage capability allows methods such as asynchronous serial transmission to be used by the wearable device 103 through the inclusion of a universal asynchronous receiver/transmitter (UART) within the circuitry as would be appreciated by the skilled addressee. Additional memory modules may be provided elsewhere within the circuitry of device 103 to allow longer term storage of data for circumstances where communication with the receiver communicator 105 is interrupted or broken.
  • UART universal asynchronous receiver/transmitter
  • Data may be encoded by the transmitting device 103 and decoded by the receiving device (e.g. communicator 105) to optimise data transfer, minimise bandwidth, and ensure data fidelity.
  • Signals may be grouped in transmission packets consisting of header group data and signal group data.
  • the header group may contain information declaring the type of signal data contained in the following signal group.
  • the type of signal data may correspond with one or more sensors utilised by the wearable device.
  • the header group may alternatively contain information utilised for error handling, such as, for example, checksums placed at the beginning of a transmission packet.
  • the electrical components and integrated circuitry in both examples may be mounted onto one or more printed circuit boards to serve purposes such as electrical connection, mechanical attachment, and establish planes for power and ground.
  • the layout of the circuitry is also preferably arranged to minimise noise and provide shielding from internal or external interference sources such as, for example, internal components, from cross talk along power supply lines, from nearby wireless transmitters and receivers, from 50Hz or 60Hz mains supply noise artefacts, radio and television transmitters, the sun and other celestial objects as would be appreciated by the skilled addressee.
  • Design techniques typically employed to minimise the signal noise from known noise sources include (but are not limited to) methods locating input and output circuitry separately on a circuit board to minimise cross talk and feedback, locating wireless communicating modules separately from the amplification circuitry, and providing a casing such as a Faraday cage around the amplification circuitry.
  • Large ground planes may be used to encircle key pieces of circuitry or to provide shielding across large sections of the printed circuit board.
  • Capacitors may be placed between voltage planes and ground so that the power supply is regulated and so that signals are not transmitted along the power supply as would be appreciated by the skilled addressee.
  • printed circuit boards may appear rigid as these may be easily constructed during prototyping.
  • the circuitry may instead be mounted onto flexible materials which may allow improved comfort for a wearer whilst retaining the essential elements of the system described herein.
  • a single printed circuit board may be utilised or alternatively the system may also adopt additional boards or daughter boards that plug into the mother board or elsewhere on the health monitoring device 103 to provide for expanded functionality.
  • additional boards may communicate wirelessly with the mother board to allow physiological measurements to be taken from a distant point.
  • the electronic circuitry is powered by batteries with sufficient power to provide the current and voltage demands of the device including any signal processing, microcontrollers, microprocessors, and communication systems.
  • the batteries are configured to provide sufficient energy to provide power for a duration suitable for the desired application.
  • the sleep monitoring device requires about 12 hours of continuous operation.
  • the ECG application requires at least 24 hours if used as a Holter monitor. For more extended periods of use, configurations that allow recharging or replacement of the battery may be used.
  • a casing may be provided to protect and enclose the printed circuit board with its associated electronic components, the mechanical attachments, and the battery, as well as any other components included with the device 103 required for its function.
  • the casing is configured to be of an appropriate design to allow it to be worn on the body of the subject.
  • the design of the casing thus is chosen according to the site of attachment for any sensors as well as comfort and wearability for the user and configurations are not limited by the examples shown herein.
  • the casing is preferably configured to allow the device to be clipped onto a finger in such a fashion that the oxygen saturation sensor is contained within the wearable device and leads are used to connect other sensors such as ECG and EMG electrodes to appropriate parts of the wearer's body.
  • the casing is preferably configured to be attached to a strap that allows it to be worn around the wrist, the arm, or attached to the torso.
  • Leads attached to the device, or alternatively the device itself, may be used to connect to electrodes placed on the wearer's body.
  • the voltage change over time between two points on the body can be measured, for example from the right clavicle to the left clavicle.
  • this vector can be approximated by measuring from one point of the left arm near the shoulder to a more distal section of the left arm near the wrist.
  • Communicator Mobile Device e.g. Smart Phone, Tablet, etc.
  • the communicator or mobile device 105 of Figure 1 A is any piece of mobile computing equipment including electronic hardware and software that may be carried and utilised by the user or operator wherever they go to receive wireless data from a health monitoring device and then stores, processes, and displays that data to a user.
  • the purpose of the mobile device is to process the health data acquired by the health monitoring device and provide information storage, analysis, and alerts for the user.
  • the communicator or mobile device 105 may also be considered as one that is capable of running a Mobile Health Application 700 to integrate wearable forms of health monitoring devices 103 with smartphone technology.
  • the mobile health application is capable of communicating with the health monitoring device 103, controlling the processing of data through artificial intelligence, and interfacing with the user.
  • the communicator or mobile device 105 may, for example, be a smartphone device, tablet device, smartwatch device, computer laptop device or other similar mobile computing device capable of wireless data connections and communications as would be appreciated by the skilled addressee.
  • the mobile computing device may be loaded with software that when running provides a mobile health application 700.
  • the computing machine responsible for performing the artificial intelligence is contained within the mobile device 105.
  • the computing machine responsible for processing the data through artificial intelligence may be contained within the health monitoring device 103 or elsewhere within a distributed network of devices as described in greater detail below.
  • FIG. 1 A particular arrangement of the communicator 105 running a mobile health application 700 is shown functionally with respect to system 100 disclosed herein in Figure 3 comprising at least functional modules:
  • ⁇ device driver 120 for interfacing the mobile device 105 with the monitor device
  • each of the functional modules of the communicator are provided as software functionalities of health application 700.
  • one or more of the functional modules of communicator 105 are provided with dedicated hardware modules integrated into a suitable device, for example a mobile computing device such as a smartphone or tablet device, or incorporated in the monitor device 103.
  • the communicator 105 may be an optional component of system 100.
  • a separate Communicator Device (known as the Communicator) 105 may be used to send the sampled sensor data received from the monitor device 103 to the server network 107.
  • the role of the communicator 105 in this situation is primarily to provide an interface between the monitor device 103 and the training server network 107.
  • a sensor 200 may be contained within a monitor 103 that comprises a wireless transmitter (e.g. Bluetooth) which allows it to transmit data short distances, but the server 107 is situated out of range of the wireless transmitter of the monitor 103 (e.g. in another building).
  • the communicator 105 in this situation would facilitate the data transfer, connecting both via a suitable wireless communication protocol (e.g. Bluetooth) to the monitor device 103 and via a suitable wired network connection (e.g. Ethernet) or wireless network connection (e.g. Wi-Fi, mobile broadband communication, or alternatives) to the server 107.
  • a suitable wireless communication protocol e.g. Bluetooth
  • wired network connection e.g. Ethernet
  • wireless network connection e.g. Wi-Fi, mobile broadband communication, or alternatives
  • the communicator 105 may be used in connection with the monitor 103 in situations where there are limitations on the monitoring device due to power requirements, computer processor capacity, data storage or memory capacity, a requirement for a small wearable device, etc. that prevents the monitor device 103 from including the hardware components necessary to also provide the functions of the communicator 105 as described above.
  • the communicator 105 may be configured to provide a user interface to control the monitor device 103 and/or control the analysis of any data generated by the monitor device 103.
  • the user interface 130 may, for example, be any display loaded onto a touch screen 106 of a mobile computing device 105 configured to permit the user to interact with a software application 700 that may also permit the mobile computing device 105 to receive and analyse the data from the monitor device 103.
  • communicator 105 comprises a local database 140 for temporary data storage and a replicator module 160 that allows forwarding of the sampled sensor data to the server 107.
  • communicator 105 comprises a local database 140 for temporary data storage and a replicator 160 that allows forwarding of the data to the labelling interface directory 300, via a Peer-to-Peer communication protocol.
  • a communicator 105 may be configured to become a labelling device 300 that establishes peer-to-peer connection with one or more other communicators 105.
  • the mobile health application 700 is used to program the mobile device or communicator 105 such that it may communicate with both the health monitoring device 103 and a distributed network of devices including one or more servers or a cloud 107 that may contain a database 109 with relevant health information.
  • the mobile health application 700 is also designed to program the mobile device 105 to collect and store data from one or more external devices 103, perform real time artificial intelligence analysis on incoming data, and calculate health statistics on particular health outcomes.
  • a further purpose of the mobile health application 700 is to allow a user to interact with the system 100 anywhere they have their mobile device 105 and not just at a desktop computer.
  • the user may use a smartphone device 105 to create a user account to sign up to a health monitoring service, view their data that streams into the mobile device 105, and review their health statistics and health outcomes.
  • an alternative version or embodiment of the mobile health application 700 may also be run in another location to allow other users to interact with the data and view events and any changes in health status in real time. Functionality of this application may be restricted (e.g. to ensure the user's privacy and security is protected), or alternatively enhanced (e.g. so a qualified healthcare professional may provide additional interpretation or labelling).
  • the Mobile Health Application 700 may use a device driver 120 installed onto a communicator 105 to control and handle communications with the health monitoring device 103.
  • the driver 120 preferably initiates and maintains communication protocols with the health monitoring device 103, and handles data packets as they arrive at the communicator 105. For example, when communicating with the cardiac or sleep devices described above, a serial port protocol connection may be created. Once a connection is established, any arriving data packets may be decoded by the driver into byte arrays for each signal measured by the health monitoring device 103.
  • the device driver 120 may also replicate any received data across multiple streams so that it may be used for different purposes. For example, the latest data may be pushed up by a regular timer at the plotting frame rate onto the screen of the communicator 105 for real time viewing by the user. Alternatively, or simultaneously, the data may be processed as chunks through the artificial intelligence model. Additionally, data may be sent to storage media either on board the communicator 105 or elsewhere within a distributed network 107 to which the communicator 105 may be further connected.
  • the device driver 120 may also provide methods for real-time pre-processing of the digital signal either before or after separation into different streams of data. This may be for purposes such as noise reduction to give a user a clear visual display, or alternatively to condition the signal into an appropriate form prior to evaluation by the artificial intelligence.
  • a received ECG signal is typically noisy so a pre-filtering stage may be advantageously applied to smooth the data before plotting on a screen.
  • digital filtering may not be desirable for passing the data through an artificial neural network as this may impact any subsequent processing operations that are performed by the artificial intelligence model.
  • Data sent through to the storage media may remain raw or unprocessed so that it can be used at a later point of time for either plotting, algorithm training, or evaluation.
  • the device driver 120 may also apply calculations or calibrations to the signal before any interpretation or display.
  • the oxygen saturation (Sp0 2 ) measurement made by embodiments of the sleep device may require a pre-defined formula to be applied to convert current or voltage to a percentage saturation value.
  • the accelerometer used by the sleep device to detect movement may require an acceleration value to be applied (typically 9.8m/s2) to a vertical axis to account for effects such as gravity.
  • the mobile health application 700 may perform real time analysis of the digital signal by passing the data through pre-trained artificial intelligence models that have been deployed onto the communicator 105.
  • the local processing of the data on the communicator 105 may be advantageous for a number of purposes.
  • the artificial intelligence can process signals from a user even when they are not connected further to a larger network such as the internet or the cloud 107. Additionally, it may not be necessary for the captured data to be uploaded to the cloud 107 which may reduce network traffic as well as allowing the processing to continue in real-time where bandwidth is limited.
  • the real-time analysis may be configured to allow the artificial intelligence model to recognise specific patterns relevant to the user's health according to the physiological signals received by the communicator 105 from the health monitoring device 103.
  • the artificial intelligence model may recognise specific patterns across multiple physiological signals that may be relevant to sleep disorders. This may allow the application 700 to detect sleep conditions such as sleep apnoea.
  • the artificial intelligence model may recognise specific patterns in ECG signals that may be relevant in assessing the rhythm of the heart. This may allow the application to detect heart arrhythmia such as atrial fibrillation, atrial flutter, or other heart arrhythmia.
  • the application may create User Profile Data that contains information provided by the user, for example metadata such as age, sex, height, weight, and any other information that may be relevant to monitoring their health. This data may also contain information that controls the configuration of the application as well as how data may be moved between the backend web servers and databases. This data may contain revision history of the application configuration to allow for synchronisation and replication of data as well as information that may be used to create a user channel to control access to user data.
  • metadata such as age, sex, height, weight, and any other information that may be relevant to monitoring their health.
  • This data may also contain information that controls the configuration of the application as well as how data may be moved between the backend web servers and databases. This data may contain revision history of the application configuration to allow for synchronisation and replication of data as well as information that may be used to create a user channel to control access to user data.
  • the application may preferably utilise an N-Tier architecture including a Data Access Layer (DAL) to provide for saving and accessing of specific data structures and models to the local database. Additionally, this layer may allow data to be retrieved for viewing and reporting purposes. Furthermore, the DAL may also provide access to raw data stored within a file system which may be linked to meta-data in local and embedded databases.
  • DAL Data Access Layer
  • the Data Access Layer may be configured to access ensembles, being collections of artificial intelligence models. These models may be further described by the DAL as a collection of statistical weights. The DAL may also access collections of events and collections of recorded signals. Additionally, the DAL may provide access to data containing information on the decoding and reading of signal data, meta-data relating to the user profile, application settings, as well as information that may be required for file replication and synchronisation to other devices on the network or into the cloud.
  • Raw data may be stored within a file system linked to meta-data and contained within a local or embedded database loaded onto the communicator 105. This may form part of a larger distributed database spread across a distributed network or cloud.
  • the local or embedded database may be implemented in the form of a non-relational database such as those commonly used for big-data and real-time web applications.
  • a storage engine with a scalable storage layer may be used to provide a high-performance data management system.
  • the application 700 may implement methods for the serialisation and deserialisation of data models so that data may be structured within the database in compatible formats for data access.
  • the process may utilise real-time server to browser communication protocols.
  • Serialisation of data takes place when it is stored to the database. Any subsequent query to the database may then return a low-level data structure, for example a dictionary, in which that data is contained.
  • the dictionary may then be de-serialised to access the data that it contains.
  • the outcome of the de-serialisation process would be the return of a model class of data.
  • Processes may be implemented within the mobile health application 700 such that data contained within the embedded database is replicated or synchronised with databases 109 contained within the distributed network or within the cloud 107. Replication may take place according to a push-pull type system in either a continuous or non-continuous fashion.
  • Authentication protocols including web based and decentralised authentication protocols that allow a user to sign into the system, as well as encryption and other security measures, may be implemented to ensure privacy and safe transfer of any data.
  • the application may filter the data replication process through the use of structures such as channels. The purpose of these channels is to ensure that only data specific to a particular health monitoring device 103 and a particular user is moved between the communicator 105 and any other device on the distributed network or the cloud 107.
  • the mobile health application 700 includes an analysis algorithm 150 for performing automated analysis of the data received from the monitor 103 and recognising events and patterns. It can be run constantly in real-time or triggered by a simpler detection method such as the monitor 103 going outside its regular operating conditions. In particular arrangements the analysis algorithm can operate on a separate communicator 105, for example during peer-to-peer operation. In other arrangements the analysis algorithm can operate directly on the monitoring device 103. [0165] The analysis algorithm 150 may be updated in its entirety from the training server 107. Alternatively, in an embodiment advantageously designed to minimise bandwidth and allow rapid deployment across all connected communicating devices, the training server may push a set of parameters that may be used to configure a pre-existing algorithm within the mobile health application. These parameters may be used to configure the artificial intelligence model used by the algorithm, for example by selecting the model type (such as an artificial neural network) and then establishing settings for the model (such as the size of the neural network, and coefficients for the components of the network).
  • the model type such as an artificial neural network
  • the analysis algorithm 150 once updated contains the most recent version of artificial intelligence models available for download from the training server. These models are the same for all connected communicators 105 running a specified monitoring device 103 and once updated represents the latest trained version of the common models derived by the training server for a particular application use. That is, the models downloaded to a user's device is not specifically tailored to that particular user, but represents the most up to date trained models utilising aggregated data acquired from all users on the distributed network, as well as any new classification data by qualified professionals and/or new data obtained from tagged patient records in a centralised database 109 accessible by the network.
  • each user of the system 100 and application 700 receives the most up to date best practice classification model available rather than merely a model optimised for a specific user which does not derive any advantage from the newly available classification data derived from other users and any other patient records connected to the distributed network.
  • the mobile health application 700 is advantageously configured to download the most recent parameters for the trained artificial intelligence models through the Data Access Layer following a particular event, for example once a user has successfully signed into their account or when receiving a trigger from the training server.
  • the parameters may be saved in the local file system so they may be accessed in scenarios of limited or no network access.
  • the artificial intelligence framework is invoked by passing the model's local file name at which point the model is loaded and becomes available for feed forward inference and pattern recognition.
  • Windows or blocks of data may be sampled from the continuous stream of data passing through the application 700, pre-processed, and then pushed through the trained artificial intelligence models.
  • Pre-processing may include a series of signal processing operations such as smoothing, normalisation, Fourier transform, etc. Any pre-processing that occurs before the feed forward inference on the local communicator device 105 is configured to match the pre-processing that occurs during the training of the artificial intelligence models.
  • data may be buffered into blocks that are passed into the artificial intelligence model. The resulting product is the most likely classification for the signal based upon the data that has been used to train the artificial intelligence model. When the evaluation is complete, an event is created which contains the evaluation result.
  • Each evaluation may cause a message to be posted to the user interface of the communicator 105 stating the classification result.
  • the application 700 may be configured to continuously sample and determine a signal classification, also known as an event. At the first instance of a classification the start time may be recorded. When the classification of the sample changes, the previous event may be concluded and the end time recorded. Simultaneously a new start time may be recorded for the new event.
  • a sampling window may be taken that would typically contain several heart beats, for example a sampling window that is, for example, about 8 seconds in duration.
  • the sample window may then be classified either as normal sinus rhythms or alternatively as an arrhythmia such as atrial fibrillation. If the system 100 detects the rhythm changing from sinus rhythm to atrial fibrillation and then back again there would be two events of sinus rhythm and one event of atrial fibrillation. Each event would have a start and end time indicating when the corresponding rhythm was observed.
  • the sampling window may contain multiple signals collected concurrently by the mobile health application 700. If a sample window contains signals resembling sleep apnoea, the window may then be classified accordingly so that the number and duration of sleep apnoea events over the course of a study may be provided to the user. Where the artificial intelligence model is trained accordingly, these sleep apnoea events may be further classified, for example as obstructive sleep apnoea, central sleep apnoea, or some other sleep event.
  • the mobile health application 700 may in particular arrangements utilise a home view displayed to the user once the application 700 has been launched on the communicator 105 and later on request by the user.
  • the home view may contain menus and navigation tools for the user to perform actions and select further options.
  • the home view may also display alerts, summaries and overviews of health statistics, and display links and marketing information that may be relevant to the user based upon an analysis of their health information.
  • the menu or navigation tools may include an option such as a Device Connection button that allows the user to open a screen to view the potential monitoring devices 103 with which the application 700 can facilitate connection to the communicator 105.
  • the application 700 will scan (using one or more appropriate wireless communication protocols) and populate a list of available monitoring devices 103 for the user to optionally connect with.
  • the application 700 can be paired with both the sleep and cardiac devices 103 described above and, once connected to communicator 105, will be displayed as such on the Device Connection screen.
  • the application 700 can also incorporate other medical devices utilising any suitable compatible communication protocol accommodated by the communicator 105.
  • the application 700 will start a process to establish a connection to the selected device 103. This may be implemented through multiple steps whereby it is confirmed that the device 103 is using a known communication protocol, a serial number or other required information is received to establish the device's identity, and finally the device's configuration information is retrieved from the DAL.
  • a list of activity applications provided by application 700 will be displayed on the screen for the user to select.
  • a monitoring device 103 may utilise multiple activity applications to allow different combinations of data signals to be recorded and viewed by the user. For example, if the user selects a monitoring application, a new screen may be launched with customised activity views relevant to the function of the connected device 103. In this view, the application 700 plots in real time the signals collected from the health monitoring device 130. Additionally, the real-time view may display any events that may be detected by the mobile health application 700.
  • a screen may be launched configured for sleep monitoring.
  • the display may show signals for ECG, EMG, acceleration (or movement), and sound.
  • the application 700 may display on the screen 130 of communicator 105 parameters measured by monitoring device 103 relevant to the particular application, for example current heart rate and oxygen saturation (Sp0 2 ) in respect of a sleep monitoring application configuration.
  • a button may also be provided to allow the user to toggle recording of the sampled measurement data received by the application 700 on and off.
  • the ECG signal alone may be displayed by the activity application.
  • the signal may be displayed even when the mobile health application 700 isn't recording or processing the information to indicate to the user that the devices are connected properly and measuring appropriately. Toggling the Record button begins the recording and processing of the data. Derived values for heart rate and rhythm classification may then also be displayed on the cardiac view screen.
  • the mobile health application 700 may save meta-data to a database whilst the raw signal is streamed to a local file system to calculate derived values, recognise patterns by passing the data through an artificial intelligence model, and to maintain links between the meta-data store and the local file system.
  • the data from the cardiac device 103 may be used to determine features such as heart rate and rhythm classification.
  • an abnormal event such as sleep apnoea for the sleep device 103 or an arrhythmia for the cardiac device 103
  • the artificial intelligence model may also generate a health event which is displayed for the user to see.
  • a function may be provided for the user to provide comments and other user information that can be stored alongside the data that streams from the wearable health device 103.
  • the application 700 may be configured such that when the cardiac device is in use, the wearer may enter a remark when they feel certain symptoms such as palpitations, chest pain, or dizziness.
  • a function may be provided by the mobile health application 700 so that statistics may be displayed on user interface 130 where the statistics are derived from an aggregate of data on a particular health event or set of health events. For example, when considering data from the cardiac device 103, a Health Statistic View may be used to summarise specific arrhythmia such as atrial fibrillation, atrial flutter, and tachycardia. When considering data from the sleep device 103, a summary of sleep apnoea events may also be displayed.
  • the Health Statistic View may allow the user 101 to select options for viewing the statistics in graphical formats such as a histogram for purposes such as illustrating the total amount of time per day when an abnormality may be present.
  • a histogram for purposes such as illustrating the total amount of time per day when an abnormality may be present.
  • the mobile health application 700 is advantageously configured to provide information regarding the burden of disease where the histogram displays the amount of time per day that the arrhythmia has been detected in that person.
  • the application may further provide options for the user to change the time resolution of the histogram for example to display daily, weekly, and monthly summaries.
  • the user 101 may also be provided with a function to filter health events according to type, occurrence, duration, association, or some other classification. For example, when using a sleep monitoring device 103, this allows a user 101 to select all events between selected times of the night where sleep apnoea events longer than a particular time were detected whilst the cardiac rhythm was determined to be in atrial fibrillation.
  • the user 101 may also be able to select an Applications Setting View which once selected allows the user 101 to control various settings that change the functionality and capacity of the application.
  • This may allow the application 700 to be customised, for example according to network availability and bandwidth, data storage capacity on the communicator 105 (e.g. a mobile computing device), connectivity to one or more different health monitoring devices 103, the frequency of any alerts being presented to the user 101 , privacy restrictions, and any log-out from the user's account.
  • the application 700 may provide a function for the user to select a Recordings View which displays a list of saved recordings. The user 101 may then select a previously recorded signal and load this onto their screen for review. In this circumstance, the user 101 may be the wearer of the health monitoring device 103 or alternatively a version of the application 700 may be run by another user such as a qualified health professional who wishes to review the health of their patient i.e. user 101 .
  • the application 700 may allow the user 101 to open a Recorded Events View to display all the events that have occurred during the selected recording. Information including the type of event, time of event, and duration may be made available for the user to see. For example, when reviewing events generated by the signal from the cardiac device 103, any arrhythmia detected by the artificial intelligence algorithm may be summarised on this view on the user interface 130.
  • the user 101 may be provided with a function to view a single event or a series of events and then scroll through further events.
  • This function may be extended to create a labelling interface 300 as seen in Figures 1 B to 1 E that follows a labelling process 800, for example as demonstrated in Figure 4.
  • This process 800 may be used by a user such as a qualified healthcare professional to view 803 sampled sensor data 801 from monitor devices 103 and the corresponding labels generated by the analysis algorithm 150 and correct the labels 805 if they are wrong, add their own labels, or confirm them if they are correct.
  • the labelling process 800 allows a qualified user to over-ride possible events flagged by the mobile health application 700 and/or confirm that their classification is correct (also known as over-reading in the health profession), or where the model is unable to classify the event, the qualified user may be able to provide further information for the system.
  • the labelling interface 300 may also provide additional tools to help the qualified user, for example callipers for measuring along an axis.
  • the verified labels 805 are saved 809 and uploaded to the training server 107, forming verified data set 903.
  • the over-riding of flagged possible events according to the labelling process 800 to create a verified data set 903 may allow the artificial intelligence model to be trained and improved by the digital health platform 100 so future automation becomes more reliable.
  • an arrhythmia event detected on the signal from the cardiac device 103 can be reviewed by a cardiologist or a person trained in cardiac electrophysiology to classify the event as normal sinus rhythm, atrial fibrillation, or some other rhythm. As more arrhythmia events are seen by the system 100 and the number of different types of arrhythmia presented to the system are increased, the artificial intelligence platform 150 is trained to recognise them with greater degree of confidence.
  • a user such as a qualified health professional may utilise a particular version of the mobile health application 700 to establish a peer-to-peer configuration for reviewing and labelling data obtained via multiple communicator devices 105 interconnected over a network instance such as a peer-to-peer network, for example through an arrangement shown in Figure 1 E.
  • a particular communicator device 105 becomes a labelling device 300 that establishes or connects to a local network or decentralised network that also comprises one or more communicator devices 105, for example those communicating from sensor devices 103 in use by multiple patients.
  • the mobile health application 700 is running a peer-to-peer configuration on a labelling device 300
  • the application 700 is advantageously configured to take the monitored data and automatically generated alert state labels generated directly from the plurality of interconnected communicator devices 105 without this data needing to first pass through the backend server 107.
  • the monitored data Once the monitored data has been over-read by the qualified health professional, it can then be shared with the back-end server 107 and this sample data with verified alert state labels is advantageously incorporated into the verified data set 903 utilised by the server device for further refinement and optimisation of the algorithm (and/or the algorithm coefficients) in subsequent training jobs as described herein.
  • the peer-to-peer configuration advantageously allows simultaneous viewing and labelling by a health professional of multiple patients on the labelling device 300 whilst distributing the computer processing required for automated analysis across each communicator device 105 and minimising the bandwidth required for communicating with the back-end server 107. Additionally where privacy, security, or bandwidth limitations prevent each individual's data from being shared, the mobile health application 700 running on the labelling device 300 may instead create an aggregated or de-identified data set that is shared with the back-end server 107.
  • the mobile health application 700 is designed to interact with a backend server or set of servers (for example device(s) 107 of Figure 1 A) connected through a distributed network architecture.
  • the backend (as seen conceptually in Figure 1 B as the support hardware and systems supporting the application 700 operating on communicator 105) serves several purposes including the storage of user information and historical data sources, analysis of large data sets for training new artificial intelligence models, and synchronising embedded mobile databases so that users may access their data on any device.
  • the backend server (or servers) 107 may consist of a single computing machine or a cluster of these machines with similar or varying hardware specifications. Machines may be designed for long term data storage, in which case files may be kept on storage media such as a hard drive for extended periods of time. Alternatively, or additionally, machines may be designed to host a database for fast access of data.
  • the backend server also includes a machine or multiple machines (either the same or different to those providing data storage) configured as a training server 107.
  • This machine or collection of machines is designed and optimised for processing large amounts of data in which case it may comprise of hardware such as high-performance Computer Processing Units (CPUs), Graphical Processing Units (GPUs), or other configurations that may allow high throughput or parallel processing.
  • CPUs Computer Processing Units
  • GPUs Graphical Processing Units
  • These machines 107 may be located and connected at a single location or alternatively distributed across a number of locations with similar or varying data storage and data processing capacities. These machines 107 may communicate through a variety of media and protocols with similar or varying bandwidths.
  • the backend architecture is designed to accommodate this distributed network with varying hardware and network specifications.
  • the backend architecture may be structured around a distributed non-relational database designed to provide ongoing scalability with increased data and concurrent users. Furthermore, this database may be a multi-model database optimised for interactive applications. The database may be contained within a single machine or clustered across multiple machines 107 including large numbers of machines across distant locations, for example in a cloud arrangement. This server is used for long term data storage and synchronisation of metadata.
  • the backend architecture may be configured to integrate with a modified version of the database designed for mobile applications (e.g. 700) including use on communicators 105(e.g. mobile devices such as smartphones and tablets).
  • the mobile version of the database allows data to be collected on the communicator 105 and synchronised with the cloud database.
  • High-frequency data may be stored locally on the mobile device, for example in the file system as objects such as binary large objects (BLOBS) when there is adequate network bandwidth, for example through high speed internet connection, these objects may be uploaded to an object storage web server configured to provide low latency, high availability, and scalability.
  • BLOBS binary large objects
  • a customised server may also be utilised as an administration server that is responsible for user accounts where any third-party web service is utilised by the back-end architecture to provide the non-relational database or object storage.
  • the Administration Server ensures that authentication is maintained so that the database and file system may be synchronised to the cloud.
  • the backend server may connect with a computing device that provides a historical data input interface.
  • This interface may provide a pathway for the input of data sets that haven't been collected in a format compatible with the training server. This may additionally allow data to enter the training server where the data has not been recorded by a monitor 103 or where a monitor 103 is incompatible with the system, for example where it is unable to communicate with the system through the network.
  • the historical data input interface may provide a user with a tool to transform the data into a format which is compatible with the data coming from the monitors. If there are event labels available in the historical dataset, the interface can also convert them into a compatible label style and add the labelled data to the verified dataset, otherwise the labels will need to be generated first by a labelling interface 300.
  • the historical data input interface may be provided through a computing device sitting within or alongside the backend server 107.
  • the historical data input interface may be provided through a communicator 105, for example through additional functionality provided by the mobile health application 700.
  • the backend architecture is completed by a training server 107 that is used for training the artificial intelligence models and automatically deploying them across the system.
  • the training server can exist on a local network or in a remote network. It can comprise a single computation device, or a collection of computation devices connected via a network. The functionality remains exactly the same regardless.
  • a local setup of the backend architecture may be used when the data collected from monitoring devices 103 is unable to be transmitted due to bandwidth restrictions or alternatively where data is not permitted onto the remote network for reasons such as privacy, security, or ethics.
  • models may be trained based on aggregated local data and, where permitted, representations of the aggregated data including these models may be shared with a training server outside the local network.
  • a cluster of high performance computing nodes consisting of CPUs and GPUs may be configured as a training server which is used for training artificial intelligence models and then deploying the analysis algorithm and the model parameters automatically to mobile devices connected to the system.
  • the training server 107 performs the computationally expensive task of generating an analysis algorithm and its associated artificial intelligence models based on either the full set or subsets of data in the Verified Data Set 903.
  • the algorithms can be but are not limited to rule-based algorithms, regressions, machine learning, deep learning, etc.
  • triggers there can be multiple triggers to start training a new algorithm. Some triggers may include but are not limited to a regular time schedule, when the size of the dataset has increased by some factor, when the dataset has shown significant variation in the ratios of labels, or when the data is sufficiently different as determined by analytical geometry and any other strategies found in the art.
  • a human or other backend process can also trigger the training of a new model.
  • the training server may pull historical information from the distributed non-relational database and the object storage web server to train artificial intelligence models such as artificial neural networks. Once trained, the parameters for these models may then be pushed back to the distributed database where they are stored and accessed by the communicator 105 (or any other user terminal) when data is being synchronised, and allowing automated deployment of these parameters to the mobile application 700.
  • artificial intelligence models such as artificial neural networks.
  • the training server may utilise a Model Creation Program (MCP) configured as a customised executable program. It may contain a routine that trains an artificial intelligence model to a certain accuracy and then stores the product on the backend server 107.
  • MCP Model Creation Program
  • the MCP may perform pre-processing on the historical data before feeding the data into the training algorithm.
  • Pre-processing may include a series of signal processing operations such as smoothing, normalisation, Fourier transform, etc. Any pre-processing that occurs during the model creation process is configured to match any pre-processing performed on the mobile device during feed-forward inference.
  • Training parameters may be selected to determine how the training routine may be executed. These parameters may be used to configure the artificial intelligence model, for example by selecting the model type (for example as an artificial neural network) and then establishing settings for the model (such as the size of the neural network). Further parameters may indicate if the training mechanism should be through a batch or online process, the number of data samples to use during training, and any mechanisms for stopping the procedure. Cross validation methods and error tolerances may also be selected.
  • Evaluation methods may be utilised to assess the level of fit and ensure overfitting does not occur.
  • the model may be trained using a portion of the queried data set (e.g. 70% of the total amount of the data set) and evaluated on the rest (e.g. the remaining 30%). Accuracy or precision of the model may also be assessed, for example through the use of statistical scores such as the F1 score.
  • the model may be included in an analysis algorithm and pushed to the database where the model's parameters may be accessed by mobile devices connected to the system.
  • the parameters may be packaged together in the form of an ensemble containing further information for each model such as any identification strings, training dates, fitness scores, and channel lists.
  • FIG. 5 shows schematically a training process 900 where training server 107 initiates a training process 901 on receipt of a training trigger.
  • relevant data is gathered from the verified data set 903.
  • Any required pre-processing steps 905 are applied to the data, and the data maybe temporarily saved in its pre-processed state to a data store with higher throughput. If there are no pre-processing steps, the data is saved as-is to the more available data store.
  • the algorithm is then trained 907 using the high-availability, pre-processed verified data. If the new algorithm performs better than the existing algorithm, the communicators 105 connected to the system 100 are notified that their algorithm is outdated and they will then download the latest version.
  • a deep learning artificial neural network has been trained by the system that uses historical ECG recordings from large databases and multiple sources.
  • the training system has been used to develop complex models capable of detecting events such as cardiac arrhythmia.
  • the artificial intelligence has been trained with examples of atrial fibrillation and sinus rhythm.
  • the model has been trained until an absolute training error of less than 0.001 is achieved.
  • the performance of the artificial intelligence software has been validated utilising a 70/30 cross validation method. This is advantageous to achieve accurate binary classification when a suitable threshold between atrial fibrillation and sinus rhythm is used.
  • the methods and systems disclosed herein for providing a real-time automated digital health monitoring system may be implemented using a computing device/computer system 1000, such as that shown in Figure 6 wherein the methods and systems disclosed herein may be implemented as software, such as one or more application programs executable within the computing device 1000.
  • the steps of the disclosed systems and method are effected by instructions in the software that are carried out within the computer system 1000.
  • the instructions may be formed as one or more code modules, each for performing one or more particular tasks.
  • the software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the described methods and a second part and the corresponding code modules manage a user interface between the first part and the user.
  • the software may be stored in a computer readable medium, including the storage devices described below, for example.
  • the software is loaded into the computer system 1000 from the computer readable medium, and then executed by the computer system 1000.
  • a computer readable medium having such software or computer program recorded on it is a computer program product.
  • the use of the computer program product in the computer system 1000 preferably effects an advantageous apparatus for providing automated health monitoring applications via mobile devices.
  • the exemplary computing device 1000 can include, but is not limited to, one or more central processing units (CPUs) 1001 comprising one or more processors 1002, a system memory 1003, and a system bus 1004 that couples various system components including the system memory 1003 to the processing unit 1001 .
  • the system bus 1004 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
  • the computing device 1000 also typically includes computer readable media, which can include any available media that can be accessed by computing device 1000 and includes both volatile and non-volatile media and removable and non-removable media.
  • computer readable media may comprise computer storage media and communication media.
  • Computer storage media includes media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing device 1000.
  • Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
  • communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
  • the system memory 1003 includes computer storage media in the form of volatile and/or non-volatile memory such as read only memory (ROM) 1005 and random-access memory (RAM) 1006.
  • ROM read only memory
  • RAM random-access memory
  • BIOS basic input/output system
  • RAM 1006- typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 1001 .
  • Figure 6 illustrates an operating system 1008, other program modules 1009, and program data 1010.
  • the computing device 1000 may also include other removable/non-removable, volatile/non-volatile computer storage media.
  • Figure 6 illustrates a hard disk drive 101 1 that reads from or writes to non-removable, non-volatile magnetic media.
  • Other removable/non-removable, volatile/non-volatile computer storage media that can be used with the exemplary computing device include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like.
  • the hard disk drive 101 1 is typically connected to the system bus 1004 through a non-removable memory interface such as interface 1012.
  • the drives and their associated computer storage media discussed above and illustrated in Figure 33 provide storage of computer readable instructions, data structures, program modules and other data for the computing device 1000.
  • hard disk drive 101 1 is illustrated as storing an operating system 1010, other program modules 1014, and program data 1015. Note that these components can either be the same as or different from operating system 1008, other program modules 1009 and program data 1010. Operating system 1010, other program modules 1014 and program data 1015 are given different numbers hereto illustrate that, at a minimum, they are different copies.
  • the computing device also includes one or more input/output (I/O) interfaces 1030 connected to the system bus 1004 including an audio-video interface that couples to output devices including one or more of a video display 1034 and loudspeakers 1035.
  • I/O interfaces 1030 also couple(s) to one or more input devices including, for example a mouse 1031 , keyboard 1032 or touch sensitive device 1033 such as for example a smartphone or tablet device.
  • the computing device 1000 may operate in a networked environment using logical connections to one or more remote computers.
  • the computing device 1000 is shown in Figure 6 to be connected to a network 1020 that is not limited to any particular network or networking protocols, but which may include, for example Ethernet, Bluetooth or IEEE 802. X wireless protocols.
  • the logical connection depicted in Figure 6 is a general network connection 1021 that can be a local area network (LAN), a wide area network (WAN) or other suitable network, for example, the internet.
  • the computing device 1000 is connected to the general network connection 1021 through a network interface or adapter 1022 which is, in turn, connected to the system bus 1004.
  • program modules depicted relative to the computing device 1000, or portions or peripherals thereof, may be stored in the memory of one or more other computing devices that are communicatively coupled to the computing device 1000 through the general network connection 1021 .
  • the network connections shown are exemplary and other means of establishing a communications link between computing devices may be used.
  • any reference to an algorithm refers to a set of rules that precisely defines a sequence of operations configured to achieve a predetermined outcome, such as the identification of patterns in measured data correlating to a predetermined physiological condition.
  • any reference to the Updating of an Algorithm may, unless otherwise stated, simply consist of the updating of parameters and coefficients used to configure or define artificial intelligence models used by the algorithm, and need not comprise any alteration to the process performed by the algorithm.
  • bus and its derivatives, while being described in a preferred embodiment as being a communication bus subsystem for interconnecting various devices including by way of parallel connectivity such as Industry Standard Architecture (ISA), conventional Peripheral Component Interconnect (PCI) and the like or serial connectivity such as PCI Express (PCIe), Serial Advanced Technology Attachment (Serial ATA) and the like, should be construed broadly herein as any system for communicating data.
  • parallel connectivity such as Industry Standard Architecture (ISA), conventional Peripheral Component Interconnect (PCI) and the like or serial connectivity such as PCI Express (PCIe), Serial Advanced Technology Attachment (Serial ATA) and the like
  • PCIe PCI Express
  • Serial Advanced Technology Attachment Serial ATA
  • 'in accordance with' may also mean 'as a function of and is not necessarily limited to the integers specified in relation thereto.
  • objects as used herein such as 'web server', 'server', 'client computing device', 'computer readable medium' and the like should not necessarily be construed as being a single object, and may be implemented as a two or more objects in cooperation, such as, for example, a web server being construed as two or more web servers in a server farm cooperating to achieve a desired goal or a computer readable medium being distributed in a composite manner, such as program code being provided on a compact disk activatable by a license key downloadable from a computer network.
  • database and its derivatives may be used to describe a single database, a set of databases, a system of databases or the like.
  • the system of databases may comprise a set of databases wherein the set of databases may be stored on a single implementation or span across multiple implementations.
  • database is also not limited to refer to a certain database format rather may refer to any database format.
  • database formats may include MySQL, MySQLi, XML or the like.
  • the invention may be embodied using devices conforming to other network standards and for other applications, including, for example other WLAN standards and other wireless standards. Applications that can be accommodated include IEEE 802.1 1 wireless LANs and links, and wireless Ethernet.
  • wireless and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not.
  • wired and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a solid medium. The term does not imply that the associated devices are coupled by electrically conductive wires.
  • processor may refer to any device or portion of a device that processes electronic data, e.g. from registers and/or memory to transform that electronic data into other electronic data that, e.g. may be stored in registers and/or memory.
  • a "computer” or a “computing device” or a “computing machine” or a “computing platform” may include one or more processors.
  • the methodologies described herein are, in one embodiment, performable by one or more processors that accept computer-readable (also called machine-readable) code containing a set of instructions that when executed by one or more of the processors carry out at least one of the methods described herein.
  • Any processor capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken are included.
  • a typical processing system that includes one or more processors.
  • the processing system further may include a memory subsystem including main RAM and/or a static RAM, and/or ROM.
  • a computer-readable carrier medium may form, or be included in a computer program product.
  • a computer program product can be stored on a computer usable carrier medium, the computer program product comprising a computer readable program means for causing a processor to perform a method as described herein.
  • the one or more processors operate as a standalone device or may be connected, e.g. networked to other processor(s), in a networked deployment, the one or more processors may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer or distributed network environment.
  • the one or more processors may form a web appliance, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
  • each of the methods described herein is in the form of a computer-readable carrier medium carrying a set of instructions, e.g. a computer program that are for execution on one or more processors.
  • a computer-readable carrier medium carrying computer readable code including a set of instructions that when executed on one or more processors cause a processor or processors to implement a method.
  • aspects of the present invention may take the form of a method, an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects.
  • the present invention may take the form of carrier medium (e.g. a computer program product on a computer-readable storage medium) carrying computer-readable program code embodied in the medium.
  • Carrier Medium e.g. a computer program product on a computer-readable storage medium
  • the software may further be transmitted or received over a network via a network interface device.
  • the carrier medium is shown in an example embodiment to be a single medium, the term “carrier medium” should be taken to include single medium or multiple media (e.g. a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions.
  • the term “carrier medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by one or more of the processors and that cause the one or more processors to perform any one or more of the methodologies of the present invention.
  • a carrier medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
  • some of the embodiments are described herein as a method or combination of elements of a method that can be implemented by a processor or a processor device, computer system, or by other means of carrying out the function.
  • a processor with the necessary instructions for carrying out such a method or element of a method forms a means for carrying out the method or element of a method.
  • an element described herein of an apparatus embodiment is an example of a means for carrying out the function performed by the element for carrying out the invention.
  • a device A connected to a device B should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means.
  • Connected may mean that two or more elements are either in direct physical or electrical contact, or that two or more elements are not in direct contact with each other yet still co-operate or interact with each other.
  • references throughout this specification to "one embodiment”, “an embodiment”, “one arrangement” or “an arrangement” means that a particular feature, structure or characteristic described in connection with the embodiment/ arrangement is included in at least one embodiment/arrangement of the present invention.
  • appearances of the phrases “in one embodiment/ arrangement” or “in an embodiment/arrangement” in various places throughout this specification are not necessarily all referring to the same embodiment/arrangement, but may.
  • the particular features, structures or characteristics may be combined in any suitable manner, as would be apparent to one of ordinary skill in the art from this disclosure, in one or more embodiments/arrangements.

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Pathology (AREA)
  • Veterinary Medicine (AREA)
  • Surgery (AREA)
  • Molecular Biology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Biophysics (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Psychiatry (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physiology (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)

Abstract

A system and methods for providing autonomous health monitoring of a user comprising a monitoring device, comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data;, the communicator comprising an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm and a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters; perform calculations to analyse the historical physiological parameters and; perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm; wherein the communicator receives the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm and performs calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.

Description

DIGITAL HEALTH MONITORING SYSTEM
Field of the Invention
[0001 ] The present invention relates to health monitoring applications for mobile devices and in particular to automated health monitoring applications via mobile devices.
[0002] The invention has been developed primarily for use in methods and systems for automated and real time health monitoring via mobile devices and will be described hereinafter with reference to this application. However, it will be appreciated that the invention is not limited to this particular field of use.
Background
[0003] Any discussion of the background art throughout the specification should in no way be considered as an admission that such background art is prior art nor that such background art is widely known or forms part of the common general knowledge in the field in Australia or worldwide.
[0004] All references, including any patents or patent applications, cited in this specification are hereby incorporated by reference. No admission is made that any reference constitutes prior art. The discussion of the references states what their authors assert, and the applicants reserve the right to challenge the accuracy and pertinence of the cited documents. It will be clearly understood that, although a number of prior art publications are referred to herein, this reference does not constitute an admission that any of these documents forms part of the common general knowledge in the art, in Australia or in any other country.
Summary
[0005] It is an object of the present invention to overcome or ameliorate at least one or more of the disadvantages of the prior art, or to provide a useful alternative.
[0006] One embodiment provides a computer program product for performing a method as described herein.
[0007] One embodiment provides a non-transitive carrier medium for carrying computer executable code that, when executed on a processor, causes the processor to perform a method as described herein.
[0008] One embodiment provides a system configured for performing a method as described herein. [0009] In particular embodiments, there is provided a process where physiological data is recorded by a monitor and the data is classified by an analysis algorithm. The classification may be verified or corrected by a human with relevant expert knowledge in the field to form a verified data set. The verified data is sent to an Al training server comprising of one or more computation devices connected on a network where the data and verified classification joins an historical verified data set. The full or subset of the verified data set may be used by the training server to train or optimise the performance of the algorithm. The optimised algorithm replaces the original Analysis Algorithm. In particular arrangements, the monitor connects to the training server via an intermediate communicator. The communicator is configured to execute the analysis algorithm. When a new analysis algorithm is available, it is transmitted by the training server to the communicator. The communicator then uses the improved analysis algorithm.
[0010] Alternatively, the monitor connects directly to a training server. The monitor is configured to execute the analysis algorithm. When a new analysis algorithm is ready, it is transmitted to the monitor. The monitor then uses the improved analysis algorithm.
[001 1 ] One or more monitors may be configured to transmit unverified data and labels computed by the analysis algorithm in use directly to a labelling interface. The data is verified on the labelling interface, then sent to the training server.
[0012] One or more communicators may be configured to transmit unverified data and labels computed by the analysis algorithm in use directly to the labelling interface. The data is verified on the labelling interface, then sent to the training server.
[0013] According to a first aspect of the invention, there is provided a system for providing autonomous health monitoring of a user. The system may comprise a monitoring device. The monitoring device may comprise one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of the user. The system may further comprise a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data. The communicator may comprise an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm. The system may further comprise a server device in communication with the communicator. The server may be adapted to receive data comprising historical physiological parameters. The server may be further adapted to perform calculations to analyse the historical physiological parameters. The server may be further adapted to perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm. The communicator may be configured to receive the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm. The communicator may be further configured to perform calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.
[0014] According to a particular arrangement of the first aspect, there is provided a system for providing autonomous health monitoring of a user comprising: a monitoring device, comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data;, the communicator comprising an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm and a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters; perform calculations to analyse the historical physiological parameters and; perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm; wherein the communicator receives the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm and performs calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.
[0015] The predetermined analysis algorithm for analysis of the physiological parameters may be adapted for monitoring for the monitored physical condition in real time.
[0016] The communicator may comprise a mobile computing device. The communicator may be integrated with the monitoring device. The communicator may be configured to transmit the sensor data to the server device for storage as historical physiological parameters.
[0017] The system may further comprise a plurality of communicators in communication with at least a corresponding plurality of monitoring devices for recording sensor data in relation to at least a corresponding plurality of users. Each communicator may be configured to analyse corresponding sensor data in accordance with the predetermined analysis algorithm. As coefficients are computed and recomputed by the server, the server may be configured to transmit the computed coefficients to each of the plurality of communicators for use by a corresponding analysis module of each of the plurality of communicators.
[0018] The plurality of communicators may comprise either a mobile computing device or a monitoring device comprising a communicator. The plurality of communicators may be connected to the server device within a distributed network.
[0019] The server may comprise a global labelling interface configured to receive global alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters. The communicator may be configured to transmit the sensor data and calculated label data to the global labelling interface for verification of the calculated label data. The communicator may comprise a local labelling interface configured to receive local alarm state data correlating to positive identification of the predetermined physiological condition. The communicator may be configured to transmit the local alarm state data to the global labelling interface for inclusion with the global alarm state data.
[0020] The server may comprise an artificial neural network. The system may comprise a plurality of communicators. Each communicator may comprise an artificial neural network. The artificial neural network may be trained by the server utilising: data from a plurality of communicators; and/or data from the labelling interface. The system may comprise a plurality of monitoring device. Each monitoring device may comprise an artificial neural network. The artificial neural network may be trained by the server utilising data from a plurality of monitoring devices. The artificial neural network may be trained by the server utilising data from a plurality of communicators and/or data from the labelling interface. The artificial neural network may be distributed across a plurality of communicators and/or a plurality of monitoring devices.
[0021 ] The server may be configured to receive sensor data and perform calculations to determine coefficients in relation to a predetermined analysis algorithm such that analysis of sensor data using the predetermined analysis algorithm is adapted to identify a predetermined physical condition represented in the analysed sensor data. The predetermined analysis algorithm may be adapted to identify a predetermined physical condition represented in the analysed sensor data in real-time. The labelling interface may be configured to cause the server to recalculate the coefficients of the predetermined analysis algorithm on receipt of alarm state data. The server may be configured to transmit the recalculated coefficients to the communicator.
[0022] According to a second aspect of the invention, there is provided a method for providing autonomous health monitoring of a user. The method may comprise the step of providing a monitoring device. The monitoring device may comprise one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user.
[0023] The method may comprise the further step of providing a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data. The method may comprise the further step of providing a server device in communication with the communicator. The server device may be configured to receive data comprising historical physiological parameters. The server device may be further configured to perform calculations to analyse the historical physiological parameters. The server device may be further configured to perform calculations to compute coefficients in respect of a computational algorithm for real time analysis of the physiological parameters.
[0024] The method may comprise the further step of receiving from the server device the computed algorithm coefficients on the communicator for analysis of the physiological parameters.
[0025] The method may comprise the further step of performing calculations on the communicator to analyse the physiological parameters of the user in accordance with the computational algorithm.
[0026] The method may comprise the further step of labelling the sensor data with calculated label data and raising an alarm state when the analysis of the sensor data correlates to a monitored physical condition.
[0027] According to a particular arrangement of the second aspect, there is provided a method for providing autonomous health monitoring of a user comprising the steps of: providing a monitoring device, comprising: one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; providing a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data; and providing a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters; perform calculations to analyse the historical physiological parameters and; perform calculations to compute coefficients in respect of a computational algorithm for real time analysis of the physiological parameters; receiving from the server device the computed algorithm coefficients on the communicator for analysis of the physiological parameters; performing calculations on the communicator to analyse the physiological parameters of the user in accordance with the computational algorithm; and label the sensor data with calculated label data and raising an alarm state when the analysis of the sensor data correlates to a monitored physical condition.
[0028] The method may further comprise the step of performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition. The calculations to analyse the historical physiological parameters may comprise an artificial neural network.
[0029] The computational algorithm for analysis of the physiological parameters may be adapted for monitoring for the predetermined physical condition in real time.
[0030] The communicator may comprise a mobile computing device. The communicator may be integrated with the monitoring device. [0031 ] The communicator may comprise an analysis module comprising a predetermined computational algorithm for use with the computed coefficients for analysing the sensor data.
[0032] The method may comprise the further step of the analysis module raising an alarm state in the event the analysis of the sensor data correlates to a predetermined physiological condition of the user.
[0033] The method may comprise the further step of the communicator communicating the recorded sensor data to the server device for storage as historical physiological parameters.
[0034] The method may comprise the further step of the communicator communicating the recorded sensor data correlating to the predetermined medical condition to the server device for storage as historical physiological parameters.
[0035] The method may comprise the further step of utilising the stored sensor data for performing further calculations by the server device to recalculate the coefficients for the computational algorithm and transmitting to the communicator the recalculated coefficients for improving the determination of the predetermined medical condition by the analysis module in analysing recorded sensor data.
[0036] The method may comprise the further step of receiving alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters.
[0037] The method may comprise the further step of reviewing the sensor data in relation to the identified physiological condition and receiving expert input relating to the positive indication of the predetermined physiological condition; and storing the sensor data and the expert input as historical physiological parameters for use in further recalculations of the coefficients of the predetermined analysis algorithm. The method may further comprise transmitting the recalculated coefficients to the communicator.
[0038] According to a third aspect of the invention, there is provided a computer program product having a computer readable medium having a computer program recorded therein for providing autonomous health monitoring of a user. The computer program product may comprise computer program code means for communicating with a monitoring device comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user. The computer program product may further comprise computer program code means for receiving data comprising the sensor data. The computer program product may further comprise computer program code means for receiving a computational algorithm for analysis of the physiological parameters from a server device, the server device adapted to perform calculations to compute the computational algorithm. The computer program product may further comprise computer program code means for performing calculations to analyse the sensor data. The computer program product may further comprise computer program code means for labelling the sensor data with calculated label data and raising an alarm state when the analysis of the physiological parameters of the user correlates to a monitored physical condition.
[0039] According to a particular arrangement of the third aspect, there is provided a computer program product having a computer readable medium having a computer program recorded therein for providing autonomous health monitoring of a user said computer program product comprising: computer program code means for communicating with a monitoring device comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user; computer program code means for receiving data comprising the sensor data; and computer program code means for receiving a computational algorithm for analysis of the physiological parameters from a server device, the server device adapted to perform calculations to compute the computational algorithm; computer program code means for performing calculations to analyse the sensor data; computer program code means for labelling the sensor data with calculated label data and raising an alarm state when the analysis of the physiological parameters of the user correlates to a monitored physical condition.
[0040] The server may comprise computer program code means for receiving data comprising historical physiological parameters. The server may further comprise computer program code means for performing calculations to analyse the historical physiological parameters. The server may further comprise computer program code means for performing calculations to compute coefficients of a predetermined analysis algorithm for real time analysis of the physiological parameters.
[0041 ] A computer program product may further comprise computer program code means for performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition. The calculations to analyse the historical physiological parameters may comprise an artificial neural network.
[0042] The computer program product may further comprise computer program code means for providing a user interface configured to permit a user to interact with the monitoring device and/or the communicator. The computer program code means for providing the user interface may be further configured to receive input in relation to the labelled sensor data. [0043] The computer program product may further comprise computer program code means for transmitting the received input to the server device for performing calculations to compute coefficients of a predetermined analysis algorithm.
Brief Description of the Drawings
[0044] Notwithstanding any other forms which may fall within the scope of the present invention, a preferred embodiment/preferred embodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings in which:
Figure 1 A shows a system 100 as disclosed herein adapted for digital automated health monitoring of a user;
Figure 1 B shows a particular arrangement of the system 100 as disclosed herein comprising a mobile computing device/communicator including a data analyser;
Figure 1 C shows a particular arrangement of the system 100 as disclosed herein comprising a monitor device including a data analyser;
Figure 1 D shows a particular arrangement of the system 100 as disclosed herein comprising a network connected monitor device;
Figure 1 E shows a particular arrangement of the system 100 as disclosed herein comprising a peer-to-peer (P2P) labelling interface;
Figure 2 shows a functional diagram of a health monitor device 103 as disclosed herein;
Figure 3 shows a functional view of a communicator 105 configured to execute a mobile health application 700 as disclosed herein;
Figure 4 shows a schematic representation of a labelling interface process 800 for labelling events in sampled sensor data from the monitor device as disclosed herein;
Figure 5 shows a schematic representation of a training process 900 configured to update the computation algorithm via an artificial neural network process on the basis of a trigger signal received be the training server; and
Figure 6 shows a schematic representation of an example computing device 1000 for implementation of the systems and methods disclosed herein. Definitions
[0045] The following definitions are provided as general definitions and should in no way limit the scope of the present invention to those terms alone, but are put forth for a better understanding of the following description.
[0046] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the art to which the invention belongs. It will be further understood that terms used herein should be interpreted as having a meaning that is consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. For the purposes of the present invention, additional terms are defined below. Furthermore, all definitions, as defined and used herein, should be understood to control over dictionary definitions, definitions in documents incorporated by reference, and/or ordinary meanings of the defined terms unless there is doubt as to the meaning of a particular term, in which case the common dictionary definition and/or common usage of the term will prevail.
[0047] For the purposes of the present invention, the following terms are defined below.
[0048] The articles "a" and "an" are used herein to refer to one or to more than one (i.e., to at least one) of the grammatical object of the article. By way of example, "an element" refers to one element or more than one element.
[0049] The term "about" is used herein to refer to quantities that vary by as much as 30%, preferably by as much as 20%, and more preferably by as much as 10% to a reference quantity. The use of the word 'about' to qualify a number is merely an express indication that the number is not to be construed as a precise value.
[0050] Throughout this specification, unless the context requires otherwise, the words "comprise", "comprises" and "comprising" will be understood to imply the inclusion of a stated step or element or group of steps or elements but not the exclusion of any other step or element or group of steps or elements.
[0051 ] Any one of the terms: "including" or "which includes" or "that includes" as used herein is also an open term that also means including at least the elements/features that follow the term, but not excluding others. Thus, "including" is synonymous with and means "comprising".
[0052] The term, "real-time", for example "displaying real-time data", refers to the display of the data without intentional delay, given the processing limitations of the system and the time required to accurately measure and process the data. [0053] The term "near-real-time", for example "obtaining real-time or near-real-time data" refers to the obtaining of data either without intentional delay ("real-time") or as close to real-time as practically possible (i.e. with a small, but minimal, amount of delay whether intentional or not within the constraints and processing limitations of the of the system for obtaining, recording, processing, or transmitting the data.
[0054] Although any methods and materials similar or equivalent to those described herein can be used in the practice or testing of the present invention, preferred methods and materials are described. It will be appreciated that the methods, apparatus and systems described herein may be implemented in a variety of ways and for a variety of purposes. The description here is by way of example only.
[0055] As used herein, the term "exemplary" is used in the sense of providing examples, as opposed to indicating quality. That is, an "exemplary embodiment" is an embodiment provided as an example, as opposed to necessarily being an embodiment of exemplary quality for example serving as a desirable model or representing the best of its kind.
[0056] The various methods or processes outlined herein may be coded as software that is executable on one or more processors that employ any one of a variety of operating systems or platforms. Additionally, such software may be written using any of a number of suitable programming languages and/or programming or scripting tools, and also may be compiled as executable machine language code or intermediate code that is executed on a framework or virtual machine.
[0057] In this respect, various inventive concepts may be embodied as a computer readable storage medium (or multiple computer readable storage media) (e.g. a computer memory, one or more floppy discs, compact discs, optical discs, magnetic tapes, flash memories, circuit configurations in Field Programmable Gate Arrays or other semiconductor devices, or other non-transitory medium or tangible computer storage medium) encoded with one or more programs that, when executed on one or more computers or other processors, perform methods that implement the various embodiments of the invention discussed above. The computer readable medium or media can be transportable, such that the program or programs stored thereon can be loaded onto one or more different computers or other processors to implement various aspects of the present invention as discussed above.
[0058] The terms "program" or "software" are used herein in a generic sense to refer to any type of computer code or set of computer-executable instructions that can be employed to program a computer or other processor to implement various aspects of embodiments as discussed above. Additionally, it should be appreciated that according to one aspect, one or more computer programs that when executed perform methods of the present invention need not reside on a single computer or processor, but may be distributed in a modular fashion amongst a number of different computers or processors to implement various aspects of the present invention.
[0059] Computer-executable instructions may be in many forms, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Typically the functionality of the program modules may be combined or distributed as desired in various embodiments.
[0060] Also, data structures may be stored in computer-readable media in any suitable form. For simplicity of illustration, data structures may be shown to have fields that are related through location in the data structure. Such relationships may likewise be achieved by assigning storage for the fields with locations in a computer-readable medium that convey relationship between the fields. However, any suitable mechanism may be used to establish a relationship between information in fields of a data structure, including through the use of pointers, tags or other mechanisms that establish relationship between data elements.
[0061 ] Also, various inventive concepts may be embodied as one or more methods, of which an example has been provided. The acts performed as part of the method may be ordered in any suitable way. Accordingly, embodiments may be constructed in which acts are performed in an order different than illustrated, which may include performing some acts simultaneously, even though shown as sequential acts in illustrative embodiments.
[0062] The phrase "and/or", as used herein in the specification and in the claims, should be understood to mean "either or both" of the elements so conjoined, i.e., elements that are conjunctively present in some cases and disjunctively present in other cases. Multiple elements listed with "and/or" should be construed in the same fashion, i.e., "one or more" of the elements so conjoined. Other elements may optionally be present other than the elements specifically identified by the "and/or" clause, whether related or unrelated to those elements specifically identified. Thus, as a non-limiting example, a reference to "A and/or B", when used in conjunction with open-ended language such as "comprising" can refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
[0063] As used herein in the specification and in the claims, "or" should be understood to have the same meaning as "and/or" as defined above. For example, when separating items in a list, "or" or "and/or" shall be interpreted as being inclusive, i.e., the inclusion of at least one, but also including more than one, of a number or list of elements, and, optionally, additional unlisted items. Only terms clearly indicated to the contrary, such as "only one of" or "exactly one of", or, when used in the claims, "consisting of" will refer to the inclusion of exactly one element of a number or list of elements. In general, the term "or" as used herein shall only be interpreted as indicating exclusive alternatives (i.e. "one or the other but not both") when preceded by terms of exclusivity, such as "either", "one of", "only one of", or "exactly one of". "Consisting essentially of", when used in the claims, shall have its ordinary meaning as used in the field of patent law.
[0064] As used herein in the specification and in the claims, the phrase "at least one", in reference to a list of one or more elements, should be understood to mean at least one element selected from any one or more of the elements in the list of elements, but not necessarily including at least one of each and every element specifically listed within the list of elements and not excluding any combinations of elements in the list of elements. This definition also allows that elements may optionally be present other than the elements specifically identified within the list of elements to which the phrase "at least one" refers, whether related or unrelated to those elements specifically identified. Thus, as a non-limiting example, "at least one of A and B" (or, equivalent^, "at least one of A or B", or, equivalent^ "at least one of A and/or B") can refer, in one embodiment, to at least one, optionally including more than one, A, with no B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, with no A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
[0065] In the claims, as well as in the summary above and the description below, all transitional phrases such as "comprising", "including", "carrying", "having", "containing", "involving", "holding", "composed of", and the like are to be understood to be open-ended, i.e., to mean "including but not limited to". Only the transitional phrases "consisting of" and "consisting essentially of" alone shall be closed or semi-closed transitional phrases, respectively.
[0066] For the purpose of this specification, where method steps are described in sequence, the sequence does not necessarily mean that the steps are to be carried out in chronological order in that sequence, unless there is no other logical manner of interpreting the sequence.
[0067] In addition, where features or aspects of the invention are described in terms of Markush groups, those skilled in the art will recognise that the invention is also thereby described in terms of any individual member or subgroup of members of the Markush group. Detailed Description
[0068] It should be noted in the following description that like or the same reference numerals in different embodiments denote the same or similar features.
[0069] Disclosed herein are systems and methods for taking data obtained from a monitoring device and streaming this data through a communicating device such as a mobile computing device that utilises artificial intelligence (Al) for the purpose of continuous monitoring and recognition of particular events. The events are logged by the system and remain available for further analysis. The communicating device may connect with a distributed network of computers that utilises robust methods for developing and deploying algorithms and/or algorithm coefficients across a distributed network of devices utilising aggregated data so that artificial intelligence models may be trained and further improved and deployed to the system over time.
[0070] The embodiments described herein take physiological measurements from a human as examples of the application of these systems to the continuous monitoring of a user's health with the artificial intelligence recognising specific health events and predicting health outcomes and risk of future adverse events. Notwithstanding these descriptions, it should be appreciated that these systems and methods may also be applied to other complex data sets acquired either from nature or design.
[0071 ] In this health monitoring application, data may be obtained or acquired by taking physiological measurements from numerous sensors or monitors such as those arranged in pieces of monitoring hardware described herein. These monitors communicate and stream data in real time or alternatively on request to a communicating device such as a mobile computing device where the sensor or monitor is either separate or embedded within the communicating device.
[0072] The communicator may be connected to a distributed network of computing devices including a server or multiple servers, other mobile devices, and any other device that allows input into the system by the user or operator of information that may also include historical and third party data. Any of the devices on the distributed network including the communicator or mobile device may also be configured to allow communication of alerts, warnings, and other information to the user or operator.
[0073] The system may utilise a user interface that allows the user or operator to interact with the system, input information, obtain alerts and warnings, and review information obtained, as well as activating settings to allow for sensible configuration of the system. The user interface may appear on a display screen located on the mobile device or on any other device connected to the distributed network. The user interface may also provide additional tools that may assist in reviewing and analysing any data that has been obtained.
[0074] The user interface may include a labelling interface that allows experts to view data with labels generated by the analysis algorithm and correct these labels if wrong, confirm these labels if correct, and additionally add any further labels to the data. The verified labels may be saved and uploaded to the training server to form a Verified Data Set. The user interface may also be configured to allow the input of historical data and when configured this historical data input interface provides a pathway for data to enter the training server without needing to be recorded by the monitor.
[0075] The network is configured for the purpose of developing and deploying algorithms for training and subsequently improving and updating artificial intelligence models designed through techniques such as machine learning, deep learning, artificial neural networks, etc. as well as rules based algorithms and regressions. The network is also configured so that any artificial intelligence model trained by one part of the network may be deployed to any other part of the network, including to the mobile device or within the sensor hardware. The data management architecture for this system may be designed based on a hybrid of local data and cloud paradigms.
[0076] The system may utilise a training server that takes aggregated data or verified data sets from across the distributed network of devices and generates an analysis algorithm that includes new artificial intelligence models. The training server may exist on a local network or in a remote network. The training server may utilise data that has been obtained from the monitoring devices or alternatively from historical data that has been entered into the system through a historical data input interface.
[0077] The training of new algorithms and/or artificial intelligence models may be triggered by an operator or through automatically generated events. If a new analysis algorithm or artificial intelligence model performs better than an existing algorithm or artificial intelligence model, a deployment algorithm may be initiated that instructs communicating devices on the network to obtain the latest analysis algorithm or artificial intelligence model.
[0078] Once analysis algorithms have been deployed within the system, the data may be streamed or processed through artificial intelligence models with calculations performed on whichever device or devices it has been deployed, either in real time or on request, so the system may recognise the specific health events for which it has been trained and so it may provide analysis and assessment of the risk of any future adverse events.
[0079] Possible health applications for the system include the monitoring of general conditions such as sleep through the integration of data from multiple sensor sources or alternatively more specific conditions such as heart arrhythmia detected through the acquisition and processing of an electrocardiogram signal.
Examples are provided herein of how the system may be embodied for each of these two applications however it will be appreciated that the system may be applied to a range of other health applications.
[0080] Figure 1 A shows a system 100 adapted for digital automated health monitoring of a user 101 by a device 103 (for example a wearable device) in communication with a communicator 105. In particular arrangements, communicator 105 may be realised as a hardware device such as, for example, a smart phone or tablet device. In alternate arrangements, however, the functionality of the communicator may be provided either by a collection of hardware components configured to interact in such a way as to provide the required functionality. In still further arrangements, communicator 105 may be realised as a software application 700 as disclosed herein and be configured to be executed by a processor module comprised in a suitable hardware device. For example, monitor device 103 may optionally comprise the required hardware components (such as a processor and memory) to realise communicator 105 comprised therein.
[0081 ] Communicator 105 is in communication with a cloud server device 107. Device 103 comprises electronics, monitoring sensors and communications capability to exchange data with the communicator 105. Communicator 105 provides data storage and management, real time Al analysis, the health monitoring application 700 as disclosed herein and communicator data synchronisation with the cloud server 107. The mobile health software application 700 is used to program the communicator 105 such that it may communicate with both the health monitoring device 103 and a distributed network of devices including one or more servers or a cloud 107 that may contain a database 109 with relevant health information.
[0082] Cloud server 107 provides backend support for system 100 which forms the foundation for the health monitoring platform and includes data management tools used, Al training systems and services that support the mobile health monitoring application.
Automated Digital Health Monitoring System 100
[0083] The system 100 may be described through the example of an embodiment adapted for automated digital health monitoring of a user utilising a health monitoring device 103 with one or more sensors (for example a wearable device) in communication with communicator 105 such as, for example, a smart watch, smartphone, mobile telephone, tablet, or similar portable computing device. The communicator 105 is also able to communicate with a distributed network of other devices across the network. An example of such a distributed network is an amorphous computing cloud. [0084] The wearable device 103 comprises monitoring sensors, electronics, and communications capability to exchange data and information with the communicator 105.
[0085] The communicator 105 provides data storage and management, real time artificial intelligence analysis, a health monitoring application, and data synchronisation with the cloud. The communicator 105 is driven by software that provides a mobile health application 700 which also allows the user to interact with the system 100.
[0086] The health monitoring application 700 is, at the most generic level, adapted to receive health data relevant to a subject (e.g. a patient, or user) from one or more health monitors comprising of sensors in communication with the subject. Such sensors may be adapted to measure and transmit health related data, such as for example, pulse rate, blood pressure, blood oxygen saturation levels, electrical impulse data (e.g. cardiac ECG data, brain EEG data, or musculature EMG data), respiratory rate or temperature relevant to the subject.
[0087] The distributed network, or cloud, provides backend support for the system 100 which forms the foundation for the health monitoring platform and includes data management tools, artificial intelligence training systems, and services that support the mobile health monitoring application.
Health Monitoring Device (Monitor) 103
[0088] A functional schematic representation of a health monitoring device 103 as disclosed herein is shown in Figure 2. The role of the Monitoring Device 103 (known also as the Monitor) is to sample data either in real-time or otherwise from at least one or a plurality of sensors 200. Each sensor 200 may accept human input via a user interface, or it may collect data autonomously at a fixed sample rate, or when a certain condition is met. The sample data can be, but isn't limited to, bio-potentials, images, video, text or audio. The monitoring device 103 may store the data and transmit it periodically, or it may not have any local storage and transmit it continuously in real-time. Alternatively monitoring device 103 may both store the sample data locally and transmit it continuously in real-time or at a later time. The important aspect of the monitor device 103 is that it contains one or more sensors 200 or other means to generate and digitise data.
[0089] In one embodiment of the monitoring device 103 as shown in Figure 2, the Monitor is a printed circuit board comprising of a microcontroller 213, a power supply and a number of attached sensors 200. In particular arrangements, the sensor data is sent to a communicator 105 such as mobile computing device (e.g. smartphone, tablet computing device or the like) via a short-range transmitter 1 10 in accordance with a suitable wireless communications protocol e.g. Bluetooth etc. [0100] In another embodiment, the monitoring device 103 is itself a mobile computing device with network capabilities, which is recording data via embedded sensors 200. In this embodiment, the monitor device 103 can transmit data directly to the training server network 107 and does not require an intermediate communicator 105.
[0101 ] In further embodiments of the invention disclosed herein, the health monitoring device 103 is a piece of hardware that advantageously comprises a combination of sensors and electronics and which may comprise, at least, the following features:
[0102] The monitoring device 103 is configured to be attached to the user in a wearable manner and designated as a Wearable Device. For example, monitoring device 103 may be configured for attachment on the wrist, on an arm band or leg band, through an adhesive attached to the torso, clipped onto the ear, within clothing such as shirts or trousers, within other apparel such as glasses and hats, or through any other means that makes it convenient for the user to wear on their body during their daily activities. Monitoring device 103 is configured such that, when attached to the user, one or more sensors of the device are provided in substantive communication with one or more physiological characteristic indicators relevant to the user.
[0103] The monitoring device 103 comprises one or more sensors that are provided to measure predetermined physiological signals from a person, for example electrocardiography (ECG), electromyography (EMG), electroencephalography (EEG), oxygen saturation (Sp02), blood pressure, heart rate, respiratory rate and temperature. The sensors may also measure biochemical signals related to the body's physiology such as glucose, Cortisol, electrolytes, lactic acid, and alcohol. Sensors for other measurements such as sound and movement may also be provided.
[0104] The monitoring device 103 is capable of wireless communication with a communicator 105 such as a mobile computing device (e.g. smartphone, tablet computer or the like), for example through the use of industry standard protocols such as WiFi, Bluetooth, and Zigbee, or other similar wireless protocols including those that allow connection to mobile wireless sensor networks and ad hoc wireless networks.
[0105] The monitoring device 103 contains one or more microcontrollers 213 or microprocessors to control the stream of sensory data in the device and relay this data to other computing machines such as smartphones, tablets, desktop computers, servers, or other devices with computing capability for the purpose of performing artificial intelligence analysis. Example Arrangements for the Health Monitoring Device 103
[0106] The system 100 described above is particularly designed so that it may include any available medical monitoring device with wireless capabilities that uses a suitable communication protocol. The communication protocol is selected so as to be compatible with a mobile computing device such that monitor device 103 can connect to the mobile computing device (or Communicator) 105. In this manner, the monitor device is able to access and use the automated digital health monitoring system 100 and mobile software application as disclosed herein.
[0107] Examples are given herein of a plurality of exemplary possible arrangements for the Health Monitoring Device 103. The purpose of these examples is to demonstrate the capabilities of the automated digital health monitoring system, however the system itself is intended to be hardware agnostic and it will be appreciated by the skilled addressee that hardware components from many and varied different manufacturers or suppliers may be readily used in system 100 provided the hardware device is compatible with at least one suitable communications protocol supported by the communicator 105.
[0108] An example arrangement of a Health Monitoring Device 103 is provided as a wearable device configured for monitoring of a subject's sleep and sleep patterns such as sleep quality. In this particular example configuration, sensors measure the subject's physiological signals including, for example: surface (skin) electrical potential sensors (e.g. ECG, EMG); optical blood-oxygen saturation analysis (e.g. Sp02); microphones (e.g. sound); and one or more accelerometers (e.g. movement) to recognise the sleep state and respiratory characteristics of the user.
[0109] An alternative arrangement of a Health Monitoring Device 103 is provided as a wearable device configured for cardiac monitoring. In this configuration a set of leads are used to measure an ECG signal across at least two points of contact to recognise cardiac rhythm.
[01 10] In both the example arrangements above, sensors 202 are attached to electronic circuitry contained within the wearable device 103. The circuitry comprises of common electrical components such as resistors, capacitors, inductors, transistors and diodes as well as integrated circuitry such as microcontrollers, memory devices, and communication boards. Circuitry may also be provided for regulation of power with low noise.
[01 1 1 ] Circuitry may be configured to filter signals obtained from the sensors to remove unwanted noise and signal drift over time. For example, in particular embodiments, capacitors and resistors are arranged as filters for the ECG signal, so as to remove frequencies below 0.05Hz and above 150Hz from the raw ECG data received from an ECG sensor connected to monitor device 103. As would be readily appreciated by the skilled addressee, electrical circuitry may optionally be included in the device 103, to protect the wearer from electrical danger, for example, by using components such as resistors in series with any ECG electrodes to ensure current through the body remains within safe limits, typically less than 10μΑ.
[01 12] Computer programs such as those configured in the form of firmware (or similar software code) may be written to or loaded and stored in the embedded memory devices, microcontrollers, and communication boards, as well as any other microprocessors contained within the circuitry of the wearable monitor device 103. The primary purpose of the firmware is to control the hardware of monitor device 103 such that measurement readings may be collected in a coordinated fashion from multiple sensors and other data sources and subsequently transmitted (e.g. to the communicator 105) via on board communication systems included in the monitor device 103.
[01 13] The firmware code of monitor device 103 is programmed to control the circuitry of the wearable device 103 such that measurement readings are taken from the sensors at precise predetermined or selectable time period intervals so that the sample rate of the sensor measurements can be used with confidence in subsequent calculations. The firmware is optimised to provide constant and reliable operation, preferably real-time operation, thus allowing the health monitoring device 103 to be worn for prolonged periods of time without restarting or without the need for recharging.
[01 14] The firmware may utilise a real time operating system with software counters based upon embedded hardware such as crystal oscillators to schedule tasks in real time. The tasks performed by device 103 typically consist of processes configured to service a specific function such as interrogation of a specific sensor or communication through a particular set of electronic circuitry.
[01 15] The tasks may be configured to run independently of each other with each task having its own section allocated within the memory stack of the microcontroller. Optionally, selected tasks may be configured to have a predetermined degree of interaction with related or complementary tasks. The real time operating system and the microcontroller may utilise methods such as time slicing and semaphores for switching between tasks and monitoring of events such as hardware interrupts and clock cycles. In the example of a device 103 optimised for monitoring of cardiac-related physiological processes, ECG signals may be measured at a rate of at least 250Hz to ensure sufficient resolution of the features of the subject's measured ECG waveform.
[01 16] Data transfer between the microcontroller of device 103 and embedded peripheral devices and sensors connected to the device 103 may occur via the use of one or more bus subsystems. The example embodiments described herein may utilise serial connectivity such as Serial Peripheral Interface (SPI) or Inter-integrated circuit (I2C) interface, or alternatively parallel connectivity, or any such combination according to the configuration of the embedded circuitry of device 103.
[01 17] The wearable device 103 may communicate with a communicator 105 such as a smartphone through the use of the embedded communication module as is described in greater detail below. The microcontroller may be used to control data transfer between the sensors and the communication module of device 103 which is selected to utilise a communication protocol with lowest power demands whilst maintaining an acceptable data transfer rate and allowing sufficient separation between wearable device 103 and communicator 105.
[01 18] The example devices 103 described herein through embodiments optimised for sleep monitoring and cardiac monitoring preferably utilise the Bluetooth communication protocol for data communications with the communicator 105. Bluetooth is an advantageous protocol as it allows data transfer rates over 30kB/s whilst minimising transmission power to less than 100mA. When the device 103 is powered on, the microcontroller configures the on-board Bluetooth chip with settings such as baud rate, serial port profile, and device name.
[01 19] In alternate arrangements, the wireless connectivity of the device 103 may be provided by such example wireless communications protocols as BLE, ZigBee, Z-wave, 6L0WPAN, Thread, Wifi-ah, @G (GSM), 3G, 4G or 5G telecommunications protocols, LTE (Cat 0, 1 , & 3), ANT & ANT+, Digimesh or alternate wireless communication protocol as would be appreciated by the skilled addressee provided that the alternate protocol meets the design requirements for providing sufficient throughput bandwidth for measurement data received from sensors 200, as well as having sufficiently small power requirements to permit sustained wireless communications over the expected measurement window required for the particular monitor device's application.
[0120] The microcontroller and the communication module of wearable device 103 preferably utilise buffers for data to be accumulated and stored whilst awaiting packaging for transmission to the communicator 105. This data storage capability allows methods such as asynchronous serial transmission to be used by the wearable device 103 through the inclusion of a universal asynchronous receiver/transmitter (UART) within the circuitry as would be appreciated by the skilled addressee. Additional memory modules may be provided elsewhere within the circuitry of device 103 to allow longer term storage of data for circumstances where communication with the receiver communicator 105 is interrupted or broken.
[0121 ] Data may be encoded by the transmitting device 103 and decoded by the receiving device (e.g. communicator 105) to optimise data transfer, minimise bandwidth, and ensure data fidelity. Signals may be grouped in transmission packets consisting of header group data and signal group data. The header group may contain information declaring the type of signal data contained in the following signal group. The type of signal data may correspond with one or more sensors utilised by the wearable device. The header group may alternatively contain information utilised for error handling, such as, for example, checksums placed at the beginning of a transmission packet.
[0122] The electrical components and integrated circuitry in both examples may be mounted onto one or more printed circuit boards to serve purposes such as electrical connection, mechanical attachment, and establish planes for power and ground. The layout of the circuitry is also preferably arranged to minimise noise and provide shielding from internal or external interference sources such as, for example, internal components, from cross talk along power supply lines, from nearby wireless transmitters and receivers, from 50Hz or 60Hz mains supply noise artefacts, radio and television transmitters, the sun and other celestial objects as would be appreciated by the skilled addressee.
[0123] Design techniques typically employed to minimise the signal noise from known noise sources include (but are not limited to) methods locating input and output circuitry separately on a circuit board to minimise cross talk and feedback, locating wireless communicating modules separately from the amplification circuitry, and providing a casing such as a Faraday cage around the amplification circuitry. Large ground planes may be used to encircle key pieces of circuitry or to provide shielding across large sections of the printed circuit board. Capacitors may be placed between voltage planes and ground so that the power supply is regulated and so that signals are not transmitted along the power supply as would be appreciated by the skilled addressee.
[0124] In the examples given here, printed circuit boards may appear rigid as these may be easily constructed during prototyping. Alternatively, the circuitry may instead be mounted onto flexible materials which may allow improved comfort for a wearer whilst retaining the essential elements of the system described herein.
[0125] In particular examples described herein, a single printed circuit board may be utilised or alternatively the system may also adopt additional boards or daughter boards that plug into the mother board or elsewhere on the health monitoring device 103 to provide for expanded functionality. Similarly, where additional boards are provided with their own power supply, they may communicate wirelessly with the mother board to allow physiological measurements to be taken from a distant point.
[0126] The electronic circuitry is powered by batteries with sufficient power to provide the current and voltage demands of the device including any signal processing, microcontrollers, microprocessors, and communication systems. The batteries are configured to provide sufficient energy to provide power for a duration suitable for the desired application. For example, the sleep monitoring device requires about 12 hours of continuous operation. The ECG application requires at least 24 hours if used as a Holter monitor. For more extended periods of use, configurations that allow recharging or replacement of the battery may be used.
[0127] A casing may be provided to protect and enclose the printed circuit board with its associated electronic components, the mechanical attachments, and the battery, as well as any other components included with the device 103 required for its function. The casing is configured to be of an appropriate design to allow it to be worn on the body of the subject. The design of the casing thus is chosen according to the site of attachment for any sensors as well as comfort and wearability for the user and configurations are not limited by the examples shown herein.
[0128] For example, in an embodiment of the device 103 specifically designed for monitoring a user's sleep characteristics or sleep quality, the casing is preferably configured to allow the device to be clipped onto a finger in such a fashion that the oxygen saturation sensor is contained within the wearable device and leads are used to connect other sensors such as ECG and EMG electrodes to appropriate parts of the wearer's body.
[0129] In an alternate embodiment of the device 103 specifically designed for monitoring a user's cardiac function, the casing is preferably configured to be attached to a strap that allows it to be worn around the wrist, the arm, or attached to the torso. Leads attached to the device, or alternatively the device itself, may be used to connect to electrodes placed on the wearer's body. For single lead ECG measurement, the voltage change over time between two points on the body can be measured, for example from the right clavicle to the left clavicle. Alternatively, this vector can be approximated by measuring from one point of the left arm near the shoulder to a more distal section of the left arm near the wrist.
Communicator (Mobile Device e.g. Smart Phone, Tablet, etc.) 105
[0130] The communicator or mobile device 105 of Figure 1 A is any piece of mobile computing equipment including electronic hardware and software that may be carried and utilised by the user or operator wherever they go to receive wireless data from a health monitoring device and then stores, processes, and displays that data to a user. The purpose of the mobile device is to process the health data acquired by the health monitoring device and provide information storage, analysis, and alerts for the user.
[0131 ] The communicator or mobile device 105 may also be considered as one that is capable of running a Mobile Health Application 700 to integrate wearable forms of health monitoring devices 103 with smartphone technology. The mobile health application is capable of communicating with the health monitoring device 103, controlling the processing of data through artificial intelligence, and interfacing with the user.
[0132] The communicator or mobile device 105 may, for example, be a smartphone device, tablet device, smartwatch device, computer laptop device or other similar mobile computing device capable of wireless data connections and communications as would be appreciated by the skilled addressee. The mobile computing device may be loaded with software that when running provides a mobile health application 700.
[0133] In one embodiment of the system, the computing machine responsible for performing the artificial intelligence is contained within the mobile device 105. However, it will be appreciated that in alternative embodiments, the computing machine responsible for processing the data through artificial intelligence may be contained within the health monitoring device 103 or elsewhere within a distributed network of devices as described in greater detail below.
[0134] A particular arrangement of the communicator 105 running a mobile health application 700 is shown functionally with respect to system 100 disclosed herein in Figure 3 comprising at least functional modules:
device driver 120 for interfacing the mobile device 105 with the monitor device
103 and decoding incoming sensor data; user interface 130 configured to permit the user to interact with the mobile health application 700; local database 140 for local storage purposes; analyser module 150 for analysing the sensor data received from monitor device(s) 103 in accordance with the artificial intelligence analysis algorithm to monitor incoming data for events associated with a physiological function of the user and automatically generate labels indicative of pre-defined events; and data replicator 160 for transmitting the sampled sensor data and the automated event labels to the backend server network (including the training server as discussed herein) for storage and use in ongoing training and improvement of the analysis algorithm and artificial intelligence models.
[0135] In particular arrangements, each of the functional modules of the communicator are provided as software functionalities of health application 700. In alternate arrangements, one or more of the functional modules of communicator 105 are provided with dedicated hardware modules integrated into a suitable device, for example a mobile computing device such as a smartphone or tablet device, or incorporated in the monitor device 103.
[0136] In particular arrangements where the monitor 103 includes sufficient network and processing capabilities, as well as sufficient power, data storage/memory, and a capability to provide an appropriate user interface, the communicator 105 may be an optional component of system 100.
[0137] Where the monitor 103 lacks the capability to connect directly to the distributed network, a separate Communicator Device (known as the Communicator) 105 may be used to send the sampled sensor data received from the monitor device 103 to the server network 107. The role of the communicator 105 in this situation is primarily to provide an interface between the monitor device 103 and the training server network 107.
[0138] For example, in a particular arrangement, a sensor 200 may be contained within a monitor 103 that comprises a wireless transmitter (e.g. Bluetooth) which allows it to transmit data short distances, but the server 107 is situated out of range of the wireless transmitter of the monitor 103 (e.g. in another building). The communicator 105 in this situation would facilitate the data transfer, connecting both via a suitable wireless communication protocol (e.g. Bluetooth) to the monitor device 103 and via a suitable wired network connection (e.g. Ethernet) or wireless network connection (e.g. Wi-Fi, mobile broadband communication, or alternatives) to the server 107.
[0139] Additionally or alternatively, the communicator 105 may be used in connection with the monitor 103 in situations where there are limitations on the monitoring device due to power requirements, computer processor capacity, data storage or memory capacity, a requirement for a small wearable device, etc. that prevents the monitor device 103 from including the hardware components necessary to also provide the functions of the communicator 105 as described above.
[0140] Additionally or alternatively, where the monitoring device lacks a suitable user interface, the communicator 105 may be configured to provide a user interface to control the monitor device 103 and/or control the analysis of any data generated by the monitor device 103. The user interface 130 may, for example, be any display loaded onto a touch screen 106 of a mobile computing device 105 configured to permit the user to interact with a software application 700 that may also permit the mobile computing device 105 to receive and analyse the data from the monitor device 103. [0141 ] In particular arrangements, communicator 105 comprises a local database 140 for temporary data storage and a replicator module 160 that allows forwarding of the sampled sensor data to the server 107.
[0142] In particular arrangements, communicator 105 comprises a local database 140 for temporary data storage and a replicator 160 that allows forwarding of the data to the labelling interface directory 300, via a Peer-to-Peer communication protocol.
[0143] In particular arrangements, through the use of a particular embodiment of the software application 700, a communicator 105 may be configured to become a labelling device 300 that establishes peer-to-peer connection with one or more other communicators 105.
Mobile Health Application 700
[0144] The mobile health application 700 is used to program the mobile device or communicator 105 such that it may communicate with both the health monitoring device 103 and a distributed network of devices including one or more servers or a cloud 107 that may contain a database 109 with relevant health information.
[0145] The mobile health application 700, is also designed to program the mobile device 105 to collect and store data from one or more external devices 103, perform real time artificial intelligence analysis on incoming data, and calculate health statistics on particular health outcomes.
[0146] A further purpose of the mobile health application 700 is to allow a user to interact with the system 100 anywhere they have their mobile device 105 and not just at a desktop computer. For example, the user may use a smartphone device 105 to create a user account to sign up to a health monitoring service, view their data that streams into the mobile device 105, and review their health statistics and health outcomes.
[0147] If the mobile device 105 is connected to a network of more distant computers, an alternative version or embodiment of the mobile health application 700 may also be run in another location to allow other users to interact with the data and view events and any changes in health status in real time. Functionality of this application may be restricted (e.g. to ensure the user's privacy and security is protected), or alternatively enhanced (e.g. so a qualified healthcare professional may provide additional interpretation or labelling).
Example Arrangements for Data Acquisition and Processing by the Mobile Health Application 700
[0148] The Mobile Health Application 700 may use a device driver 120 installed onto a communicator 105 to control and handle communications with the health monitoring device 103. The driver 120 preferably initiates and maintains communication protocols with the health monitoring device 103, and handles data packets as they arrive at the communicator 105. For example, when communicating with the cardiac or sleep devices described above, a serial port protocol connection may be created. Once a connection is established, any arriving data packets may be decoded by the driver into byte arrays for each signal measured by the health monitoring device 103.
[0149] The device driver 120 may also replicate any received data across multiple streams so that it may be used for different purposes. For example, the latest data may be pushed up by a regular timer at the plotting frame rate onto the screen of the communicator 105 for real time viewing by the user. Alternatively, or simultaneously, the data may be processed as chunks through the artificial intelligence model. Additionally, data may be sent to storage media either on board the communicator 105 or elsewhere within a distributed network 107 to which the communicator 105 may be further connected.
[0150] The device driver 120 may also provide methods for real-time pre-processing of the digital signal either before or after separation into different streams of data. This may be for purposes such as noise reduction to give a user a clear visual display, or alternatively to condition the signal into an appropriate form prior to evaluation by the artificial intelligence.
[0151 ] As an example of real-time digital signal processing, in embodiments of the cardiac or sleep devices described above, a received ECG signal is typically noisy so a pre-filtering stage may be advantageously applied to smooth the data before plotting on a screen. However, digital filtering may not be desirable for passing the data through an artificial neural network as this may impact any subsequent processing operations that are performed by the artificial intelligence model. Data sent through to the storage media may remain raw or unprocessed so that it can be used at a later point of time for either plotting, algorithm training, or evaluation.
[0152] The device driver 120 may also apply calculations or calibrations to the signal before any interpretation or display. For example, the oxygen saturation (Sp02) measurement made by embodiments of the sleep device may require a pre-defined formula to be applied to convert current or voltage to a percentage saturation value. The accelerometer used by the sleep device to detect movement may require an acceleration value to be applied (typically 9.8m/s2) to a vertical axis to account for effects such as gravity.
[0153] The mobile health application 700 may perform real time analysis of the digital signal by passing the data through pre-trained artificial intelligence models that have been deployed onto the communicator 105. The local processing of the data on the communicator 105 may be advantageous for a number of purposes. For example, the artificial intelligence can process signals from a user even when they are not connected further to a larger network such as the internet or the cloud 107. Additionally, it may not be necessary for the captured data to be uploaded to the cloud 107 which may reduce network traffic as well as allowing the processing to continue in real-time where bandwidth is limited.
[0154] The real-time analysis may be configured to allow the artificial intelligence model to recognise specific patterns relevant to the user's health according to the physiological signals received by the communicator 105 from the health monitoring device 103.
[0155] For example, in an embodiment of the sleep device, the artificial intelligence model may recognise specific patterns across multiple physiological signals that may be relevant to sleep disorders. This may allow the application 700 to detect sleep conditions such as sleep apnoea.
[0156] Alternatively, in an embodiment of the cardiac device, the artificial intelligence model may recognise specific patterns in ECG signals that may be relevant in assessing the rhythm of the heart. This may allow the application to detect heart arrhythmia such as atrial fibrillation, atrial flutter, or other heart arrhythmia.
[0157] The application may create User Profile Data that contains information provided by the user, for example metadata such as age, sex, height, weight, and any other information that may be relevant to monitoring their health. This data may also contain information that controls the configuration of the application as well as how data may be moved between the backend web servers and databases. This data may contain revision history of the application configuration to allow for synchronisation and replication of data as well as information that may be used to create a user channel to control access to user data.
[0158] The application may preferably utilise an N-Tier architecture including a Data Access Layer (DAL) to provide for saving and accessing of specific data structures and models to the local database. Additionally, this layer may allow data to be retrieved for viewing and reporting purposes. Furthermore, the DAL may also provide access to raw data stored within a file system which may be linked to meta-data in local and embedded databases.
[0159] The Data Access Layer may be configured to access ensembles, being collections of artificial intelligence models. These models may be further described by the DAL as a collection of statistical weights. The DAL may also access collections of events and collections of recorded signals. Additionally, the DAL may provide access to data containing information on the decoding and reading of signal data, meta-data relating to the user profile, application settings, as well as information that may be required for file replication and synchronisation to other devices on the network or into the cloud. [0160] Raw data may be stored within a file system linked to meta-data and contained within a local or embedded database loaded onto the communicator 105. This may form part of a larger distributed database spread across a distributed network or cloud. The local or embedded database may be implemented in the form of a non-relational database such as those commonly used for big-data and real-time web applications. A storage engine with a scalable storage layer may be used to provide a high-performance data management system.
[0161 ] The application 700 may implement methods for the serialisation and deserialisation of data models so that data may be structured within the database in compatible formats for data access. The process may utilise real-time server to browser communication protocols. Serialisation of data takes place when it is stored to the database. Any subsequent query to the database may then return a low-level data structure, for example a dictionary, in which that data is contained. The dictionary may then be de-serialised to access the data that it contains. Typically, the outcome of the de-serialisation process would be the return of a model class of data.
[0162] Processes may be implemented within the mobile health application 700 such that data contained within the embedded database is replicated or synchronised with databases 109 contained within the distributed network or within the cloud 107. Replication may take place according to a push-pull type system in either a continuous or non-continuous fashion.
[0163] Authentication protocols including web based and decentralised authentication protocols that allow a user to sign into the system, as well as encryption and other security measures, may be implemented to ensure privacy and safe transfer of any data. For example, the application may filter the data replication process through the use of structures such as channels. The purpose of these channels is to ensure that only data specific to a particular health monitoring device 103 and a particular user is moved between the communicator 105 and any other device on the distributed network or the cloud 107.
Example Embodiment of the Artificial Intelligence Evaluation (Including the Analysis Algorithm)
[0164] The mobile health application 700 includes an analysis algorithm 150 for performing automated analysis of the data received from the monitor 103 and recognising events and patterns. It can be run constantly in real-time or triggered by a simpler detection method such as the monitor 103 going outside its regular operating conditions. In particular arrangements the analysis algorithm can operate on a separate communicator 105, for example during peer-to-peer operation. In other arrangements the analysis algorithm can operate directly on the monitoring device 103. [0165] The analysis algorithm 150 may be updated in its entirety from the training server 107. Alternatively, in an embodiment advantageously designed to minimise bandwidth and allow rapid deployment across all connected communicating devices, the training server may push a set of parameters that may be used to configure a pre-existing algorithm within the mobile health application. These parameters may be used to configure the artificial intelligence model used by the algorithm, for example by selecting the model type (such as an artificial neural network) and then establishing settings for the model (such as the size of the neural network, and coefficients for the components of the network).
[0166] The analysis algorithm 150 once updated contains the most recent version of artificial intelligence models available for download from the training server. These models are the same for all connected communicators 105 running a specified monitoring device 103 and once updated represents the latest trained version of the common models derived by the training server for a particular application use. That is, the models downloaded to a user's device is not specifically tailored to that particular user, but represents the most up to date trained models utilising aggregated data acquired from all users on the distributed network, as well as any new classification data by qualified professionals and/or new data obtained from tagged patient records in a centralised database 109 accessible by the network. In this manner, each user of the system 100 and application 700 receives the most up to date best practice classification model available rather than merely a model optimised for a specific user which does not derive any advantage from the newly available classification data derived from other users and any other patient records connected to the distributed network.
[0167] The mobile health application 700 is advantageously configured to download the most recent parameters for the trained artificial intelligence models through the Data Access Layer following a particular event, for example once a user has successfully signed into their account or when receiving a trigger from the training server. The parameters may be saved in the local file system so they may be accessed in scenarios of limited or no network access. Following a request from the application 700 to load the model, the artificial intelligence framework is invoked by passing the model's local file name at which point the model is loaded and becomes available for feed forward inference and pattern recognition.
[0168] Windows or blocks of data may be sampled from the continuous stream of data passing through the application 700, pre-processed, and then pushed through the trained artificial intelligence models. Pre-processing may include a series of signal processing operations such as smoothing, normalisation, Fourier transform, etc. Any pre-processing that occurs before the feed forward inference on the local communicator device 105 is configured to match the pre-processing that occurs during the training of the artificial intelligence models. [0169] When the user begins a data recording, data may be buffered into blocks that are passed into the artificial intelligence model. The resulting product is the most likely classification for the signal based upon the data that has been used to train the artificial intelligence model. When the evaluation is complete, an event is created which contains the evaluation result.
[0170] Each evaluation may cause a message to be posted to the user interface of the communicator 105 stating the classification result. The application 700 may be configured to continuously sample and determine a signal classification, also known as an event. At the first instance of a classification the start time may be recorded. When the classification of the sample changes, the previous event may be concluded and the end time recorded. Simultaneously a new start time may be recorded for the new event.
[0171 ] In an embodiment of the system 100 applied to a cardiac device, a sampling window may be taken that would typically contain several heart beats, for example a sampling window that is, for example, about 8 seconds in duration. The sample window may then be classified either as normal sinus rhythms or alternatively as an arrhythmia such as atrial fibrillation. If the system 100 detects the rhythm changing from sinus rhythm to atrial fibrillation and then back again there would be two events of sinus rhythm and one event of atrial fibrillation. Each event would have a start and end time indicating when the corresponding rhythm was observed.
[0172] In an alternative embodiment of the system 100 applied to a sleep monitoring device, the sampling window may contain multiple signals collected concurrently by the mobile health application 700. If a sample window contains signals resembling sleep apnoea, the window may then be classified accordingly so that the number and duration of sleep apnoea events over the course of a study may be provided to the user. Where the artificial intelligence model is trained accordingly, these sleep apnoea events may be further classified, for example as obstructive sleep apnoea, central sleep apnoea, or some other sleep event.
Example Arrangements for User Interaction with the Mobile Health Application (Including the Labelling Interface)
[0173] The mobile health application 700 may in particular arrangements utilise a home view displayed to the user once the application 700 has been launched on the communicator 105 and later on request by the user. The home view may contain menus and navigation tools for the user to perform actions and select further options. The home view may also display alerts, summaries and overviews of health statistics, and display links and marketing information that may be relevant to the user based upon an analysis of their health information.
[0174] The menu or navigation tools may include an option such as a Device Connection button that allows the user to open a screen to view the potential monitoring devices 103 with which the application 700 can facilitate connection to the communicator 105. The application 700 will scan (using one or more appropriate wireless communication protocols) and populate a list of available monitoring devices 103 for the user to optionally connect with. For example, the application 700 can be paired with both the sleep and cardiac devices 103 described above and, once connected to communicator 105, will be displayed as such on the Device Connection screen. The application 700 can also incorporate other medical devices utilising any suitable compatible communication protocol accommodated by the communicator 105.
[0175] Once the user selects a device 103 they wish to interact with, the application 700 will start a process to establish a connection to the selected device 103. This may be implemented through multiple steps whereby it is confirmed that the device 103 is using a known communication protocol, a serial number or other required information is received to establish the device's identity, and finally the device's configuration information is retrieved from the DAL.
[0176] Once the device 103 is connected, a list of activity applications provided by application 700 will be displayed on the screen for the user to select. A monitoring device 103 may utilise multiple activity applications to allow different combinations of data signals to be recorded and viewed by the user. For example, if the user selects a monitoring application, a new screen may be launched with customised activity views relevant to the function of the connected device 103. In this view, the application 700 plots in real time the signals collected from the health monitoring device 130. Additionally, the real-time view may display any events that may be detected by the mobile health application 700.
[0177] In a particular arrangement where the sleep device previously described is selected, a screen may be launched configured for sleep monitoring. With the sleep device, the display may show signals for ECG, EMG, acceleration (or movement), and sound. The application 700 may display on the screen 130 of communicator 105 parameters measured by monitoring device 103 relevant to the particular application, for example current heart rate and oxygen saturation (Sp02) in respect of a sleep monitoring application configuration. A button may also be provided to allow the user to toggle recording of the sampled measurement data received by the application 700 on and off.
[0178] Alternatively, in a particular arrangement where the cardiac device previously described is selected, the ECG signal alone may be displayed by the activity application. The signal may be displayed even when the mobile health application 700 isn't recording or processing the information to indicate to the user that the devices are connected properly and measuring appropriately. Toggling the Record button begins the recording and processing of the data. Derived values for heart rate and rhythm classification may then also be displayed on the cardiac view screen. [0179] The mobile health application 700 may save meta-data to a database whilst the raw signal is streamed to a local file system to calculate derived values, recognise patterns by passing the data through an artificial intelligence model, and to maintain links between the meta-data store and the local file system. For example, the data from the cardiac device 103 may be used to determine features such as heart rate and rhythm classification. Where an abnormal event is determined, such as sleep apnoea for the sleep device 103 or an arrhythmia for the cardiac device 103, the artificial intelligence model may also generate a health event which is displayed for the user to see.
[0180] A function may be provided for the user to provide comments and other user information that can be stored alongside the data that streams from the wearable health device 103. For example, the application 700 may be configured such that when the cardiac device is in use, the wearer may enter a remark when they feel certain symptoms such as palpitations, chest pain, or dizziness.
[0181 ] A function may be provided by the mobile health application 700 so that statistics may be displayed on user interface 130 where the statistics are derived from an aggregate of data on a particular health event or set of health events. For example, when considering data from the cardiac device 103, a Health Statistic View may be used to summarise specific arrhythmia such as atrial fibrillation, atrial flutter, and tachycardia. When considering data from the sleep device 103, a summary of sleep apnoea events may also be displayed.
[0182] The Health Statistic View may allow the user 101 to select options for viewing the statistics in graphical formats such as a histogram for purposes such as illustrating the total amount of time per day when an abnormality may be present. For example, in a person who suffers from atrial fibrillation, by taking data from the cardiac device 103, the mobile health application 700 is advantageously configured to provide information regarding the burden of disease where the histogram displays the amount of time per day that the arrhythmia has been detected in that person. The application may further provide options for the user to change the time resolution of the histogram for example to display daily, weekly, and monthly summaries.
[0183] The user 101 may also be provided with a function to filter health events according to type, occurrence, duration, association, or some other classification. For example, when using a sleep monitoring device 103, this allows a user 101 to select all events between selected times of the night where sleep apnoea events longer than a particular time were detected whilst the cardiac rhythm was determined to be in atrial fibrillation.
[0184] The user 101 may also be able to select an Applications Setting View which once selected allows the user 101 to control various settings that change the functionality and capacity of the application. This may allow the application 700 to be customised, for example according to network availability and bandwidth, data storage capacity on the communicator 105 (e.g. a mobile computing device), connectivity to one or more different health monitoring devices 103, the frequency of any alerts being presented to the user 101 , privacy restrictions, and any log-out from the user's account.
[0185] The application 700 may provide a function for the user to select a Recordings View which displays a list of saved recordings. The user 101 may then select a previously recorded signal and load this onto their screen for review. In this circumstance, the user 101 may be the wearer of the health monitoring device 103 or alternatively a version of the application 700 may be run by another user such as a qualified health professional who wishes to review the health of their patient i.e. user 101 .
[0186] When a previous recording has been selected, the application 700 may allow the user 101 to open a Recorded Events View to display all the events that have occurred during the selected recording. Information including the type of event, time of event, and duration may be made available for the user to see. For example, when reviewing events generated by the signal from the cardiac device 103, any arrhythmia detected by the artificial intelligence algorithm may be summarised on this view on the user interface 130.
[0187] Alternatively, the user 101 may be provided with a function to view a single event or a series of events and then scroll through further events. This function may be extended to create a labelling interface 300 as seen in Figures 1 B to 1 E that follows a labelling process 800, for example as demonstrated in Figure 4. This process 800 may be used by a user such as a qualified healthcare professional to view 803 sampled sensor data 801 from monitor devices 103 and the corresponding labels generated by the analysis algorithm 150 and correct the labels 805 if they are wrong, add their own labels, or confirm them if they are correct.
[0188] The labelling process 800 allows a qualified user to over-ride possible events flagged by the mobile health application 700 and/or confirm that their classification is correct (also known as over-reading in the health profession), or where the model is unable to classify the event, the qualified user may be able to provide further information for the system. The labelling interface 300 may also provide additional tools to help the qualified user, for example callipers for measuring along an axis. Following completion of the labelling process 800, the verified labels 805 are saved 809 and uploaded to the training server 107, forming verified data set 903.
[0189] The over-riding of flagged possible events according to the labelling process 800 to create a verified data set 903 may allow the artificial intelligence model to be trained and improved by the digital health platform 100 so future automation becomes more reliable. [0190] For example, an arrhythmia event detected on the signal from the cardiac device 103 can be reviewed by a cardiologist or a person trained in cardiac electrophysiology to classify the event as normal sinus rhythm, atrial fibrillation, or some other rhythm. As more arrhythmia events are seen by the system 100 and the number of different types of arrhythmia presented to the system are increased, the artificial intelligence platform 150 is trained to recognise them with greater degree of confidence.
Example Arrangements for Peer-to-Peer Network Configuration
[0191 ] Additionally, a user such as a qualified health professional may utilise a particular version of the mobile health application 700 to establish a peer-to-peer configuration for reviewing and labelling data obtained via multiple communicator devices 105 interconnected over a network instance such as a peer-to-peer network, for example through an arrangement shown in Figure 1 E. In an embodiment of this arrangement, a particular communicator device 105 becomes a labelling device 300 that establishes or connects to a local network or decentralised network that also comprises one or more communicator devices 105, for example those communicating from sensor devices 103 in use by multiple patients.
[0192] Where the mobile health application 700 is running a peer-to-peer configuration on a labelling device 300, the application 700 is advantageously configured to take the monitored data and automatically generated alert state labels generated directly from the plurality of interconnected communicator devices 105 without this data needing to first pass through the backend server 107. Once the monitored data has been over-read by the qualified health professional, it can then be shared with the back-end server 107 and this sample data with verified alert state labels is advantageously incorporated into the verified data set 903 utilised by the server device for further refinement and optimisation of the algorithm (and/or the algorithm coefficients) in subsequent training jobs as described herein.
[0193] The peer-to-peer configuration advantageously allows simultaneous viewing and labelling by a health professional of multiple patients on the labelling device 300 whilst distributing the computer processing required for automated analysis across each communicator device 105 and minimising the bandwidth required for communicating with the back-end server 107. Additionally where privacy, security, or bandwidth limitations prevent each individual's data from being shared, the mobile health application 700 running on the labelling device 300 may instead create an aggregated or de-identified data set that is shared with the back-end server 107.
Backend Server and Distributed Network 107
[0194] The mobile health application 700 is designed to interact with a backend server or set of servers (for example device(s) 107 of Figure 1 A) connected through a distributed network architecture. The backend (as seen conceptually in Figure 1 B as the support hardware and systems supporting the application 700 operating on communicator 105) serves several purposes including the storage of user information and historical data sources, analysis of large data sets for training new artificial intelligence models, and synchronising embedded mobile databases so that users may access their data on any device.
[0195] The backend server (or servers) 107 may consist of a single computing machine or a cluster of these machines with similar or varying hardware specifications. Machines may be designed for long term data storage, in which case files may be kept on storage media such as a hard drive for extended periods of time. Alternatively, or additionally, machines may be designed to host a database for fast access of data.
[0196] Furthermore, the backend server also includes a machine or multiple machines (either the same or different to those providing data storage) configured as a training server 107. This machine or collection of machines is designed and optimised for processing large amounts of data in which case it may comprise of hardware such as high-performance Computer Processing Units (CPUs), Graphical Processing Units (GPUs), or other configurations that may allow high throughput or parallel processing.
[0197] These machines 107 may be located and connected at a single location or alternatively distributed across a number of locations with similar or varying data storage and data processing capacities. These machines 107 may communicate through a variety of media and protocols with similar or varying bandwidths. The backend architecture is designed to accommodate this distributed network with varying hardware and network specifications.
Example Arrangements for the Backend Architecture
[0198] The backend architecture may be structured around a distributed non-relational database designed to provide ongoing scalability with increased data and concurrent users. Furthermore, this database may be a multi-model database optimised for interactive applications. The database may be contained within a single machine or clustered across multiple machines 107 including large numbers of machines across distant locations, for example in a cloud arrangement. This server is used for long term data storage and synchronisation of metadata.
[0199] The backend architecture may be configured to integrate with a modified version of the database designed for mobile applications (e.g. 700) including use on communicators 105(e.g. mobile devices such as smartphones and tablets). The mobile version of the database allows data to be collected on the communicator 105 and synchronised with the cloud database. [0200] High-frequency data may be stored locally on the mobile device, for example in the file system as objects such as binary large objects (BLOBS) when there is adequate network bandwidth, for example through high speed internet connection, these objects may be uploaded to an object storage web server configured to provide low latency, high availability, and scalability.
[0201 ] A customised server may also be utilised as an administration server that is responsible for user accounts where any third-party web service is utilised by the back-end architecture to provide the non-relational database or object storage. The Administration Server ensures that authentication is maintained so that the database and file system may be synchronised to the cloud.
[0202] The backend server may connect with a computing device that provides a historical data input interface. This interface may provide a pathway for the input of data sets that haven't been collected in a format compatible with the training server. This may additionally allow data to enter the training server where the data has not been recorded by a monitor 103 or where a monitor 103 is incompatible with the system, for example where it is unable to communicate with the system through the network.
[0203] The historical data input interface may provide a user with a tool to transform the data into a format which is compatible with the data coming from the monitors. If there are event labels available in the historical dataset, the interface can also convert them into a compatible label style and add the labelled data to the verified dataset, otherwise the labels will need to be generated first by a labelling interface 300.
[0204] In a particular embodiment the historical data input interface may be provided through a computing device sitting within or alongside the backend server 107. Alternatively or additionally, the historical data input interface may be provided through a communicator 105, for example through additional functionality provided by the mobile health application 700.
[0205] The backend architecture is completed by a training server 107 that is used for training the artificial intelligence models and automatically deploying them across the system. The training server can exist on a local network or in a remote network. It can comprise a single computation device, or a collection of computation devices connected via a network. The functionality remains exactly the same regardless.
[0206] A local setup of the backend architecture may be used when the data collected from monitoring devices 103 is unable to be transmitted due to bandwidth restrictions or alternatively where data is not permitted onto the remote network for reasons such as privacy, security, or ethics. In these circumstances models may be trained based on aggregated local data and, where permitted, representations of the aggregated data including these models may be shared with a training server outside the local network.
Example Arrangements of the Training Server and Al Model Training Process
[0207] A cluster of high performance computing nodes consisting of CPUs and GPUs may be configured as a training server which is used for training artificial intelligence models and then deploying the analysis algorithm and the model parameters automatically to mobile devices connected to the system.
[0208] The training server 107 performs the computationally expensive task of generating an analysis algorithm and its associated artificial intelligence models based on either the full set or subsets of data in the Verified Data Set 903. The algorithms can be but are not limited to rule-based algorithms, regressions, machine learning, deep learning, etc.
[0209] There can be multiple triggers to start training a new algorithm. Some triggers may include but are not limited to a regular time schedule, when the size of the dataset has increased by some factor, when the dataset has shown significant variation in the ratios of labels, or when the data is sufficiently different as determined by analytical geometry and any other strategies found in the art. A human or other backend process can also trigger the training of a new model.
[0210] The training server may pull historical information from the distributed non-relational database and the object storage web server to train artificial intelligence models such as artificial neural networks. Once trained, the parameters for these models may then be pushed back to the distributed database where they are stored and accessed by the communicator 105 (or any other user terminal) when data is being synchronised, and allowing automated deployment of these parameters to the mobile application 700.
[021 1 ] The training server may utilise a Model Creation Program (MCP) configured as a customised executable program. It may contain a routine that trains an artificial intelligence model to a certain accuracy and then stores the product on the backend server 107.
[0212] The MCP may perform pre-processing on the historical data before feeding the data into the training algorithm. Pre-processing may include a series of signal processing operations such as smoothing, normalisation, Fourier transform, etc. Any pre-processing that occurs during the model creation process is configured to match any pre-processing performed on the mobile device during feed-forward inference.
[0213] Training parameters may be selected to determine how the training routine may be executed. These parameters may be used to configure the artificial intelligence model, for example by selecting the model type (for example as an artificial neural network) and then establishing settings for the model (such as the size of the neural network). Further parameters may indicate if the training mechanism should be through a batch or online process, the number of data samples to use during training, and any mechanisms for stopping the procedure. Cross validation methods and error tolerances may also be selected.
[0214] Evaluation methods may be utilised to assess the level of fit and ensure overfitting does not occur. For example, the model may be trained using a portion of the queried data set (e.g. 70% of the total amount of the data set) and evaluated on the rest (e.g. the remaining 30%). Accuracy or precision of the model may also be assessed, for example through the use of statistical scores such as the F1 score.
[0215] If the model achieves a suitable level of accuracy or precision and passes any cross-validation method applied by the system, the model may be included in an analysis algorithm and pushed to the database where the model's parameters may be accessed by mobile devices connected to the system.
[0216] Where multiple models are created for a device, the parameters may be packaged together in the form of an ensemble containing further information for each model such as any identification strings, training dates, fitness scores, and channel lists.
[0217] Figure 5 shows schematically a training process 900 where training server 107 initiates a training process 901 on receipt of a training trigger. When a training trigger is received, relevant data is gathered from the verified data set 903. Any required pre-processing steps 905 are applied to the data, and the data maybe temporarily saved in its pre-processed state to a data store with higher throughput. If there are no pre-processing steps, the data is saved as-is to the more available data store. The algorithm is then trained 907 using the high-availability, pre-processed verified data. If the new algorithm performs better than the existing algorithm, the communicators 105 connected to the system 100 are notified that their algorithm is outdated and they will then download the latest version.
Validation Studies Demonstrating Cardiac Monitoring Function
[0218] A deep learning artificial neural network has been trained by the system that uses historical ECG recordings from large databases and multiple sources. The training system has been used to develop complex models capable of detecting events such as cardiac arrhythmia. For example, the artificial intelligence has been trained with examples of atrial fibrillation and sinus rhythm.
[0219] The model has been trained until an absolute training error of less than 0.001 is achieved. The performance of the artificial intelligence software has been validated utilising a 70/30 cross validation method. This is advantageous to achieve accurate binary classification when a suitable threshold between atrial fibrillation and sinus rhythm is used.
Computer Hardware
[0220] The methods and systems disclosed herein for providing a real-time automated digital health monitoring system may be implemented using a computing device/computer system 1000, such as that shown in Figure 6 wherein the methods and systems disclosed herein may be implemented as software, such as one or more application programs executable within the computing device 1000. In particular, the steps of the disclosed systems and method are effected by instructions in the software that are carried out within the computer system 1000. The instructions may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the described methods and a second part and the corresponding code modules manage a user interface between the first part and the user. The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer system 1000 from the computer readable medium, and then executed by the computer system 1000. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 1000 preferably effects an advantageous apparatus for providing automated health monitoring applications via mobile devices.
[0221 ] With reference to Figure 3, an exemplary computing device 1000 is illustrated. The exemplary computing device 1000 can include, but is not limited to, one or more central processing units (CPUs) 1001 comprising one or more processors 1002, a system memory 1003, and a system bus 1004 that couples various system components including the system memory 1003 to the processing unit 1001 . The system bus 1004 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
[0222] The computing device 1000 also typically includes computer readable media, which can include any available media that can be accessed by computing device 1000 and includes both volatile and non-volatile media and removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing device 1000. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
[0223] The system memory 1003 includes computer storage media in the form of volatile and/or non-volatile memory such as read only memory (ROM) 1005 and random-access memory (RAM) 1006. A basic input/output system 1007 (BIOS), containing the basic routines that help to transfer information between elements within computing device 1000, such as during start-up, is typically stored in ROM 1005. RAM 1006- typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 1001 . By way of example, and not limitation, Figure 6 illustrates an operating system 1008, other program modules 1009, and program data 1010.
[0224] The computing device 1000 may also include other removable/non-removable, volatile/non-volatile computer storage media. By way of example only, Figure 6 illustrates a hard disk drive 101 1 that reads from or writes to non-removable, non-volatile magnetic media. Other removable/non-removable, volatile/non-volatile computer storage media that can be used with the exemplary computing device include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like. The hard disk drive 101 1 is typically connected to the system bus 1004 through a non-removable memory interface such as interface 1012.
[0225] The drives and their associated computer storage media discussed above and illustrated in Figure 33, provide storage of computer readable instructions, data structures, program modules and other data for the computing device 1000. In Figure 33, for example, hard disk drive 101 1 is illustrated as storing an operating system 1010, other program modules 1014, and program data 1015. Note that these components can either be the same as or different from operating system 1008, other program modules 1009 and program data 1010. Operating system 1010, other program modules 1014 and program data 1015 are given different numbers hereto illustrate that, at a minimum, they are different copies.
[0226] The computing device also includes one or more input/output (I/O) interfaces 1030 connected to the system bus 1004 including an audio-video interface that couples to output devices including one or more of a video display 1034 and loudspeakers 1035. Input/output interface(s) 1030 also couple(s) to one or more input devices including, for example a mouse 1031 , keyboard 1032 or touch sensitive device 1033 such as for example a smartphone or tablet device.
[0227] Of relevance to the descriptions below, the computing device 1000 may operate in a networked environment using logical connections to one or more remote computers. For simplicity of illustration, the computing device 1000 is shown in Figure 6 to be connected to a network 1020 that is not limited to any particular network or networking protocols, but which may include, for example Ethernet, Bluetooth or IEEE 802. X wireless protocols. The logical connection depicted in Figure 6 is a general network connection 1021 that can be a local area network (LAN), a wide area network (WAN) or other suitable network, for example, the internet. The computing device 1000 is connected to the general network connection 1021 through a network interface or adapter 1022 which is, in turn, connected to the system bus 1004. In a networked environment, program modules depicted relative to the computing device 1000, or portions or peripherals thereof, may be stored in the memory of one or more other computing devices that are communicatively coupled to the computing device 1000 through the general network connection 1021 . It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between computing devices may be used.
Interpretation
Algorithm
[0228] In the context of this document, and particularly in the context of an application where data is passed through artificial intelligence models, any reference to an algorithm, unless otherwise stated, refers to a set of rules that precisely defines a sequence of operations configured to achieve a predetermined outcome, such as the identification of patterns in measured data correlating to a predetermined physiological condition.
[0229] In the context of this document, and particularly in the context of an application where data is passed through artificial intelligence models, any reference to the Updating of an Algorithm may, unless otherwise stated, simply consist of the updating of parameters and coefficients used to configure or define artificial intelligence models used by the algorithm, and need not comprise any alteration to the process performed by the algorithm.
Bus
[0230] In the context of this document, the term "bus" and its derivatives, while being described in a preferred embodiment as being a communication bus subsystem for interconnecting various devices including by way of parallel connectivity such as Industry Standard Architecture (ISA), conventional Peripheral Component Interconnect (PCI) and the like or serial connectivity such as PCI Express (PCIe), Serial Advanced Technology Attachment (Serial ATA) and the like, should be construed broadly herein as any system for communicating data.
In Accordance With
[0231 ] As described herein, 'in accordance with' may also mean 'as a function of and is not necessarily limited to the integers specified in relation thereto.
Composite Items
[0232] As described herein, 'a computer implemented method' should not necessarily be inferred as being performed by a single computing device such that the steps of the method may be performed by more than one cooperating computing devices.
[0233] Similarly objects as used herein such as 'web server', 'server', 'client computing device', 'computer readable medium' and the like should not necessarily be construed as being a single object, and may be implemented as a two or more objects in cooperation, such as, for example, a web server being construed as two or more web servers in a server farm cooperating to achieve a desired goal or a computer readable medium being distributed in a composite manner, such as program code being provided on a compact disk activatable by a license key downloadable from a computer network.
Database
[0234] In the context of this document, the term "database" and its derivatives may be used to describe a single database, a set of databases, a system of databases or the like. The system of databases may comprise a set of databases wherein the set of databases may be stored on a single implementation or span across multiple implementations. The term "database" is also not limited to refer to a certain database format rather may refer to any database format. For example, database formats may include MySQL, MySQLi, XML or the like.
Wireless
[0235] The invention may be embodied using devices conforming to other network standards and for other applications, including, for example other WLAN standards and other wireless standards. Applications that can be accommodated include IEEE 802.1 1 wireless LANs and links, and wireless Ethernet. [0236] In the context of this document, the term "wireless" and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. In the context of this document, the term "wired" and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a solid medium. The term does not imply that the associated devices are coupled by electrically conductive wires.
Processes
[0237] Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as "processing", "computing", "calculating", "determining", "analysing" or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulate and/or transform data represented as physical, such as electronic, quantities into other data similarly represented as physical quantities.
Processor
[0238] In a similar manner, the term "processor" may refer to any device or portion of a device that processes electronic data, e.g. from registers and/or memory to transform that electronic data into other electronic data that, e.g. may be stored in registers and/or memory. A "computer" or a "computing device" or a "computing machine" or a "computing platform" may include one or more processors.
[0239] The methodologies described herein are, in one embodiment, performable by one or more processors that accept computer-readable (also called machine-readable) code containing a set of instructions that when executed by one or more of the processors carry out at least one of the methods described herein. Any processor capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken are included. Thus, one example is a typical processing system that includes one or more processors. The processing system further may include a memory subsystem including main RAM and/or a static RAM, and/or ROM.
Computer-Readable Medium
[0240] Furthermore, a computer-readable carrier medium may form, or be included in a computer program product. A computer program product can be stored on a computer usable carrier medium, the computer program product comprising a computer readable program means for causing a processor to perform a method as described herein.
Networked or Multiple Processors
[0241 ] In alternative embodiments, the one or more processors operate as a standalone device or may be connected, e.g. networked to other processor(s), in a networked deployment, the one or more processors may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer or distributed network environment. The one or more processors may form a web appliance, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine.
[0242] Note that while some diagram(s) only show(s) a single processor and a single memory that carries the computer-readable code, those in the art will understand that many of the components described above are included, but not explicitly shown or described in order not to obscure the inventive aspect. For example, while only a single machine is illustrated, the term "machine" shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.
Additional Embodiments
[0243] Thus, one embodiment of each of the methods described herein is in the form of a computer-readable carrier medium carrying a set of instructions, e.g. a computer program that are for execution on one or more processors. Thus, as will be appreciated by those skilled in the art, embodiments of the present invention may be embodied as a method, an apparatus such as a special purpose apparatus, an apparatus such as a data processing system, or a computer-readable carrier medium. The computer-readable carrier medium carries computer readable code including a set of instructions that when executed on one or more processors cause a processor or processors to implement a method. Accordingly, aspects of the present invention may take the form of a method, an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of carrier medium (e.g. a computer program product on a computer-readable storage medium) carrying computer-readable program code embodied in the medium. Carrier Medium
[0244] The software may further be transmitted or received over a network via a network interface device. While the carrier medium is shown in an example embodiment to be a single medium, the term "carrier medium" should be taken to include single medium or multiple media (e.g. a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term "carrier medium" shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by one or more of the processors and that cause the one or more processors to perform any one or more of the methodologies of the present invention. A carrier medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
Implementation
[0245] It will be understood that the steps of methods discussed are performed in one embodiment by an appropriate processor (or processors) of a processing (i.e., computer) system executing instructions (computer-readable code) stored in storage. It will also be understood that the invention is not limited to any particular implementation or programming technique and that the invention may be implemented using any appropriate techniques for implementing the functionality described herein. The invention is not limited to any particular programming language or operating system.
Means for Carrying Out a Method or Function
[0246] Furthermore, some of the embodiments are described herein as a method or combination of elements of a method that can be implemented by a processor or a processor device, computer system, or by other means of carrying out the function. Thus, a processor with the necessary instructions for carrying out such a method or element of a method forms a means for carrying out the method or element of a method. Furthermore, an element described herein of an apparatus embodiment is an example of a means for carrying out the function performed by the element for carrying out the invention.
Connected
[0247] Similarly, it is to be noticed that the term connected, when used in the claims, should not be interpreted as being limitative to direct connections only. Thus, the scope of the expression a device A connected to a device B should not be limited to devices or systems wherein an output of device A is directly connected to an input of device B. It means that there exists a path between an output of A and an input of B which may be a path including other devices or means. "Connected" may mean that two or more elements are either in direct physical or electrical contact, or that two or more elements are not in direct contact with each other yet still co-operate or interact with each other.
Embodiments
[0248] Reference throughout this specification to "one embodiment", "an embodiment", "one arrangement" or "an arrangement" means that a particular feature, structure or characteristic described in connection with the embodiment/ arrangement is included in at least one embodiment/arrangement of the present invention. Thus, appearances of the phrases "in one embodiment/ arrangement" or "in an embodiment/arrangement" in various places throughout this specification are not necessarily all referring to the same embodiment/arrangement, but may. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner, as would be apparent to one of ordinary skill in the art from this disclosure, in one or more embodiments/arrangements.
[0249] Similarly, it should be appreciated that in the above description of example embodiments/arrangements of the invention, various features of the invention are sometimes grouped together in a single embodiment/arrangement, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment/arrangement. Thus, the claims following the Detailed Description are hereby expressly incorporated into this Detailed Description, with each claim standing on its own as a separate embodiment/arrangement of this invention.
[0250] Furthermore, while some embodiments/arrangements described herein include some but not other features included in other embodiments/arrangements, combinations of features of different embodiments/arrangements are meant to be within the scope of the invention, and form different embodiments/arrangements, as would be understood by those in the art. For example, in the following claims, any of the claimed embodiments/arrangements can be used in any combination.
Specific Details
[0251 ] In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. In other instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description. Terminology
[0252] In describing the preferred embodiment of the invention illustrated in the drawings, specific terminology will be resorted to for the sake of clarity. However, the invention is not intended to be limited to the specific terms so selected, and it is to be understood that each specific term includes all technical equivalents which operate in a similar manner to accomplish a similar technical purpose. Terms such as "forward", "rearward", "radially", "peripherally", "upwardly", "downwardly", and the like are used as words of convenience to provide reference points and are not to be construed as limiting terms.
Different Instances of Objects
[0253] As used herein, unless otherwise specified the use of the ordinal adjectives "first", "second", "third", etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
Comprising and Including
[0254] In the claims which follow and in the preceding description of the invention, except where the context requires otherwise due to express language or necessary implication, the word "comprise" or variations such as "comprises" or "comprising" are used in an inclusive sense, i.e. to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention.
[0255] Any one of the terms: "including" or "which includes" or "that includes" as used herein is also an open term that also means "including at least" the elements/features that follow the term, but not excluding others. Thus, including is synonymous with and means comprising.
Scope of Invention
[0256] Thus, while there has been described what are believed to be the preferred arrangements of the invention, those skilled in the art will recognize that other and further modifications may be made thereto without departing from the spirit of the invention, and it is intended to claim all such changes and modifications as fall within the scope of the invention. Functionality may be added or deleted from the block diagrams and operations may be interchanged among functional blocks. Steps may be added or deleted to methods described within the scope of the present invention.
[0257] Although the invention has been described with reference to specific examples, it will be appreciated by those skilled in the art that the invention may be embodied in many other forms. Industrial Applicability
[0258] It is apparent from the above, that the arrangements described are applicable to the mobile device industries, specifically for methods and systems for distributing digital media via mobile devices.
[0259] It will be appreciated that the methods/apparatus/devices/systems described/illustrated above at least substantially provide methods and systems for automated and real-time health monitoring via mobile devices.
[0260] The health monitoring systems and methods described herein, and/or shown in the drawings, are presented by way of example only and are not limiting as to the scope of the invention. Unless otherwise specifically stated, individual aspects and components of the health monitoring systems and methods may be modified, or may have been substituted therefore known equivalents, or as yet unknown substitutes such as may be developed in the future or such as may be found to be acceptable substitutes in the future. The health monitoring systems and methods disclosed herein may also be modified for a variety of applications while remaining within the scope and spirit of the claimed invention, since the range of potential applications is great, and since it is intended that the present health monitoring systems and methods be adaptable to many such variations.

Claims

CLAIMS:
1 . A system for providing autonomous health monitoring of a user comprising:
a monitoring device, comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user;
a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data;, the communicator comprising an analysis module configured for analysing the sensor data in accordance with a predetermined computational algorithm; and a server device in communication with the communicator and adapted to:
receive data comprising historical physiological parameters;
perform calculations to analyse the historical physiological parameters; and perform calculations to compute modified coefficients in respect of the predetermined analysis algorithm;
wherein the communicator receives the modified coefficients from the server device for use by the analysis module in accordance with the predetermined computational algorithm and performs calculations to analyse the sensor data and to label the sensor data with calculated label data and raise an alarm state when the analysis of the sensor data correlates to a predetermined physiological condition of the user.
2. A system as claimed in Claim 1 , wherein the predetermined analysis algorithm for analysis of the physiological parameters is adapted for monitoring for the monitored physical condition in real time.
3. A system as claimed in any one of the preceding claims, wherein the communicator comprises a mobile computing device.
4. A system as claimed in any one of the preceding claims, wherein the communicator is integrated with the monitoring device.
5. A system as claimed in any one of the preceding claims, wherein the communicator is configured to transmit the sensor data to the server device for storage as historical physiological parameters.
6. A system as claimed in any one of the preceding claims comprising a plurality of communicators in communication with at least a corresponding plurality of monitoring devices for recording sensor data in relation to at least a corresponding plurality of users, wherein:
each communicator is configured to analyse corresponding sensor data in accordance with the predetermined analysis algorithm; and as coefficients are computed and recomputed by the server, the server transmits the computed coefficients to each of the plurality of communicators for use by a corresponding analysis module of each of the plurality of communicators.
7. A system as claimed in Claim 6, wherein the plurality of communicators comprise either a mobile computing device or a monitoring device comprising a communicator.
8. A system as claimed in either Claim 6 or Claim 7, wherein the plurality of communicators are connected to the server device within a distributed network.
9. A system as claimed in any one of the preceding claims, wherein the server comprises a global labelling interface configured to receive global alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters.
10. A system as claimed in Claim 9, wherein the communicator is configured to transmit the sensor data and calculated label data to the global labelling interface for verification of the calculated label data.
1 1 . A system as claimed in any one of the preceding claims, wherein the communicator comprises a local labelling interface configured to receive local alarm state data correlating to positive identification of the predetermined physiological condition.
12. A system as claimed in Claim 10, when dependent upon Claim 9, wherein the communicator is configured to transmit the local alarm state data to the global labelling interface for inclusion with the global alarm state data.
13. A system as claimed in any one of the preceding claims, wherein the server comprises an artificial neural network.
14. A system as claimed in any one of the preceding claims comprising a plurality of communicators, wherein each communicator comprises an artificial neural network.
15. A system as claimed in Claim 14, wherein the artificial neural network is trained by the server utilising: data from a plurality of communicators; and/or data from the labelling interface.
16. A system as claimed in any one of the preceding claims comprising a plurality of monitoring devices, wherein each monitoring device may comprise an artificial neural network.
17. A system as claimed in Claim 16, wherein the artificial neural network is trained by the server utilising data from a plurality of monitoring devices.
18. A system as claimed in Claim 17, wherein the artificial neural network is trained by the server utilising data from a plurality of communicators and/or data from the labelling interface.
19. A system as claimed in Claim 13, wherein the server is configured to receive verified labelled data and sensor data and perform calculations to determine coefficients in relation to a predetermined analysis algorithm such that analysis of sensor data using the predetermined analysis algorithm is adapted to identify a predetermined physical condition represented in the analysed sensor data.
20. A system as claimed in Claim 18, wherein the predetermined analysis algorithm is adapted to identify a predetermined physical condition represented in the analysed sensor data in real-time.
21 . A system as claimed in Claim 9, wherein the labelling interface is configured to cause the server to recalculate the coefficients of the predetermined analysis algorithm on receipt of alarm state data.
22. A system as claimed in Claim 21 , wherein the server is configured to transmit the recalculated coefficients to the communicator.
23. A method for providing autonomous health monitoring of a user comprising the steps of: providing a monitoring device, comprising:
one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user;
providing a communicator in communication with the monitoring device and adapted to receive data comprising the sensor data; and
providing a server device in communication with the communicator and adapted to: receive data comprising historical physiological parameters;
perform calculations to analyse the historical physiological parameters; and perform calculations to compute coefficients in respect of a computational algorithm for real time analysis of the physiological parameters;
receiving from the server device the computed algorithm coefficients on the communicator for analysis of the physiological parameters;
performing calculations on the communicator to analyse the physiological parameters of the user in accordance with the computational algorithm; and
label the sensor data with calculated label data and raising an alarm state when the analysis of the sensor data correlates to a monitored physical condition.
24. A method as claimed in Claim 23, further comprising performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition.
25. A method as claimed in Claim 24, wherein the calculations to analyse the historical physiological parameters comprise an artificial neural network.
26. A method as claimed in claimed in any one of Claims 23 to 25, wherein the computational algorithm for analysis of the physiological parameters is adapted for monitoring for the predetermined physical condition in real time.
27. A method as claimed in any one of Claims 23 to 26, wherein the communicator comprises a mobile computing device.
28. A method as claimed in any one of Claims 23 to 27, wherein the communicator is integrated with the monitoring device.
29. A method as claimed in any one of Claims 23 to 28, wherein the communicator comprises an analysis module comprising a predetermined computational algorithm for use with the computed coefficients for analysing the sensor data.
30. A method as claimed in Claim 29, further comprising the step of the analysis module raising an alarm state in the event the analysis of the sensor data correlates to a predetermined physiological condition of the user.
31 . A method as claimed in any one of Claims 23 to 30, further comprising the step of the communicator communicating the recorded sensor data to the server device for storage as historical physiological parameters.
32. A method as claimed in Claim 30, further comprising the step of the communicator communicating the recorded sensor data correlating to the predetermined medical condition to the server device for storage as historical physiological parameters.
33. A method as claimed in either Claim 31 or Claim 32, further comprising the step of utilising the stored sensor data for performing further calculations by the server device to recalculate the coefficients for the computational algorithm and transmitting to the communicator the recalculated coefficients for improving the determination of the predetermined medical condition by the analysis module in analysing recorded sensor data.
34. A method as claimed in any one of Claims 7 to 33, further comprising receiving alarm state data correlating to positive identification of the predetermined physiological condition incidences contained in the historical physiological parameters.
35. A method as claimed in Claim 32, further comprising the step of reviewing the sensor data in relation to the identified physiological condition and receiving expert input relating to the positive indication of the predetermined physiological condition; and storing the sensor data and the expert input as historical physiological parameters for use in further recalculations of the coefficients of the predetermined analysis algorithm.
36. A method as claimed in Claim 35, further comprising transmitting the recalculated coefficients to the communicator.
37. A computer program product having a computer readable medium having a computer program recorded therein for providing autonomous health monitoring of a user said computer program product comprising:
computer program code means for communicating with a monitoring device comprising one or more sensors adapted to measure and record sensor data comprising one or more corresponding physiological parameters of a user;
computer program code means for receiving data comprising the sensor data;
computer program code means for receiving a computational algorithm for analysis of the physiological parameters from a server device, the server device adapted to perform calculations to compute the computational algorithm;
computer program code means for performing calculations to analyse the sensor data; and
computer program code means for labelling the sensor data with calculated label data and raising an alarm state when the analysis of the physiological parameters of the user correlates to a monitored physical condition.
38. A computer program product as claimed in Claim 37, wherein the server comprises: computer program code means for receiving data comprising historical physiological parameters;
computer program code means for performing calculations to analyse the historical physiological parameters; and
computer program code means for performing calculations to compute coefficients of a predetermined analysis algorithm for real time analysis of the physiological parameters.
39. A computer program product as claimed in either Claim 37 or Claim 38, further comprising computer program code means for performing calculations to analyse the historical physiological parameters to generate a computational algorithm for labelling the sample data in respect of a predetermined physiological condition.
40. A computer program product as claimed in Claim 39, wherein the calculations to analyse the historical physiological parameters comprise an artificial neural network.
41 . A computer program product as claimed in any one of Claims 37 to 40, further comprising computer program code means for providing a user interface configured to permit a user to interact with the monitoring device and/or the communicator.
42. A computer program product as claimed in Claim 41 , wherein the computer program code means for providing the user interface is further configured to receive input in relation to the labelled sensor data.
43. A computer program product as claimed in Claim 42, further comprising computer program code means for transmitting the received input to the server device for performing calculations to compute coefficients of a predetermined analysis algorithm.
PCT/AU2018/050548 2017-06-01 2018-06-01 Digital health monitoring system WO2018218310A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU2017902097 2017-06-01
AU2017902097A AU2017902097A0 (en) 2017-06-01 Digital health monitoring system

Publications (1)

Publication Number Publication Date
WO2018218310A1 true WO2018218310A1 (en) 2018-12-06

Family

ID=64454269

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2018/050548 WO2018218310A1 (en) 2017-06-01 2018-06-01 Digital health monitoring system

Country Status (1)

Country Link
WO (1) WO2018218310A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113425272A (en) * 2021-08-02 2021-09-24 北京雪扬科技有限公司 Method for analyzing atrial fibrillation and ventricular fibrillation by collecting data through wearable equipment
EP3895602A1 (en) * 2020-04-14 2021-10-20 Biosensors Beyond Borders Ltd Patient data analysis method and system
CN114098752A (en) * 2021-11-09 2022-03-01 上海掌门科技有限公司 Method, device, medium and program product for presenting electrocardiogram data
US11382555B2 (en) 2020-02-12 2022-07-12 Irhythm Technologies, Inc. Non-invasive cardiac monitor and methods of using recorded cardiac data to infer a physiological characteristic of a patient
US11399760B2 (en) 2020-08-06 2022-08-02 Irhythm Technologies, Inc. Wearable device with conductive traces and insulator
WO2022189138A1 (en) * 2021-03-12 2022-09-15 Biotronik Se & Co. Kg Embedded app
US11756684B2 (en) 2014-10-31 2023-09-12 Irhythm Technologies, Inc. Wearable monitor
US11806150B2 (en) 2020-08-06 2023-11-07 Irhythm Technologies, Inc. Wearable device with bridge portion
WO2024082912A1 (en) * 2022-10-20 2024-04-25 华为技术有限公司 Body shape measurement method and electronic device
US11998342B2 (en) 2022-11-10 2024-06-04 Irhythm Technologies, Inc. Methods and systems for processing data via an executable file on a monitor to reduce the dimensionality of the data and encrypting the data being transmitted over the wireless network

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162088A1 (en) * 2005-05-03 2008-07-03 Devaul Richard W Method and system for real-time signal classification
WO2014040175A1 (en) * 2012-09-14 2014-03-20 Interaxon Inc. Systems and methods for collecting, analyzing, and sharing bio-signal and non-bio-signal data
US20160331257A1 (en) * 2015-05-15 2016-11-17 Eric Baumann Electrical Patch for Physiological Measurements

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162088A1 (en) * 2005-05-03 2008-07-03 Devaul Richard W Method and system for real-time signal classification
WO2014040175A1 (en) * 2012-09-14 2014-03-20 Interaxon Inc. Systems and methods for collecting, analyzing, and sharing bio-signal and non-bio-signal data
US20160331257A1 (en) * 2015-05-15 2016-11-17 Eric Baumann Electrical Patch for Physiological Measurements

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11756684B2 (en) 2014-10-31 2023-09-12 Irhythm Technologies, Inc. Wearable monitor
US11497432B2 (en) 2020-02-12 2022-11-15 Irhythm Technologies, Inc. Methods and systems for processing data via an executable file on a monitor to reduce the dimensionality of the data and encrypting the data being transmitted over the wireless
US11382555B2 (en) 2020-02-12 2022-07-12 Irhythm Technologies, Inc. Non-invasive cardiac monitor and methods of using recorded cardiac data to infer a physiological characteristic of a patient
US11925469B2 (en) 2020-02-12 2024-03-12 Irhythm Technologies, Inc. Non-invasive cardiac monitor and methods of using recorded cardiac data to infer a physiological characteristic of a patient
EP3895602A1 (en) * 2020-04-14 2021-10-20 Biosensors Beyond Borders Ltd Patient data analysis method and system
US11399760B2 (en) 2020-08-06 2022-08-02 Irhythm Technologies, Inc. Wearable device with conductive traces and insulator
US11751789B2 (en) 2020-08-06 2023-09-12 Irhythm Technologies, Inc. Wearable device with conductive traces and insulator
US11806150B2 (en) 2020-08-06 2023-11-07 Irhythm Technologies, Inc. Wearable device with bridge portion
WO2022189138A1 (en) * 2021-03-12 2022-09-15 Biotronik Se & Co. Kg Embedded app
CN113425272A (en) * 2021-08-02 2021-09-24 北京雪扬科技有限公司 Method for analyzing atrial fibrillation and ventricular fibrillation by collecting data through wearable equipment
CN113425272B (en) * 2021-08-02 2024-02-20 北京雪扬科技有限公司 Method for analyzing atrial fibrillation through data acquired by wearable equipment
CN114098752A (en) * 2021-11-09 2022-03-01 上海掌门科技有限公司 Method, device, medium and program product for presenting electrocardiogram data
WO2024082912A1 (en) * 2022-10-20 2024-04-25 华为技术有限公司 Body shape measurement method and electronic device
US11998342B2 (en) 2022-11-10 2024-06-04 Irhythm Technologies, Inc. Methods and systems for processing data via an executable file on a monitor to reduce the dimensionality of the data and encrypting the data being transmitted over the wireless network

Similar Documents

Publication Publication Date Title
WO2018218310A1 (en) Digital health monitoring system
Kumari et al. Fog computing for Healthcare 4.0 environment: Opportunities and challenges
Tavera et al. [Retracted] Wearable Wireless Body Area Networks for Medical Applications
Redmond et al. What does big data mean for wearable sensor systems?
US20110288379A1 (en) Body sign dynamically monitoring system
AbdElnapi et al. A survey of internet of things technologies and projects for healthcare services
EP3220301A1 (en) Method and system for collecting and analysing data from health monitoring devices
US20210177343A1 (en) Systems and methods for contactless sleep monitoring
KR102454895B1 (en) Method and system for monitoring continuous biomedical signal
Geman et al. Ubiquitous healthcare system based on the sensors network and android internet of things gateway
AU2019237860A1 (en) Systems and methods for personalized medication therapy management
Qidwai et al. Using casual reasoning for anomaly detection among ECG live data streams in ubiquitous healthcare monitoring systems
Alam et al. BESI: Reliable and heterogeneous sensing and intervention for in-home health applications
Mahmoud et al. A real-time framework for patient monitoring systems based on a wireless body area network
Kang et al. Data processing of physiological sensor data and alarm determination utilising activity recognition
AlShorman et al. A review of remote health monitoring based on internet of things
Triantafyllopoulos et al. Real-time management of multimodal streaming data for monitoring of epileptic patients
Maglogiannis et al. Intelligent health monitoring based on pervasive technologies and cloud computing
Winderbank-Scott et al. A non-invasive wireless monitoring device for children and infants in pre-hospital and acute hospital environments
Paraschiv et al. On the continuous development of IoT in Big Data Era in the context of Remote Healthcare Monitoring & Artificial Intelligence
US20230172467A1 (en) System and method for monitoring a plurality of bio-signals, and a gateway device operable therein
Solar et al. A non invasive, wearable sensor platform for multi-parametric remote monitoring in CHF patients
Hey et al. Recent developments of ambulatory assessment methods
Kwon et al. A remote cardiac monitoring system for preventive care
WO2021127566A1 (en) Devices and methods for measuring physiological parameters

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18810475

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 09/03/2020)

122 Ep: pct application non-entry in european phase

Ref document number: 18810475

Country of ref document: EP

Kind code of ref document: A1