Keywords

1 Introduction

Electrocardiogram (ECG) is the non-stationary, quasi periodic electrical recording of the heart, which is highly adopted as a primary diagnostic tool for cardiovascular diseases. ECG recording is the sum of the depolarization potential of millions of cardiac cells done in a coordinated fashion as: P-wave appears first, QRS-complex appears second and T-wave appears third after cycle repeats. This one cycle is known as cardiac cycle. In every cardiac cycle, shape is changed. This changes are detected for diagnosing heart status of the patient [5]. The work involves signal and data processing techniques [2, 4, 7] to interpret the standard rules of the medical society in terms of numbers. We have also used decision making tools like the Fuzzy Logic [3] to extract the health indicators using the chunk of data and the set of rules set using MATLAB Fuzzy Logic Toolbox. The evaluation of the fuzzy logic outputs gives us the disease list with corresponding certainties.

2 Materials and Methods

The title “Cognitive Recognition of Heart Ailments using Fuzzy Logic on ECG samples” conveys a lot about the objective of the project. With increasing cases of heart ailments, increases the burden on the cardiologists to do the diagnosis correctly. This burden can be reduced by using a semi-automatic system which will study the ECG and narrow down on the possible diseases [6]. The objective of the work is shown in Fig. 1.

Fig. 1.
figure 1

Flow chart of fuzzy process

  1. 1.

    Increased accuracy and decreased deaths.

  2. 2.

    Easy access and understanding of the health condition to the layman.

  3. 3.

    Cost effective method.

The basic steps involved in the research work are shown below in the form of a Flow chart for easy understanding.

  1. 1.

    The input ECG les [1] used are in the form of samples of varying sampling rates. The data is stored as .mat les.

  2. 2.

    The signals now undergo a number of morphological and filtering techniques in order to extract the data essential for further processing. This further processing includes a number of statistical and arithmetic operations in order to calculate essential parameters like beats per minutes, pulse width which are crucial in getting the health indicators.

  3. 3.

    Apart from the pulse width and beats per minute, we calculate the pulse amplitude and width of each segment of the ECG i.e. P, Q, R, S, T. The classification of the data into each segment is based on a simple algorithm which does a relative comparison of the individual width and the amplitude. This forms the main part of feature extraction.

  4. 4.

    Using the principles of fuzzy logic and the toolbox available in MATLAB we can now interpret the rules set by the medical society in terms of the crucial parameters extracted using the above techniques. Functionality testing will help us improve the system by adding more rules based on typical test cases.

  5. 5.

    The outcome of the fuzzy logic is a simple mapping between the input functions and the output functions. Observation of the evaluated outputs will show the diseases which are most likely seen in the patient.

So following the above steps we have been able to detect different cases of arrhythmias and basic tachycardia and bradycardia. In order to link the input and the output of the system in place we had to use two different techniques.

2.1 Mapping Methods

  1. A.

    The Multi-Level mapping system was a unique way of mapping. It works just like the modulation and coding techniques which we see in Communications. Since the problem in hand is a complex one, there were too many parameters and not all the parameters were used to detect all the diseases. In order to reduce the redundancy, we sought to use the Multi-level mapping which yields a result that is analogous to the reduced result that we obtain in a KARNAUGH Mapping (K-map) method. In place of Xs for don’t care condition we used a ‘−1’ level, in case of true condition we used ‘+1’ level and in case of a false condition we used a ‘0’ level. This immensely reduced the amount of data and helped decision-making easy.

  2. B.

    Fuzzy Logic system: After checking the outputs with the multi-level mapping system we moved on to the Fuzzy Logic system which reduced the ambiguity and increased the accuracy of the system. It was efficient as it was able to rightly classify sets of data which did not have a crisp boundary. The MATLAB toolbox also gave a pictorial representation of the mapping process and displayed the evaluated outputs.

3 Results and Discussion

We have selected 9193 normal segments and 6,068 abnormal segments user for classification. The specificity is defined as the fraction of correctly classified abnormal segments to the total number of abnormal segments. The sensitivity of an arrhythmia is defined as the fraction of correctly identified normal segments to the total normal segments. The overall accuracy is the division of the total ECG segments correctly classified to the total number segments used for the classification and shown in Table 1.

Table 1. Comparison of Accuracy using different classifiers

The outcomes of the work are shown and briefly explained in the following Figs. 2, 3 and 4.

Fig. 2.
figure 2

Raw ECG signal

Fig. 3.
figure 3

Filtered ECG signal

Fig. 4.
figure 4

Fuzzy logic mapping

4 Conclusion

Detection of heart arrhythmia requires Pre-processing, feature-extraction and classification steps. Feature extraction step plays major role in accurate detection of arrhythmia, as feature extraction methods provides us a way of reducing computation time, increasing prediction performance, and provides a detailed understanding of the disease. Within the Health sector this methodology can be applied to other medical images like the X-Ray, Electroencephalography (EEG), and Magnetic Resonance Imaging (MRI). Further, a statistical approach using samples of the above signals in the form of crucial parameters and their corresponding results will help us get a deeper understanding of the features and would help us to come to a conclusion of what the output could be. It may also be implemented using the Artificial Neural Networks or the Adaptive Neuro-Fuzzy Interference System or any other classification technique. This kind of automation or semi-automation can be applied to many systems across different streams.