How to use the FFT like a pro, 3 essential signal prep tips

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

ความคิดเห็น • 44

  • @BCarli1395
    @BCarli1395 9 หลายเดือนก่อน +7

    Thank you. Concise and accessible, yet still gives a surprisingly thorough introduction to sampling issues.

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน +1

      Glad it was helpful. Two more videos are coming in this series which I'll be releasing over the next few weeks. However, you can see them already as I have linked to them on the end screen.

  • @yds6268
    @yds6268 9 หลายเดือนก่อน +3

    I did not expect this video in my feed, but it's exactly what I need

  • @RafaelHA2010
    @RafaelHA2010 5 หลายเดือนก่อน +1

    im not an engineer, im learning EEG analisis and ur vudeos have been so helpfull, thanks and greettings from CDMX

  • @bradzepfan
    @bradzepfan 9 หลายเดือนก่อน +3

    OMG you are INCREDIBLE. what a treasure!

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน

      You're always so nice about my stuff! Thanks.

  • @ItsMeTheUser
    @ItsMeTheUser 9 หลายเดือนก่อน +1

    Welcome back sir! Great video as always!

  • @acidangel162
    @acidangel162 9 หลายเดือนก่อน +1

    Great video. I especially like the part about the windowing function. You explain why it's needed really well. Hanning window is OK when you are dealing with low dynamic range. Like 10 to 20 dB. It falls short when you increase the dynamic range above that. I recommend the Kaiser window. It has somewhat narrow main lobes and is adjustable. You can even go above 100 dB of dynamic range. You can select the correct value for the Kaiser window based on how much dynamic range you need. For audio 50-60 dB is sufficient.

  • @sathyaprakash153
    @sathyaprakash153 9 หลายเดือนก่อน +2

    Very nicely explained.

  • @adastra123
    @adastra123 8 หลายเดือนก่อน

    Just ordered the book.
    Brilliant , brilliant brilliant 👏.
    Thanks so much.

  • @orterves
    @orterves 9 หลายเดือนก่อน +2

    This is fantastic, thanks!

  • @emiliomartineziii2980
    @emiliomartineziii2980 4 หลายเดือนก่อน +1

    Has the course been released yet? I clicked the link hoping to buy it but it said it was not available

    • @MarkNewmanEducation
      @MarkNewmanEducation  3 หลายเดือนก่อน

      I just released the course today. If you sign up before 12th September, you can get a 10% discount by entering the coupon code: LAUNCHWEEK on the checkout page. Clicking on the following link should apply the code automatically: howthefouriertransformworks.com/courses/?coupon_code=LAUNCHWEEK

    • @emiliomartineziii2980
      @emiliomartineziii2980 3 หลายเดือนก่อน

      @@MarkNewmanEducation Totally going to do it. Thanks a ton

    • @MarkNewmanEducation
      @MarkNewmanEducation  3 หลายเดือนก่อน

      I just got a notification that you bought the course. Thanks. I hope you find it useful. If you have any questions, please email me at mark@howthefouriertransformworks.com

    • @emiliomartineziii2980
      @emiliomartineziii2980 3 หลายเดือนก่อน

      @@MarkNewmanEducation Yeah I bought it because your book saved me countless hours. I will probably let you know in a few months how I would rate it. Also, I’m close to becoming an instructor at a university, so if your course turns out to be legendary like the book, I would seriously consider making your book and online lessons a required text/supplement for students

  • @alopez545
    @alopez545 9 หลายเดือนก่อน

    The boss is back!

  • @Pedritox0953
    @Pedritox0953 9 หลายเดือนก่อน

    Great video! Very entertaining

  • @AnimeSyncInfinite
    @AnimeSyncInfinite 9 หลายเดือนก่อน +3

    The G.O.A.T

  • @deeps-n5y
    @deeps-n5y 9 หลายเดือนก่อน +1

    Thank you ❤

  • @joaopedrorocha4790
    @joaopedrorocha4790 3 หลายเดือนก่อน

    treasure chest found hiding on youtube! Thanks for sharing!

  • @MrHeatification
    @MrHeatification 6 หลายเดือนก่อน

    really good

  • @RaoHaseeb-vj7ur
    @RaoHaseeb-vj7ur 6 หลายเดือนก่อน

    real life sheldon cooper feels like hosting fun with flags but its actually really fun to watch

  • @matthewduck302
    @matthewduck302 9 หลายเดือนก่อน

    Hi Mark could you please help, I follow what you are saying in the video, but for applications of the FFT, typically the algorithm does not ask for the Fs of the signal when I implement it in MATLAB or Python. At most it allows for me to specify the size if I want to pad it up to a different length, but it doesn’t need the Fs. I know how to scale the axis when it gives me an output, but how does it know what frequencies to test in the signal if I don’t feed it the sample rate? For example, If I have a function with frequency content up to say 10 MHz and I only have 10,000 data points with a sampling rate of 30 MHz, the FFT in programming doesn’t explicitly ask for the sampling rate, so wouldn’t it only check frequencies up to 10 kHz for the 10,000 points? Caveat that the result looks correct without the giving the sample rate. Why is this?

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน +1

      The FFT algorithm itself will not actually tell you the frequency of any of the sinusoids in your signal. It doesn't care about it. As far as it is concerned, it sees the frequency as an index which ranges from 0 to your FFT size rather than what we would like to see as a number in Hz. In the same way, the FFT algorithm won't directly tell you the Magnitude or Phase of each sinusoid. It only gives you the cosine (real) and sine (imaginary) components for each sinusoid in the signal. If you want to know the Frequency, Magnitude or Phase, you have to work it out for yourself from the list of complex numbers. In your example, you are sampling your signal at 3 times the highest frequency which is great. You won't miss out on any data. To work out the actual frequency of each item in the list, you need to take the position of the item (which will range from 0 to 9,999) and divide it by the number of samples in your FFT (10,000), then multiply the result by 30Mhz. This will give you the frequency in Hz.
      Just an observation: 10,000 samples is not a power of 2. If the FFT is running without giving you an error message, then MATLAB is doing something to your signal to make the number of samples a power of 2. Otherwise, the FFT cannot run. The shape of your output may well look right. However, check the actual sample values. They will be a scaled version of the real frequency of each sinusoid unless MATLAB is doing something really clever and is somehow working out what the sample rate is in some way. (For example, if you are feeding it 2 columns of data, one containing the timestamp of each sample and the other containing the amplitude).

  • @polarizadmax
    @polarizadmax 9 หลายเดือนก่อน +1

    How about zero padding the signal with low number of sample ? 🤔

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน +2

      Aha... you're anticipating next week's video. I've linked to it on the end screen.

    • @keipfar
      @keipfar 9 หลายเดือนก่อน

      If you feed your fft algorithm with a sample of size N, the fft by default gives the spectra for only N values of frequencies. But it could give you more. If you want more values, you trick the fft algorithm by using Zero padding (adding zeros to your original sample to increase artificially N without changing the information of the signal). Zero padding does nothing to address the sampling rate issue; it doesn't change the information contained in the signal.

    • @polarizadmax
      @polarizadmax 9 หลายเดือนก่อน

      @@keipfar And what if we insert zero between sparse less number of samples before FFT/DFT ?

    • @keipfar
      @keipfar 9 หลายเดือนก่อน

      @@polarizadmaxI am not aware of such techniques. My guess is you will distort the content of the signal. I don't know.

  • @rezah336
    @rezah336 9 หลายเดือนก่อน

    give some examples of the power of the fourier transform, always show applications

  • @nareshkumar4207
    @nareshkumar4207 9 หลายเดือนก่อน

    How do we find the highest frequency present in a signal?

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน +2

      Ahh. That's difficult. You really need to know something about your signal first. How do you know how big something is until you measure it, but the very act of measuring, in this case, has the potential to alter the measurement. It's more a case of deciding which frequency range interests you. For example, if this is an audio signal that you want humans to hear, filter out anything above 20kHz as we can't hear those frequencies anyway.

    • @nareshkumar4207
      @nareshkumar4207 9 หลายเดือนก่อน

      @@MarkNewmanEducation Thank for your kind reply sir.

  • @elijahjflowers
    @elijahjflowers 9 หลายเดือนก่อน

    have you used the FFT on thought?

    • @MarkNewmanEducation
      @MarkNewmanEducation  9 หลายเดือนก่อน +1

      No I haven't! That's an interesting idea. How would you measure thought?

  • @n4whhdb
    @n4whhdb หลายเดือนก่อน

    We call aliasing VoIP 😂