Applied DSP No. 9: The z-Domain and Parametric Filter Design

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

КОМЕНТАРІ • 52

  • @polyhistorphilomath
    @polyhistorphilomath 3 роки тому +58

    Thanks for remembering conjugate pole pairs. Keeping it real.

  • @mutalasuragemohammed6954
    @mutalasuragemohammed6954 Рік тому +13

    The best illustrations ever for Poles and Zeros

  • @erickappel4120
    @erickappel4120 Рік тому +5

    Excellent explanation of Z-transform filter design with the effective use of graphics!

  • @grangagranga3837
    @grangagranga3837 2 роки тому +8

    The whole series is incredibly well thought through and helped me jumpstart my memory about my undergraduate course on DSP! Great thanks Mr. Kim!

  • @commandercortez
    @commandercortez Рік тому +3

    Amazing video. The quality of your production, narration, and explanation is fantastic. I'm so happy I found this

  • @dl1962
    @dl1962 2 роки тому +4

    非常的有幫助~以前從不知道z-domain視覺化會長成這樣。Thanks for the great content and the making digital signal processing more intuitive.

  • @mutalasuragemohammed6954
    @mutalasuragemohammed6954 Рік тому +1

    the selected song fed my soul...😂 Thank you, Sir.

  • @victorherbert2728
    @victorherbert2728 3 роки тому +2

    The Twilight Zone Opening was a genius move

  • @artem.shiryaev
    @artem.shiryaev Рік тому +1

    Watched the whole series, thanks for making these! Great quality work !

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

    i loved to see the visualization of the z-plane along with how moving the poles changed the cutoff frequency of the resonant filter in the musically more conventional spectrum view

  • @amber1862
    @amber1862 3 роки тому +12

    Incredible work as always.

  • @Joshua_Griffin
    @Joshua_Griffin 6 місяців тому

    Wow wow wow.
    Now, I am incredibly new to dsp, a parametric filter is the first thing I want to design.
    I am not confident that I can do it, but with this video, there is now definitely a chance!
    What a fantastic explanation.
    Time to code it in Max msp!

  • @oussamalaouadi8521
    @oussamalaouadi8521 2 роки тому +4

    i've always wanted to use manim in explanatory videos about communications engineering stuff in general, and i see that you've made a marvelous tutorials with it, very impressive, keep it up.

    • @youngmoo-kim
      @youngmoo-kim  2 роки тому +12

      Thanks for the kind words! I'm not actually using manim 🙂 Tried it, but it didn't really fit with my experience, which is all from matplotlib (and MATLAB before then). I generate the individual animation frames in matplotlib and then combine those into the individual animations. Then I use macOS Keynote to combine everything (narration, transitions).

  • @goofi953
    @goofi953 3 роки тому +4

    Excellent!! I've been waiting for that one!

  • @Da4mula
    @Da4mula Рік тому +1

    I have no math or (educational) audio background, I was just curious how filters work cause I do make music.
    You explained it in such a way that even I could get it, explained it better than others and even better than chatgpt could 👏

  • @noharahien
    @noharahien 11 місяців тому

    Great content. Insanely well made video tutorials. Very clearly expalined. Thank you so much!

  • @oberon2159
    @oberon2159 2 роки тому +2

    Great series and cannot wait for more.

  • @arthurbister8894
    @arthurbister8894 5 місяців тому +1

    That was a good revision for me a 64 yo DSP engineer

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

    I just finished the series through video #9. Your explanations and graphics are clear and concise. I’ve learned a lot. Thanks!

  • @charlesmrader
    @charlesmrader 3 роки тому +5

    Mr. Kim, I'd like to make a general comment about implementing IIR filters. Consider an IIR filter with only poles and zeroes and with all the poles either inside or outside the unit circle of the z-plane. On the unit circle or extremely close to the unit circle would not work in what I am about to suggest.
    Most people are used to the idea that an IIR filter is unstable if it has any pole outside the unit circle. But this is true only for causal IIR filters. In the case of filters with some poles inside the unit circle and some poles outside the unit circle, we can express the filter as a series connection of two filters, one causal and one anti-causal. And these are both stable filters, but the anti-causal filter must be run in the backwards time dimension.
    It is commonly supposed that such filters are impossible to realize because the filter in the anti-causal dimension cannot begin to operate until the impulse response of the causal part has died out at infinite time. However, it real life, the impulse response of the anti-causal part of the filter decays exponentially fast and therefore, to any degree of approximation error one can tolerate, the anti-causal impulse response will become effectively zero in a relatively short time, like a few hundred samples.
    This means it is quite practical to implement filters with poles both inside the unit circle and outside the unit circle. The initial input is segmented into blocks of consecutive samples, a few hundred samples per block. Each block is presented as an input to past the nominal end of the input block, which means that the outputs of the successive blocks overlap one another.
    Then each block of output of the causal IIR the filter is input to the anti-causal IIR filter, with the iteration run in the negative time direction. We can do that in real life because we can time reverse the samples of the causal filter output is we have a suitable FINITE delay. The output block of the anti-causal filter is again longer than the input, which means that there are outputs earlier than the inputs, but again we can time reverse the time reversed blocks recreating a normal order. Then each block of samples which has been filtered by both the causal and the anti-causal filter can be lined up with one another using a FINITE delay such that all the samples overlapping one another in actual time are simply added together.
    This all fits together very simply as long as one has access to a modest sized memory that can do the time-reversals of the blocks.
    This opens up a number of actual practical applications. Normally, IIR filters cannot have a linear phase characteristic, but by pairing the singularities inside and outside the unit circle in reciprocal pairs we get a symmetrical overall impulse response, which means linear phase. Because the decaying impulse responses have been cut off after their exponential decay to nearly zero, these are really FIR filters, but unlike FIR filters conventionally designed, they require far fewer multiplications for the same performance. They can be designed with analytic mappings, like elliptic low-pass or band-pass filters. Another effective design of such filters is the mathematical equivalent of an elliptic 90 degree phase splitter design, which in this case gives us an IIR filter whose output is the Hilbert transform of the input. Instead of applying two stable filters to the same input in parallel, as in the phase splitter design, we realize one of the filters on the input and put the output of the first filter into the second filter, but the second filter is a stable filter run in the backward time direction, so that the filter coefficients are the exact same numerical coefficients used in the stable design of an elliptic phase splitter.
    There are numerous other analytic designs of "unstable" filters which are stabilized by this technique.

    • @youngmoo-kim
      @youngmoo-kim  3 роки тому

      Great point, and thank you for the detailed description. Yes, there are absolutely anti-causal (but causally unstable) filter implementations used in real applications, either with a short buffer or in non-realtime processing. The "filtfilt" function (in MATLAB or scipy.signal) provides a straightforward implementation if anyone wants to play around with it!

  • @jaykareliya4072
    @jaykareliya4072 Рік тому

    IT'S VERY GREAT VIDEO, EXPLAINTAION. IT CLEARS THE CONCEPTS VERY WELL, I'VE A REQUEST FOR MORE TOPICS, SUCH AS FrFT, STFrFT, AND WVD. THANKS FOR MAKING THIS. IT HELPS A LOT TO UNDERSTAND.

  • @Ivan-tw4cz
    @Ivan-tw4cz 3 місяці тому

    Beautiful video

  • @NoNTr1v1aL
    @NoNTr1v1aL 3 роки тому +2

    Amazing video!

  • @Electronics4Guitar
    @Electronics4Guitar 3 роки тому +4

    Typo: when you explained the shifting property you multiplied by x^(-2)…x^(-k) instead of z^(-2) etc.

    • @youngmoo-kim
      @youngmoo-kim  3 роки тому +2

      Thanks, yes it's a terrible typo. I put a note in the video description about the error. When I have more time, I'll try to fix it and re-upload the video.

  • @clementbarthes2817
    @clementbarthes2817 2 роки тому +1

    Amazing! Thanks!

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

    That was a very cool intro

  • @pauliunknown8118
    @pauliunknown8118 3 роки тому +2

    this is genius,

  • @ryanfeng
    @ryanfeng 8 місяців тому +1

    Excellent video! Btw, there are some typos in 9:09.

  • @xamogxusx
    @xamogxusx Рік тому +2

    We need moreeeeee

  • @rolfw2336
    @rolfw2336 2 роки тому +1

    I've watched a few of Youngmoo's videos on Applied DSP, and I am super impressed with the presentation!
    Can't wait to see more.
    But I'll admit, on this video (No. 9) I am a little stumped on why the IIR filter at the end is called biquadratic?

    • @youngmoo-kim
      @youngmoo-kim  2 роки тому +1

      The individual sections (two-zeros and two-poles) are composed of 2 quadratic functions (numerator and denominator), hence "biquadratic". We can then combine these biquad sections to create more complex IIR filters, like the combined one shown around 17:25. Hope that makes sense!

  • @tanchienhao
    @tanchienhao 3 роки тому +6

    Great video!! 9:18 is it supposed to be z^-2 instead of x^-2 ?

    • @youngmoo-kim
      @youngmoo-kim  3 роки тому +5

      Whoops! Thanks for the catch! Yes, those should definitely be factors of z, not x. I'll add a note in the description.

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

      @@youngmoo-kim awesome video!!

    • @zachh7375
      @zachh7375 Рік тому

      I noticed it too and came to the comments. This is a brilliant video by the way, something my professors could never teach as clearly. I am absolutely amazed 👏

    • @sepphashemi4324
      @sepphashemi4324 Місяць тому +1

      thanks for the question. helped me too directly hahahahah

  • @Amine-gz7gq
    @Amine-gz7gq 22 дні тому

    How frequencies beyond w=pi are represented on the unit circle ? Why is the Z-transform used in control theory and why is it said to be the discrete equivalent of the Laplace transform (by the way, does this sentence really make sense) ? The playlist is good but not very beginner friendly, it's still very useful for people who are well initiated in signal processing. I think this is the best video on the Z-Transform. From now on, this subject is less abstract for me, I can visualize it in my head and measure the power of the Z-transform and digital filters. Thank you very much. Greetings from Tunisia.

  • @3x10E8
    @3x10E8 Місяць тому +1

    This is fantastic! But just to clarify, 4:48 might have a minor error: as we are defining z = re^{jw}, the DTFT expression would need r^{-n} e^{-jwn}, but the slide currently only has r e^{-jwn}.
    Perhaps that part can be referred to in this other video ua-cam.com/video/XJRW6jamUHk/v-deo.htmlsi=1qnpl0gNGSLnovh7&t=747

  • @yejieguo2844
    @yejieguo2844 5 місяців тому

    brilliant·

  • @ytubeleo
    @ytubeleo 2 роки тому +1

    Thanks for making these! Any update on video 5 and the others, etc.? Are they still in the pipeline, realistically, or are they likely not to happen? Also, I notice that in the description you say video 7 will be "No. 7: The Importance of Being Linear and Time-Invariant" but currently there is already a video 7 titled "The Convolution Theorem". What's the plan there? Please keep going! Really looking forward to the next video.

  • @justalittlestretch9404
    @justalittlestretch9404 3 роки тому +3

    How did you get such a nice voice-over. It's great.

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

      I'd assume he's great at audio editing :D

    • @youngmoo-kim
      @youngmoo-kim  2 роки тому +1

      Thanks! Just using a halfway decent USB mic and some equalization. Glad you like it 🙂

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

    Yea I too Noticed Download is Greyed Out..
    But didnt See Any Copyright Claims In Description

    • @youngmoo-kim
      @youngmoo-kim  2 роки тому +1

      Turns out the song Rockin' Robin is public domain in the US, but not worldwide. Hence the copyright claim 😡 Sorry, I'm trying to avoid such issues in future videos!

  • @Tea0604
    @Tea0604 8 місяців тому +1

    hope someday will be subtitle

  • @andrielmontenegro2027
    @andrielmontenegro2027 2 роки тому +1

    Hey, when do you gonna release the next one? And also, why don't you release your course on Udemy or something like that? I would pay greatfully for that

    • @colestephens1648
      @colestephens1648 2 місяці тому +1

      Hey don’t give him any ideas these classes are getting me through signals and systems and understanding it. By all means he should pay for it but man I love that he doesn’t

  • @claycowartisamazing
    @claycowartisamazing 9 місяців тому +1

    Homie is very smart but has poor musical tastes.... that song selection.... good lord.