有趣的交互式傅里葉變換網(wǎng)站
傅里葉變換是一種在各個(gè)領(lǐng)域都經(jīng)常使用的數(shù)學(xué)工具。這個(gè)網(wǎng)站將為你介紹傅里葉變換能干什么,為什么傅里葉變換非常有用,以及你如何利用傅里葉變換干漂亮的事。就像下面這樣:
我將為你解釋這個(gè)動(dòng)畫是如何工作的,沿途為你詳細(xì)地解釋傅里葉變換!
這次旅途結(jié)束后,你將會(huì)掌握下面這些知識(shí):
-
什么是傅里葉變換 -
傅里葉變換的一些實(shí)際用途 -
傅立葉變換的一些很酷的用法(雖然有些沒(méi)有實(shí)際意義)
我們現(xiàn)在暫時(shí)不提那些復(fù)雜的數(shù)學(xué)公式。傅里葉背后的數(shù)學(xué)原理十分有趣,但最好還是先從它的實(shí)際應(yīng)用開始,以及為什么要使用它。如果你想了解更多,下面提供了一些進(jìn)一步的閱讀建議!
傅里葉變換是什么
簡(jiǎn)而言之,傅里葉變換把一個(gè)輸入信號(hào)分解成一堆正弦波的疊加。就像大多數(shù)數(shù)學(xué)方法一樣,這個(gè)名字來(lái)自一個(gè)名叫傅立葉的人。
讓我們從一些簡(jiǎn)單的例子開始,然后繼續(xù)前進(jìn)。首先,我們來(lái)看看什么是波 —— 波隨著時(shí)間的推移,一直按照某一規(guī)律變化。
這是一個(gè)波的例子:
這個(gè)波可以分解為兩個(gè)正弦波的疊加。也就是說(shuō),當(dāng)我們將兩個(gè)正弦波相加時(shí),就會(huì)得到原來(lái)的波。
傅里葉變換可以讓我們從一個(gè)復(fù)雜的波形里面,把構(gòu)成這個(gè)波的單個(gè)正弦波分離出來(lái)。在這個(gè)例子中,你幾乎可以通過(guò)“腦補(bǔ)”完成這一操作。
為什么?事實(shí)證明,現(xiàn)實(shí)世界中的許多事物間的互相交互,都是基于正弦波。我們通常將這種波的快慢的性質(zhì),稱為波的頻率。
最明顯的例子就是聲音 —— 當(dāng)我們聽到聲音時(shí),我們聽不到那條波浪線,但我們聽到構(gòu)成聲音的正弦波的不同頻率。
能夠在計(jì)算機(jī)上區(qū)分這兩個(gè)音調(diào),我們就可以了解一個(gè)人實(shí)際可以聽到的內(nèi)容。我們可以理解聲音的高低,或弄清楚這個(gè)波包含了什么音符。
一些波看起來(lái)不像由正弦波構(gòu)成,我們也可以用這個(gè)分解的過(guò)程來(lái)進(jìn)行分析。
我們來(lái)看看這個(gè)家伙吧。這個(gè)波稱為方波。
雖然看起來(lái)不太可能,但它確實(shí)也可以分解成正弦波。
這次我們需要很多 —— 理論上是無(wú)限多的正弦波來(lái)完美地表達(dá)一個(gè)方波。隨著我們加入越來(lái)越多的正弦波,疊加出的波形就越來(lái)越接近方波。
在視覺(jué)上,你會(huì)注意到前幾個(gè)正弦波的疊加可以在結(jié)果中產(chǎn)生最大差異?;瑝K滑到一半時(shí),就有一些方波的樣子了,但它看起來(lái)?yè)u擺不定。加上更多小的正弦波,組合出的波形看起來(lái)就平坦了。
當(dāng)播放這個(gè)波形時(shí),你會(huì)發(fā)現(xiàn)使用的正弦波少時(shí),聲音聽起來(lái)更低沉一些。這是因?yàn)槲覀儼迅哳l率的成分去掉了。
這一過(guò)程可以用來(lái)處理任何有周期的波。試一試,畫一個(gè)你喜歡的波形吧。
和上一個(gè)方波類似,除了有些額外的擺動(dòng)之外,滑塊移動(dòng)到中間位置,生成的波形就很接近你畫的了。
我們可以利用這個(gè)事實(shí):使用傅里葉變換,我們可以把音頻中最重要的成分表達(dá)出來(lái),并且得到和原始聲音非常接近的波形。
在計(jì)算機(jī)中,波形以一系列數(shù)據(jù)點(diǎn)的形式來(lái)存儲(chǔ)。
我們可以做的是,將聲音表示為一堆正弦波。然后可以通過(guò)忽略掉較小幅度的高頻成分來(lái)壓縮聲音。盡管得出的波形與原始波形不一樣,但是聽起來(lái)將會(huì)和原始聲音很接近。
這基本上就是MP3做的事情。MP3除此之外還可以更聰明地知道需要保留哪些頻率以及扔掉哪些頻率。
所以在這種情況下,我們可以使用傅里葉變換來(lái)理解波的基本屬性,然后我們可以將它用于數(shù)據(jù)的壓縮之類的事情。
好的,現(xiàn)在讓我們深入了解傅立葉變換。下一部分看起來(lái)很酷,也讓你更加了解傅立葉變換的作用。但大多只是“看起來(lái)”很酷。
周轉(zhuǎn)圓
在開始時(shí),我介紹了傅里葉變換可以將事物分成正弦波。但更酷的是,它產(chǎn)生的正弦波不僅僅是一般的正弦波,它們都是“三維”的正弦波。你可以稱之為“復(fù)雜的”正弦曲線,或者,“螺旋”。
如果我們從側(cè)面看,它們看起來(lái)像正弦波。但是,從正面看,它們看起來(lái)像圓圈。
到目前為止,我們所做的一切只需要常規(guī)的2D正弦波。當(dāng)我們對(duì)2D波進(jìn)行傅里葉變換時(shí),“復(fù)雜的”部分被忽略了,所以我們最終也只能得到正弦波。
但是我們可以使用3D正弦波來(lái)制作看起來(lái)很有趣的東西,就像這個(gè):
這里發(fā)生了什么事情呢?
我們可以將一個(gè)手繪圖理解為一個(gè)3D的形狀,因?yàn)辄c(diǎn)的位置在隨時(shí)間移動(dòng)。如果你想象一個(gè)人正在繪制一只手,那么這三個(gè)維度就代表了某一時(shí)刻鉛筆尖的位置。除了x和y維度告訴我們筆尖的位置,還有一個(gè)時(shí)間維度。
現(xiàn)在我們有一個(gè)3D的形狀,我們不能使用常規(guī)2D正弦波把它表示出來(lái)。無(wú)論我們添加多少2D正弦波,我們都永遠(yuǎn)不會(huì)得到3D。所以我們需要些別的東西。
我們可以使用的是之前的3D螺旋正弦波。如果我們添加很多這些螺旋,得到的東西就看起來(lái)像我們的3D形狀。
請(qǐng)記住,當(dāng)我們從前面看它們時(shí),這些波浪看起來(lái)像圓圈。圍繞另一個(gè)圓圈移動(dòng)的圓圈圖案,被稱為“周轉(zhuǎn)圓”。
像以前一樣,我們只用幾個(gè)圓圈就可以很好地近似表達(dá)出原始圖案。因?yàn)檫@是一個(gè)相當(dāng)簡(jiǎn)單的形狀,所有后面添加的小圓都是使邊緣更加銳利。
這些適用于任何一個(gè)圖案。真的,現(xiàn)在你創(chuàng)作的機(jī)會(huì)來(lái)了。
同樣,你會(huì)發(fā)現(xiàn),對(duì)于大多數(shù)形狀,我們可以用很少的圓圈很好地近似表達(dá)它們,要保存一個(gè)形狀,我們不必保存形狀上所有的點(diǎn)。
這個(gè)方法可以應(yīng)用于實(shí)際數(shù)據(jù)嗎?答案是可以!實(shí)際上,我們有另一種稱為SVG的數(shù)據(jù)格式,比我們?cè)谶@里繪制圖案更好用一些。所以目前,我們只是制作了些炫酷的小GIF。
然而,還有另一種類型的視覺(jué)數(shù)據(jù)使用傅里葉變換。
JPEGs
你知道傅立葉變換除了可以表達(dá)簡(jiǎn)單的手繪線條,還可以用于圖像嗎?事實(shí)上,我們一直都在使用它,因?yàn)檫@就是JPEG的工作原理!我們將相同的原理應(yīng)用于圖像 —— 將某些東西分成一堆正弦波,然后只存儲(chǔ)重要的東西。
要處理圖像,我們需要一種不同類型的正弦波。我們需要這樣的一種“正弦波”:無(wú)論我們有什么樣的圖像,我們都可以添加一堆這些正弦波來(lái)回到原始圖像。
要做到這一點(diǎn),我們使用的每個(gè)正弦波也將是一個(gè)個(gè)小圖像。我們現(xiàn)在使用一些黑白條紋的小圖像,這些更可以表達(dá)為“線”,而不是波。為了表示“波”的大小,每個(gè)圖像將具有或多或少的明暗對(duì)比。
我們也可以以類似的方式表示出顏色,但我們先從灰度圖像開始玩。為了表示灰度圖像,我們需要一些水平的波圖案,還有一些垂直的波圖案。
要得到一個(gè)8x8分辨率的圖像,這里是我們需要的所有小圖案。
如果我們把這些小圖案的對(duì)比度調(diào)整到適當(dāng)?shù)闹?,然后將它們相加,我們就可以得出任意圖像。
讓我們從一個(gè)字母"A"開始。它非常小,但我們需要它很小,否則我們最終會(huì)得到太多其他的圖像。
隨著我們添加越來(lái)越多的這些圖案,我們最終得到的東西越來(lái)越接近實(shí)際圖像。我覺(jué)得你只要添加很少一部分圖案,就能看出字母“A”的樣子來(lái)。
對(duì)于實(shí)際的JPEG圖像來(lái)說(shuō),這就是基本原理,剩下的只有一些額外的細(xì)節(jié)。
圖像被分解為8x8塊,每個(gè)塊分別進(jìn)行分解。我們使用一組頻率來(lái)確定每個(gè)像素的亮度或暗度,然后是另外兩組用于顏色,一組用于紅綠色,另一組用于藍(lán)黃色。我們?yōu)槊總€(gè)塊使用的頻率個(gè)數(shù)決定了JPEG圖像的品質(zhì)。
這是一個(gè)實(shí)際的JPEG圖像,放大后我們可以看到細(xì)節(jié)。當(dāng)我們改變JPEG品質(zhì)水平時(shí),可以觀察出畫質(zhì)的區(qū)別。
總結(jié)
讓我們回顧一下:
-
傅里葉變換讓我們輸入一個(gè)事物,并將其分解為不同頻率的成分 -
頻率告訴我們有關(guān)數(shù)據(jù)的一些基本屬性 -
并且可以通過(guò)僅存儲(chǔ)重要的成分來(lái)壓縮數(shù)據(jù) -
我們還可以用傅里葉變換的原理,通過(guò)一堆圓圈制作看起來(lái)很酷的動(dòng)畫
這只是表面上的一些淺層次應(yīng)用。傅里葉變換是一個(gè)非常強(qiáng)大的工具,因?yàn)閷⑹挛锓纸獬刹煌l率是十分重要的分析方法。它們被用于許多領(lǐng)域,包括電路設(shè)計(jì),移動(dòng)網(wǎng)絡(luò)信號(hào),磁共振成像(MRI)和量子物理!
一些問(wèn)題
我在這里跳過(guò)了大部分的數(shù)學(xué)原理。如果你對(duì)它的數(shù)學(xué)原理很感興趣,可以用以下這些問(wèn)題來(lái)幫助你研究:
-
你如何在數(shù)學(xué)上表示傅里葉變換? -
連續(xù)時(shí)間傅立葉變換和離散時(shí)間傅立葉變換之間有什么區(qū)別? -
你如何計(jì)算傅里葉變換? -
你如何對(duì)整首歌曲進(jìn)行傅里葉變換?(不僅僅是單個(gè)音符)
本文原文網(wǎng)站鏈接:
http://www.jezzamon.com/fourier/zh-cn.html
作者:Jez
來(lái)源:TsinghuaJoking
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!