System and method for processing ECG signals

The system addresses limitations of conventional ECG analysis by processing ECG signals with high-frequency energy calculation and feature extraction, enhancing diagnostic accuracy and portability for cardiac disease assessment.

WO2026033528A1PCT designated stage Publication Date: 2026-02-12ANANTHAN ARVIND
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/IN2024/051844
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-09
Filing Date
2024-09-25
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

Conventional treadmill stress tests for cardiac disease diagnosis suffer from human error, low accuracy, limited parameter analysis, inability to track heart rate transitions, and are not suitable for portable use, leading to false positives/negatives and increased medical costs.

Method used

A system and method for processing ECG signals using a receiving module, beat processing module, feature extraction module, and classifier to analyze ECG signals during a stress test, incorporating high-frequency energy calculation and feature extraction to assess cardiac disease risk, with a compact, wearable device capable of real-time data processing.

Benefits of technology

Improves diagnostic accuracy by continuously tracking heart rate parameters, reduces human error, and enables portable, real-time cardiac disease risk assessment, minimizing false positives/negatives and medical costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure IN2024051844_12022026_PF_FP_ABST
    Figure IN2024051844_12022026_PF_FP_ABST
Patent Text Reader

Abstract

A system for processing electrocardiogram (ECG) signals is disclosed. A receiving module receives ECG signals corresponding to at least one channel. The ECG signal for each channel includes a plurality of beats. A beat processing module, for each channel: calculates an instantaneous heart rate (IHR) for each beat; forms a plurality of beat groups from the plurality of beats, each beat group including a set of beats of the plurality of beats; calculates an average heart rate (AHR) for each beat group based upon the IHR of the set of beats; and generates a representative beat for each beat group based upon the set of beats. A feature extraction module extracts, for each channel, a set of features based upon the plurality of representative beats. A classifier generates an indicator indicating a risk associated with a cardiac disease based upon the set of features for the at least one channel.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEM AND METHOD FOR PROCESSING ECG SIGNALSFIELD OF INVENTION

[0001] The present disclosure generally relates to medical devices. More particularly, the present disclosure relates to a system and method for processing electrocardiogram (ECG) signals.BACKGROUND OF THE INVENTION

[0002] Burden of cardiac diseases, for example, coronary artery disease (CAD) or myocardial ischemia, has increased significantly over the last few years. Several invasive (e.g., coronary angiogram) and non-invasive procedures (e.g., cardiac computer tomography) are available for detecting heart abnormalities and presence of cardiac diseases are available.

[0003] A stress test (e.g., a treadmill stress test) is one of the most widely used non-invasive procedure for this purpose due to its lower cost. It is also commonly offered as a part of health check-up packages. During a treadmill stress test, a patient's electrocardiogram (ECG) signals are recorded with a 12-lead ECG device. ECG waveforms are built using the recorded ECG signals. The ECG waveforms are then either printed on paper or displayed on a device. A physician manually analyzes the ECG waveforms to assess the heart condition and identify potential risks associated with a cardiac disease.

[0004] However, the conventional treadmill stress tests suffer from multiple drawbacks. Since the ECG waveforms are manually analyzed assisted by automated measurements, they are prone to human errors. Further, they are not accurate. They exhibit low sensitivity and moderate specificity. For example, in a person with few or no risk factors, such as in younger and healthy population, conventional approaches have a higher likelihood of a false positive. This results in psychological stress in the persons, subjecting them to unnecessary additional tests that exposes them to unnecessary radiation, and increased medical costs for them. Similarly, due to a false negative diagnosis, a patient may not receive the required treatment in a timely manner and may lead to serious consequences.

[0005] Further, current devices analyze only a single parameter of ECG signals, namely ST segment depression, to diagnose a patient's condition. This puts a severe limitation on the usability and accuracy of the current devices for CAD and other cardiovascular diseases. For example, they are not able to assist in diagnosing a disease (or diseases) that do not manifest well into this single parameter. Moreover, the conventional approaches do not continually track the parameter across entire range of heart rates during the treadmill stress test. As a result, they are likely tomiss important transitions in the parameter that typically occur at higher heart rates and / or between junctions of rising and falling heart rates.

[0006] Typical machines to record ECG signals during a treadmill stress test are bulky and are not portable since 12 leads are used. Though several portable devices are available in the market, they simply provide a paper or digital print out of the ECG waveform for analysis by physicians. They are also unable to handle motion artifacts and other noise signals encountered during the treadmill stress test. As a result, they are not suitable for stress tests and are used only for remotely collecting rest ECG data and for detecting certain electrical conduction abnormalities and not for indicating CAD.

[0007] Therefore, there arises a need for an improved system that overcomes challenges associated with conventional systems.SUMMARY OF THE INVENTION

[0008] Particular embodiments of the present disclosure are described herein below with reference to the accompanying drawings; however, it is to be understood that the disclosed embodiments are mere examples of the disclosure, which may be embodied in various forms. Well-known functions or constructions are not described in detail to avoid obscuring the present disclosure in unnecessary detail. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a basis for the claims and as a representative basis for teaching one skilled in the art to variously employ the present disclosure in virtually any appropriately detailed structure.

[0009] The present disclosure relates to a system and a method for processing ECG signals. In an embodiment, the system for processing ECG signals includes a receiving module, executed by a first processor, configured to receive electrocardiogram (ECG) signals corresponding to at least one channel. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session. The system further includes a beat processing module, executed by the first processor, is configured to, for each channel: calculate an instantaneous heart rate (IHR) for each beat of the plurality of beats; form a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; calculate an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group; and generate a representative beat for each beat group based upon the set of beats of the beat group. The system further includes a feature extractionmodule, executed by the first processor, configured to, for each channel, extract a set of features based upon the plurality of representative beats. The system further includes a classifier, executed by the first processor, configured to generate an indicator indicating a risk associated with a cardiac disease based upon the set of features for the at least one channel.

[0010] In an embodiment, the system for processing ECG signals includes a receiving module, executed by a first processor, configured to receive electrocardiogram (ECG) signals corresponding to at least one channel. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session. The system further includes a high frequency (HF) module, executed by the first processor, configured to, for each channel: filter the ECG signal to generate a high-frequency ECG signal; and calculate high frequency (HF) energy for each beat of the plurality of beats based upon the HF ECG signal. The system further includes a beat processing module, executed by the first processor, configured to, for each channel: calculate an instantaneous heart rate (IHR) for each beat of the plurality of beats; form a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; calculate an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group; generate a representative beat for each beat group based upon the set of beats of the beat group; and calculate an average high frequency (AHF) energy for each beat group, wherein the AHF energy for the beat group is a statistical average of HF energy of the set of beats of the beat group. The system further includes a feature extraction module, executed by the first processor, configured to, for each channel, determine a set of high frequency (HF) features for each beat group. The system further includes a classifier, executed by the first processor, configured to generate an indicator indicating a risk associated with a cardiac disease based upon the set of HF features for the at least one channel.

[0011] In an embodiment, the method for processing ECG signals includes obtaining, by a receiving module, electrocardiogram (ECG) signals corresponding to at least one channel. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session. The method further includes calculating, by a beat processing module, for each channel, an instantaneous heart rate (IHR) value for each beat of the plurality of beats. The method further includes forming, by the beat processing module, for each channel, a plurality of beat groups from the plurality of beats, each beat group including a set of beats of the plurality of beats. The method further includes calculating, by the beat processing module, for each channel, an average heart rate (AHR) for each beat group basedupon the IHR of the set of beats of the beat group. The method further includes generating, by the beat processing module, a representative beat for each beat group based upon the set of beats of the beat group. The method further includes extracting, by a feature extraction module, for each channel, a set of features based upon the plurality of representative beats. The method further includes generating, by a classifier, an indicator indicating a risk associated with a cardiac disease based upon the set of features of the at least one channel.

[0012] In an embodiment, the method for processing electrocardiogram (ECG) signals includes receiving, by a receiving module, electrocardiogram (ECG) signals corresponding to at least one channel. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session. The method further includes filtering, by a high frequency (HF) module, the ECG signal corresponding to each channel to generate a corresponding high-frequency (HF) ECG signal. The method further includes calculating, by the HF module (133), for each channel, high frequency (HF) energy for each beat of the plurality of beats based upon the HF ECG signal. The method further includes calculating, by a beat processing module, for each channel, an instantaneous heart rate (IHR) for each beat of the plurality of beats. The method further includes forming, by the beat processing module, for each channel, a plurality of beat groups from the plurality of beats, each beat group including a set of beats of the plurality of beats. The method further includes calculating, by the beat processing module, for each channel, an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group. The method further includes generating, by the beat processing module, for each channel, a representative beat for each beat group based upon the set of beats of the beat group. The method further includes calculating, by the beat processing module, for each channel, an average high frequency (AHF) energy for each beat group, wherein the AHF energy for the beat group is a statistical average of HF energy of the set of beats of the beat group. The method further includes determining, by a feature extraction module, for each channel, a set of high frequency (HF) features for each beat group. The method further includes generating, by a classifier, an indicator indicating a risk associated with a cardiac disease based upon the set of HF features for the at least one channel.BRIEF DESCRIPTION OF DRAWINGS

[0013] Fig. 1 illustrates a schematic block diagram of a system 100 for processing electrocardiogram (ECG) signals, in accordance with an embodiment of the present disclosure.

[0014] Fig. 1A illustrates exemplary placements for electrodes 110a - 110c, in accordance with an embodiment of the present disclosure.

[0015] Fig. IB illustrates an exemplary hysteresis curve for ST segment depression corresponding to a channel, in accordance with an embodiment of the present disclosure.

[0016] Fig. 1C illustrates exemplary distances used for calculating a first T-ratio and a second T- ratio, in accordance with an embodiment of the present disclosure.

[0017] Fig. ID illustrates an exemplary hysteresis curve for a first T-ratio corresponding to a channel for a person without a cardiac disease, in accordance with an embodiment of the present disclosure.

[0018] Fig. IE illustrates an exemplary hysteresis curve for the first T-ratio corresponding to a channel for a person with a cardiac disease, in accordance with an embodiment of the present disclosure.

[0019] Fig. IF illustrates an exemplary hysteresis curve for a sum of a maximum gradient and a minimum gradient of the T-wave corresponding to a channel, in accordance with an embodiment of the present disclosure.

[0020] Fig. 1G illustrates an exemplary hysteresis curve for a ratio of the maximum gradient and the minimum gradient of the T-wave corresponding to a channel, in accordance with an embodiment of the present disclosure.

[0021] Fig. 1H illustrates an exemplary hysteresis curve for a ratio of an area of the first triangle and an area of the second triangle in the T-segment corresponding to a channel for a healthy patient, in accordance with an embodiment of the present disclosure.

[0022] Fig. II illustrates an exemplary hysteresis curve for a ratio of an area of the first triangle and an area of the second triangle in the T-segment corresponding to a channel for a diseased patient, in accordance with an embodiment of the present disclosure.

[0023] Fig. 1J illustrates an exemplary hysteresis curve for AHF energy for a QRS zone corresponding to a channel, in accordance with an embodiment of the present disclosure.

[0024] Fig. 2 depicts a flowchart of an exemplary method 200 for processing ECG signals, in accordance with an embodiment of the present disclosure.

[0025] Fig. 3 depicts a flowchart of an exemplary method 300 for extracting one or more predefined features based upon a plurality of representative beats, in accordance with an embodiment of the present disclosure.

[0026] Fig. 4 a flowchart of an exemplary method 400 for processing ECG signals, in accordance with an embodiment of the present disclosure.DETAILED DESCRIPTION OF DRAWINGS

[0027] Prior to describing the invention in detail, definitions of certain words or phrases used throughout this patent document will be defined: the terms "include" and "comprise", as well as derivatives thereof, mean inclusion without limitation; the term "or" is inclusive, meaning and / or; the phrases "coupled with" and "associated therewith", as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have a property of, or the like; Definitions of certain words and phrases are provided throughout this patent document, and those of ordinary skill in the art will understand that such definitions apply in many, if not most, instances to prior as well as future uses of such defined words and phrases.

[0028] Reference throughout this specification to "one embodiment," "an embodiment," or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, appearances of the phrases "in one embodiment," "in an embodiment," and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment, but mean "one or more but not all embodiments" unless expressly specified otherwise. The terms "including," "comprising," "having," and variations thereof mean "including but not limited to" unless expressly specified otherwise. An enumerated listing of items does not imply that any or all of the items are mutually exclusive and / or mutually inclusive, unless expressly specified otherwise. The terms "a," "an," and "the" also refer to "one or more" unless expressly specified otherwise.

[0029] Although the operations of exemplary embodiments of the disclosed method may be described in a particular, sequential order for convenient presentation, it should be understood that the disclosed embodiments can encompass an order of operations other than the particular, sequential order disclosed. For example, operations described sequentially may in some cases be rearranged or performed concurrently. Further, descriptions and disclosures provided inassociation with one particular embodiment are not limited to that embodiment, and may be applied to any embodiment disclosed herein. Moreover, for the sake of simplicity, the attached figures may not show the various ways in which the disclosed system, method, and apparatus can be used in combination with other systems, methods, and apparatuses.

[0030] The embodiments are described below with reference to block diagrams and / or data flow illustrations of methods, apparatus, systems, and computer program products. It should be understood that each block of the block diagrams and / or data flow illustrations, respectively, may be implemented in part by computer program instructions, e.g., as logical steps or operations executing on a processor in a computing system. These computer program instructions may be loaded onto a computer, such as a special purpose computer or other programmable data processing apparatus to produce a specifically-configured machine, such that the instructions which execute on the computer or other programmable data processing apparatus implement the functions specified in the data flow illustrations or blocks.

[0031] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including computer-readable instructions for implementing the functionality specified in the flowchart block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide operations for implementing the functions specified in the data flow illustrations or blocks.

[0032] Accordingly, blocks of the block diagrams and data flow illustrations support various combinations for performing the specified functions, combinations of operations for performing the specified functions and program instructions for performing the specified functions. It should also be understood that each block of the block diagrams and flowchart illustrations, and combinations of blocks in the block diagrams and flowchart illustrations, can be implemented by special purpose hardware-based computer systems that perform the specified functions or operations, or combinations of special purpose hardware and computer instructions. Further, applications, software programs or computer readable instructions may be referred to as components or modules. Applications may be hardwired or hardcoded in hardware or take theform of software executing on a computing device such that when the software is loaded into and / or executed by the computing device, the computing device becomes an apparatus for practicing the disclosure, or they are available via a web service. Applications may also be downloaded in whole or in part through the use of a software development kit or a toolkit that enables the creation and implementation of the present disclosure. In this specification, these implementations, or any other form that the disclosure may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the disclosure.

[0033] Furthermore, the described features, advantages, and characteristics of the embodiments may be combined in any suitable manner. One skilled in the relevant art will recognize that the embodiments may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments that may not be present in all embodiments. These features and advantages of the embodiments will become more fully apparent from the following description and apportioned claims, or may be learned by the practice of embodiments as set forth hereinafter.

[0034] Referring to figures, Fig. 1 illustrates a block diagram of an exemplary system 100 for processing electrocardiogram (ECG) signals, according to an embodiment of the present disclosure. The system 100 is capable of capturing ECG data of a person. The system 100 processes the ECG data and provides an indication of a risk associated with a cardiac disease for the person. In an embodiment, the cardiac disease is coronary artery disease (CAD) or ischemic heart diseases (IHD). Though the present disclosure has been explained with respect to CAD and IHD, it should be understood though that the teachings of the present disclosure can be applied to other cardiac diseases too and the same is considered within the scope of the present disclosure. In an embodiment, the system 100 includes a data acquisition unit 102, a control unit 104 and a risk assessment unit 106.

[0035] The data acquisition unit 102 is configured to acquire ECG signals corresponding to at least one channel of a person during, for example, a stress test. The stress test may be performed e.g., using a treadmill, stairs, stationary bicycle, rowing machine, stepper, and / or any other stationary equipment typically used for cardio exercises and the like. Preferably, ECG signals corresponding to two or more channels are acquired. The data acquisition unit 102 is electrically coupled with a plurality of electrodes. The plurality of electrodes is configured to detect electrical signalsproduced by the person's heart. In an embodiment, the plurality of electrodes includes three electrodes 110a - 110c. In an embodiment, the electrodes 110a - 110c are set-up to operate in a 3-lead configuration and are used to acquire two channels of ECG data. For example, the electrodes 110a and 110b are used to acquire a first channel and the electrodes 110a and 110c are used to acquire a second channel. In an exemplary set-up, the electrode 110a is placed at or near Right Arm (e.g., near the person's right shoulder), the electrode 110b is placed at or near any of V2, V3 or V4 positions, and the electrode 110c is placed at or near any of V5 or V6 positions as depicted in Fig. 1A, though the electrodes 110a - 110c may be placed at any other suitable locations. The plurality of electrodes may optionally also include an electrode llOd. The electrode llOd may be used as a right leg driver and is suitably placed. The electrodes 110a - 110b may be any known electrodes used for capturing ECG signals. In an embodiment, the electrodes 110a - llOd are electrodes typically used during stress tests. The electrodes 110a - 110c are attachable to a patient's skin using a gel. It should be appreciated that the number of electrodes and the number of channels acquired using the plurality of electrodes described herein are merely exemplary and the plurality of electrodes may include two or more electrodes configured to acquire at least one channel of ECG data without deviating from the scope of the present disclosure.

[0036] In an embodiment, the data acquisition unit 102 includes a signal processing unit 112 and a communication unit 114. The signal processing unit 112 is electrically coupled to the electrodes 110a - llOd using suitable cables. The signal processing unit 112 is configured to sample the electrical signals acquired by a pair of electrodes corresponding to each channel (e.g., electrodes 110a - 110b for the first channel and electrodes 110a - 110c for the second channel) at a desired pre-defined sampling frequency and convert them into corresponding digital signals. In an embodiment, the sampling frequency may range from about 150 Hz to about 2100 Hz, preferably, from about 1600 Hz to about 2400 Hz. This allows the data acquisition unit 102 to capture ECG signals at a higher resolution, which helps in identifying precisely various fiduciary markers and features in the ECG signals and extracting higher-dimensional features more accurately, thereby improving accuracy and sensitivity of the system 100.

[0037] The signal processing unit 112 may also be configured to remove powerline noise and / or common mode interference from the electrical signals captured by the electrodes 110a - 110c by injecting a signal through the electrode llOd. The signal processing unit 112 is configured to output ECG signals corresponding to the first channel and the second channel generated basedupon the signals captured by the electrodes 110a - 110c (i.e., based the sample electrical signals). The signal processing unit 112 may include suitable software and / or hardware, e.g., sampling circuits, analog to digital converters, signal conditioning circuits, filters (analog and / or digital), common mode interference cancellation circuit, a microcontroller, etc.

[0038] The communication unit 114 is configured to send the ECG signals corresponding to the at least one channel (e.g., the first channel and the second channel) to the control unit 104 or a module thereof (or in some embodiments, to the risk assessment unit 106 or a module thereof) over a first communication interface. The first communication interface may be a wired (e.g., USB, Ethernet, LAN) or a wireless (e.g., Bluetooth, Wi-Fi) communication interface. The communication unit 114 includes suitable hardware and / or software for exchanging data with the control unit 104 over the first communication interface. In an example implementation, the first communication interface is a communication interface associated with a Bluetooth network.

[0039] In an embodiment, the data acquisition unit 102 may be designed to have a compact size (e.g., similar to a matchbox) and is wearable on a body of a person. For example, the data acquisition unit 102 may be enclosed in a casing and a strap is attached to the casing. The strap may be worn over the person's torso. Thus, in an embodiment, the data acquisition unit 102 may be a wearable device. Wearability of the data acquisition unit 102 allows it to be portable and used at any desired location, e.g., a home, a gym, a hospital, etc. as needed.

[0040] The control unit 104 is communicatively coupled to the data acquisition unit 102 and the risk assessment unit 106. The control unit 104 receives the ECG signals from the data acquisition unit 102 and sends the ECG signals to the risk assessment unit 106. In an embodiment, the control unit 104 includes a data transfer module 122 and a session control module 124.

[0041] The session control module 124 controls various aspects of a stress test session (hereinafter, interchangeably referred to as a session). In an embodiment, the session control module 124 is configured obtain details of the person undergoing the stress test (e.g., a name, an age, a date of birth, a gender etc.), and / or details of the session (e.g., a session identifier, a date on which the session is conducted). The session control module 124 may provide a user interface enabling a user (e.g., a doctor, a medical technician, or a person undergoing the stress test) to enter such details.

[0042] The session control module 124 may also be configured to set one or more parameters associated with acquiring the ECG signals. The one or more parameters include, for example, thesampling frequency, signal resolution (e.g., number of bits used to capture the amplitude of ECG signals), signal transmission strength, and the like. The session control module 124 may send the one or more parameters to the data acquisition unit 102, for example, before initiating the session. The session control module 124 may also be configured to initiate the session by sending a control signal to the data acquisition unit 102 to start acquiring the ECG signal. The session control module 124 may optionally be communicatively coupled to a controller of a treadmill and may send a control signal to the controller of the treadmill to start the treadmill and / or control the speed of the treadmill during the session as needed.

[0043] The data transfer module 122 is communicatively coupled to the communication unit 114 via the first communication interface and is able exchange data with the data acquisition unit 102, for example, under the control of the session control module 124. The data transfer module 122 is configured to receive the ECG signals associated with the at least one channel (e.g., the first channel and the second channel) from the communication unit 114.

[0044] The data transfer module 122 is communicatively coupled to the risk assessment unit 106 (or one or more modules thereof) via a second communication interface and is able to exchange data with the risk assessment unit 106. The second communication interface may be an interface associated with a data communication network. The data communication network may be a wired network, a wireless network or combinations thereof. Examples of the data communication network include, without limitation, Wi-Fi, Local Area Network (LAN), Wide Area Network (WAN), cellular network (e.g., 3G, 4G, 5G), Internet, and the like. The first communication interface and the second communication interface may be the same or different. In an embodiment, the data transfer module 122 is configured to send the ECG signals to the risk assessment unit 106 over the second communication interface, for example, under the control of the session control module 124. In an embodiment, the data transfer module 122 stores the ECG signals for the session and sends the ECG signals to the risk assessment unit 106 once the session is complete. This approach is suitable when the second communication interface is not reliable or has low bandwidth. In another embodiment, the data transfer module 122 sends the ECG signals to the risk assessment unit 106 periodically, for example, after every pre-defined time interval. The data transfer module 122 may temporarily save the ECG signals corresponding to the pre-defined time interval. In yet another embodiment, the data transfer module 122 sends the ECG signals to the risk assessment unit 106 in substantially real-time. This approach may be followed when the second communication interface is reliable and has sufficiently highbandwidth. The data transfer module 122 may also send the details of the person and / or details of the session to the risk assessment unit 106. In an embodiment, the data transfer module 122 may be configured to convert the ECG signals and metadata including the details of the person and / or of the session into a human-readable format (e.g., a CSV format) or a non-human readable format (e.g., a binary format). Optionally, or in addition, the ECG signals and / or the metadata may be encrypted before transmitting it to the risk assessment unit 106. This protects data integrity and security.

[0045] The session control module 124 may control the data transfer module 122 to send the ECG signals to the risk assessment unit 106. The session control module 124 may be configured to obtain the ECG signals from the data transfer module 122 and display the ECG signals to the user.

[0046] In an embodiment, the data transfer module 122 and the session control module 124 are stored in a second memory (not shown) of a computing device 108. The second memory may be a read only memory, a flash memory, a random-access memory, a hard disk, etc. or any suitable memory capable of storing machine readable instructions. In an embodiment, the data transfer module 122 and the session control module 124 are executed by a second processor (not shown) of the computing device 108. The second processor may be a microprocessor, a microcontroller, an application specific integrated circuit, etc. or any processing device capable of executing machine-readable instructions. In an example implementation, the control unit 104 (including the data transfer module 122 and the session control module 124) is implemented as an application residing on the computing device 108. Examples of the computing device 108 include, without limitation, a laptop, a mobile phone, a personal computer, a wearable device (e.g., a smart watch), a personal digital assistant (PDA), a tablet, a control device coupled to the treadmill used for the stress test, etc. The computing device 108 may include or may be interfaced with suitable hardware and / or software for exchanging data over the first communication interface and the second communication interface, which may be controlled by the data transfer module 122 for receiving and sending data (e.g., the ECG signals) associated with the session. The computing device 108 may include or may be interfaced with a display (not shown) for displaying data associated with the session and / or present one or more user interfaces enabling the user to provide input to the session control module 124.

[0047] The risk assessment unit 106 is communicatively coupled to the control unit 104 via the second communication interface. The risk assessment unit 106 obtains the ECG signals of aperson and determines a risk associated with the presence of a cardiac disease in the person. In an embodiment, the risk assessment unit 106 includes a receiving module 132, a high-frequency (HF) module 133, a beat processing module 134, a feature extraction module 136, a classifier 138, a reporting module 140, and a database 142.

[0048] In an embodiment, the receiving module 132 is configured to receive the ECG signals of the person corresponding to the session from the data transfer module 122 (in other words, the data transfer module 122 transmits the ECG signals to the receiving module 132 over the second communication interface). The ECG signals correspond to the at least one channel (e.g., the first channel and the second channel) and are acquired during the session. The ECG signal for each channel includes a plurality of beats. The receiving module 132 may also receive the details of the person and / or the session. The receiving module 132 saves the ECG signals for the at least one channel (e.g., the first channel and the second channel), the details of the person and / or the details of the session in the database 142. It should be understood that the receiving module 132 may receive the ECG signals and / or the details about the session and / or the person directly from the data acquisition unit 102 or any module thereof.

[0049] In an embodiment, the HF module 133 is configured to filter the ECG signals to generate a high-frequency ECG signal (hereinafter, HF ECG signal) for each channel of the at least one channel. The HF ECG signal includes high-frequency components of the ECG signal. The HF module 133 may apply a high pass filter having a suitable cut-off frequency (e.g., above 500 Hz) or a bandpass filter having a suitable passband frequency range (e.g., from about 150 Hz to about 450 Hz).

[0050] For each channel, the HF module 133 is configured to calculate high frequency (HF) energy for each beat of the plurality of beats. In an embodiment, the HF module 133 identifies a QRS zone for each beat of the plurality of beats using any known or custom techniques and determines each beat based upon the QRS zone. The HF module 133 may also determine a non- QRS zone for the beat accordingly. Once each beat is located, the HF module 133 calculates the HF energy for the beat. In an embodiment, the HF module 133 calculates the HF energy for at least the QRS zone. In another embodiment, the HF module 133 calculates the HF energy for both the QRS zone and the non-QRS zone, separately. The HF energy of the QRS zone may be considered as the HF energy for the beat. The calculation of HF energy may be done before denoising the ECG signals.

[0051] In an embodiment, the beat processing module 134 is configured to obtain the ECG signals for each channel of the at least one channel. The beat processing module 134 may obtain the ECG signals from any of the receiving module 132, the data transfer module 122, the database 142 orthe data acquisition unit 102. The beat processing module 134 is communicatively coupled to one or more of: the receiving module 132, the database 142, the data transfer module 122 and the communication unit 114 of the data acquisition unit 102.

[0052] In an embodiment, the beat processing module 134 is configured to remove noise and / or artifacts from the ECG signal of each channel using any suitable techniques. The noise may include high-frequency noise. In an example implementation, the beat processing module 134 applies a discrete wavelet transform (DWT) filter to remove the high frequency noise. The artifacts, e.g., motion artifacts, breathing artifacts, and the like, may be manifested as low frequency trends. In an example implementation, the beat processing module 134 removes the artifacts using a multi-bank DWT filter (e.g., a maximal overlap DWT filter).

[0053] In an embodiment, for each channel, the beat processing module 134 is configured to calculate an instantaneous heart rate (IHR) for each beat of the plurality of beats. According to an embodiment, the beat processing module 134 is configured to identify a QRS zone for each beat of the plurality of beats using any known or custom techniques. The beat processing module 134 is configured to determine a location of the R peak for the QRS zone for each beat. The beat processing module 134 is configured to calculate the IHR associated with each beat based at least upon the location of the R peak for that beat. For example, the beat processing module 134 calculates the IHR associated with a given beat based upon a distance between the R peak of that beat and the R peak of the previous beat or the next beat. In an embodiment, the beat processing module 134 is configured to apply, for example, a moving average filter, on the IHR values thus calculated to generate a smoothed version of the IHR (hereinafter, smoothed IHR). This removes fluctuations in the IHR due to the presence of any residual noise.

[0054] The beat processing module 134 may be configured to detect one or more outlier beats using any known techniques, for example, moving average filter, median filter, Hampel filter, etc. The beat processing module 134 may exclude the outlier beats when calculating the IHR associated with the plurality of beats. The beat processing module 134 may be further configured to correct the one or more outlier beats using any known techniques. The beat processing module 134 may consider the corrected beats when calculating the IHR associated with the plurality of beats.

[0055] In an embodiment, for each channel, the beat processing module 134 is configured to form a plurality of beat groups from the plurality of beats of the ECG signal. Each beat group of the plurality of beat groups includes a set of beats of the plurality of beats. Each set of beats may include a pre-defined number (say, 5 - 50) of consecutive beats. Any two adjacent beat groups may have an overlapping or non-overlapping set of beats.

[0056] According to an embodiment, for each channel, the beat processing module 134 is configured to calculate an average heart rate (AHR) for each beat group based upon the IHR of the set of beats for the beat group. In an embodiment, the AHR for a beat group is a statistical average of the IHR (or the smoothed IHR) associated with the set of beats in the beat group. The statistical average may be a mean, a median, a mode, a weighted average and the like.

[0057] The beat processing module 134 is configured to generate, for each channel, a representative beat for each beat group based the set beats corresponding to the beat group. In an embodiment, the beat processing module 134 is configured to determine a location of the R peak (e.g., a location of the center of the R peak) for each of the set of beats of a beat group based upon a stochastic average of the set of beats. For example, the beat processing module 134 is configured to calculate a cross-correlation of a given beat with other beats of the set of beats to determine the location of the R peak for the beat. The location of the R peak may be represented in terms of the number of samples. The beat processing module 134 is configured to align the set of beats with respect to the location of the corresponding R peak, for example, by shifting each beat by the number of samples as per the location of the R peak. The beat processing module 134 is configured to apply a temporal averaging (or beat averaging) filter, e.g., a mean or a median filter, across the aligned set of beats to generate the representative beat for beat group. The representative beat for the beat group is associated with the corresponding AHR of the beat group.

[0058] According to an embodiment, for each channel, the beat processing module 134 may be configured to associate each of the plurality of representative beats with a zone of one or more zones based upon the corresponding AHR. The one or more zones may correspond to various stages of the stress test session. For example, the one or more zones may include a rising zone, a peak zone and a recovery zone. The rising zone, the peak zone and the recovery zone may correspond to stages of the session where the person's heart rate rises towards the peak heart rate, remains at or around the peak heart rate and falls from the peak heart rate, respectively. The peak heart rate (hereinafter represented as AHR_peak) may be the maximum AHR duringthe session. In an embodiment, the beat processing module 134 may associate representative beats having the AHR values within a pre-defined range from the AHR_peak (e.g., AHR values between the AHR_peak-l and AHR_peak) with the peak zone. Further, the beat processing module 134 may associate representative beats occurring prior to the peak zone with the rising zone and representative beats occurring after the peak zone with the recovery zone. The beat processing module 134 may store the plurality of representative beats, the corresponding AHR and the corresponding zone in the database 142. The beat processing module 134 may send plurality of representative beats, the corresponding AHR and the corresponding zone to the session control module 124 periodically or in substantially real-time. The session control module 124 may display the AHR and / or the corresponding zone to the user. Further, based upon such information, the session control module 124 may provide a guidance to the user regarding whether to continue increasing the exercising load or stop exercising to get into a recovery stage. In addition, based upon such information, the session control module 124 may send a control signal to the controller of the treadmill to increase or decrease its speed and / or incline, or stop the treadmill.

[0059] According to an embodiment, for each channel, the beat processing module 134 is configured to calculate an average HF energy (hereinafter, AHF energy) for each beat group based upon the HF energy of the set of beats of the beat group. For example, the beat processing module 134 calculates a statistical average of HF energy for each beat of the set of beats of the beat group. The beat processing module 134 may calculate the AHF energy at least for the QRS zone (for example, for the QRS zone only or for both the QRS zone and the non-QRS zone separately. The AHF energy for the QRS zone is a statistical average of the HF energy of the QRS zone of the set of beats of the beat group. Similarly, the AHF energy for the non-QRS zone is a statistical average of the HF energy of the non-QRS zone of the set of beats of the beat group. In an embodiment, the AHF energy for the QRS zone may be considered as the AHF energy for the beat group. Further, the beat processing module 134 associates the AHF energy for each beat group, the AHF energy for the QRS zone and the AHF energy for the non-QRS zone with the corresponding AHR and the representative beat of that beat group. The AHF energy values may also be associated with the or more zones based upon the corresponding AHR in a similar manner as described earlier.

[0060] According to an embodiment, the feature extraction module 136 is configured to extract a set of features for each channel from the respective plurality of representative beats. The setof features include one or more features. More preferably, the set of features includes two or more features. Even more preferably, the set of features includes four or more features. The use of multiple features results in redundancy, increases the sensitivity and specificity of the system 100 and improves the overall outcome. The feature extraction module 136 may be configured to generate a feature vector based upon the set of features for the at least one channel.

[0061] In an embodiment, the set of features includes one or more pre-defined features. The feature extraction module 136 is configured to extract the one or more pre-defined features as follows. In an embodiment, for each pre-defined feature, the feature extraction module 136 is configured to extract a set of attributes at each AHR based at least upon the corresponding representative beat. The set of attributes correspond to the pre-defined feature. The set of attributes may correspond to morphological features of the representative beat. The feature extraction module 136 may extract the set of attributes from one or more of: the PR segment, the QRS segment and the ST segment of the representative beat. In an embodiment, the set of attributes includes one or more of: a location and a corresponding value of a point where the QRS segment begins (hereinafter, referred to as an l-point), a location and a corresponding value of the J-point, a location of the T peak, a location of the maximum slope of a rising portion of the QRS wave and / or the T-wave and a location of the maximum slope of a falling portion of the QRS wave and / or the T-wave.

[0062] In an embodiment, the feature extraction module 136 may be configured to extract the set of attributes at each AHR from each representative beat individually. In another embodiment, the feature extraction module 136 may be configured to extract the set of attributes based upon the plurality of representative beats as follows. The feature extraction module 136 is configured to generate a 3D surface based upon the plurality of representative beats across the plurality of AHR. The feature extraction module 136 is configured to extract the set of attributes for each AHR from the 3D surface using a 3D surface processing technique. In this approach, if a point in any representative beats is missing or corrupted by noise, the feature extraction module 136 determines its value by extrapolating values of a pre-defined number of points surrounding this point on the 3D surface. Consequently, this approach provides more accurate attributes even in the presence of noise in the representative beats and where attribute extraction for individual representative beats fails. In an embodiment, the feature extraction module 136 uses a surface tracking gradient algorithm. In this case, the feature extraction module 136 is configured to detect a pre-defined point (e.g., the maximum and / or minimum point) on the 3D surface for aregion of interest (e.g., in or around the region of interest) corresponding to a segment of the beat, such as the QRS, the ST, or the T segment and track one or more fiduciary points of interest (e.g., the peak of the T-segment, the peak of the P segment, maximum rising slope, etc.) across the 3D surface within that segment. The feature extraction module 136 is configured to extract the tracked points and determine the corresponding attribute.

[0063] The feature extraction module 136 is configured to calculate a value of each pre-defined feature for the representative beat corresponding to at least a subset of AHR based upon the set of attributes. The one or more pre-defined features may be calculated for all or a subset of AHR in the one or more zones. In an embodiment, the one or more pre-defined features are chosen such that the relationship between the values of a pre-defined feature of the one or more predefined features and the corresponding AHR values defines a hysteresis curve including two segments, wherein the values of the pre-defined feature for rising AHR values to the AHR_peak (e.g., during the rising zone) form one segment (hereinafter, a first segment) of the hysteresis curve and the values of the pre-defined feature for falling AHR values from the AHR_peak (e.g., during the recovery zone) form another segment (hereinafter, a second segment) of the hysteresis curve. Characteristics of the intersection of the first segment and the second segment or a turn of the first segment to the second segment at or around the AHR_peak are indicative of a risk associated with a cardiac disease. According to an embodiment, the one or more predefined features includes at least one of: ST segment depression, a first T-ratio, a second T-ratio, a sum of the maximum gradient and the minimum gradient of the T wave (hereinafter, referred to as an RF sum), a ratio of the maximum gradient and the minimum gradient of the T-wave (hereinafter, referred to as an RF ratio), a ratio of areas of a first triangle and a second triangle in the T wave. The one or more pre-defined features may also include one or more additional features.

[0064] In an embodiment, the ST segment depression is defined as a difference in signal values at the l-point and the J-point. A direction of the turn of the first segment of the ST segment depression to the second segment of the ST segment depression at the AHR_peak is indicative of the presence or absence of a cardiac disease with a much higher degree of accuracy as compared to existing approaches. An exemplary hysteresis curve for the ST segment depression corresponding to the first channel is illustrated in Fig. IB, where 161a represents the first segment and 161b represents the second segment.

[0065] In an embodiment, the first T-ratio is defined as a ratio of a distance between the T-peak and falling edge (corresponding to maximum falling slope) of the T-wave to a distance between the start of the T-wave and the falling edge of the T-wave. In an embodiment, the second T-ratio is defined as a ratio of the distance between the start of the T-wave and the falling edge of the T-wave to a distance between the R-peak and the start of the T-wave. Fig. 1C depicts an exemplary representative beat and illustrates various distances used for calculating the first T- ratio and the second T-ratio. For example, as shown, bl denotes the distance between the start of the T-wave to the T-peak, b2 denotes the distance between the start of the T-wave to the T- peak and b3 denotes the distance between the R-peak and the T-peak. In this case, the first T- ratio and the second T-ratio are calculated according to the equations below. b

[0066] First T-ratio = -L Jb-i +bz

[0067] Second T-ratio =bl+bzb3-b

[0068] It has been observed the first T-ratio and the second T-ratio together exhibit high sensitivity and specificity. For example, when both the first T-ratio and the second T-ratio indicate a likelihood of the presence of a cardiac disease, it very highly likely that the person has a cardiac disease. Similarly, when both the first T-ratio and the second T-ratio indicate a likelihood of absence of a cardiac disease, it is very likely that the person does not have a cardiac disease. An exemplary hysteresis curve for the first T-ratio corresponding to the second channel for a person without a cardiac disease is illustrated in Fig. ID, where 163a represents the first segment and 163b represents the second segment. An exemplary hysteresis curve for the first T-ratio corresponding to the first channel for a person having a cardiac disease is illustrated in Fig. IE, where 165a represents the first segment and 165b represents the second segment.

[0069] RF plus is defined as the sum of the maximum gradient and the minimum gradient of the T wave. The maximum gradient is the maximum rising slope (denoted by edge 162a in Fig. 1C) of the T wave and the minimum gradient is the maximum falling slope (denoted by an edge 162b in Fig. 1C) of the T wave. An exemplary hysteresis curve for the RF sum corresponding to the first channel is illustrated in Fig. IF, where 167a represents the first segment and 167b represents the second segment.

[0070] RF ratio is defined as a ratio of the maximum gradient and the minimum gradient of the T-wave. An exemplary hysteresis curve for the RF ratio corresponding to the first channel isillustrated in Fig. 1G, where 169a represents the first segment and 169b represents the second segment.

[0071] According to an embodiment, the first triangle in the T-wave wave is defined by points A, B and D (as depicted in Fig. 1C) and the second triangle in the T wave is defined by points B, C and D (as depicted in Fig. 1C). The point A denotes an intersection point of the rising edge having the highest slope with the baseline (denoted by G in Fig. 1C) of the representative beat, the point B represents the intersection point of the rising edge having the highest slope with the falling edge having the highest slope, the point C represent the intersection of the falling edge having the highest slope with the baseline G and the point D represents the location of the peak of the T-wave. An exemplary hysteresis curve for this pre-defined feature corresponding to the first channel for a healthy person is illustrated in Fig. 1H, where 171a represents the first segment and 171b represents the second segment. An exemplary hysteresis curve for this pre-defined feature corresponding to the first channel for a diseased person is illustrated in Fig. II, where 173a represents the first segment and 173b represents the second segment.

[0072] According to an embodiment, the feature extraction module 136 may be configured to generate the feature vector based upon a pre-defined number of values for each pre-defined feature of the one or more pre-defined features extracted for the at least one channel. The predefined number of values may be taken from each of the first segment and the second segment of the hysteresis of the pre-defined feature. In an example implementation, between four to seven values around the peak heart rate are taken from each of the first segment from the rising zone and the second segment from the recovery zone of the hysteresis curve of each pre-defined feature to generate the feature vector. In another example implementation, the feature vector may be generated based upon all values of each pre-defined feature for the at least one channel across the entire session.

[0073] In an embodiment, the feature extraction module 136 includes an artificial neural network 152 configured to extract one or more features of the set of features based at least upon the plurality of representative beats for each channel. This may be done instead of, or in addition to, extracting the one or more pre-defined features as explained earlier. The artificial neural network 152 may be communicatively coupled to the beat processing module 134 and is configured to receive the plurality of representative beats and the corresponding AHR as input from the beat processing module 134 and generate a feature vector including the one or more features as output. The artificial neural network 152 may be trained using a set of trainingrepresentative beats and the associated AHR. A model implementation by the artificial neural network 152 learns to identify hidden (or non-visible) patterns within the plurality of representative beats and their relationship with the likelihood of the presence / absence of a cardiac disease, and generate the one or more features as output. The artificial neural network 152 may use any of supervised, un-supervised, semi-supervised or reinforced learning technique. The artificial neural network 152 may be, without limitation, a deep neural network, a convolutional neural network, a recurrent neural network, scattering transform network, etc. or combinations thereof. In an embodiment, the feature extraction module 136 may include multiple instances of the artificial neural network 152, with one instance of the artificial neural network 152 corresponding to one channel of the at least one channel and extracting the one or more features based upon the plurality of representative beats corresponding to that channel.

[0074] According to an embodiment, for each channel, the feature extraction module 136 is configured to determine a set of HF features for each beat group at each AHR. In an embodiment, the set of HF features includes one or more of: the AHF energy for the beat, the AHF energy for the QRS zone and a ratio of the AHF energy for the QRS zone and the AHF energy for the non- QRS zone. The values of an HF feature of the set of HF features and the corresponding AHR values defines a hysteresis curve including two segments, wherein the values of the HF feature for rising AHR values to the AHR_peak (e.g., during the rising zone) form one segment (hereinafter, a first segment) of the hysteresis curve and the values of the HF feature for falling AHR values from the AHR_peak (e.g., during the recovery zone) form another segment (hereinafter, a second segment) of the hysteresis curve. It has been observed that, in healthy persons, the AHF energy for the QRS zone increase in the rising phase and falls in the recovery phase, whereas, in a person with a cardiac disease, the AHF energy for the QRS zone decreases during the rising phase and increases during the recovery phase. Thus, this feature exhibits high sensitivity as someone with substantial coronary artery disease that has affected their heart muscles (infarcts), either temporarily or permanently, will have impaired high frequency conduction characteristics in their heart muscles, which manifests as abnormal HF energy hysteresis curves. An exemplary hysteresis curve for the AHF energy (herein, represented as a percentage change from an AHF energy corresponding to a rest heart rate) for the QRS zone corresponding to the first channel is illustrated in Fig. 1J, where 175a represents the first segment and 175b represents the second segment.

[0075] The feature extraction module 136 may be configured to generate a feature vector based upon the set of HF features of the at least one channel in a similar manner as described earlier. In an embodiment, the feature vector is generated based upon a pre-defined number (e.g., 4 - 7 values in each of the first segment and the second segment around the peak heart rate) of values for the set of HF features for the at least one channel. In another embodiment, the feature vector may be generated based upon all values of the set of HF features for the at least one channel across the entire session.

[0076] In various embodiments, the feature extraction module 136 may extract only the set of features and generate the corresponding feature vector. In another embodiment, the feature extraction module 136 may extract only the set of HF features and generate the corresponding feature vector. In yet another embodiment, the feature extraction module 136 may extract the set of features as well as the set of HF features and generate the corresponding feature vector.

[0077] The classifier 138 is communicatively coupled to the feature extraction module 136 and is configured to generate an indicator indicative of a risk associated with a cardiac disease in the person based upon the set of features, or the set of HF features or both for the at least one channel. Respective feature vectors may be provided as an input to the classifier 138. In an embodiment, the indicator indicates a risk factor (or a likelihood) of the person having a cardiac disease. The indicator may be numerical (e.g., a percentage value indicating a likelihood of the presence of a cardiac disease), textual (e.g., High, Medium, or Low indicating a high, medium, and a low likelihood, respectively, of the presence of a cardiac disease), visual (e.g., it may be color coded as Red, Orange or Green indicating a high, medium and low risk, respectively, of the present of a cardiac disease) or any combinations thereof. It should be appreciated that the indicator may take any other form that indicates the presence of a cardiac disease without deviating from the scope of the present disclosure.

[0078] In an embodiment, the classifier 138 is a machine learning-based classifier such as, without limitation, support vector machine, decision tree, random forest, long short-term memory network, logistic regression and the like. The classifier 138 is trained during a test phase with the help of a clinically validated test dataset. The set of features are extracted for the test dataset in a similar manner as explained earlier. The test dataset includes ECG signals for a plurality of persons acquired during one or more stress test sessions. The plurality of persons includes a plurality of healthy persons and a plurality of persons having a cardiac disease at different stages. The plurality of persons may have a suitable distribution profile with respect toage, gender, lifestyle, etc. The test dataset may be annotated using known presence / absence of (and / or risk factor associated with) a cardiac disease in the plurality of persons as may be determined by qualified cardiologist considering the results of the reference tests for the persons such as Cardiac CT Angiogram (CTCA) or Percutaneous transluminal coronary angioplasty (PTCA), and / or the person's medical history.

[0079] Using features extracted from more than one channels to generate the indicator provides a more unified and accurate risk score for the entire session. Another advantage of using more than one channels for this purpose is that it provides a certain amount of redundancy in case one channel is adversely affected by noise and artifacts as compared to other channel(s). Further, some features may be manifested more clearly in one channel vs. other channel(s). Consequently, the overall specificity and sensitivity of the system 100 is improved by acquiring and processing one than one channel of ECG signals.

[0080] In an embodiment, the risk assessment unit 106 may include a reporting module 140. The reporting module 140 may be communicatively coupled to the beat processing module 134, the classifier 138 and the database 142. The reporting module 140 may be configured to generate a report for the session of the person and may save the report in the database 142. The report may include the details of the person, the details of the session, the indicator indicative of the presence of a cardiac disease. The report may also include the ECG signals for the session, a time sequence including the plurality of representative beats arranged as per their time instant, the plurality of AHR, the hysteresis plots corresponding to the one or more pre-defined features. The reporting module 140 may be configured to share the report with the person, the physician, and / or a healthcare institute (e.g., a hospital) in a suitable manner as per relevant guidelines or make the report accessible to them through an access-controlled website and / or a mobile application. The reporting module 140 may send the report to the session control module 124, which may then display the report on the display.

[0081] In an embodiment, the database 142 is configured to store various data obtained, processed and / or generated by the risk assessment unit 106 or modules thereof. For example, the database 142 may store the details of the person, the details of the session, the ECG signals acquired during the session, the plurality of beats, the associated IHR, the plurality of representative beats, the associated AHR, the hysteresis plot of the one or more pre-defined features, the indicator, etc. The database 142 may be a hierarchical database, a relationaldatabase, a non-relational database, an object-oriented database, a vector database, etc., or any combinations thereof. In an embodiment, the database 142 is a cloud database.

[0082] In an embodiment, the risk assessment unit 106 includes a first memory 144. In an embodiment, the receiving module 132, the HF module 133, the beat processing module 134, the feature extraction module 136, the classifier 138 and the reporting module 140 are stored in the first memory 144. The first memory 144 may be a read only memory, a random-access memory, a flash memory, a hard disk, or any other suitable computer readable data storage medium.

[0083] In an embodiment, the risk assessment unit 106 includes a first processor 146. In an embodiment, the receiving module 132, the HF module 133, the beat processing module 134, the feature extraction module 136, the classifier 138 and the reporting module 140 are executed by the first processor 146. The first processor 146 may be a personal computer, an application specific processor, a general-purpose processor, a central processing unit (CPU), or any other suitable processing unit capable of executing computer readable instructions.

[0084] In an example implementation, the risk assessment unit 106 is deployed on a server. The server may reside locally (e.g., within the same premises where the stress test is administered to the person) or may be a remote server accessible over a network (e.g., a cloud server).

[0085] Though various modules of the data acquisition unit 102, the control unit 104 and the risk assessment unit 106 have been illustrated as part of a respective unit, it should not be considered as limiting. In various embodiments, one or more of these modules may be suitably deployed as part of a different unit without deviating from the scope of the present disclosure. For example, the data acquisition unit 102 may include the session control module 124 and / or the beat processing module 134. In another example, the control unit 104 may include one or more of: the HF module 133, the beat processing module 134, the feature extraction module 136, the classifier 138 and the reporting module 140. In yet another example scenario, the risk assessment unit 106 includes the session control module 124 and the communication unit 114 may send the ECG data to the receiving module 132 directly. Various other deployment scenarios are also contemplated herein.

[0086] Fig. 2 illustrates a flowchart of a method 200 for processing ECG signals, according to an embodiment of the present disclosure.

[0087] At step 202, ECG signals corresponding to the at least one channel are obtained. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session and may be captured by corresponding two electrodes. For example, the ECG signal corresponding to the first channel may be captured by the electrodes 110a and 110b. According to an embodiment, the receiving module 132 obtains the ECG signals from any of the data transfer module 122, the database 142 or from the data acquisition unit 102.

[0088] At step 204, an instantaneous heart rate (IHR) is calculated for each beat the plurality of beats of the ECG signal of each channel, for example, by the beat processing module 134. An embodiment for determining the IHR for the plurality of beats is explained below.

[0089] A QRS zone is identified for each beat of the plurality of beats using any known or custom techniques and a location of the R peak for each QRS zone is determined. In an embodiment, noise and / or artifacts may be removed from the ECG signal using any suitable techniques before identifying the QRS zone for the plurality of beats.

[0090] The IHR for each beat is calculated based at least upon the location of the R peak for that beat. For example, a distance between the R peak of a given beat and the R peak of the next beat and / or the previous beat is determined and the IHR is calculated based upon this distance. In an embodiment, the IHR values thus calculated may be further smoothed by applying, for example, a moving average filter.

[0091] According to an embodiment, one or more outlier beats may be detected using any known techniques, for example, moving average filter, median filter, Hampel filter, etc. The outlier beats may be excluded before calculating the IHR for each beat of the plurality of beats. Further, in an embodiment, the one or more outlier beats may be corrected using any known techniques. The corrected beats may then be considered while calculating the IHR.

[0092] At step 206, a plurality of beat groups is formed based upon the plurality of beats for each channel, for example, by the beat processing module 134. In an embodiment, the plurality of beats may be grouped into the plurality of beat groups depending upon their proximity. Each beat group of the plurality of beat groups includes a set of beats of the plurality of beats. Each set of beats may include a pre-defined number of consecutive beats. In an embodiment, any two adjacent beat groups have an overlapping set of beats. It should be appreciated though that any two adjacent beat groups may have non-overlapping set of beats.

[0093] At step 208, an average heart rate (AHR) is calculated for each beat group of the plurality of beat groups based upon the IHR of the set of beats of the beat group, for example, by the beat processing module 134. In an embodiment, the AHR for each beat group of the plurality of beat groups is calculated as a statistical average of the IHR (or the smoothed IHR) of the set of beats in the beat group.

[0094] At step 210, a representative beat is generated for each beat group of each channel based the set of beats of the beat group. In an embodiment, the beat processing module 134 generates the representative beats. In an embodiment, the representative beat corresponding to each beat group is generated based at upon the set of beats of the beat group as follows. A location of the R peak (e.g., a location of the center of the R peak) is determined for each of the set of beats by calculating a stochastic and temporal average of the set of beats. For example, the location of the R peak for a given beat is determined by calculating a cross-correlation of the beat with other beats of the set of beats. The location of the R peak may be represented in terms of the number of samples. The set of beats are aligned with respect to the location of the corresponding R peak, for example, by shifting each beat by the number of samples as per the location of the R peak. An average beat corresponding to the set of beats is generated by applying a beat averaging or a temporal averaging filter, for example, a median filter, on the aligned set of beats. The average beat is denoted as a representative beat for the set of beats (or the corresponding beat group). Further, the representative beat is associated with the AHR for the set of beats. In an embodiment, the plurality of representative beats for the entire session are displayed to a user (including a physician). For example, a slide bar representing the range of AHR during the session may be provided. The user may be able to move the slide bar and set to a desired AHR value. A representative beat corresponding to the AHR indicated by the position of the slide bar may be displayed to the user. The representative beat displayed to the user may be smoothly updated in response to an updated position of the slide bar. This allowsthe user, particularly, the physician to view how the representative beat changes throughout the session.

[0095] Processing the captured ECG signals and generating the plurality of representative beats in such a manner eliminate noise in the captured ECG signals and provide clean beats of high- quality for further processing. It enables extracting various features more accurately. Consequently, the results of the system 100 are more robust over conventional systems even in the presence of noise, thereby, enhancing the overall accuracy and efficacy of the system 100.

[0096] According to an embodiment, each of the plurality of representative beats of each channel are associated with one or more zones based upon the corresponding AHR. For example, each representative beat of the plurality of representative beats is associated with either of the rising zone, the peak zone or the recovery zone as described earlier. The plurality of representative beats, the corresponding AHR and the corresponding zone are stored in the database 142 and / or the first memory 144.

[0097] At step 212, a set of features are extracted for each channel based the plurality of representative beats, for example, by the feature extraction module 136. In an embodiment, the set of features includes two or more features. Using two or more features improves sensitivity and specificity of the system 100. It should be understood that a single feature may also be extracted without deviating from the scope of the present disclosure.

[0098] The set of features may include one or more pre-defined features. An embodiment of extracting the one or more pre-defined features from the plurality of representative beats has been explained in conjunction with Fig. 3. According to an embodiment, alternatively or in addition, the plurality of representative beats and the associated AHR are provided as input to the artificial neural network 152 of the feature extraction module 136 and one or more features of the set of features are extracted by the artificial neural network 152 based upon the plurality of representative beats. In an embodiment, a feature vector is generated based upon the set of features.

[0099] At step 214, an indicator is generated based at least upon the set of features for the at least one channel. In an embodiment, the indicator is generated by the classifier 138. The indicator is indicative of a risk (or likelihood) associated with a cardiac disease in the person. The indicator may be a numerical value (e.g., a percentage value indicating a likelihood of the presence of a cardiac disease), textual (e.g., High, Medium or Low indicating a high, a medium and a low likelihood, respectively, of the presence of a cardiac disease), visual (e.g., it may be color coded Red, Orange or Green indicating a high, medium and low risk, respectively, of the present of a cardiac disease) or any combinations thereof. The indicator may take any other form that indicates a likelihood of the presence of a cardiac disease without deviating from the scope of the present disclosure.

[0100] Fig. 3 illustrates a flowchart of a method 300 for extracting the one or more pre-defined features based the plurality of representative beats, according to an embodiment. The method 300 may be performed for each channel of the at least one channel.T1

[0101] At step 302, for each pre-defined feature of the one or more pre-defined features, a set of attributes are extracted at each AHR based at least upon the plurality of representative beats. The set of attributes correspond to the pre-defined feature. The set of attributes may correspond to morphological features of the representative beat. The set of attributes may be extracted from one or more of: the PR segment, the QRS segment and the ST segment of the representative beat. In an embodiment, the set of attributes includes one or more of: a location and a corresponding value of a point where the QRS segment begins (hereinafter, referred to an I- point), a location and a corresponding value of the J-point, a location of the T peak, a location of the maximum slope of a rising portion of the QRS-wave and / or T-wave and a location of the maximum slope of a falling portion of the QRS-wave and / or T-wave.

[0102] In an embodiment, the set of attributes are extracted from each representative beat individually. In another embodiment, the set of attributes are extracted based upon the plurality of representative beats as follows. A 3D surface is generated based upon the plurality of representative beats across the plurality of AHR. The set of attributes for each AHR are extracted from the 3D surface using a suitable 3D surface processing technique, for example, using surface tracking gradient algorithm as explained earlier.

[0103] At step 304, the pre-defined feature is calculated based upon the set of attributes. In an embodiment, the relationship between the values of the pre-defined feature and the corresponding AHR values defines a hysteresis curve as explained earlier. The characteristics of the intersection of the first segment and the second segment or a turn of the first segment to the second segment at or around the AHR_peak are indicative of a risk associated with a cardiac disease. According to an embodiment, the one or more pre-defined features includes at least one of: ST segment depression, a first T-ratio, a second T-ratio, a sum of the maximum gradient and the minimum gradient of the T-wave (referred to as the RF sum), a ratio of the maximum gradient and the minimum gradient of the T-wave, and a ratio of areas of a first triangle and a second triangle in the segment-wave (defined earlier).

[0104] Fig. 4 illustrates a flowchart of a method 400 for processing ECG signals, according to an embodiment of the present disclosure.

[0105] At step 402, ECG signals corresponding to the at least one channel are obtained. The ECG signal for each channel of the at least one channel includes a plurality of beats. The ECG signals are acquired during a stress test session and may be captured by corresponding two electrodes. For example, the ECG signal corresponding to the first channel may be captured by the electrodes110a and 110b. According to an embodiment, the receiving module 132 obtains the ECG signals from any of the data transfer module 122, the database 142 or from the data acquisition unit 102.

[0106] At step 404, the ECG signal of each channel of the at least one channel is filtered to generate a respective high-frequency ECG signal (hereinafter, HF ECG signal), for example, by the HF module 133. In an embodiment, the ECG signals may be filtered by applying a high-pass filter having a suitable cut-off frequency (e.g., above 500 Hz) or a bandpass filter having a suitable passband frequency range (e.g., from about 150 Hz to about 450 Hz).

[0107] At step 406, high frequency (HF) energy is calculated for each beat of the plurality of beats for each channel by the HF module 133. In an embodiment, a QRS zone for each beat of the plurality of beats is identified using any known or custom techniques and each beat is determined based upon the QRS zone. For example, the HF energy may be calculated at least for the QRS zone. A non-QRS zone may also be determined. Once each beat is located, the HF energy is calculated for the beat. Optionally, the HF energy may be calculated for the non-QRS zone too. In an embodiment, the HF energy of the QRS zone may be considered as the HF energy for the beat.

[0108] At step 408, an instantaneous heart rate (IHR) is calculated for each beat the plurality of beats of the received ECG signal of each channel, for example, by the beat processing module 134 in a similar manner as explained earlier.

[0109] At step 410, a plurality of beat groups is formed based upon the plurality of beats for each channel, for example, by the beat processing module 134, in a similar manner as explained earlier.

[0110] At step 412, an average heart rate (AHR) is calculated for each beat group of the plurality of beat groups based upon the IHR of the set of beats of the beat group, for example, by the beat processing module 134, in a similar manner as explained earlier.

[0111] At step 414, a representative beat is generated for each beat group of each channel based the set of beats of the beat group, for example, by the beat processing module 134, in a similar manner as explained earlier.

[0112] At step 416, for each channel, an average HF energy (hereinafter, AHF energy) for each beat group is calculated based upon the HF energy of the set of beats of the beat group, for example, by the beat processing module 134. For example, the AHF energyfor a given beat groupis a statistical average of HF energy for each beat of the set of beats of the beat group. In an embodiment, the AHF energy for at least the QRS zone (e.g., for the QRS zone or for both the QRS zone and the non-QRS zone) may be calculated. In an embodiment, the AHF energy for the QRS zone may be considered as the AHF energy for the beat group. The AHF energy for each beat group, the corresponding AHF energy for the QRS zone and the AHF energy for the non-QRS zone may be associated with the corresponding AHR and the representative beat of that beat group. The AHF energy values may also be associated with the or more zones based upon the corresponding AHR in a similar manner as described earlier.

[0113] At step 418, for each channel, a set of HF features are determined at each AHR for each beat group of the plurality of beat groups. In an embodiment, the set of HF features includes one or more of: the AHF energy for the beat, the AHF energy for the QRS zone and a ratio of the AHF energy for the QRS zone and the AHF energy for the non-QRS zone. The values of each HF feature of the set of HF features and the corresponding AHR values defines a hysteresis curve including two segments, wherein the values of the HF feature for rising AHR values to the AHR_peak (e.g., during the rising zone) form one segment (hereinafter, a first segment) of the hysteresis curve and the values of the HF feature for falling AHR values from the AHR_peak (e.g., during the recovery zone) form another segment (hereinafter, a second segment) of the hysteresis curve. A feature vector may be generated based upon the set of HF features of the at least one channel in a similar manner as described earlier.

[0114] At step 420, an indicator is generated based at least upon the set of HF features for the at least one channel for example, by the classifier 138. The indicator is indicative of a risk (or likelihood) associated with a cardiac disease in the person.

[0115] It is contemplated that the indicator may be generated based upon the set of features or the set of HF features or both. Generating the indicator based upon both the set of features and the set of HF features improves the overall sensitivity and the specificity.

[0116] Performance of the system 100 is further illustrated and compared with conventional systems with the help of experimental results. A blind validation of the efficacy of the system 100 was performed using clinical data for 114 patients over a period of three months. Each patient was subjected to three types of tests independently.

[0117] Test #1: the patient underwent a conventional treadmill cardiac stress test where ECG signals were recorded using traditional 12-lead set-up.

[0118] Test #2: a cardiac CT (CCT) scan or a coronary angiogram (CAG) was performed for the patient to assess the presence or absence of obstructions in the coronary arteries.

[0119] Test #3: 4-lead (2-channel) ECG signals were recorded for the patient as per the teachings of the present disclosure during the same exercise session as the Test #1, but using a wearable device with different ECG electrodes than those used for the Test #1.

[0120] The results of the Test #1 and the Test #2 were assessed by two different certified cardiologists at / around the time of these tests. These results were further independently verified by a third senior cardiologist. The results from the Tests #1 and #2 were assessed blind to the results of the Test #3.

[0121] For the Test #3, the system 100 generated a report for each patient. The report included hysteresis curves for the set of pre-defined features and the set of HF features for each of the two channels. For each channel, the hysteresis curve for each of these features was analyzed by the system 100 and assigned a score of zero (for Normal), one (for CAD) and 0.5 (for ambiguous). These scores were then averaged to obtain a single score (or the indicator) of 0 - 100%. Any indicator below 25% was considered a Normal diagnosis (i.e., no disease), and any score above this threshold was considered indicative of CAD. The results of the Test #3 were analyzed blind to the results from the Tests #1 and #2.

[0122] The results of all three tests were then compared with each other. The results of the Test #2 were considered as a ground reference and the sensitivity and specificity metrics for the Test #1 and the Test #3 were calculated based upon this ground reference. The results from the three tests are provided below.

[0123] Test #2 (ground reference)

[0124] The criterion used for CAD diagnosis was the presence of 70% or more block in one or more vessels of the patient. The total confirmed Normal patients and total confirmed Diseased patients were found to be 87 and 27, respectively.

[0125] The results for the Test #1 (conventional test) and Test #3 (present disclosure) are given in the following table.

[0126] As can be seen from the above table, the system 100 exhibits a significantly higher sensitivity over the conventional stress test. Further, the specificity of the system 100 is comparable to that of the conventional stress test. Thus, the system 100 performs considerably better than conventional approaches especially in correctly identifying patients with asymptotic disease (e.g., CAD).

[0127] The proposed systems and methods of processing ECG signals presents several advantages over the conventional approaches. The proposed system continually tracks heart rates of a person throughout a stress test session and extracts various features at each heart rate in all zones of the stress test session and generates an indicator indicating the presence of a cardiac disease using these features, whereas conventional approaches extract features from either rest ECG signals or only at a few discrete heart rates. Consequently, the proposed system is more reliable and highly accurate over conventional approaches, especiallyfor cardiac diseases or other conditions that are not seen at rest ECG signals. The proposed system is able to process even noisy and artifact ridden ECG signals, which makes it more robust over existing systems. In an example implementation, the ECG signals are captured using a wearable device, transmitted with the help of an application, processed on a cloud-based server. As a result, the proposed system can be used in any scenario, thereby, improving the overall usability. Various features disclosed herein are more robust and lead to a more accurate prediction of the presence or absence of cardiac diseases. Overall, the proposed system exhibits a higher sensitivity and a higher specificity over conventional systems as demonstrated by the experimental results above, leading to better outcome for persons undergoing the stress test.

[0128] The scope of the invention is only limited by the appended patent claims. More generally, those skilled in the art will readily appreciate that all parameters, dimensions,materials, and configurations described herein are meant to be exemplary and that the actual parameters, dimensions, materials, and / or configurations will depend upon the specific application or applications for which the teachings of the present invention is / are used.

Claims

1. WE CLAIM:

1. A system (100) for processing electrocardiogram (ECG) signals, the system (100) comprising: a. a receiving module (132), executed by a first processor (146), configured to receive electrocardiogram (ECG) signals corresponding to at least one channel, the ECG signal for each channel of the at least one channel comprising a plurality of beats, wherein the ECG signals are acquired during a stress test session; b. a beat processing module (134), executed by the first processor (146), configured to, for each channel: i. calculate an instantaneous heart rate (IHR) for each beat of the plurality of beats; ii. form a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; iii. calculate an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group; and iv. generate a representative beat for each beat group based upon the set of beats of the beat group; c. a feature extraction module (136), executed by the first processor (146), configured to, for each channel, extract a set of features based upon the plurality of representative beats; and d. a classifier (138), executed by the first processor (146), configured to generate an indicator indicating a risk associated with a cardiac disease based upon the set of features for the at least one channel.

2. The system (100) as claimed in claim 1, wherein the set of features comprises one or more pre-defined features, wherein the feature extraction module (136) is configured to, for each pre-defined feature: a. extract a set of attributes at each AHR based at least upon the corresponding representative beat, wherein the set of attributes correspond to the pre-defined feature; andb. calculate a value of the pre-defined feature for the representative beat corresponding to at least a subset of AHR based upon the set of attributes, the values of the predefined feature and the associated AHR defining a hysteresis curve having a first segment and a second segment, wherein values of the pre-defined feature for rising AHR to a maximum AHR forms the first segment and values of the pre-defined feature for falling AHR from the maximum AHR forms the second segment.

3. The system (100) as claimed in claim 2, wherein the one or more pre-defined features comprises at least one of: a. ST segment depression; b. a first T-ratio defined as a ratio of a distance between the T-peak and a falling edge corresponding to the maximum falling slope of the T-wave to a distance between the start of the T-wave and the falling edge of the T-wave; c. a second T-ratio defined as a ratio of the distance between the start of the T-wave and the falling edge of the T-wave to a distance between the R-peak and the start of the T-wave; d. a sum of the maximum gradient and the minimum gradient of the segment-wave, wherein the maximum gradient of the T-wave is the maximum rising slope of the T- wave and the minimum gradient of the T-wave is the maximum falling slope of the T- wave; e. a ratio of the maximum gradient and the minimum gradient of the T wave; and f. a ratio of areas of a first triangle and a second triangle in the T-wave, wherein the first triangle is defined by points A, B and D, and the second triangle is defined by points B, C and D, wherein the point A denotes an intersection point of a rising edge having the highest slope with a baseline of the representative beat, the point B represents the intersection point of the rising edge having the highest slope with the fa lling edge having the highest slope, the point C represent the intersection of the falling edge having the highest slope with the baseline and the point D represents the location of the peak of the T-wave.

4. The system (100) as claimed in claim 2, wherein the feature extraction module (136) is configured to extract the set of attributes at each AHR from the corresponding representative beat;5. The system (100) as claimed in claim 2, wherein the feature extraction module (136) is configured to: a. generate a 3D surface based upon the plurality of representative beats across the corresponding AHR; and b. extract the set of attributes at each AHR from the 3D surface using a 3D surface processing technique.

6. The system (100) as claimed in claim 1, wherein the feature extraction module (136) comprises an artificial neural network (152) configured to, for each channel, extract one or more features of the set of features based upon the plurality of representative beats.

7. The system (100) as claimed in claim 1, wherein the system (100) comprises a data acquisition unit (102) configured to acquire the ECG signals corresponding to the at least one channel, the data acquisition unit (102) comprising: a. a signal processing unit (112) configured to: i. sample electrical signals captured by a pair of electrodes (110a - 110c) corresponding to each channel at a pre-defined sampling frequency; and ii. output the ECG signal based upon the sampled electrical signals; and b. a communication unit (114) configured to transmit the ECG signals over a first communication interface.

8. The system (100) as claimed in claim 7, wherein the data acquisition unit (102) is wearable on a body of a person.

9. The system (100) as claimed in claim 1, wherein the system (100) comprises a data transfer module (122) configured to: a. receive the ECG signals of the at least one channel from a communication unit (114) of a data acquisition unit (102) over a first communication interface; and b. transmit the ECG signal to the receiving module (132) over a second communication interface.

10. The system (100) as claimed in claim 1, wherein the system (100) comprises a session control module (124) configured to, at least one of:a. send values of one or more parameters associated with acquiring the ECG signal to a data acquisition unit (102), the one or more parameters comprising the pre-defined sampling frequency, a signal resolution, and a signal transmission strength; and b. send a control signal to the data acquisition unit (102) to start acquiring the ECG signal.

11. The system (100) as claimed in claim 1, wherein the beat processing module (134) is configured to: a. determine a location of the R peak for each beat of the set of beats of the beat group; b. align the set of beats with respect to the corresponding locations of the R peaks; and c. apply a temporal averaging filter across the set of aligned beats to generate the representative beat for the beat group.

12. A system (100) for processing electrocardiogram (ECG) signals, the system (100) comprising: a. a receiving module (132), executed by a first processor (146), configured to receive electrocardiogram (ECG) signals corresponding to at least one channel, the ECG signal for each channel of the at least one channel comprising a plurality of beats, wherein the ECG signals are acquired during a stress test session; b. a high frequency (HF) module (133), executed by the first processor (146), configured to, for each channel: i. filter the ECG signal to generate a high-frequency ECG signal; and ii. calculate high frequency (HF) energy for each beat of the plurality of beats based upon the HF ECG signal; c. a beat processing module (134), executed by the first processor (146), configured to, for each channel: i. calculate an instantaneous heart rate (IHR) for each beat of the plurality of beats; ii. form a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; iii. calculate an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group;iv. generate a representative beat for each beat group based upon the set of beats of the beat group; and v. calculate an average high frequency (AHF) energy for each beat group, wherein the AHF energy for the beat group is a statistical average of HF energy of the set of beats of the beat group; d. a feature extraction module (136), executed by the first processor (146), configured to, for each channel, determine a set of high frequency (HF) features for each beat group; and e. a classifier (138), executed by the first processor (146), configured to generate an indicator indicating a risk associated with a cardiac disease based upon the set of HF features for the at least one channel.

13. The system (100) as claimed in claim 12, wherein the HF module (133) is configured to calculate HF energy for at least a QRS zone of each beat of the plurality of beats, and wherein the beat processing module (134) is configured to calculate AHF energy for at least the QRS zone of the beat group, wherein the AHF energy for the QRS zone of the beat group is a statistical average of the HF energy of the QRS zone of the set of beats of the beat group.

14. The system (100) as claimed in claim 12, wherein values of each HF feature of the set of HF features and associated AHR define a hysteresis curve having a first segment and a second segment, wherein values of the HF feature for rising AHR to a maximum AHR forms the first segment and values of the HF feature for falling AHR from the maximum AHR forms the second segment.

15. The system (100) as claimed in claim 12, wherein the set of HF features for each beat group comprises one or more of: the AHF energy for the beat group, AHF energy of a QRS zone corresponding to the beat group, a ratio of the AHF energy of the QRS zone and AHF energy of a non-QRS zone corresponding to the beat group.

16. The system (100) as claimed in claim 12, wherein the system (100) comprises a data acquisition unit (102) configured to acquire the ECG signals corresponding to the at least one channel, the data acquisition unit (102) comprising: a. a signal processing unit (112) configured to:i. sample electrical signals captured by a pair of electrodes (110a - 110c) corresponding to each channel at a pre-defined sampling frequency; and ii. output the ECG signal based upon the sampled electrical signals; and b. a communication unit (114) configured to transmit the ECG signals over a first communication interface.

17. The system (100) as claimed in claim 16, wherein the data acquisition unit (102) is wearable on a body of a person.

18. The system (100) as claimed in claim 12, wherein the system (100) comprises a data transfer module (122) configured to: a. receive the ECG signals of the at least one channel from a communication unit (114) of a data acquisition unit (102) over a first communication interface; and b. transmit the ECG signal to the receiving module (132) over a second communication interface.

19. The system (100) as claimed in claim 12, wherein the system (100) comprises a session control module (124) configured to, at least one of: a. send values of one or more parameters associated with acquiring the ECG signal to a data acquisition unit (102), the one or more parameters comprising the pre-defined sampling frequency, a signal resolution, and a signal transmission strength; and b. send a control signal to the data acquisition unit (102) to start acquiring the ECG signal.

20. The system (100) as claimed in claim 12, wherein the beat processing module (134) is configured to: a. determine a location of the R peak for each beat of the set of beats of the beat group; b. align the set of beats with respect to the corresponding locations of the R peaks; and c. apply a temporal averaging filter across the set of aligned beats to generate the representative beat for the beat group.

21. A method (200) for processing electrocardiogram (ECG) signals, the method (200) comprising: a. obtaining, by a receiving module (132), electrocardiogram (ECG) signals corresponding to at least one channel, the ECG signal for each channel of the at leastone channel comprising a plurality of beats, wherein the ECG signals are acquired during a stress test session; b. calculating, by a beat processing module (134), for each channel, an instantaneous heart rate (IHR) value for each beat of the plurality of beats; c. forming, by the beat processing module (134), for each channel, a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; d. calculating, by the beat processing module (134), for each channel, an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group; e. generating, by the beat processing module (134), a representative beat for each beat group based upon the set of beats of the beat group; f. extracting, by a feature extraction module (136), for each channel, a set of features based upon the plurality of representative beats; and g. generating, by a classifier (138), an indicator indicating a risk associated with a cardiac disease based upon the set of features of the at least one channel.

22. The method (200) as claimed in claim 21, wherein the set of features comprises one or more pre-defined features, wherein the step of extracting the set of features comprises: a. extracting, by the feature extraction module (136), for each pre-defined feature, a set of attributes at each AHR based at least upon the corresponding representative beat, wherein the set of attributes correspond to the pre-defined feature; and b. calculating, by the feature extraction module (136), a value of the pre-defined feature for each representative beat corresponding each AHR based upon the set of attributes, the values of the pre-defined feature and the associated AHR defining a hysteresis curve having a first segment and a second segment, wherein values of the pre-defined feature for rising AHR to a maximum AHR forms the first segment and values of the pre-defined feature for falling AHR from the maximum AHR forms the second segment.

23. The method (200) as claimed in claim 22, wherein the one or more pre-defined features comprises at least one of:a. ST segment depression; b. a first T-ratio defined as a ratio of a distance between the T-peak and a falling edge corresponding to the maximum falling slope of the T-wave to a distance between the start of the T-wave and the falling edge of the T-wave; c. a second T-ratio defined as a ratio of the distance between the start of the T-wave and the falling edge of the T-wave to a distance between the R-peak and the start of the T-wave; d. a sum of the maximum gradient and the minimum gradient of the segment-wave, wherein the maximum gradient of the T-wave is the maximum rising slope of the T- wave and the minimum gradient of the T-wave is the maximum falling slope of the T- wave; e. a ratio of the maximum gradient and the minimum gradient of the T wave; and f. a ratio of areas of a first triangle and a second triangle in the T-wave, wherein the first triangle is defined by points A, B and D, and the second triangle is defined by points B, C and D, wherein the point A denotes an intersection point of a rising edge having the highest slope with a baseline of the representative beat, the point B represents the intersection point of the rising edge having the highest slope with the falling edge having the highest slope, the point C represent the intersection of the falling edge having the highest slope with the baseline and the point D represents the location of the peak of the T-wave.

24. The method (200) as claimed in claim 22, wherein the set of attributes are extracted at each AHR from the corresponding representative beat;25. The method (200) as claimed in claim 22, wherein the step of extracting the set of attributes comprises: a. generating, by the feature extraction module (136), a 3D surface based upon the plurality of representative beats across the corresponding AHR; and b. extracting, by the feature extraction module (136), the set of attributes at each AHR from the 3D surface using a 3D surface processing technique.

26. The method (200) as claimed in claim 21, wherein the step of extracting the set of features comprises extracting, by an artificial neural network (152), for each channel, one or more features of the set of features based upon the plurality of representative beats.

27. The method (200) as claimed in claim 21, wherein the step of generating the representative beat comprises: a. determining, by the beat processing module (134), a location of the R peak for each beat of the set of beats of the beat group; b. aligning, by the beat processing module (134), the set of beats with respect to the corresponding locations of the R peaks; and c. applying, by the beat processing module (134), a temporal averaging filter across the set of aligned beats to generate the representative beat for the beat group.

28. A method (400) for processing electrocardiogram (ECG) signals, the method (400) comprising: a. receiving, by a receiving module (132), electrocardiogram (ECG) signals corresponding to at least one channel, the ECG signal for each channel of the at least one channel comprising a plurality of beats, wherein the ECG signals are acquired during a stress test session; b. filtering, by a high frequency (HF) module (133), the ECG signal corresponding to each channel to generate a corresponding high-frequency (HF) ECG signal; c. calculating, by the HF module (133), for each channel, high frequency (HF) energy for each beat of the plurality of beats based upon the HF ECG signal; d. calculating, by a beat processing module (134), for each channel, an instantaneous heart rate (IHR) for each beat of the plurality of beats; e. forming, by the beat processing module (134), for each channel, a plurality of beat groups from the plurality of beats, each beat group comprising a set of beats of the plurality of beats; f. calculating, by the beat processing module (134), for each channel, an average heart rate (AHR) for each beat group based upon the IHR of the set of beats of the beat group;g. generating, by the beat processing module (134), for each channel, a representative beat for each beat group based upon the set of beats of the beat group; h. calculating, by the beat processing module (134), for each channel, an average high frequency (AHF) energy for each beat group, wherein the AHF energy for the beat group is a statistical average of HF energy of the set of beats of the beat group; i. determining, by a feature extraction module (136), for each channel, a set of high frequency (HF) features for each beat group; and j. generating, by a classifier (138), an indicator indicating a risk associated with a cardiac disease based upon the set of HF features for the at least one channel.

29. The method (400) as claimed in claim 28, wherein the step of calculating the HF energy for each beat comprises calculating, by the HF module (133), HF energy for at least a QRS zone of each beat of the plurality of beats, and wherein the step of calculating the AHF energy for each beat group comprises calculating, by the beat processing module (134), AHF energy for at least the QRS zone of the beat group, wherein the AHF energy for the QRS zone of the beat group is a statistical average of the HF energy of the QRS zone of the set of beats of the beat group.

30. The method (400) as claimed in claim 28, wherein values of each HF feature of the set of HF features and associated AHR define a hysteresis curve having a first segment and a second segment, wherein values of the HF feature for rising AHR to a maximum AHR forms the first segment and values of the HF feature for falling AHR from the maximum AHR forms the second segment.

31. The method (400) as claimed in claim 28, wherein the set of HF features for each beat group comprises one or more of: the AHF energy for the beat group, AHF energy of a QRS zone corresponding to the beat group, a ratio of the AHF energy of the QRS zone and AHF energy of a non-QRS zone corresponding to the beat group.

32. The method (400) as claimed in claim 28, wherein the step of generating the representative beat comprises: a. determining, by the beat processing module (134), a location of the R peak for each beat of the set of beats of the beat group;b. aligning, by the beat processing module (134), the set of beats with respect to the corresponding locations of the R peaks; and c. applying, by the beat processing module (134), a temporal averaging filter across the set of aligned beats to generate the representative beat for the beat group.

Citation Information

Patent Citations

  • Diagnosis of heart disease with ECG and PCG signals using machine learning approach

    IN202341042838A

  • State estimation device, method, and program

    JP2018094172A

  • KR20230028908A