We use a data acquisition card to take readings from a device that increases its signal to a peak and then falls back to near the original value. To find the peak value we c
This method is basically from David Marr's book "Vision"
Gaussian blur your signal with the expected width of your peaks. this gets rid of noise spikes and your phase data is undamaged.
Then edge detect (LOG will do)
Then your edges were the edges of features (like peaks). look between edges for peaks, sort peaks by size, and you're done.
I have used variations on this and they work very well.