Matched filters: Python demo detecting heartbeats (Py)

Поділитися
Вставка
  • Опубліковано 12 лис 2024

КОМЕНТАРІ • 12

  • @mold971
    @mold971 3 роки тому +1

    grüß gott herr lehrer dank für die hilfe

  • @pablolmatencio2658
    @pablolmatencio2658 6 років тому +1

    Your explanation is very clear. Thank you. I would like to detect dominant frequency from an accelerometer which seems similar process. The problem that I have is that my data is a real time continuous stream captured from a sensor. May I ask you how to get the accelerometer impulse rate in real time? Thanks

    • @DSPcourse
      @DSPcourse  6 років тому

      I guess you need a proper FIR filter in C++. Same approach. Reverse the template and put the coefficients in the FiR filter. github.com/berndporr Also Python allows Realtime filtering with lfilter sample by sample. Just Google it for the syntax.

  • @B4H4MuTT
    @B4H4MuTT 2 роки тому

    How is that for a complex signal? Is the filter still just the time reverse?

  • @TheKirkelton
    @TheKirkelton 6 років тому

    Hey, nice demo, but can you explain why you simple use the values of the template as the filter coefficents? The same for the highpass and band-stop filter for dc and 50Hz cancelation. I dont get why the coeffiecients for the FIR correspond to the values of the template, respectivly the inverse FFT of your filter. Thanks for explaining

    • @BPMbiosignals
      @BPMbiosignals 6 років тому

      The pre-filtering has nothing to do with the matched filter per se. It just makes the detection reliable and easier. The matched filter acts _purely_ in the time domain. An FIR filter performs a poor man's convolution (just N samples and not infinity) between its impulse response and the incoming signal. A matched filter does a correlation between a signal and a template. In order to use an FIR filter for a correlation you need to time-reverse the template. See the previous clips which explain the theory.

  • @hansyney5669
    @hansyney5669 6 років тому

    Thank you for your video! Very useful!!!Do you mind sharing the
    file in the video? The command MAY BE:
    data = np.loadtxt( 'ecg_***.dat' )
    I want to generate the same
    signal as you did.Many thanks.

  • @cristianzamparini7712
    @cristianzamparini7712 4 роки тому

    Hi, can you explain how did you prefilter the signal?
    how you removed the DC and the 50HZ noise, did you find any function for it?

    • @davidkooi4349
      @davidkooi4349 2 роки тому

      For anyone in the future; you can remove DC offset by taking the derivative of the signal. You'll have to do the rest with the derivative, but if you recall, the derivative of a constant is 0.

  • @shilincreji5368
    @shilincreji5368 3 роки тому

    Please provide me with the code

  • @fakefake4716
    @fakefake4716 6 років тому

    Hey i need that code please give me link for downloading code....
    For my college project purpose

    • @DSPcourse
      @DSPcourse  6 років тому +1

      These lectures are part of flipped classroom teaching. This means that you need to write that code after you have watched the videos here. I'm sure your teacher will agree with it.