Image Compression with the FFT (Examples in Matlab)

  Рет қаралды 27,504

Steve Brunton

Steve Brunton

Күн бұрын

This video shows how to compress images with the FFT (code in Matlab).
Now on twitter: @eigensteve
Book PDF: databookuw.com/...
Book Website: databookuw.com
These lectures follow Chapter 2 from: "Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control" by Brunton and Kutz
Amazon: www.amazon.com...
Brunton Website: eigensteve.com
This video was produced at the University of Washington

Пікірлер: 35
@jimmysslave2709
@jimmysslave2709 4 жыл бұрын
Still the best part of the video is the fact that professor Brunton explains FFT to his mother :)
@atharvasathe167
@atharvasathe167 5 ай бұрын
Finally found out the secret to such incredible teaching skills. I'll be explaining a fluid mechanics course to my Mom for sure :)
@nguyenqui1006
@nguyenqui1006 3 жыл бұрын
I am new in FFT, i've heard very much about compression image using FFT but i can't imagine how it works. When you showed me the grahp of the tenth pixel (in some last minutes of the video), it supprise me alot, a very very wonderful explaination. I understand the nature of FFT compression. Thank you very much!
@1509davidfrench
@1509davidfrench 4 жыл бұрын
This lectures are amazing! Thank you professor for make and share them .
@corbenreed7010
@corbenreed7010 Жыл бұрын
You’re a genius and have impressive teaching ability
@dragoncurveenthusiast
@dragoncurveenthusiast 4 жыл бұрын
You are such a good lecturer! Thank you for making and sharing these with us!
@amortalbeing
@amortalbeing 8 ай бұрын
it was great thanks to you and your mother for this amazing explanation
@Peter-zh3bh
@Peter-zh3bh 4 жыл бұрын
The most impressive FFT function plot. Thanks!!
@dayag7972
@dayag7972 4 жыл бұрын
genius...you just made it clear to understand... thank you so much... Need more from you..
@StrangeParticl
@StrangeParticl 6 ай бұрын
Thank you for the lecture it was so great
@qiguosun129
@qiguosun129 Жыл бұрын
Ha, the surface plot of the girl is amazing!
@alexkoshuta6219
@alexkoshuta6219 4 жыл бұрын
incredible. tyvm for sharing ur insight and making it so easy.
@matthewjames7513
@matthewjames7513 2 жыл бұрын
Thanks Steve! This is really great! Is there a way I can use the fft2() to find the amplitude, frequencies and phase's of the final surface? From your bedsheet example I'd imagine the final surface would have the form: z(x,y) = A1 cos(W1*x - Phi1) + A2 cos(W2*x - Phi2) + .... + a1 cos(w1*y - phi1) + a2 cos(w2*y - phi2) + ...
@Seneca_dengo_dengo
@Seneca_dengo_dengo 4 жыл бұрын
Fantastic lecture.
@toastrecon
@toastrecon 4 жыл бұрын
So, and I should probably just cowboy up and try this, but if you were to do this with color, you could separate out the RGB channels, compress them using FFT, apply the threshold and then reconstruct the image?
@lernenmitrobin
@lernenmitrobin 4 жыл бұрын
Grayscales are very good to transform rgb to equipotential lines, like you shown in the landscape. I'm still fascinated by the way you show these practical examples. Thanks a lot! One question: You said that the last image of the dog has a high resolution... coud you tell us about the amount of resolution? It's interesting, when greater images are maybe better to compress, if the main information is independent from the resolution. E.g. 4 neighboured pixels have exactly the same rgb value, it makes no sense to save 4 times same information ;-).
@joostdejong2677
@joostdejong2677 4 жыл бұрын
Dear Steve, thank you for another great lecture. I have one question, or maybe I should say, request for further explanation. I basically disagree with you explanation of why there is a ‘cross’ through the middle of the plotted FFT-picture. You explained that it would be because of discontinuities at the borders, but to my understanding this would only give increased high frequency components. Could the ‘cross’ no be explained by the ‘null’ Fourier coefficient (a_0) which is basically just an average of the signal, which would always be a substantial amount (as there are only positive grey values an not negative ones to balance out)? Because of fftshift the ‘null’ coefficient is in the middle.. Can you help me out please? Thank you. (Ps. It might actually be the sum and not the average as I don’t know when the fft/ifft scales the signal by the period of the harmonic..)
@convex9345
@convex9345 4 жыл бұрын
@3:50 I didn't understand the concept, that low frequency modes have high energy. Please elaborate it . Thanks in advance.
@MrHaggyy
@MrHaggyy 2 жыл бұрын
Not in general but in images. If your signal contains a lot information that is very similar, like the green backround, red scarf or a blue sky you need very view FFT coeffient to describe the picture. They also have to be low frequency, as they have to cover most of the image. As they contribute to most of the image they have high "energy". Might be worth checking out the matlab/python script and manualy kill the strongest coefficent, inverse and plot the images. Especially in his hight map you will see what is happening.
@jfcharles
@jfcharles 4 жыл бұрын
Thanks for sharing! As far as I understand, you are thresholding directly the real and imaginary parts of the FFT data, you don't convert to magnitude & phase, right?
@anythingandeverything8539
@anythingandeverything8539 2 жыл бұрын
Excuse me Sir ,is this a transform coding??
@shaizamalik6657
@shaizamalik6657 4 жыл бұрын
professor amazing
@nikhilverma9985
@nikhilverma9985 4 жыл бұрын
Hello Prof, Can this principle be used for compressing a RGB image. If so, then do we have to do it for individual red, green and blue pixel?
@lernenmitrobin
@lernenmitrobin 4 жыл бұрын
I would say yes. If you think about: Each color is a different channel. The grayscale is only a mixup of the amount of the colors of each pixels. So, if you make a fft2 of each channel (color), make your filterings on each channel and put it together after inverse 2D FFT (ifft2), the result seems to be satifsfying, depending on your filter options.
@nikhilverma9985
@nikhilverma9985 4 жыл бұрын
Thanks alot Robin
@yuzu_0920
@yuzu_0920 Жыл бұрын
thanks a lot
@muhammadwaleed9462
@muhammadwaleed9462 3 жыл бұрын
best one !!
@convex9345
@convex9345 4 жыл бұрын
What is the relation between Fourier coefficients and Fourier frequency ?
@streetrossi4966
@streetrossi4966 4 жыл бұрын
Never mind prof, you explained it
@AmourShmuel
@AmourShmuel 4 жыл бұрын
A M A Z I N G !!!
@streetrossi4966
@streetrossi4966 4 жыл бұрын
Hey prof, I am trying Compressed sensing reconstruction , where my sparsity transform is wavelet and contourlet. How would you go about doing that in matlab using wavedec2() or pdfb2() function
@muhammadafzaalkhan9277
@muhammadafzaalkhan9277 4 жыл бұрын
How to extract smallest and largest objects within image using matlab
@streetrossi4966
@streetrossi4966 4 жыл бұрын
Let's say i have sparse vector of img(due to contourlet transf) how do I select top 5% of the sparse and reconstruct the image from it. (Matlab). Can you pls guide me
@dankodnevic3222
@dankodnevic3222 Жыл бұрын
Simple 'whos' made me disappointed: Original grayscale 'B' 3MB (ziped 2.2MB), "compressed" 'Alow' 3 MB (ziped 1.5MB), sparse complex double 'Atlow' 48 MB (ziped 2.7MB)?!! Where is that 20,100,500 compression?
Image Compression and the FFT (Examples in Python)
12:53
Steve Brunton
Рет қаралды 30 М.
Solving PDEs with the FFT [Matlab]
16:23
Steve Brunton
Рет қаралды 33 М.
Cat mode and a glass of water #family #humor #fun
00:22
Kotiki_Z
Рет қаралды 42 МЛН
Image Compression and the FFT
13:01
Steve Brunton
Рет қаралды 51 М.
Image Compression and Wavelets (Examples in Matlab)
10:30
Steve Brunton
Рет қаралды 36 М.
Image Compression with Wavelets (Examples in Python)
10:01
Steve Brunton
Рет қаралды 41 М.
SVD: Image Compression [Matlab]
14:19
Steve Brunton
Рет қаралды 86 М.
Denoising Data with FFT [Matlab]
10:34
Steve Brunton
Рет қаралды 88 М.
Spectrogram Examples [Matlab]
9:57
Steve Brunton
Рет қаралды 42 М.
What if all the world's biggest problems have the same solution?
24:52
The Spectrogram and the Gabor Transform
13:15
Steve Brunton
Рет қаралды 67 М.