Research Article Volume 4 Issue 3
1Department of Physics and Material Sciences, Kwara State University, Nigeria
2Department of Pure and Applied Physics, Ladoke Akintola University of Technology, Nigeria
3Ladoke Akintola University of Technology Teaching Hospital, Nigeria
4Osun State College of technology, Nigeria
Correspondence: Ajani Adegbenro Sunday, Department of Physics and Material Sciences, Kwara State University, Malete, Ilorin, Nigeria
Received: April 27, 2018 | Published: June 6, 2018
Citation: Sunday AA, Ogunbode OA, Ajani OS, et al. Analysis of human biosignal information with developed application software for ECG, EMG, EEG and speech signals. Int J Biosen Bioelectron. 2018;4(3):130–137. DOI: 10.15406/ijbsbe.2018.04.00112
This paper repots the development of a flexible, robust and user friendly application software for the analysis of human biosignal information. Biosignals are time-varying electrical signals observed in living beings, which can be continually monitored for clinical diagnoses with suitable software. For this research, application softwares for biosignal information were developed with C programming language on MPLAB 4000 ICE. Codes for the analysis and graphical interface session were written using MATLAB 2013a. The programmes were compiled; the system encased and tested successfully with 10 patients per hospital, at five University Teaching Hospitals in South Western Nigeria and development of robust and flexible application software for the analysis of biosignal data was also achieved.
Keywords: software, biosignal, programming, medical
Biosignals are biomedical signals which represent collective electrical and mechanical signals obtained from organs in human body to represent different physical variables of interest. The signals exist as time functions and are describable in terms of their amplitudes, frequencies and phases. These complex biosignals are generally controlled by the nervous system which is responsible for the transfer, sending and reception of generated micro- information or less from different body parts to the brain for processing.1,2 Few organs among many that generate biomedical signals include the following;
Biosignals are biomedical signals which represent collective electrical and mechanical signals obtained from organs in human body to represent different physical variables of interest. The signals exist as time functions and are describable in terms of their amplitudes, frequencies and phases. These complex biosignals are generally controlled by the nervous system which is responsible for the transfer, sending and reception of generated micro- information or less from different body parts to the brain for processing.1,2 Few organs among many that generate biomedical signals include the following;
Among these physiological signals, EMG, ECG and EEG are the most important to be monitored because detailed measurement and analysis of the various electric signals produced by the body can supply vital medical predictions as to normal or pathological functions of the organs.3 Abnormal heartbeats can be readily diagnosed through electrocardiography. Electroencephalogram signals are interpreted by Neurologists to spot epileptic seizure episodes in patients. Signals from the muscles activities can be helpful in assessing neuromuscular disorders through electromyography, and irregular movement of the eyes can be diagnosed using electrooculography.4 The processes required in the analysis of biomedical signals mostly consist of at least four stages:
Development stages of the Firmware
Development of firmware is one the most involving task in this research. Figure 1 gives the full description of all the stages involved and procedure taken in the design of the firmware. Different algorithms and flowcharts were written, drawn, and these include flowchart for firmware development and data capturing, as described in (Figure 2) (Figure 3). The procedure followed in writing application software is called cycle development. During this stage, codes were written, tested, corrected or modified to ascertain accurate performance of the design. Two integrated development environment were used in this research for the control of microcontroller and interface analysis. MPLAB was employed for the development of firmware and coded with C-programming language, while MATLAB was used to simulate the interface.
Software development and microcontroller coding
Code writing for a complex system like biosignal analysis for basic biomedical parameters entails not a little task. Knowledge of high programming languages and, or even Neural networking, such as Linear discriminate analysis (LDA), has to come into play. The prototype task for coding an embedded microcontroller application includes; creation of high grade design, compiling, assembling and linking. Testing of the code was finally done before the code was burn into device. Each of the biomedical signal are tested separately before they were fused.
Create the high grade design
Selection of appropriate microcontroller is pertinent in this stage. Pins and other peripherals to be used were determined then hardware and firmware control were written. A language tool such as an assembler, which can be translated directly to a machine code, should be used .5 A complier that allows many languages was used for this stage of the work with C programming language, for writing and editing of codes. The compiler makes the code readable, allows label functions to identify code sub-routines with variable identification and code maintenance.
Testing and burning of codes
Complex program such as this is not expected to work perfectly until bugs are removed from the design to obtain a better result. Debugger permits the program to see zeros and ones (0 and 1) related to the source codes that were written. It gives function names and symbols for the program. Codes burn into PIC118F4450 and verifications in the finished application was executed. Once the codes have been built, they can be controlled and optimized for speed and size by the compiler and the program information and variables were programmed into the device. At some points where there is a malfunction language tool during application building, the offending line is displayed and when double clicked, moves straight to the affected source code file for editing. This process was repeated several times until all editing’s were ascertained, then a built button is clicked. Debuggers were used as free software simulator to test the codes. This enabled the programs to be run and tested before the hardware component was finally built. MPLAB ICE 4000 in-circuit debugger emulator was used at this stage, giving room for a very efficient coding for the control of PIC to be achieved. MATLAB 2013a (8.1.0.604, 64-bit license number: 724504) was finally used for the development of graphical user interface, for data acquisition and analysis. The details of the procedure, step by step for analysis of data are described in Figure 4.
Biosignal system application software
One of the worthwhile tasks of this research is to develop application software to acquire, process, analyse, display and interpret four distinct biosignals under investigation. The software was tested to handle the analysis of EMG, ECG, EEG and Speech signal parameters of any subject. The programs were written with C programming language and MATLAB 2013 was used to develop the graphical user interfaces. This software runs well on windows Vista, widow x, windows 7 to 10 operating systems and any operating system configured to run MATLAB.
Operational interface
There are two interfaces designed for biosignal measurements on the MATLAB. One takes care of biosignal data capturing, while other handles data analysis.
Biosignal capturing interface
The biosignal capturing user interface is initiated by launching the MATLAB programme through shortcuts. An alternative way to launch the program is to go through the program file. The programme command is then typed on the displayed MATLAB interface, already endowed with HOME, PLOTS and APPS menu as shown in Figure 5, or copied to the interface from biosignal stored file in the drive C as ‘‘Biosignals_Capture’’. This will bring out the biosignal components user interface. Figure 6 shows biosignal component user interface. The interface has different features, coded under four main dialog boxes as listed below:
New subject dialog box: This box consists of New Session, Electrocardiography (ECG) check, Electromyography (EMG) check, Electroencephalography (EEG) check, Speech signal check, Acquire command and Stop command. Signal or multiple of signals to be acquired are selected by checking the respective signal(s). The Stop command is then clicked once the selected signals have been acquired. Checking a New Session Command will bring columns for patient registration details having them as ‘‘Your name’’, Date and Index. Once the patient details are entered, a command coded as ‘‘Create a Patient File’’ is checked to register the details into the data base at drive C of the computer memory.
No of bytes received: This session is programmed to display the number of bytes received from the transmitter for any of the recorded signal being transmitted. The bytes are sent in packets for speed. This session was deemed essential so as to ascertain whether all the signal packets transmitted are completely received.
Communication port box: This box consists of the communication port to be used with the receiver line driver; communication port one (COM 1) is used in this research, but it can be modified at will for flexibility of the system. The CONNECT button is the command to be clicked to link the transmitter to the receiver. The Free Serial Port is used to reset and refresh the interface to a new session.
ADS1299 channels settings: This section contains seven channels programmed in the ADS1299 amplifier labelled as Channel 1, Channel 2, Channel 3, Channel 4, Channel 5, Channel 6, Channel 7; and a reference channel labelled as Channel 8. Each of the first seven channels can be set to pick any of the ECG, EMG or EEG signal at a time.
Signal analysis: This is the box where the signal to be analysed is selected. The commands of the four signals are located in this box and they are labelled as ECG Analysis, EMG Analysis, EEG Analysis and Speech Analysis. The interface of the desired signal for analysis is designed to pop up immediately the analysis is checked. Figures 7-10 display the interface for the respective signal analysis. Each interface contains subsection commands as given below:
The results obtained from patients in the teaching hospitals are presented in this section. The analyses are grouped into four signal types under each biosignal. Fast Fourier Transform Frequency Domain Analysis for ECG, EMG, EEG signals are given in Figures 11-13. In Figure 14, the samples of result obtained using Fast Fourier Transform Frequency Domain Analysis for Speech Signals are also presented. The Result of Wavelets Transform Approximate Frequency Domain Analysis for ECG, EMG, EEG Signal are shown in Figure 15-17. Samples of result obtained using Wavelets Transform Detailed Frequency Domain Analysis for EEG, EMG, EEG Signals are given in Figure 18-20. Sample of result obtained using Linear Prediction Coefficients Frequency Domain Analysis for Speech Signals is shown in Figure 21. Sample of result obtained using Cepstral Coefficients Frequency Domain Analysis for Speech Signals is given in Figure 22.
Discussion of experimental result obtained and interpretation
The software developed was coded in a manner that all the values obtained were made conspicuous on the interface. Designated channel of the electrodes corresponding to each biosignal were calibrated, and respective wave form for different signals can be read in time domain or frequency domain. Signals in time domain were represented at different windows giving the minimum, maximum, average and root mean square values. The colour for the wave form at time domain analysis is laced with red while that of the frequency domain is coded in green. In frequency domain, signals were expressed and interpreted using Fast Fourier Transform (FFT), Wavelet Transform Approximate and Wavelet Transform Detailed. FFT handles fundamental frequency, first harmonics and second harmonics, with beat per minute (BPM) configured only for ECG. Also values for minimum, maximum and RMS were configured for both wavelets approximate and wavelets detailed. The speech signal is interpreted with linear prediction and Cepstral coefficients. All the signals are equally analysed with kurtosis and their Skweness values are duly expressed. Codes that implement the analyses and interpretations were stored. Window sizes considered are 128, 256, 512, 1024 and 2048 packets.
The development of a flexible, robust and user friendly application software for the analysis of human biosignal measurement was also achieved, with high speed data processing for storage compartment. This research has been able to develop software that can handle biosignals, the software was tested to handle the analysis of EMG, ECG, EEG and Speech signal parameters of any subject.6–18
None.
Author declares that there is no conflict of interest.
©2018 Sunday, et al. This is an open access article distributed under the terms of the, which permits unrestricted use, distribution, and build upon your work non-commercially.