How do I stack 10 shots from seismic source to produce a resultant signature with greater signal/noise ratio?

3 views (last 30 days)
This bolt gun signal (attached) shoots a seismic source every ten seconds. You can see the signature dramatically changes as the ship passes over the geophones. How do I stack the shots fired in this interval to produce a new signal with a greater signal to noise ratio?
  1 Comment
John BG
John BG on 16 Jan 2018
Edited: John Kelly on 17 Jan 2018
Hi David Norris
The spectral contents is way above 1Hz, and the signal processing has to be focused where the signal spectrum present, not where it's absent.
Would you please be so kind to comment my answer?
Appreciating time and attention
John BG

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 15 Jan 2018
What result do you want? You already seem to have removed the 0.1 Hz bolt gun signal, since it does not appear in your Fourier transformed signal (at least that I can see).
I would just use a filter (highpass, lowpass, bandpass or bandstop) to pass your frequencies-of-interest, eliminating everything else. The signals from the ship appear to have a frequency range of about 0.8 to 1.2 Hz, so filtering those in or out — depending on what you want — would likely be easiest.
  5 Comments
Walter Roberson
Walter Roberson on 16 Jan 2018
"To David Norris, would you please be so kind to comment and confirm that you have marked Star Strider's answer as the accepted answer?"
See the 7th item on this screen snapshot from the Activity log. Times are UTC. You can examine the entry yourself at https://www.mathworks.com/matlabcentral/answers/activities?s_tid=gn_mlc_ans_rec. The relative position will have changed by the time you look, but with the time information you should be able to locate it.

Sign in to comment.

More Answers (1)

John BG
John BG on 15 Jan 2018
Edited: John Kelly on 16 Jan 2018
Hi David Norris
Calculate the average pulse repetition with a squelch and then chop the input signal so that you only have 1 pulse per segment of input signal.
As a reference;
in the expanded specs one reads
gap-free, dynamically overlapping FFT
Apply FFT to each segment (AKA the time sliding window).
The window can be sliding or shift at known intervals, if the pulse repetition is well known and fairly constant.
Then you can also filter each segment containing a single signal pulse, not the whole raw input, as you have done for the attached picture in the question, showing the spectrum of 20 pulses.
Calculate the SNR of only one pulse, then noise from other segments now does not contribute to each processed pulse.
If you filter with such fixed and very low cut off filters you may lose the data of interest that seems to happen between seconds 100 to 300, right? actually you don't need Low Pass Filtering but Band Pass Filtering, where is the DC anyway?
If you attach the signal or part of it to your question interested readers may like to have a go on the data? if you send me a sample by email I will see what I can do.
David
To any other reader, if you find this answer useful please consider clicking on the thumbs-up vote link
thanks in advance for time and attention
John BG

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!