Settings

Theme

An Interactive Introduction to Fourier Transforms

jezzamon.com

230 points by a1k0n · 22 comments

Reader

14 threads
agurk

This is great as it doesn't just explain the basics, it also shows how they are used in MP3 and JPEG files.

I always had a very vague "throws away data that's not perceived" idea of how MP3 works. With the background from this I was able to really understand the wikipedia page and found this great Ars[0] article from 2007 to cement my understanding.

[0] https://arstechnica.com/features/2007/10/the-audiofile-under...

Waterluvian

This is incredible.

If I wanted to collect things like this to teach my kids, where do I look? How do we gather amazing resources like this in one spot?

I particularly love that it focuses on one topic and nails it.

SlowRobotAhead

Wow. This is by far, hands down, the best way I have ever seen this explained. Just excellently done.

unao

Very impressive end enlightening indeed.

SmarterEveryDay published a video on this topic few weeks back: https://www.youtube.com/watch?v=ds0cmAV-Yek

sbergjohansen

At the time of writing the Gibbs phenomenon -- the overshoot occurring at discontinuities of a square wave, which does not go away no matter how many harmonics are included (see https://en.wikipedia.org/wiki/Gibbs_phenomenon) -- is not correctly represented in these visualisations, implying that important aspects of the underlying maths are obscured. In my opinion this limits the didactic value of an otherwise impressive presentation.

  • jezzamon

    Yes, apologies I made some approximates in the article!

    Interestingly if you're talking about discrete time fourier transforms (which is what we usually deal with in computers with jpegs, mp3s, etc), then you can perfectly represent a signal with say, 1024 samples using exactly 1024 sine waves without worrying about that effect. It's only in the continuous time variant that you have to worry about things like the Gibbs phenomenon (which you do run into once you start translating to real world output)

    • sbergjohansen

      Right! I did assume a continuous space because that's what it looked like to me. Hence my pedantic comment which was sort of comically at odds with the light-hearted spirit of your article :) Very nice work. Thanks for sharing, and for the clarifying remarks!

  • pjc50

    What's not correct in the animations?

    (arguably the whole point of a tutorial like this is to do it without the maths)

jamesbrownjr

Slightly unrelated, here's a beautiful mathematical approach to the discrete fourier transform with evaluating a polynomial at the nth root of unity in the complex numbers:

https://ocw.mit.edu/courses/electrical-engineering-and-compu...

jeffwass

Very cool.

One idea that would be cool to see is a repeat of the video where the number of ‘harmonics’ is clipped.

Eg, show the video with only the first 5 circle components. Then the first 10, the first 15, and so on.

Will see the drawing approach the final image, and get the idea the low-freq harmonics do the bulk of the work but high-freq ones give the small details to make the hand a hand.

  • ccvannorman

    This is included in the article. Slide the slider below the animations to control how many circles will be used.

travisgriggs

This is really cool. I especially like the rotating circles visualization. Another video that helped me finally "get" Fouriers is the 3Blue1Brown video:

https://www.youtube.com/watch?v=spUNpyF58BY

ryandvm

Really fantastic work. Best interactive write-up I've seen of a technical topic in a long time.

jacobolus

In the animation at the top, should use a different color for the circles vs. the hand/pen.

whytaka

That was the most impressive opening demonstration. My eyes popped out of my skull.

FrankDixon

Beautiful! How long did it take to make this blog post?

  • jezzamon

    Oh man, it took me a while. I started in August and have been chipping away at it on the side, until now.

zero_kool

Amazing work! Thank you :)

fdsak

Epic ...thanks

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection