Fuyye Serisi ve Görüntüden Ses Çıkarmak

Fourier serisi, tekrar eden bir eğriyi sinüs eğrilerinin toplamı olarak ifade etmektir. Sinüs dalgalarının toplamı şeklinde yazmanın diğer anlamı “hangi frekanstaki dalgadan ne kadar var” anlamına geldiğinden mühendislikte, fizikte, matematikte çok yaygın kullanılır. Altında yatan temel fikir, sinüs ve kosinüs fonksiyonlarının birbirine dik olmasıdır, sanki birbirlerine dik vektörler gibi.

\(\displaystyle{\frac{1}{\pi}\int \limits_{-\pi}^{\pi} {\color{black}\sin({\color{red}n} x)}{\color{black} \sin({\color{blue}m} x)} dx = \begin{cases} 1, & {\color{red}n} = {\color{blue}m} \\ 0, & {\color{red}n} \neq {\color{blue}m}\end{cases}}\)

\(\displaystyle{\frac{1}{\pi}\int \limits_{-\pi}^{\pi} {\color{black}\cos({\color{red}n} x)}{\color{black} \cos({\color{blue}m} x)} dx = \begin{cases} 1, & {\color{red}n} = {\color{blue}m} \\ 0, & {\color{red}n} \neq {\color{blue}m}\end{cases}}\)

\(\displaystyle{\frac{1}{\pi}\int \limits_{-\pi}^{\pi} {\color{red}\sin({\color{red}n} x)}{\color{blue} \cos({\color{blue}m} x)} dx =0}\)

Hatırlatma, iki birim vektör birbirine dik ise aynı sonucu verecekler.

\({\bf \hat{{\color{red}e}}}_{\color{red}i} \cdot {\bf \hat{{\color{blue}e}}}_{\color{blue}j} = \begin{cases} 1, & {\color{red}i} ={\color{blue} j} \\ 0,&  {\color{red}i} \neq {\color{blue}j} \end{cases}\)

Joseph Fourier

Bu sonucu ilk Euler fark ettiği halde, Fourier bunun önemini anlayıp dalgaların analizinde çok önemli olduğunu gösterdiğinden onun ismi ile anılır. Tanımı (daha bir çok formu var, bu Fourier’in bulduğu şekli);

\(\displaystyle{f(x) = \frac{a_0}{2} + \sum \limits_{n = 1}^N \left[ a_n {\color{red} \sin(n x)} + b_n {\color{blue}\cos(nx)}\right]},\)

\(f(x)\) seriye açmaya çalıştığımız periyodik bir fonksiyon \(x \in [-\pi, \pi]\), \(a_0\) bir sabit,

\(a_0 = \displaystyle{\frac{1}{\pi} \int \limits_{-\pi}^{\pi} f(x) dx }\)

ve \(a_n\) ve \(b_n\) şöyle tanımlanmışlar:

\(a_n = \displaystyle{\frac{1}{\pi} \int \limits_{-\pi}^{\pi} f(x) {\color{blue} \cos(nx) }dx },\)

\(b_n = \displaystyle{\frac{1}{\pi} \int \limits_{-\pi}^{\pi} f(x) {\color{red}\sin(nx) }dx }.\)

Bir kaç basit fonksiyonun Fourier dönüşümünü göstermek istiyorum. Çünkü çok eğlenceli (ᵔᴥᵔ)

İlk fonksiyonumuz +1 ile -1 arasında gidip gelen sinyal:

+1 ve -1 arasında gidip gelen basit sinyal. Bunu şimdi sinüslerin toplamı şeklinde yazmaya çalışacağız. Ne kadar çok terim eklersek o kadar iyi.

Bunu şimdi Fourier serisi şeklinde yazmaya çalışıyoruz. Her bir sinüs eğrisinin sadece bir frekansı var. Hangi frekanslardan ne kadar var onu bulmaya çalışıyoruz. Fourier serisinin sonucunu yazıyorum:

\(f(x) = \displaystyle{ \sum \limits_{n = 1,3,5,7…}^{\infty} \left(\frac{4}{n \pi}\right)\sin\left(\frac{n \pi x}{L}\right)}\)

\(L\), bu \(f(x)\)’in periyodu, bu örnek için \(2\pi\). Aşağıdaki animasyonlarda \(n = 1\)’den \(n = 3,5,7,9,11,13,15\)’e kadar terimleri alarak Fourier serisini göstereceğim. 

Nasıl, süper değil mi? (。◕‿◕。) Sinüs eğrisi bir çember etrafında dönen bir topun gölgesinin aldığı yol olarak düşünülebilir. Bu “kare sinyal” eğrisinde daha fazla terim eklemek, daha küçük yarıçaplı çemberleri, önceki çember etrafında daha hızlı döndürmek demek. Bu dönen çemberlerin frekansları da tek sayı olarak artıyor (hesabı size bırakıyorum). Daha fazla çember ekledikçe (daha fazla n ekledikçe) başlangıçtaki fonksiyonumuza (yeşil eğri) daha fazla yaklaşacağız. Ayrıca, arkaya transparan olarak eklediğim eğrileri fark etmişsinizdir. Bu eğriler de cycloid eğrileri! (başka bir yazımda cycloid eğrilerini anlatmıştım).

Daha fazla terim ekleyerek fonksiyonun kendisine yaklaşmayı şöyle gösterebilirim: \(n = 240\)’a kadar olan terimleri eklersek nasıl görünür?

Devam, şimdi de şöyle “testere ucu” şeklinde bir sinyal alalım ve onu Fourier serisine açalım.

“Testere ucu” sinyali.

Bu fonksiyonu Fourier serisine açtığımızda şu sonuca ulaşıyoruz:

\(f(x) = \displaystyle{\frac{1}{2}} -\displaystyle{  \sum \limits_{n = 1}^{\infty}\left( \frac{1}{n \pi}\right)\sin\left(\frac{n \pi x}{L}\right)}\)

Tekrar, ne kadar terim eklersek bu fonksiyona o kadar daha iyi yaklaşıyoruz. Aşağıdaki animasyonlarda \(n = 1\)’den \(n = 2,3,4,5,6,7,8\)’e kadar olan terimleri ekledim.

Transparan eğri tekrar bir cycloid eğrisi!

Son olarak, üçgen şekilli bir dalgayı Fourier serisine açacağım, fakat bu öncekiler kadar eğlenceli değil. Bahsi geçen “üçgen dalga” şu:

Ucgen dalga.

Fourier dönüşümünü şöyle buldum:

\(f(x) = \displaystyle{  \sum \limits_{n = 1,3,5,7,…}^{\infty} \left(\frac{8}{\pi^2} \frac{(-1)^{\frac{(n-1)}{2}}}{n^2}\right)\sin\left(\frac{n \pi x}{L}\right)}\)

Daha fazla terim ekledikçe çemberler çok hızlı küçülüyorlar. Öncekiler gibi güzel görünmüyorlar. Olsun, ben ilk üç terimin \(n = 1,3,5\) animasyonlarını ekliyorum:

Peki, bu bilgiyi nerede kullanacağız? Çok yerde. Mühendislikte ve temel bilimlerde dört işlem gibi bir şey Fourier analizi. Mesela, elinizde gürültü gibi bir ses dalgası var. Bunu ayrıştırmak istiyorsunuz. Hop, hemen Fuyye amca yetişti yardımınıza. Hangi frekanstan ne kadar dalga olduğunu söyledi.

Gurultu ve Fourier analizi.

Yukarıdaki görselde, yukarıdaki sesin Fourier dönüşümünü alıyorsunuz ve size bir frekanstan (1 Hz) daha fazla oranda dalga olduğunu söylüyor.

Bunun görüntü işlemede, ses işlemlerinde çok güzel kullanımları var. Burada çok ilginç bir kullanımını göstermek istiyorum.

Bu çalışmada, çok sofistike bir Fourier analizi kullanılarak bir videodan ses çıkarılabiliyor. Yani, komşunuzun salonundaki çiçeği kamera ile sessiz olarak görüntülüyorsunuz, geliyorsunuz ve komşunuzun sizin arkanızdan çevirdiği dedikoduları dinleyebiliyorsunuz.

Yazi ve animasyonlar: Bilgecan Dede

The following two tabs change content below.

Bilgecan Dede

Hukuğa kafası basmadığından meslek okuluna gitti bu. Ondan sonra gavur bir ustanın yanına çırak verdiler eli iş tutsun diye, çok şükür ustalığını kazanmış ondan, şimdi de usta olmuş çalışıyo. Eli yüzü düzgün biriyle de evermişler. Ben diyorum “bak ileride torun combalak olacak, gel bir şirkette işe başla” ama dinlemiyor ki, asi biraz bu.

Fuyye Serisi ve Görüntüden Ses Çıkarmak” için 32 yorum

  • 14 Mart 2017 tarihinde, saat 09:43
    Permalink

    Harika anlatım. Özellikle animasyonları bu denli anlatımı tamamlayıcı şekilde kullanmanız takdire şayan. Bilimle kalın.

    Yanıtla
  • 10 Aralık 2018 tarihinde, saat 23:12
    Permalink

    SmarterEveryDay’den geliyorum. Guzel yazi olmus. Tebrikler 🙂

    Yanıtla
  • 10 Aralık 2018 tarihinde, saat 23:55
    Permalink

    Smarter every day !!

    Yanıtla
  • 11 Aralık 2018 tarihinde, saat 00:17
    Permalink

    Web sayfanizi SmarterEveryDay youtube kanalinda izledigim videodan buldum.
    Müthis bir anlatim sekli. Tebrikler.

    Yanıtla
  • 11 Aralık 2018 tarihinde, saat 01:29
    Permalink

    Hey Doga,

    I saw your video with Destin at smarter every day.I wanted to let you know that although I was familiar with the concept, the way you drew the logo blew my mind. It was simply amazing! can you tell me how did you get the frequency function from the image. I am a Phd student and am working on a similar problem. I wanted to know how can one get the frequency component from just an image. It would really great if you could help me out on this. Who knows, if something great comes out of it, you could alos benefit from it!

    Thanks man.

    Yanıtla
    • 13 Aralık 2018 tarihinde, saat 07:58
      Permalink

      I am also wondering how it is? Doga, did you find it with the help a bunch of computer algorithm or is there a mathmatical concept that you followed? Thank you.

      Yanıtla
      • 13 Aralık 2018 tarihinde, saat 09:18
        Permalink

        No, I did not use any algorithms, I implemented the theory I explained above.

        Yanıtla
    • 13 Aralık 2018 tarihinde, saat 09:16
      Permalink

      Hello Febin,

      Thank you for reaching out! Frequency function… Frequency “function” is just integers. They are the harmonics, where the \omega, goes by integer numbers, as in 2 \pi n, where n = 1,2,3, etc. Finding the histogram is the punchline of this problem. You need to find the amplitude for a given frequency. I did that by numerically interpolating the image, then applied Fourier transform to the image for each frequency mode.

      I hope this makes sense. Do not hesitate to ask if you have other questions.

      Best wishes

      Yanıtla
  • 11 Aralık 2018 tarihinde, saat 06:33
    Permalink

    Nice! Saw this at SmarterEveryDay! Congratulations.

    Yanıtla
  • 11 Aralık 2018 tarihinde, saat 06:42
    Permalink

    Great Mathmatica Gif models! Thank you for putting the work in and sharing it with the world.

    Yanıtla
  • 11 Aralık 2018 tarihinde, saat 14:31
    Permalink

    Smarter EveryDay’den geldim, it’s really amazing work you did.

    Yanıtla
  • Geri bildirim: What is a Fourier Series? (Explained by drawing circles) - Smarter Every Day 205 - TeachersConnect

  • 12 Aralık 2018 tarihinde, saat 02:26
    Permalink

    Destin is wrong, you pronounced GIF correctly.
    It might be pronounced with J as JIF in the US but in the UK and everywhere else in the world it’s GIF.

    Yanıtla
  • 18 Aralık 2018 tarihinde, saat 00:02
    Permalink

    Tebrikler hocam. Sayende Fourier’ i anlatmak daha kolay.

    Yanıtla
  • 20 Aralık 2018 tarihinde, saat 14:16
    Permalink

    Merhaba;
    Forier serileri ile ilgili 1-2 çalışmam var (mathematica), daha doğrusu sayı teorisi ile ilgili çalışmalar fakat elde ettiğim sonuçları yorumlayamıyorum. Mail adresini yollarsan sana wolfram notebookları yollayabilirim. Yardımcı olabilirsen çok sevinirim.
    Bu arada harika çalışma, ellerine sağlık ve tabii ki bundan sonrası için de başarılar dilerim…

    Yanıtla
  • Geri bildirim: Explaining Fourier Again – MasMaz

  • Geri bildirim: Explaining Fourier Again - itmix.cz | Informační Náskok

  • Geri bildirim: Explaining Fourier Again

  • 28 Aralık 2018 tarihinde, saat 00:24
    Permalink

    Hey Doga, I was inspired by this so I made a simple Unity app that is a synthesizer / visualizer where you can add and edit the harmonics. http://oscillating-arm.surge.sh/
    Play the keys A – L and you will see and hear the corresponding sound.
    I have the code here: https://github.com/Andy-Roger/FourierTransformVisualizer

    Square Wave example: https://www.youtube.com/watch?v=GaO0smLouGk
    Random Harmoics: https://www.youtube.com/watch?v=GGEMOHlcVok

    Yanıtla
  • 2 Ocak 2019 tarihinde, saat 15:21
    Permalink

    Youtube’dan geldim ben de. Harika bir anlatım olmuş. Bu siteyi de düzenli olarak takip edeceğim artık çünkü gerçekten harika bir site oluşturmuşsunuz.

    Yanıtla
  • 21 Ocak 2019 tarihinde, saat 23:47
    Permalink

    Buna seara. Va scriu din Bucuresti si va felicit pentru modul in care ati ilustrat grafic seriile furie.
    Personal am vazut postarea de pe YouTube care a culminat cu reproducerea logoului realizatorului.
    Si acum intrebarile mele:
    – toata logica se desfasoara in 2D, XoY functie de timp. Pentru formele simple de unda: sinus, triunghi, dreptunghi totul se rezuma la o formula matematica. Ideal ar fi ca aceasta sa poata fi extrasa din grafica simpla. Practic are fi foarte frumos de inteles cum o formula matematica duce la rezultatul formei de unda.
    – provocare: daca ati folosi ca sistem de referinta in analiza axele XoYoZ 3D?. Pentru forma simpla maximum, Ecuatoriala. Posibilitatile de dezvoltare sunt extrem de variate. Practic prin vectorizare a unui model si reversed engineering’s veti obtine o formula matematica a acelui model. Daca se executa si un model ideal de analiza si se descompune si acesta pana la formula sa matematica , comparatia celor doua formula matematica vor arata diferentele dintre modelul ideal si cel vectorizat.

    Yanıtla
  • Geri bildirim: Purrier Series (Meow) and Making Images Speak – Science is Awesome

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.