Science topic

# Biomedical Signal Processing - Science topic

Application of signal processing techniques on biomedical signals
Questions related to Biomedical Signal Processing
• asked a question related to Biomedical Signal Processing
Question
I have a vector based on a signal in which I need to calculate the log-likelihood and need to maximize it using maximum likelihood estimation. Is there any way to do this in MATLAB using the in-build function mle().
To maximize the log-likelihood estimate of a signal using maximum likelihood estimation in MATLAB, you can use the built-in optimization functions. Here's a general process you can follow:
1. Define the likelihood function that you want to maximize. This function takes in the signal (vector) as its input and returns the log-likelihood estimate of the signal. The form of this function will depend on the specific problem you are trying to solve.
2. Define any additional parameters that are needed by the likelihood function. For example, if you are estimating the parameters of a Gaussian distribution, you will need to define the mean and variance parameters.
3. Use the "fminunc" function in MATLAB to perform the optimization. This function uses the gradient of the likelihood function to iteratively search for the maximum. You will need to provide the likelihood function, the initial guess for the signal, and any additional parameters as inputs.
4. Extract the optimized signal from the output of the "fminunc" function. This will be the signal that maximizes the log-likelihood estimate.
So it depends on the model you have at hand. Here's some papers applying MLE for different type of problems[1-3]:
[1] Bazzi, Ahmad, Dirk TM Slock, and Lisa Meilhac. "Efficient maximum likelihood joint estimation of angles and times of arrival of multiple paths." 2015 IEEE Globecom Workshops (GC Wkshps). IEEE, 2015.
[2] Bazzi, Ahmad, Dirk TM Slock, and Lisa Meilhac. "On a mutual coupling agnostic maximum likelihood angle of arrival estimator by alternating projection." 2016 IEEE Global Conference on Signal and Information Processing (GlobalSIP). IEEE, 2016.
[3] Bazzi, Ahmad, Dirk TM Slock, and Lisa Meilhac. "On Maximum Likelihood Angle of Arrival Estimation Using Orthogonal Projections." 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2018.
• asked a question related to Biomedical Signal Processing
Question
I want denoise motion artifacts from the article of my data. I must have 3 level of decomposed levels in wavelet. for denoising what could be the value of threshold for each level?do you have any opinion? Thanks
Thank you all for your consideratio and response. The ppg is extracted from smartwatch and has many artifact noises. The frequency of them is not known. I read some articles that used wavelet for removing these artifact.first hpf is applied for removing the drift and then using wavelet.Recently I found a paper that use this method for EEG signal. Could it be possible to use that threshold for my ppg signal?
• asked a question related to Biomedical Signal Processing
Question
Hi all,
I am working on an ECG QRS detection algorithm which I did implement it using C language.  The code detects the ECG peaks regardless of the beat type (Normal, Paced, … etc.) and it saves the detected peaks into a text file as time location of the peak.
To evaluate my algorithm I have to compare the obtained peaks to those provided in the reference annotation files (MIT-BIH arrhythmia database). By comparison I can find the FP and FN peaks, and then calculate the sensitivity and positive predictivity from them. The main objective to find all of the peaks and not the type of the beat.
According to the Physionet guide, using the “WFDB Software Package" in "Cygwin” I have to do the following:
1. Use “rdann” and “wrann” functions to convert my text file into a compatible annotation file.
2. Use “bxb” function to compare my obtained beat annotations beat-by-beat to the reference annotations. (Ex.: bxb -r 100 -a atr yow -L bxb.out sd.out)
I am looking for few clear examples showing how to convert the text file into an annotation file and then compare the annotations to the referenced ones. I also tried “rr2ann” function to convert my text file into an annotation file but it did not work for me.
Thanks :)
Have you considered the wfdb-python library (https://github.com/MIT-LCP/wfdb-python)? It has QRS evaluation support. It is a pure Python library. Hence it runs on all platforms without any need for compilation. In particular, in the wfdb.processing library, there is a function wfdb.processing.compare_annotations, which can be used to compare the reference annotations against a test annotation generated by your detector.
The demo notebook provided by them describes how to use it: https://nbviewer.org/github/MIT-LCP/wfdb-python/blob/main/demo.ipynb
In particular, you provide
- reference annotations [the list of indices at which R peaks have been marked]
- test annotations [the list of indices at which your QRS detector has detected R peaks]
- the window width where you allow a matching annotation to be found. Thus there may be a difference of a few samples/indices in the reference and your algorithm's annotations
- the ECG signal on which the annotations were done.
The function then identifies the true positives, false positives, and false negatives. It reports the sensitivity and positive predictivity of your detector. You can also access the list of indices for false positives and false negatives for further analysis.
Following is the rough sample code:
comparitor = wfdb.processing.compare_annotations(ref_sample=ref_sample,
test_sample=test_sample,
window_width=window_width,
signal=signal)
# print the results
comparitor.print_summary()
if comparitor.fp > 0:
print(f'False positives: {comparitor.unmatched_test_sample}')
if comparitor.fn > 0:
print(f'False negatives: {comparitor.unmatched_ref_sample}')
• asked a question related to Biomedical Signal Processing
Question
I have been working on classifying ecg signals,and for feature extraction I am going to use AR modelling using Burgs method. After reading a few papers I got to know that the features are extracted after splitting the ecg signals into blocks of different duration,My question is why is it necessary to do so,and how could we fix a certain duration? For instance I have a signal with 50000 samples with fs = 256 hz ,so what could be the duration of each block.
And it would be really helpful if someone could help me understand the burg's method.There are videos and all for learning the Yule-Walker equations but did'nt find any for burgs method
Computer assisted analyses of cardiovascular signals facilitate timely diagnosis and treatment in critically ill patients. Different methods have been employed for the analysis and diagnosis, yet there is scope for enhancement of classification/diagnosis accuracy.
Regards,
Shafagat
• asked a question related to Biomedical Signal Processing
Question
Heart Rate Variability is a well known and useful concept in Biomedical Engineering and Medical Sciences. Breath Rate is a lesser researched field and a newer measure Breath-Rate Variability is introduced recently to quantify meditation effect.
It is gaining attention of researchers as BRV has a number of novel applications. What could they be.
Breath rate variability (BRV) as an alternate measure of meditation even over a short duration is proposed. The main objective of this study is to test the hypothesis that BRV is a simple measure that differentiates between meditators and nonmeditators.
• asked a question related to Biomedical Signal Processing
Question
Hai all,
Please suggest me in this regard
Fast and unpaid Scopus journals https://youtu.be/-02wlRD8OWU
• asked a question related to Biomedical Signal Processing
Question
Hello everyone,
I hope you are doing well.
I am using a Vantage Verasonics Research Ultrasound System to do Ultrafast Compound Doppler Imaging. I acquire the beamformed IQData with compounding angles (na = 3) and ensemble size of (ne = 75) which are transmitted at the ultrafast frame rate (PRFmax = 9kHz) and (PRFflow = 3kHz). Can I used the Global SVD clutter filter to process the beamformed IQData instead of conventional high-pass butterworth filter.
Your kind responses will be highly appreciated.
Thank you
From one of the best group in the field :
• asked a question related to Biomedical Signal Processing
Question
If someone know any information from where raw ECG data can be collected or If anyone has already collected the raw data, can you send me or mail me.
I recommend Polar H10 as it has quite nice properties for it price. Sampling rate 130 Hz, not avesomely high but sufficient for most evaluations done during daily activities. Data are streamed by Bluetooth and this give a possibility to communicate with a program in real time. ECG data can be as well stored and downloaded later using Polar dedicated software; they are exported in CSV format.
• asked a question related to Biomedical Signal Processing
Question
Hi RG,
There are a lot of papers using the HDsEMG database CapgMyo to test gesture recognition algorithms (http://zju-capg.org/myo/data/).
However, it seems that there is a missing file on the original server (http://zju-capg.org/myo/data/dbc-preprocessed-010.zip).
I wonder if anyone know if there is an alternative source for the database?
All the best.
Look the ijnk, mayde useful.
Regards,
Shafagat
• asked a question related to Biomedical Signal Processing
Question
The Special Issue entitled “Analysis of 1D Biomedical signals through AI-based approaches for Image processing” on Journal of Biomedical Signal Processing and Control (Impact Factor: 3.137) is now open to receive your paper.
We will be waiting for your new paper! #Biomedical #SignalProcessing #ArtificialItelligence #future #innovation #healthcare
Thank you for this delightful information!
• asked a question related to Biomedical Signal Processing
Question
Dear community , I need your help , I'm training my model in order to classify sleep stages , after extracting features from my signal I collected the features(X) in a DataFrame with shape(335,48) , and y (labels) in shape of (335,)
this is my code :
def get_base_model(): inp = Input(shape=(335,48)) img_1 = Convolution1D(16, kernel_size=5, activation=activations.relu, padding="valid")(inp) img_1 = Convolution1D(16, kernel_size=5, activation=activations.relu, padding="valid")(img_1) img_1 = MaxPool1D(pool_size=2)(img_1) img_1 = SpatialDropout1D(rate=0.01)(img_1) img_1 = Convolution1D(32, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = Convolution1D(32, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = MaxPool1D(pool_size=2)(img_1) img_1 = SpatialDropout1D(rate=0.01)(img_1) img_1 = Convolution1D(32, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = Convolution1D(32, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = MaxPool1D(pool_size=2)(img_1) img_1 = SpatialDropout1D(rate=0.01)(img_1) img_1 = Convolution1D(256, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = Convolution1D(256, kernel_size=3, activation=activations.relu, padding="valid")(img_1) img_1 = GlobalMaxPool1D()(img_1) img_1 = Dropout(rate=0.01)(img_1) dense_1 = Dropout(0.01)(Dense(64, activation=activations.relu, name="dense_1")(img_1)) base_model = models.Model(inputs=inp, outputs=dense_1) opt = optimizers.Adam(0.001) base_model.compile(optimizer=opt, loss=losses.sparse_categorical_crossentropy, metrics=['acc']) model.summary() return base_model model=get_base_model() test_loss, test_acc = model.evaluate(Xtest, ytest, verbose=0) model.fit(X,y) print('\nTest accuracy:', test_acc)
I got the error : Input 0 is incompatible with layer model_16: expected shape=(None, 335, 48), found shape=(None, 48)
you can have in this picture an idea about my data shape :
So you need to code your network to get the input of size (none, 1, 48). Each feature is of dimension 1x48, while 'none' would take up the size of the number of sample points (335 in your case). Hence, your input would be of shape 335x1x48. So, modify the input layer of your network to expect input of size 1x48 instead of 335x48, and provide input as 335x1x48.
• asked a question related to Biomedical Signal Processing
Question
Dear community , currently working on emotions recognition , as a first step I'm trying to extract features , I was checking some recources , I found that they used the SEED dataset , it contains EEG signals of 15 subjects that were recorded while the subjects were watching emotional film clips. Each subject is asked to carry out the experiments in 3 sessions. There are 45 experiments in this dataset in total. Different film clips (positive, neutral, and negative emotions) were chosen to receive highest match across participants. The length of each film clip is about 4 minutes. The EEG signals of each subject were recorded as separate files containing the name of the subjects and the date. These files contain a preprocessed, down-sampled, and segmented version of the EEG data. The data was down-sampled to 200 Hz. A bandpass frequency filter from 0–75 Hz was used. The EEG segments associated with every movie were extracted. There are a total of 45 .mat files, one for each experiment. Every person carried out the experiment three times within a week. Every subject file includes 16 arrays; 15 arrays include preprocessed and segmented EEG data of 15 trials in one experiment. An array named LABELS contains the label of the corresponding emotion- al labels (−1 for negative, 0 for neutral, and +1 for positive). I found that they loaded each dataset separately (negative , neutral , positive) , and they fixed length of signal at 4096 and number of signal for each class at 100 , and fixed number of features extracted from Wavelet packet decomposition at 83 , my question is why they selected 83 , 4096 and 100 exactly ?
I know that my question is a bit long but I tried to explain clearly the situation , I appreciate your help thank you .
As far as the problem is concerned, when DWT is executed as a feature extraction method, lots of wavelet coefficients are generated as the decomposition level increases. Therefore, choosing the necessary features from DWT coefficients becomes crucial for the effectiveness and conciseness of the classifier. Generally, this issue can be solved by manual selection of the features. However, to determine the practicability of DWT an active feature selection (ASF) strategy for DWT coefficients can be adapted. There are two phases contained in the ASF process. In phase 1, to reduce and provide a uniform feature dimensionality, we use relative power ratio (RPR) to pre-process each DWT coefficient obtained from digital responses. Further, in phase 2, the optimal DWT coefficients for classification with an automatic search method are identified to ensure that the outcomes of the whole searching process are the most useful features for the classification. Through the above phases, the original DWT features are refined and selected according to their RPR values. Concise features are finally achieved in an active manner with no human designation.
• asked a question related to Biomedical Signal Processing
Question
Those who are working in the area of Data Acquisition, Signal Processing and LabVIEW.
Dear Shabana Urooj
Methodology used in ECG data of these studies may guide you which method to use depending on your budget, availability, and requirements:
• asked a question related to Biomedical Signal Processing
Question
I'd like to measure ECG signal with dry electrode. But I'd like to know what kind of electrode are mostly used. Is there any person can give me some information?
Hi, Zhang.
The challenge of the dry-contact electrode for biosensing is a higher skin-electrode impedance than conventional wet electrodes. Nevertheless, the skin-electrode impedance depends on the frequency of acquired physiological signals. The bandwidth of ECG is almost below 200Hz. I think it is not a very significant problem in ECG acquisition. The conductive textile such as sliver polyester is a good candidate for dry-contact ECG measurement due to low surface resistivity.
Besides, the dry-based conductive textile electrode is usually applied in non-contact ECG measurements due to flexible characteristics. You can refer to the article below. Good luck!
• asked a question related to Biomedical Signal Processing
Question
I would like to know which application scenarios need Sequence learning method ( RNN, LSTM, GRU and so on ), such as medical video pattern analysis and time series forecasting for fighting against COVID-19? I wonder in what other scenarios we need to mine time correlation? I specialize in sequence learning. I don't know what I can do more effectively to help more people.
Yes, indeed. We need sequential models based on panel data and together with regression models we may need other statistical models based on computer vision related databases., before machine learning methods we need a lot of medical data as well numerical & visual data etc.
• asked a question related to Biomedical Signal Processing
Question
I have fNIRS signal and I have applied wavelet transform both continuous and discrete but I am unable to separate the different frequencies on the basis of coefficients . I want to know how can I tell that which coefficient is for which frequency.
Dear Basiq,
Based of your frequency band of interest you should find the level of decomposition related with sampling frequency, every wavelet level have half of the previous level samples.
Fs=2^n
Fs=Sampling frequency and n=wavelet level.
• asked a question related to Biomedical Signal Processing
Question
In order to do some simulation work for my research, I need a database of standard all types of ECG and PCG signals. Can anyone help me in this way. Thank you.
D1NAMO : real-life conditions with the Zephyr BioHarness 3
( ECG, breathing, and accelerometer signals,glucose measurements
and annotated food pictures) ,20 healthy subjects and 9 patients
with type-1 diabetes
• asked a question related to Biomedical Signal Processing
Question
My query is regarding identification of interical and preictal stages in CHB-MIT Scalp EEG Database of epileptic seizures collected at Children’s Hospital Boston , in which Seizure intervals are given in annotations. Generally most of the literature use only two classes of seizures in this database, viz. SEIZURE and NON-SEIZURE. My question is about identification of INTER-ICTAL, PREICTAL and ICTAL classes, so that appropriate Machine Learning/Deep Learning algorithm can be adopted for prediction of such seizure classes. Thanks in advance .
Dear Mr.Singh,
predicting from scalp data a seizure coming, even 30 seconds in advance, would be great! To my Knowledge until now, all efforts in this direction have been less successful, like forecasting an earthquake from the gravitational time-series data.
If you got marked the start and the end of the clinical seizures on your time series data, you can extract from the time period inbetween repetitive hypersynchronic EEG-pattern of 0.2 to 1 sec Duration (Spikes, sharp waves etc.). These Patterns differ from Patient to Patient, seldom in the same Patient. You could Group and classify them and use them to detect interictal shorter  periods of hypersynchronized activity with the same pattern, but NO clinical seizure.
But beware of the following pitfall: If the ictal EEG activity on the record is burried under EMG activity (because of the ictal movements of the Patient), you will get an EMG-pattern and not an EEG-pattern, so every cough of the Patient would give a false Alarm of your classifier. So you have to control for this (additional pre-classifier?)
BUT this interictal hypersynchronized activity is a bad predictor for a real forecast, just a hint for the enhanced probability (even worse: you might find the same pattern in family members of the patients, who will never get a seizure - These can be genetic markers)
So, efforts for pre-ictal EEG  have concentrated more on subtle changes in the "normal" EEG inbetween in the last seconds before the start of a seizure - changes in frequency content of the Signal, in synchronity between the different traces of the EEG = the different parts of the brain convexitiy or inbetween a trace. You might use wavelet analysis, chaos Analysis, source Analysis.
There should be a big amount of literature about that.
You will have to extend this analysis to a time period of 30, 60  then even more seconds before the start of the seizure to challenge the forecast Problem with your deep learning Approach.
Good luck!
Yours,
Ulrich Jobst
• asked a question related to Biomedical Signal Processing
Question
Where could I find a MATLAB code for estimating the PRV-high frequency (0.04 - 0.15 Hz) power from a PPG signal? Thanks in advance!
Hi
The methodology (code) is not different from HRV analyses having RR-interval from ECG.
fs = 4;
time = (Rtimes(1):1/fs:Rtimes(end));
IBIint = interp1(Rtimes,IBIs,time','spline')';
y = detrend(IBIint, 'linear'); % you can apply different detrending methods
window = min(300*fs, length(y));
noverlap = window/2;
nfft = max(256,2^nextpow2(window));
if rem(nfft, 2) == 0
DFT = (nfft/2)+1;
else
DFT = (nfft+1)/2;
end
% you can decide which DFT you want for example DFT = 0:0.001:2;
% for AR metod
order = 20; % you can use different order
[Pyy, f] = pburg(y,order,DFT,fs, 'onesided');
% for FFT method
[Pyy, f] = pwelch(y,window,noverlap,DFT,fs,'PSD','onesided');
VLF_ab = sum(Pyy(f >= 0.003 & f < 0.04));
LF_ab = sum(Pyy(f >= 0.04 & f < 0.15));
HF_ab = sum(Pyy(f >= 0.15 & f < 0.4));
• asked a question related to Biomedical Signal Processing
Question
How can implementation an Adaptive Dictionary Reconstruction for Compressed Sensing of ECG Signals and how can an analysis of the overall power consumption of the proposed ECG compression framework as would be used in WBAN.
Thid is in class of machine learning in youtubre
• asked a question related to Biomedical Signal Processing
Question
Muscle tissue does not normally produce electrical signals during rest. So its expected that the value Amplitude in mV will be roughly 0. However when muscles are stiff is when your muscles feel tight and you find it more difficult to move than usual, especially after rest. You may also have muscle pains, cramping, and discomfort. Cramps, which acts like muscle stiffness, can occur when muscles are unable to relax properly due to myosin fiber's not fully detaching from actin filaments. In skeletal muscle, ATP must attach to the myosin heads for them to disassociate from the actin and allow relaxation — the absence of ATP in sufficient quantities means that the myosin heads remains attached to actin. So will there be an expected amplitude in mV well greater than 0, maybe 3 to 5 mV range.
• asked a question related to Biomedical Signal Processing
Question
When the time deviation between the annotation of the expert and what is labeled by a peak detection algorithm exceeds the tolerance limits (see the picture), should we consider it as a False Positive or as a False Negative?
You have both, one FN because there is no detection close enough around the annotation, and one FP because there is no annotation close enough around the detection.
• asked a question related to Biomedical Signal Processing
Question
What are the sensitivity and specificity ? how to find the sensitivity and specificity of the cover and stego image in a stegnography technique .
• asked a question related to Biomedical Signal Processing
Question
as we know, The brain is affected by factors such as depression or Other diseases And we know that the brain also controls other organs of the body.nevertheless,Damage to the skin is visible on eeg?
Is Cancer Effective In EEG?
You can benefit from the following links.
• asked a question related to Biomedical Signal Processing
Question
Feeding knowledge directly into your brain, just like in sci-fi classic The Matrix, by a simulator which can feed information directly into a person’s brain and teach them new skills in a shorter amount of time, comparing it to “life imitating art”. I think inventing a devive that feed skills directly into a person’s brain is little far from believing . But what if build a device that stimulates some parts of a person's brain that related to the new skill that person is learning .so ,that person by using such a device could learn that new skill in very shorter time.
People are working on to improve learning by brain stimulation. you can find several papers on brain stimulation.
As far as direct feeding is concerned, it might be possible but will take some time for science to reach there.
• asked a question related to Biomedical Signal Processing
Question
What additional information does the phase measurement in a frequency-domain imaging technique provide compared with the continuous wave technique that measures only the amplitude of the diffuse light?
A phase shift of a frequency modulated light source is almost equivalent to a change in mean flight time of the photons and hence provides information about the mean free path length of the photons through the tissue. This information is distinct to that provided by a change in amplitude, which is the only variable measured in continuous wave (CW), and helps in distinguishing the degree to which attenuation is a result of either scattering or absorption events. In certain cases, such as diffuse optical tomography, it is possible to separate scattering and absorption using CW measurements by solving a regularised inverse problem, however frequency domain measurements will typically improve this separation by reducing the non-uniqueness.
• asked a question related to Biomedical Signal Processing
Question
i am working on signal processing,i have searched alot but i can not find any dataset for ERG signal . i need your support
• asked a question related to Biomedical Signal Processing
Question
I want to do multichannel ECG data compression using multiscale PCA . Do the transformed coefficients are eigenspace.
Hi Sushant,
Hope these help.
Thanks.
• asked a question related to Biomedical Signal Processing
Question
Can someone please provide some comments/references on the advantage of using Seismocardiograph (SCG) analysis while we already have matured ECG analysis and processing available. Also please comment on the probable artifacts or noise that may present in SCG recordings.
Also please share the latest Signal Processing algorithms suitable for SCG analysis and processing.
SCG gives additional information about the quality of the ECG signals recorded: during phases of activity, the ECG signals are overlaid by artefacts from the activity. SCG serves to detect these phases, thus giving an indifation about the dependability of the ECG signals recorded.
• asked a question related to Biomedical Signal Processing
Question
I am working with sensor signals and finding some problems with signal manipulation .(Any idea /hint /suggestion are welcome as i need something to move forward .
I have chnaged the qurey and added some new and more details to make the question easy to understand.
I have 2 signals.
⦁ Light Pink is the original Signal (refernce signal)with Red dots showing Local maxima’s.
⦁ Blue is a signal which is found after having test from another sensor that looks like refernce sensor but have some faults in it as it is made by us.
⦁ These signals are plotted against time on x-axis.
I have attached some plausible / some part of values of signal here so if anyone can help me with the logic along with MATLAB code it will be of great help.
⦁ Copy the code written in MATLAB and run after saving it .
⦁ You will see 2 signals as shown in figure and when u will zoom it you will clearly see the difference.
(How to make my Original signal Pink signal Straight as like blue signal in plots)
Question:
⦁ I want to make my original signal (pink) to look alike blue signal interms of flat portion only.
Common behaviour to observe the logic:
⦁ The common behavior that I have seen in my measured signal is that it gets flat where it finds local maxima (either on positive side or negative side).
⦁ At every point in local maxima I see that my blue signal gets flat.
Everything I have to do is with Original signal (Pink signal) to formulate some results.
Is there any way, I can make my original signal flat just like blue signal.
Can someone suggest me the best way to do that? And some one provide me an example MATLAB code then it would be great help .
Please have a look at the picture to get a glimpse about my idea.
Thanks a lot in adavance for help.
I have tried few techniques.
The results of those Techniques are as follows but speaking truly nothing is working for me uptill now.
I have find local maxima values and using nlfilter applied neighborhood rule and tried to make the peaks and neighborhood area flat but unfortunately it is not working as window size is fixed but in my case window size varies and it also depends upon position of local maxima and most important constant window size changes the shape of the signal.
I have also tried to apply varying window but its not working for me may be i have not good concept of how to apply varying size window. I do not know how it will work for my signal.
Cut the long story short what I have done up till now is not working so I need help in that.
It will be really nice if someone provides me how to solve this issue and If i will get some MATLAB so it will great for me.
Code for running the variables of data in the attached Link:
[p l] = findpeaks(original_signal_data);
[pn ln] = findpeaks(-original_signal_data);
figure(1)
hold on
plot(t,original_signal_data,'m')
plot(t,measured_Signal_data,'b')
plot(t(l),p,'ko','MarkerFaceColor','r');
plot(t(ln),-pn,'ko','MarkerFaceColor','r');
legend ('originalsignal', 'measureddatasignal')
hold off
Code on Test data example data for NL filter (Which is applied on original signal)
n = 10; % number of values to replace in the neighborhood of a local max
t= 0:0.001:10;
A = sin(2*pi*t);
[pks,locs] = findpeaks(A);
% [pks,locs] = findpeaks(-A);
locs = (locs) ;
locations = zeros(size(A));
locations(locs) = true;
locations = conv(locations, ones(1, 2*n+1), 'same') > 0;
X = -inf(size(A)); % create temporary
X(locs) = A(locs); % copy the local maxima
X = nlfilter(X, [1 2*n+1 ], @(x) max(x)); %replace all values with it local maxima
X(locs) = A(locs); % ensure local maxima are not changed
A(locations) = X(locations); % copy filtered temporary to output
figure()
hold on
plot(t,A,'b')
A = sin(2*pi*t);
plot(t,A,'g')
Mrinmoy Sandilya  Thanks a lot for your nice feedback and I will also try this technique of curve fitting . It is worth mentioning and valuable addition to my knowledge. Thanks once again.
• asked a question related to Biomedical Signal Processing
Question
The goal of many algorithms in (biomedical) signal processing is, at the end of the day, to perform some sort of classification, e.g., binary classification. The binary labels (categorical response variables) could for instance represent the presence or absence of a disease or the binary signal quality of a physiological recording.
When working with time series data, such as the ECG, EEG, blood pressure etc., one can extract features from these signals, that are afterwards used for classification.
When working with the ECG for example, one could use the duration, height of the QRS complex etc., as features for a classification of normal/abnormal beats. Each training sample, corresponding to one heart beat, would consist of the feature vector and the label.
Now, when training a classifier, be it a SVM, Logistic Regression or some sort of decision tree/forest, the samples are clearly NOT independent. These classifiers however assume that the samples are IID and I observe that e.g. decision tree, overfit heavily on such data. This is also problematic with ensemble methods such as random forests which rely on bagging (resampling the training data).
What are common approaches to alleviate this problem or work with dependent samples in a classification procedure?
I know that alternative methods such as hidden Markov models are well suited for time series data, but I am specifically interested in the supervised classification setup using such type of learners (SVM, Log.Regression, ....).
Hi Federico,
here some ideas on your problem, which might be helpful: actually Hidden Markov Models can be applied in the sense of a supervised classifier as well and, in fact, they might be an appropiate solution for your problem.
Apart from that, there are other classifiers which take into account the temporal behaviour, you could for example have a look to recurrent neural networks.
If you want to use classifiers which do not take into account temporal dependencies it might be necessary to create features from the time courses you have. This "feature engineering" can be done manually, than using a priori knowledge (e.g. the biggest difference in QRS amplitudes from a certain time compared to the last 10 s could be one feature; such manually defined features might be better to process for a classifier than just passing all previous QRS amplitudes).  Another way would be to extract features automatically, e.g. by convolutional neural networks, and use a supervised classifier afterwards.
Greetings, Sebastian
• asked a question related to Biomedical Signal Processing
Question
Since the power CFI and the B-flow both use a wall-filter and the energy of the echo.
Hao
• asked a question related to Biomedical Signal Processing
Question
I am working on signal processing. now i am look for DSP processor which support signal process. kindly send some supporting materials related to this. kindly do the needful
• asked a question related to Biomedical Signal Processing
Question
My work concerns filtering the event-related potentials (ERP), and I wanted to know what are the methods I could use to estimate the signal-to-noise ratio (SNR) of the real data before and after filtering the signals.
Thank you for your help, I really appreciate.
Thanks everybody for your responses. I found adequate methods and I thought it may help to share it.
In the case of actual EEG data, the true morphology of the clean ERP is unknown. Hence, it is not possible to rigorously evaluate the efficacy of a denoising methods with the MSE or the SNR metrics. So I used two SNR estimators to quantify the performance of the methods.
1. The first estimator is based on the sample correlation between successive trials.
2. The second estimator is based on a technique called the (+/−) averaging.
You may check this link for more details about the two SNR estimators and the results they give:
• asked a question related to Biomedical Signal Processing
Question
after filtering the power line noise, electrode movement artifacts, and muscle and eye-blink noise , why we need filter the EEG signal for suppressing frequencies over 30 Hz ?
hi Soroush Moazed
human brain produce mainly 5 different frequency bands, Gamma is one of these bands in range of (30 - 100) Hz. and some studies found that Gamma band can be more accurate in classify some mental task.
that is why we can not just consider it as a noise, here is a paper where they found Gamma band gave a higher classification percentage of a metal task.
i hope this help
regards
Atef
• asked a question related to Biomedical Signal Processing
Question
Actually my problem in segmentation and the matlab code.
Please follow the instruction guidelines of the EMG and ECG in the available shimmersensing web page.
• asked a question related to Biomedical Signal Processing
Question
Hi,
I am new to active shape models (ASM) and I want to use it in my research to do image segmentation.
For using ASM, there should be a training set to generate the shape statistical model: x = xbar+Pb, where xbaris the mean shape and P is the eigenvectors, x is the shapes obtained by changing the shape parameters b.
In my particular case, there is no training set. However, the mean shape is known, so is the shape constraints. Is there a way to use the statistical model? Use simulated shapes for training? But how to mimic the gray-level profile?
Just attach the image files with the "paper clip" below the message...
• asked a question related to Biomedical Signal Processing
Question
how should I get accuracy from this box? is the last one 69 is my accuracy?
I'm appreciate if anyone help me. thank you.
Test Confusion Matrix is the one you should use because it tests the neural network with data that was not used in the training. 68.1% is the percentage of success of your network, and 31.9% the percentage of mistakes.
Here some examples to understand the confusion matrix:
74.1 of class 1 were correctly classified
for 229 samples the network said the class was 1 and it was really class 1
for  19 samples the network said the class was 1 and it was really class 2
for  41 samples the network said the class was 1 and it was really class 3
for  20 samples the network said the class was 1 and it was really class 4
Good Luck!
• asked a question related to Biomedical Signal Processing
Question
Who Do You Trust More for your Heart Monitoring, Diagnosis, and Therapy?
A Medical Dr such as a Cardiologist or Dr Machine Learning & Artificial Intelligence ? Do You Trust your Medical Dr-Cardiologist or a Sophisticated Computer based Cardio-Diagnostic System based on Machine Learning and Artificial Intelligence to Interpret and Evaluate your Health Status of your Heart?
Sirs,
If the question is 'Doctors'  vs.  'Computer'
then remember that is was 'Doctors'  only
whose doctor 'wisdom' and doctor 'experience'
has been en-coded into the 'Computer' program.
So, my first vote would be positive for the 'doctors'
...  and second vote goes to the 'computer' technology
just an apprentice in these matters, Glen
• asked a question related to Biomedical Signal Processing
Question
We use the analogue output of the Portapres device for monitoring continuous blood pressure.
Is band-pass filtering necessary for such blood pressure wave analysis?
What should be the low/high pass cut offs?
Please read this document about your question its figure 3 present a useful comparison of the effects of a low-pass filter in comparison to a high-pass filter.
• asked a question related to Biomedical Signal Processing
Question
Fellow colleagues, I am looking for your feedback on the Eventogram Transform.
I think that the technique of Eventogram transform can be give a good information in the analysis of hydroclimatic times series, especily about the stationary and nonstationary phenomena.
Best regards, Bilel
• asked a question related to Biomedical Signal Processing
Question
I'm going to design an innovative theranostics device to be used in biomedical sector. I need that the system should be connected in Internet in order to be remote controlled. Can anyone suggest an easy to use IoT board? thanks in advance.
There's a new entry in the field, the ESP32 Thing (evolution of the popular ESP8266), available on Sparkfun.
It spots both WiFi and BLE and you can program it with the Arduino IDE.
• asked a question related to Biomedical Signal Processing
Question
Fellow colleagues, I am looking for your feedback on the Biomedical Signal Analysis Framework.
Good point Mourad, we couldnt address all aspects in this paper. We addressed only the engineering aspects.
• asked a question related to Biomedical Signal Processing
Question
Hi,
Can anyone please let me know about the Sub-harmonic interferences in neural recording? We have in-vivo neural data recordings that have been severely corrupted by radio interferences (basically sub-harmonic interferences of the mobile phone frequency). I have never heard of such sub-harmonic interferences before, but according to the recording experiment, we are pretty sure that those interferences are due to radio frequencies transmitted by cell phones during a voice call and the interferences ranging roughly from 150 Hz up to few kHz. The sampling frequency of recording was around 40kHz.
Very often the high gain electronic amplifiers at the front end of such a measurement system will "demodulate" and "down-convert" strong high frequency signals that make their way into the amplifier front end, much like an AM radio. The sub-harmonic signals seen are the down-converted AM signal from the mobile phone carrier frequency. The frequency of the sub-harmonic signal is the frequency of the amplitude modulation.This happens because the semiconductor junctions in the amplifiers front end are acting as rectifiers, similar to how a simple AM radio envelope detector works. Once the demodulation has happened, it is near impossible to remove the artifact signal unless it is fixed in a narrow frequency band and can be post filtered out. The best way is to prevent this from happening to begin with, by providing front end filtering at the high sensitivity amplifiers to keep the RF signals seen at the amplifier inputs below the threshold of rectification/demodulation. You need to find out what this threshold is, by feeding an RF AM (amplitude modulated) signal into the analog front end (typically through a small capacitor) and sweep it's amplitude/carrier frequency until you begin to see an output due to this signal. Then you design and implement front end low pass filters to eliminate or keep the RF level below this threshold at the front end. This is a basic and simplified explanation, but it is indeed the typical source of major problems with low level high gain analog signal processing...
• asked a question related to Biomedical Signal Processing
Question
I am working on psychoacoustic active noise control. I want to design an psychoacoustic model for sound quality measurement. I went through the book of Zwicker's loudness: Psychoacoustic Facts and Models.
I am not able to understand how to write the program in matlab to calculate the loudness.
Good question and good answer :)
Perhaps a little late, but there is a toolbox available which contains matlab implementations of a number of loudness models, which I've found useful in the past. http://genesis-acoustics.com/en/loudness_online-32.html
• asked a question related to Biomedical Signal Processing
Question
I’m working on project about the development of electronic communication device to be used with invasive mechanically ventilated patients who are not able to speak verbally, so beside I need to measure its impacts on patients outcomes , I am looking to measure the nurses experiences or satisfaction while using this new device.
I am also interested to hear from colleagues if a Likert scale on this issue is available. Otherwise, you can use Visual Analogue Scale (VAS) for this purpose.
• asked a question related to Biomedical Signal Processing
Question
Multiple sclerosis(MS) is demyelinating disease in which the insulating covers of nerve cells in the brain and spinal cord are damaged . In some cases we use FES ( functional electrical stimulation) to cure lack of walking in leg .But Is there any solution in order to improve the conductivity of neuron in absence of insulating covers and after that use a system like FES in other cases for example Visionary system ?
It is a good question. Unfortunately we currently have no cure for MS and also don't know how to tackle the demyelination of the axons. FES (functional electrical stimulation) can only provide limited functional recovery but it is not the cure. Without the myelin the axons are short-circuited and therefore without fixing the demyelination by remyelination, it is not possible to cure by FES. Furthermore FES has its own limitations as a method, such as specific stimulation of individual nerves or coordinated stimulation of multiple nerves at will.
Best wishes, Refik
• asked a question related to Biomedical Signal Processing
Question
Hi. As we know by stimulating special cells, doctors and scientists are able to transfer different senses such as pain to patients. Now the question is: "Is it possible to import specific data such as words in other languages to brain by extracellular stimulation? "
I am afraid that the question involves a confusion.  By stimulating certain areas of the brain you can give a subject a variety of experiences, including memory recall and pain.  But you are not transferring those experiences from anybody (or anywhere) else. You can also transfer genes into brains and give those brains new experiences.  For example, you can have mice experience colors that they could not experience before.  But I do not think it is possible to give some knowledge of specific words in a foreign language by transferring some cells.  First, being able to remember, understand, and use words involves many different and complex areas of the brain.  Such transplant would simply be impossible.  Second, even the attempt would be highly unethical since it would kill the donor.
• asked a question related to Biomedical Signal Processing
Question
What I noticed from the literature is that for automated heartbeat classification ECG segmentation is an essential pre-processing step.
However, I wonder that they are fixing the same beat length for all types of heartbeats such as normal,PVC, APC, paced beat etc. In practical situations, how far it is advisable?
Next, from paper to paper segmentation lengths are different then how can they compare their results with others?
If it is desirable to fix the length of a segment why can't we choose a window that covers P, QRS, T events rather using fiducial points?
For  segmentation of ECG , for various heartbeats as you are looking for one must use adaptive filter / wavelet filters or you have to use segmentation algorithm which is trained for detecting variation by itself based on neural network appoach
• asked a question related to Biomedical Signal Processing
Question
Previoius studies showed that it is possible to evaluate fetal heart rate by heart sound signal. I wish to examine the previous methods.  I am grateful if someone can share fetal heart sound records with me.
Mr Parth Shah and Mr. Hong tang,  I've downloaded this link, but how to open the file. I can not open. Please help me out, I am having some trouble figuring out how this work,
Regards Irmalia
• asked a question related to Biomedical Signal Processing
Question
In each state of life we have different behaviour but some people can easily hide that . Is there any solution to detect the moods of human with EEG signal because of Non-hidden Characteristic ?
Refer the thesis titled Towards automated recogntition of human emotions using EEG by Haiyan Xu,, University of Toronto. Exhaustive experimentation has been done . It'll be useful to you.
• asked a question related to Biomedical Signal Processing
Question
I am not professional about compressed sensing (CS). I know CS can reconstruct the texture of the original image from highly undersampled data if some conditions are met. However, I have no clue how CS algorithms do to the noise. Is it possible that compressed sensing reconstructed image in MRI maintains or improves SNR comparing to fully sampled original image?
A noise reduction (or SNR improvement) due to the CS reconstruction is certainly possible - however, typically associated with loss of resolution or image details.
Compressed sensing reconstruction can be implemented using a total variation (TV) penalty in addition to an l1-norm sparsity objective. The TV penalty performs additional (edge-preserving) denoising of the resulting image - look e.g. for "TV" or "denoising" in the article reference below. (The strength/extent of denoising is controlled by the weighting factor (alpha) of the TV penalty.)
(TV denoising can also be applied to other MR images - independent of CS reconstruction; this will also improve the SNR, but potentially remove small image details.)
• asked a question related to Biomedical Signal Processing
Question
Is it possible to do feature normalization with respective to class. EX: 10x10 data matrix with two class. Each class of size 5x5. Now normalize 25 features of class 1 and 25 features of class 2 separately. Is this process acceptable.
Another reason why you can't use class-specific normalization is that if you do, you can normalize one class, say, between -2 and -1 and the other one between 1 and 2 and get perfect results with 100% accuracy on the training data.
• asked a question related to Biomedical Signal Processing
Question
My problem consists of Data matrix with size 1000x12. 12 features with 1000 examples. It is a 4 class problem.Now my question is how to perform feature normalization. I assume some ways (listed below) and suggest me the right path.
Assumed ways:
(1)  normalization of all features related to specific class individually (Let  class 1 contains [300x12]=3600, normalization of 3600 features).
(2) normalization of all features (12000) at once.
(3) normalization of each column in data matrix (1000x12).
For my point of view, only 3-th approach is good. To normalize each class is wrong, because it may be for first class and for second class values (after normalization) will be same, but really they are very different. To use second approach isn't good, because different features may have different measure (e.g., kg and m^2). Only third approach is good!
• asked a question related to Biomedical Signal Processing
Question
Does the selection of time delay τ values for computing measures that consider this parameter should depend on the sampling rate of the signal that is being analyzed with those measures?
Claudia,
Since the analyzed signal is always finite, I am almost sure that the entropy of the signal will depend on the sampling rate. The answer will differ from sampling rate to another, and the higher the sampling rate and the more accurate result you may get if the signal length in time is sufficient. Anyways, your sampling frequency should not be below the Nyquist frequency.
Good Luck!
• asked a question related to Biomedical Signal Processing
Question
I'm currently collecting a large amount of blood flow data with the use of a Perimed Laser Doppler rig. The recording is pretty simple )15 minutes recorded baseline, 2 minutes occlusion, 7 minutes post occlusion. I'm looking to evaluate pre/post measures of the different oscillatory bands following an intervention.  I've read a lot of excellent papers that utilized wavelet analysis to create a spectrogram of the relative oscillatory bands (and I'd love to follow suit), but can't find a good methods paper, or even a computer program to help me analyze my data. If anyone has a suggestion on relevant software or a good working guidebook, I would be hugely appreciative.
Thanks!
• asked a question related to Biomedical Signal Processing
Question
i would prefer to have a automatic or semi-automatic (control point based) registration of CT - US
The open source ITK is the standard tool for that thing.
• asked a question related to Biomedical Signal Processing
Question
Hi, I'm currently trying to estimate spectral coherence between two signals recorded from the same channel in two different conditions.  This is fine when applying this to an individual subject, however, I am uncertain of how to quantify and compare this at the group level (six subjects, two conditions).
Any help would be greatly appreciated.
Many thanks
Nik,
It seems like you want to standardize each subject's FFT or wavelet spectra by some baseline amplitude (or standardize by amplitude of surrounding frequency bands) to account for volume conduction differences and then compare across subjects. Spectral estimates within the same subject could be directly compared (if you have enough samples per condition) or the standardized spectra could be compared.
You may also want to sum across power measures in certain frequency bands to calculate power in a certain range (e.g. alpha 8-12 Hz) that encompasses each subject's peak. Subjects have individual variation in the frequency location of certain bands (e.g. one subject will have a peak resting alpha peak at 8 Hz while another subject will have a peak resting alpha peak at 10 Hz).
• asked a question related to Biomedical Signal Processing
Question
[cA,cD] = dwt(sig, 'db1'); i have used this code to decompose a signal and i have obtained CA and CD of Size (Ixn) but if i change the code to some other 'wname' like db2, db4 etc i am getting a signal of size of (I x(n-1)) but i require a size of (IXn). kindly help me how to solve this
Before you do the DWT decomposition, you can add zero at the end of your signal.
sig = [sig 0]
[cA,cD] = dwt(sig, 'db2');
• asked a question related to Biomedical Signal Processing
Question
ECG feature extraction algorithm for mobile healthcare applications.
If you are speaking about the sampling characteristics when sampling ECG then the first question to ask is 'what problem are you solving?'.  Specifically, are you only interested in calculating HR or do you intend on detecting arrhythmias?  If arrhythmias: life-threatening, atrial, ventricular?  Do you want to work with people with pacemakers (single/dual)?  The answers then will drive your sampling rates of anywhere from 100 Hz to 500 Hz,  It also will drive what type of bandwidth filter you want to use.  Real-life ECG does not look like it does on TV hospitals shows:  it is full of noise.
• asked a question related to Biomedical Signal Processing
Question
Are there any metrics to compare the robustness of 2 features for an image? I need to compare and choose which feature vector would be apt for my spine image dataset.
i found out that HOG features are best when compared with eigen features or fisher features. i don't know particularly about the spine images in specific, but i can tell you that you can start with finding the HOG features.
i worked on face images. you can see my paper explaining about finding the HOG features and the importance of HOG features.
instead of spending time in identifying the methodology for the best feature vector, you can work with already existing and experimentally proven features one by one. i hope you will be succeeded with the first experiment.
MATLAB is the best platform for finding the features for images.
plenty of MATLAB programs are available in the internet.
previously i tried other features like SIFT and so on. i didnot get as much output as HOG features.
all the best
• asked a question related to Biomedical Signal Processing
Question
How far these images can be used for identifying cancer?
Dear Sreevidya
i think this paper is useful:
Phys Med Biol. 2006 Aug 7;51(15):3733-46. Epub 2006 Jul 12.
Quantification of bioluminescence images of point source objects using diffusion theory models.
Comsa DC1, Farrell TJ, Patterson MS.
Author information
1Juravinski Cancer Centre and McMaster University, 699 Concession Street, Hamilton, Ontario L8V 5C2, Canada.
Abstract
A simple approach for estimating the location and power of a bioluminescent point source inside tissue is reported. The strategy consists of using a diffuse reflectance image at the emission wavelength to determine the optical properties of the tissue. Following this, bioluminescence images are modelled using a single point source and the optical properties from the reflectance image, and the depth and power are iteratively adjusted to find the best agreement with the experimental image. The forward models for light propagation are based on the diffusion approximation, with appropriate boundary conditions. The method was tested using Monte Carlo simulations, Intralipid tissue-simulating phantoms and ex vivo chicken muscle. Monte Carlo data showed that depth could be recovered within 6% for depth 4-12 mm, and the corresponding relative source power within 12%. In Intralipid, the depth could be estimated within 8% for depth 4-12 mm, and the relative source power, within 20%. For ex vivo tissue samples, source depths of 4.5 and 10 mm and their relative powers were correctly identified.
good luck
• asked a question related to Biomedical Signal Processing
Question
Hello Friends:
I'm sending out a general call for your help in deciding on a thesis topic for my MS degree. I had an MSEE and had worked as an electronics engineer for 20 years (in US Defense, FiberOptics, Data Storage, Machine Vision industries). Now decided to leave it behind and returned to school this past January 2016 for an MSBE degree (Ph.D. later on, God willing) since I wanted to meld my knowledge in electronics with the new field of bioengineering(new to me anyways). The problem is I have no life sciences background (Biology, Chemistry, BioChem, etc.) to speak of since high school (and that was a really long time ago!). All thesis project ideas I have seen are so biology/life science-based which I, unfortunately, can't do (without spending another year or two acquiring that knowledge). Designing standard bioelectronics devices such as heart rate monitors/pacemakers etc. bores me silly and honestly don't think one can submit that as a thesis topic as still be an honest individual. I have the following interests:
- Image Processing ... I designed an IP board as my MSEE thesis back in the day). Analyzing MRI scan images seem to have been done to death. Is it still a topic worthy of an MS degree? If so, any new challenges here?
- Bioimpedance measurements ... I'm new to this but find the whole concept intriguing and fascinating. But designing body fat measurement devices is also too boring and technically dumb. Not worth an MS degree in my opinion. Sorry!
- Biosensors ... new to them as a concept and find them also very intriguing and fascinating. But I'm afraid my lack of biology/biochemistry would be a hindrance and burden to me.
Any suggested project must be realistically doable within a 4-5 month timeframe, tops. I'd start in Spring 2017 then finish in the following summer.
Thanks All :)
- David
A rapidly evolving area of very diverse  needs may be described broadly as “Independence Engineering”: Solutions for people living with disabilities, chronic disease or who are simply frail and aging, can incorporate significant innovation or adaptation of our existing technologies. It may not seem as sexy as many of the historical advances that leap to mind when thinking of Biomedical Engineering, but the marketplace is huge and growing, and many of the innovations require less life science knowledge. Understanding of neurotransmission, the cardiac cycle or the workings of the immune system are hardly vital to be effective .  Just an idea, Good Luck!....GW
• asked a question related to Biomedical Signal Processing
Question
Dear all
I am engaged with a project, which is related to the stimulation of pancreatic beta cells with different electrical wave shapes. My computational analysis based on mathematical model of this cell shows that if induced electrical field in the membrane area arrives to several hundreds of kv/m, the electrical stimulation my change cell functions. Now I have faced with some ambiguities if the electric field in membrane area is equal to the electric field produced by applying voltages to the electrodes both sides of the cell culture medium (separated by 10 cm distance) or it is different?
any help will be appreciated.
Regards,
I would recommend solving the Poisson equation for an electric field using COMSOL. You can look up COMSOL, a finite element solver, I'm pretty sure it already has the equations for electric field distribution over a domain, You would need to input your geometry and the setup of the simulation will include the cell and the electrodes and the applied field at the electrodes.
• asked a question related to Biomedical Signal Processing
Question
In order to test any event detection algorithm, it is common practice to compute a confusion matrix, in order to get performance parameters (e.g. sensitivity, and specificity).
It is well known that the confision matrix must be built (identifing and) counting the number of negatives/positives true/false detections, according to a pre-annotated dataset (Gold Standard).
Now, here is my question: how can i identify a true/false positive?
Let me show you a little example.
My algorith wants to detect QRS-Complex's peak, in order to get R-R intervals of a ECG recording. My pre-annotated dataset identify QRS complex not on QRS peak, but some samples before.
It is obvious that, testing my algorithm, i cannot identify a true positive detection "when my algorithm identify the same point as the gold standard", since there's always a time-shift between them. At the other side, all of my detections (because of the time-shift) would be identified as false positives (no time-coincidence with Gold Standard).
An easy solution would be to consider a "coincidence-window" around each point in the Gold Standard but, if i fix the problem with true/false positives, the problem with true/false negatives remains still unsolved.
Has anybody an idea? (Any reference would be great for me).
Thanks a lot.
Best regards,
Marco Bilucaglia
Chandola, V, Banerjee, A & Kumar, V 2009, ‘Anomaly detection: A survey’, ACM Comput. Surv., vol. 41, no. 3, pp. 1–58.
Chandola, V, Banerjee, A & Kumar, V 2012, ‘Anomaly Detection for Discrete Sequences: A Survey’, IEEE Transactions on Knowledge and Data Engineering, vol. 24, no. 5, pp. 823–839.
Varun Chandola, Deepthi Cheboli & Vipin Kumar 2009, Detecting Anomalies in a Time Series Database, Department of Computer Science and Engineering, University of Minnesota, 4-192 EECS Bulding, 200 Union Street SE, Minneapolis, MN 55455-0159 USA, Minneapolis.
If I remember correctly: If the process is stationary and the distribution of the random walk is parametric, then state-space methods for time series analysis can be appropriate to use.For example, the R package MARSS implements this. If the distribution of the random walk is non-parametric or the process is not stationary, then simulations need to be employed. Perhaps, particle filtering can be employed.
• asked a question related to Biomedical Signal Processing
Question
I need a free software to simulate athletic movements, for example parallel movements in gymnastics. I will be appreciate that someone help me about this matter.
Hi Bas
Thanks so much
• asked a question related to Biomedical Signal Processing
Question
i want to obtain the cardiac sound characteristic waveform proposed in the paper available at following link
the equation is:  C1Y2(n)+C2Y1(n)+C3Y(n)=X(n), where X(n) is input discrete signal.
...just a guess.. maybe what will help is Groebner basis .
" Basic Examples  (1)
Compute a Gröbner basis:
In[1]:=GroebnerBasis[{x^2 - 2 y^2, x y - 3}, {x, y}]
Out[1]  = ~9+2y^4 ,3x-2y^3  "
hope it helps
Cheers

• asked a question related to Biomedical Signal Processing
Question
Hi all. I'm currently trying to expand upon an analysis in which I only used a small selection of channels as my ROI, and now I'm considering a data driven approach. Is there a consensus on the best method for this, or is it more of a trial and error item?
MATLAB, R, and NumPy Python all have svd() functions that call similar linear algebra libraries. An example script/function to calculate single-trial ERP estimates in R is attached.
For data reduction, one could submit the time*channels trial-averaged EEG matrix to a PCA algorithm or just apply the SVD to the trial-averaged EEG and right-multiply reduced U to reduced S (see the attached wikipedia article)
• asked a question related to Biomedical Signal Processing
Question
The standard scipy.signal.resample is used to resample the signals, can anybody tell me how we can change the sampling frequency of speech signal from 44100 Hz to 8000 Hz using scipy.signal.resample function??
Hi,
Here is a suggestion, but not using scipy.
You can do a lot of things using "sox" like getting information about your audio recording, subsampling, trimming ..
Once installed using :
>> sudo apt-get install sox
This will install many binaries like :
- soxi : used to get information about a recording
- sox : used to process a recording
- play : used to play a recording
Here is an example :
You can get information about a sphere audio file "file.sph" by typing :
>> soxi file.sph
-------
Input File : 'file.sph'
Channels : 1
Sample Rate : 8000
Precision : 14-bit
Duration : 00:05:09.95 = 2479616 samples ~ 23246.4 CDDA sectors
File Size : 2.48M
Bit Rate : 64.0k
Sample Encoding: 8-bit u-law
------
Here, the sampling frequency is 8000Hz. To do a subsampling (8000Hz --> 7000Hz for example), you can do something like :
>> sox file.sph -r 7000 file2.sph
then you can check the produced file using soxi :
>> soxi file.sph
------
Input File : 'file2.sph'
Channels : 1
Sample Rate : 7000
Precision : 14-bit
Duration : 00:05:09.95 = 2169664 samples ~ 23246.4 CDDA sectors
File Size : 2.17M
Bit Rate : 56.0k
Sample Encoding: 8-bit u-law
------
You can do the same on your files. sox supports a lot of file formats : WAV, SPHERE, RAW, amongst others.
• asked a question related to Biomedical Signal Processing
Question
What are the best opensource tools for signal processing ?
I think Octave is very good and Matlab compatible.
• asked a question related to Biomedical Signal Processing
Question
I'm doing my research in biomedical signal analysis.. Can I get some of the frequency domain analysis methods which best suits for biomedical signals, probably which could be implemented in hardware as well?
Hello.
By biomedical signals, I suppose you mean nonstationary signals? A number of other factors could also be present, such as vector signals (array of sensors or electrodes), low signal-to-noise ratio, short observation interval, etc. If the main problem is nonstationarity, you need time-frequency analysis, as suggested by Hadi, above. The basic tool is the FFT applied over a window, usually with time-domain tapering (windowing) and averaging, which is called STFT. There are other techniques such as wavelets and more general transforms like Wigner Ville, but STFT is the easiest to do and very fast due to the use of the FFT. You can also apply this to vector or array sensors (as in sonar and radar signal processing). I would always plot the spectrogram  from the STFT first as it's so easy to interpret.. The STFT is also easy to implement on a DSP.
If you have a short data segment, you might need to allow for initial transients, in which case you can try a 2D power spectral density. A reference is attached.
• asked a question related to Biomedical Signal Processing
Question
Basically I have two time series signals, obtained from different sensors. One signal has a constant sample rate (20 ms), while the other has different and variable sample rate (it goes from 10 ms to almost 1000 ms). I realize of this problem after analyzing my data. The last signal was acquired through a sensor connected to a local network, so I think that is the reason of such variability.
Hola Arturo.
If the Nyquist limit is not violated in both data, you could:
1) resample the data with the fixed sampling rate (FSR), so that its samples are 10 ms appart from each other. It suffices to perform the instruction "resample" in Matlab with p=2 and q=1.
2) The data with the variable sampling rate (VSR) is adjusted according to a time vector T0, T1+DT0, T2+DT1,...
where DT0, DT1,... are variable numbers between 10ms and 1000ms. Supposing you have this time vector, you should interpolate them according to a NEW time vector
t0, t1+Dt,, t2+2*Dt...,
where Dt=10ms. By performing such interpolation, bot datasets are at the same sampling rate.
Hope this helps. Good luck!
Fernando
• asked a question related to Biomedical Signal Processing
Question