Filter löschen
Filter löschen

generating matched filter for a rectangular pulse waveform

12 Ansichten (letzte 30 Tage)
Hello,
I am working in a project where there is a waveform generated in a rectangular pulse shape between values either 0 or 1 and now I want to generate matched filter for it. so in order to generate the matched, Is all what I am going to do is to convolute the waveform by itself ?
so for example if I have a waveform x = [1 0 1 0 0 1 1 1 0] to do the matched filter it will be y = conv(x,x) ?
  1 Kommentar
Image Analyst
Image Analyst am 31 Dez. 2019
What do you want as the output? Do you want a 1 every time a pulse starts, regardless of how long the pulse is? So you'd want filteredx = [1 0 1 0 0 1 0 0 0]
OR you'd want only the starting location(s) of pulses of the same length as your template (their lengths match). Like if your template is [1 1 1] or [0 1 1 1 0] then you'd get filteredx = [0 0 0 0 0 1 0 0 0].
And if pulses are longer than your template pulse, do you want to give interior places where it matches, like if x = [1 0 1 0 0 1 1 1 1 10] and your template to match is [1 1 1] do you want filteredx = [0 0 0 0 0 1 0 0 0 0 0] or filteredx = [0 0 0 0 0 1 1 1 0 0 0].
Which matched filter case do you want?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Honglei Chen
Honglei Chen am 31 Dez. 2019
In general matched filter is the conjugated time reversal of the waveform, like
y = conv(x,conj(flip(x)))
HTH

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by