国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

傅里葉變換

這篇具有很好參考價值的文章主要介紹了傅里葉變換。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


在計算機視覺中,有一個經(jīng)典的變換被廣泛使用——傅里葉變換。傅里葉變換是將時間域上的信號轉(zhuǎn)變?yōu)轭l率域上的信號,進而進行圖像去噪、圖像增強等處理。

一、時域與頻域

什么是時域(Time domain)?從我們出生,我們看到的世界都以時間貫穿,股票的走勢、人的身高、汽車的軌跡都會隨著時間發(fā)生改變。這種以時間作為參照來觀察動態(tài)世界的方法我們稱其為時域分析。而我們也想當然的認為,世間萬物都在隨著時間不停的改變,并且永遠不會靜止下來。

什么是頻域(Frequency domain)?頻域是描述信號在頻率方面特性時用到的一種坐標系。用線性代數(shù)的語言就是裝著正弦函數(shù)的空間。頻域最重要的性質(zhì)是:它不是真實的,而是一個數(shù)學構(gòu)造。頻域是一個遵循特定規(guī)則的數(shù)學范疇。正弦波是頻域中唯一存在的波形,這是頻域中最重要的規(guī)則,即正弦波是對頻域的描述,因為時域中的任何波形都可用正弦波合成。

對于一個信號來說,信號強度隨時間的變化規(guī)律就是時域特性,信號是由哪些單一頻率的信號合成的就是頻域特性。

時域分析與頻域分析是對信號的兩個觀察面。時域分析是以時間軸為坐標表示動態(tài)信號的關(guān)系;頻域分析是把信號變?yōu)橐灶l率軸為坐標表示出來。一般來說,時域的表示較為形象與直觀,頻域分析則更為簡練,剖析問題更為深刻和方便。目前,信號分析的趨勢是從時域向頻域發(fā)展。然而,它們是互相聯(lián)系,缺一不可,相輔相成的。貫穿時域與頻域的方法之一,就是傳說中的傅里葉分析。傅里葉分析可分為傅里葉級數(shù)(Fourier Serie)和傅里葉變換(Fourier Transformation)。

二、傅里葉級數(shù)

傅里葉級數(shù)是一種對周期信號進行分解的方式。

如下圖所示,左上角為正弦方波,余下為通過不同的正弦諧波數(shù)可以去擬合這個方波結(jié)果。
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

可以看到,疊加的諧波信號越多時,越接近于方波信號。

傅里葉級數(shù)由法國數(shù)學家傅里葉提出,即滿足條件(狄利克雷條件)的任何周期函數(shù)可以由一系列不同頻率的正弦(余弦)函數(shù)疊加而成。這種相加形式又稱為級數(shù),所以也稱為傅里葉級數(shù)。

三、傅里葉變換

那么對信號的不同頻率進行分解有什么好處呢?

如下圖所示,從時域上看,最下方疊加得到的信號是很難分析出里面蘊含的頻率信息的。
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

而通過傅里葉分解后,如下圖右圖所示,可以很容易地觀察到頻率的有無和幅度的大?。ㄏ辔灰灿袑南辔蛔V,這里沒有列出)。
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

因此,通過傅里葉變換將某一信號分解為不同頻率的信號,可以很容易地對信號中的某一段頻段進行觀察和操作。

3.1 傅里葉變換分類

根據(jù)原信號的不同類型,我們可以把傅立葉變換分為四種類別:

  • 非周期性連續(xù)信號(傅立葉變換(Fourier Transform))
  • 周期性連續(xù)信號(傅立葉級數(shù)(Fourier Series))
  • 非周期性離散信號(離散時域傅立葉變換(Discrete Time Fourier Transform))
  • 周期性離散信號(離散傅立葉變換(Discrete Fourier Transform))

這四種傅立葉變換都是針對正無窮大和負無窮大的信號,即信號的的長度是無窮大的,我們知道這對于計算機處理來說是不可能的,那么有沒有針對長度有限的傅立葉變換呢?沒有。因為正余弦波被定義成從負無窮小到正無窮大,我們無法把一個長度無限的信號組合成長度有限的信號。

面對這種困難,方法是把長度有限的信號表示成長度無限的信號,可以把信號無限地從左右進行延伸,延伸的部分用零來表示,這樣,這個信號就可以被看成是非周期性離散信號,我們就可以用到離散時域傅立葉變換的方法。還有,也可以把信號用復制的方法進行延伸,這樣信號就變成了周期性離散信號,這時我們就可以用離散傅立葉變換方法進行變換。

但是對于非周期性的信號,我們需要用無窮多不同頻率的正弦曲線來表示,這對于計算機來說是不可能實現(xiàn)的,因為在計算機中只有離散的和有限長度的數(shù)據(jù)才能被處理。所以對于離散信號的變換只有離散傅立葉變換(DFT)才能被適用,對于其它的變換類型只有在數(shù)學演算中才能用到,在計算機中我們只能用DFT方法。

3.2 一維傅里葉公式

傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

其中,ω 表示頻率, t 表示時間, 它將頻率域的函數(shù)表示為時間域函數(shù) f(t) 的積分。

3.3 二維離散傅里葉變換

我們知道,灰度圖像是由二維的離散的點構(gòu)成的。二維離散傅里葉變換(Two-Dimensional Discrete Fourier Transform)常用于圖像處理中,對圖像進行傅里葉變換后得到其頻譜圖。頻譜圖中頻率高低表征圖像中灰度變化的劇烈程度。圖像中邊緣和噪聲往往是高頻信號,而圖像背景往往是低頻信號。我們在頻率域內(nèi)可以很方便地對圖像的高頻或低頻信息進行操作,完成圖像去噪,圖像增強,圖像邊緣提取等操作。

對二維圖像進行傅里葉變換公式如下:
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

其中,圖像長 M,高 N。F(u,v)表示頻域圖像,f(x,y)表示時域圖像。u 的范圍為[0,M-1],v 的范圍為[0,N-1]。

對二維圖像進行傅里葉逆變換公式如下:
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

其中,圖像長 M,高 N。f(x,y)表示時域圖像,F(xiàn)(u,v)表示頻域圖像。x 的范圍為[0,M-1],y 的范圍為[0,N-1]。

四、OpenCV中傅里葉變換的應用

4.1 傅里葉變換

代碼如下:

import cv2
import numpy as np
import matplotlib.pyplot as plt
 
# 讀取圖像
img = cv2.imread('lenna.jpg', 0)
 
# 傅里葉變換
dft = cv2.dft(np.float32(img), flags = cv2.DFT_COMPLEX_OUTPUT)
 
# 將頻譜低頻從左上角移動至中心位置
dft_shift = np.fft.fftshift(dft)
 
# 頻譜圖像雙通道復數(shù)轉(zhuǎn)換為0-255區(qū)間
result = 20*np.log(cv2.magnitude(dft_shift[:,:,0], dft_shift[:,:,1]))
 
# 顯示圖像
plt.subplot(121), plt.imshow(img, cmap = 'gray')
plt.title('Original Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(result, cmap = 'gray')
plt.title('Magnitude Spectrum'), plt.xticks([]), plt.yticks([])
plt.show()

效果如下:
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

4.2 傅里葉逆變換

代碼如下:

import cv2
import numpy as np
import matplotlib.pyplot as plt

# 讀取圖像
img = cv2.imread('lenna.jpg', 0)
 
# 傅里葉變換
dft = cv2.dft(np.float32(img), flags = cv2.DFT_COMPLEX_OUTPUT)
dftshift = np.fft.fftshift(dft)
res1= 20*np.log(cv2.magnitude(dftshift[:,:,0], dftshift[:,:,1]))
 
# 傅里葉逆變換
ishift = np.fft.ifftshift(dftshift)
iimg = cv2.idft(ishift)
res2 = cv2.magnitude(iimg[:,:,0], iimg[:,:,1])
 
# 顯示圖像
plt.subplot(131), plt.imshow(img, 'gray'), plt.title('Original Image')
plt.axis('off')
plt.subplot(132), plt.imshow(res1, 'gray'), plt.title('Fourier Image')
plt.axis('off')
plt.subplot(133), plt.imshow(res2, 'gray'), plt.title('Inverse Fourier Image')
plt.axis('off')
plt.show()

效果如下:
傅里葉變換,計算機視覺,計算機視覺,python,圖像處理,傅里葉變換

源碼倉庫地址

??圖像處理、機器學習的常用算法匯總文章來源地址http://www.zghlxwxcb.cn/news/detail-780340.html

到了這里,關(guān)于傅里葉變換的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • (數(shù)字圖像處理MATLAB+Python)第四章圖像正交變換-第一節(jié):離散傅里葉變換

    (數(shù)字圖像處理MATLAB+Python)第四章圖像正交變換-第一節(jié):離散傅里葉變換

    一維離散傅里葉變換(Discrete Fourier Transform,DFT) :是一種數(shù)學技術(shù),用于將代表離散時間信號的N個復數(shù)序列從 時域轉(zhuǎn)換到頻域 。DFT被廣泛用于許多應用,如音頻和圖像處理、通信和控制系統(tǒng)。DFT是傅里葉變換的離散版本,傅里葉變換是一種用于分析頻域信號的連續(xù)數(shù)學技

    2023年04月13日
    瀏覽(28)
  • python數(shù)字圖像處理基礎(chǔ)(七)——直方圖均衡化、傅里葉變換

    python數(shù)字圖像處理基礎(chǔ)(七)——直方圖均衡化、傅里葉變換

    均衡化原理 圖像均衡化是一種基本的圖像處理技術(shù),通過更新圖像直方圖的像素強度分布來調(diào)整圖像的全局對比度。這樣做可以使低對比度的區(qū)域在輸出圖像中獲得更高的對比度。 簡單理解:改變圖像對比度,讓色彩更豐富,灰度值直方圖:瘦高 - 均衡 本質(zhì)上,直方圖均衡

    2024年01月18日
    瀏覽(29)
  • 跟我學Python圖像處理丨傅里葉變換之高通濾波和低通濾波

    跟我學Python圖像處理丨傅里葉變換之高通濾波和低通濾波

    摘要: 本文講解基于傅里葉變換的高通濾波和低通濾波。 本文分享自華為云社區(qū)《[Python圖像處理] 二十三.傅里葉變換之高通濾波和低通濾波》,作者:eastmount 。 傅里葉變換的目的并不是為了觀察圖像的頻率分布(至少不是最終目的),更多情況下是為了對頻率進行過濾,

    2024年02月04日
    瀏覽(16)
  • 圖像處理之傅里葉變換

    圖像處理之傅里葉變換

    1、傅里葉變換的定義 傅里葉變換是在以時間為自變量的“信號”與頻率為自變量的“頻譜”函數(shù)之間的某域研究中較復雜的問題在頻域中變得簡單起來,從而簡化其分析過程;另一方面使信號與系統(tǒng)的物理本質(zhì)在頻域中能更好地被揭示出來。當自變量“時間”或“頻率”為

    2024年02月15日
    瀏覽(18)
  • OpenCV圖像處理之傅里葉變換

    OpenCV圖像處理之傅里葉變換

    傅里葉變換: 目的就是得到圖像的低頻和高頻,然后針對低頻和高頻進行不同的處理。處理完之后,在通過逆變換恢復到圖像,這時候?qū)Φ皖l和高頻的處理就會反映到圖像上。 頻率 高頻:變化劇烈的灰度分量,例如邊界。 低頻:變化緩慢的灰度分量,例如一天藍天(相似的

    2024年02月06日
    瀏覽(28)
  • 【MATLAB圖像處理】傅里葉變換--幅度譜、相位譜、逆變換

    【MATLAB圖像處理】傅里葉變換--幅度譜、相位譜、逆變換

    fft2()? 傅里葉正變換 fftshift()? 頻譜搬移-直流量(f=0)搬移至頻譜中心 幅度譜只包含亮度信息(f),逆變換后由于沒有位置信息(x,y)導致無法重構(gòu)圖像;相位譜只包含位置信息(x,y),逆變換后由于沒有亮度信息(f)導致重構(gòu)圖像只有輪廓沒有亮度。而同時利用幅度譜

    2024年02月11日
    瀏覽(21)
  • 【Python入門系列】第十篇:Python圖像處理和計算機視覺

    圖像處理和計算機視覺是計算機科學中非常重要的領(lǐng)域之一。Python作為一種功能強大且易于學習的編程語言,提供了許多用于圖像處理和計算機視覺的庫和工具。本文將介紹一些常用的Python庫,并提供一些示例代碼。 Python中有幾個流行的圖像處理庫,其中最常用的是OpenCV和

    2024年02月12日
    瀏覽(43)
  • [筆記]Python計算機視覺編程《一》 基本的圖像操作和處理

    [筆記]Python計算機視覺編程《一》 基本的圖像操作和處理

    今天,圖像和視頻無處不在,在線照片分享網(wǎng)站和社交網(wǎng)絡(luò)上的圖像有數(shù)十億之多。幾乎對于任意可能的查詢圖像,搜索引擎都會給用戶返回檢索的圖像。實際上,幾乎所有手機和計算機都有內(nèi)置的攝像頭,所以在人們的設(shè)備中,有幾 G 的圖像和視頻是一件很尋常的事。計算

    2024年02月02日
    瀏覽(26)
  • Matlab|數(shù)字圖像處理02|圖像的傅里葉變換(平移/旋轉(zhuǎn)性質(zhì))及圖像的離散余弦變換

    Matlab|數(shù)字圖像處理02|圖像的傅里葉變換(平移/旋轉(zhuǎn)性質(zhì))及圖像的離散余弦變換

    問題1:x,y方向同時平移后頻譜有何變化? 答:經(jīng)過平移后的傅里葉變換幅值圖與原圖像得到的傅里葉變換幅值圖基本相同,平移不改變頻譜的幅值。 代碼運行結(jié)果: 代碼: 問題2:編程驗證一幅圖旋轉(zhuǎn)45度后,其傅里葉譜圖也旋轉(zhuǎn)了45度。 代碼: 問題3:第8行10的數(shù)字大小對

    2024年02月08日
    瀏覽(26)
  • 數(shù)字圖像處理Malab/C++(三)傅里葉變換及頻譜圖、頻域濾波

    數(shù)字圖像處理Malab/C++(三)傅里葉變換及頻譜圖、頻域濾波

    1、選擇任意灰度圖像。計算和顯示原始圖像的頻譜振幅和任意因子縮放的同一圖像的頻譜振幅。 2、選擇任意灰度圖像。計算和顯示原始圖像的頻譜振幅和任意角度旋轉(zhuǎn)的同一圖像的頻譜振幅。 3、 使用標準Lena灰度圖片,添加高斯噪聲imnoise(I,‘gaussian’, 0.05) 。請用合適的頻

    2024年02月06日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包