LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

problem in peak detection

Respected sir/madam,

 

i am actually processing human radial artery pulse signal... i acquired that signal and linearised that by using filter...
there is a problem in peak amplitude detection and location...by manually we can say there is more number of peaks ..but peak detector shows only 25 peak's amplitude and their locations...i can't understand about locations that shows..i attached the data which is in .lvm extension and the vi

please help me to rectify the problem..

 

thank you

Download All
0 Kudos
Message 1 of 5
(3,366 Views)

hi,this is the data

0 Kudos
Message 2 of 5
(3,357 Views)

Once again the Dynamic Data Type (DDT) generated by the Express VIs hides the real problem.

 

The data segments are too short to reliably detect the peaks - not every segment has a peak and some peaks may be partly in one segment and partly in the next. By combining all the data into one waveform before filtering and peak detecting, it is possible to get reliable matching between the "eyeball" peak detector and the software peak detector.

 

Note that the large transients at the beginning of the data set are detected as peaks. These transients are due to the real transient in the data and the transients of the filters. I did not attempt to remove them. You could use Array Subset with either manual selection of the end of the transient or some automated process based on the larger amplitude and lower frequency of the transient compared to the real signal.

 

There is  a lot of "stuff" in this VI - things I tried and did not remove and multiple ways of doing things.  The enabled diagrm of the Diagram Disable structure has a constant with the data from your file so that I did not need to read and process the file repeatedly while working on the filters and peak detector.

 

Comments in no particular order regarding what I did and how the posted VI works.

1. The DDT data from Read from Measurement File.vi is converted to an array of waveforms. The Waveform data type is well docmuented and the internal data structure is readliy accessible.

2. Each element of the array of waveforms from Read from Measurement File.vi is appended to the corresponding element from the previous iteration to form one array of waveforms containing all the data in the file. This is displayed on Array of Waveform, Array of Waveform 4, and Signals total. Note that these are graphs, not charts.  The data is also put into 2D arrays as Array of Waveform 2 and Array of Waveform 3.

3. I do not have Advanced Peak Detector PtByPt.vi, but I think the data is not truly point by point so this may be a poor choice.

4. I used the standard filter VIs (rather than Express VIs) to stay away from DDT. The outputs are slightly different, but the Express VIs do not give you complete control or knowledge of what the filter setup is. I used Butterworth filters for both filters and adjusted the cutoff frequencies slightly to get similar waveforms.

5. I used the standard Peak Detector.vi from the Signal Processing >> Signal Operations palette. It reliably finds 104 peaks over a wide range of widths and some variation in thresholds.  That count includes the transients at the beginning as mentioned above.

 

The .2 VI contains all the junk code I described above. The .3 VI is a cleaned up version.

 

Lynn

Download All
0 Kudos
Message 3 of 5
(3,317 Views)

thank you so much sir... it is very useful and understandable to me..thank you once again..

0 Kudos
Message 4 of 5
(3,297 Views)

thank you sir , 

 

i used this same code which is given but i changed filter high pass as low pass (5 order, 5 freque ncy)and low pass filter as high pass(2 order, 0.8 frequency)

i got the same base line as well as peak amplitude of the waveform ...

 

but i have to find the peak amplitude value (from base to peak) , it shows oly peak value (from zero to peak)..what i have to do? or otherwise  how can i shift this negative lower value in the waveform to zero line? if it is possible means the same peak detector much usfull for detecting peak amplitude in waveform...

 

here i attached the vi and data...

 

 

Download All
0 Kudos
Message 5 of 5
(3,240 Views)