<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一文讀懂傅立葉變換處理圖像的原理

          共 3994字,需瀏覽 8分鐘

           ·

          2021-11-05 09:38


          點(diǎn)擊上方小白學(xué)視覺(jué)”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)


          圖 (a): (從左到右) (1) 原始圖片 (2) 使用高斯低通濾波器 (3) 使用高斯高通濾波器. 本文中的原始圖像來(lái)自O(shè)penCV Github示例。

          數(shù)字圖像現(xiàn)在已經(jīng)成為我們?nèi)粘I畹囊徊糠?。因此,?shù)字圖像處理變得越來(lái)越重要。如何提高圖像的分辨率或降低圖像的噪聲一直是人們熱門話題。傅里葉變換可以幫助我們解決這個(gè)問(wèn)題。我們可以使用傅立葉變換將灰度像素模式的圖像信息轉(zhuǎn)換成頻域并做進(jìn)一步的處理。

          今天,我將討論在數(shù)字圖像處理中,如何使用快速傅立葉變換,以及在Python中如何實(shí)現(xiàn)它。操作流程如下?(從左到右):

          圖(b)

          ?1. 實(shí)現(xiàn)快速傅立葉變換,將灰度圖像轉(zhuǎn)換為頻域

          2. 零頻域部分的可視化與集中

          3. 應(yīng)用低/高通濾波器過(guò)濾頻率

          4. 離散

          5. 實(shí)現(xiàn)快速傅里葉逆變換生成圖像數(shù)據(jù)

          讓我們深入到每一部分,找出這些步驟背后的理論。

          快速傅里葉逆變換


          圖 (c): (從左到右) (1)原始圖像 (2) FFT 頻譜的可視化輸出 (3) 集中化 (4) 離散化 (5) 逆向FFT

          與現(xiàn)實(shí)生活中的光波和聲波不同,由于像素的不連續(xù)性,數(shù)字圖像是離散的。這意味著我們應(yīng)該實(shí)現(xiàn)離散傅立葉變換(DFT)而不是傅立葉變換。然而,離散傅立葉變換(DFT)常常太慢而不實(shí)用,這就是我選擇快速傅立葉變換(FFT)進(jìn)行數(shù)字圖像處理的原因。


          第一步:計(jì)算二維快速傅里葉變換。


          快速傅立葉變換(FFT)處理的結(jié)果是一個(gè)很難直接可視化的復(fù)數(shù)數(shù)組。因此,我們必須把它轉(zhuǎn)換成二維空間。這里有兩種方法可以可視化這個(gè)快速傅立葉變換(FFT)結(jié)果:1、頻譜2、相位角

          圖 (d): (從左到右t) (1) 頻譜 (2) 相位角

          從圖(d)(1)可以看出,四個(gè)角上有一些對(duì)稱圖案。這些圖案可以在下一步中轉(zhuǎn)換到圖像的中心。

          頻譜圖像中的白色區(qū)域顯示出較高的頻率。頻譜圖像中的角表示低頻域。因此,結(jié)合以上兩點(diǎn),角上的白色區(qū)域表明:在低/零頻域中存在高頻率,這對(duì)于大多數(shù)圖像來(lái)說(shuō)是非常正常的情況。

          另一方面,很難從圖(d)(2)中識(shí)別出任何明顯的圖案,這并不代表快速傅立葉變換(FFT)的相位角完全沒(méi)有用處,因?yàn)橄辔槐A袅藞D像所必需的形狀特征。


          第二步:將零頻域部分移到頻譜中心。


          二維快速傅立葉變換(FFT)具有平移和旋轉(zhuǎn)特性,因此我們可以在不丟失任何信息的情況下移動(dòng)頻譜。我把零頻域部分移到了頻譜的中心,這使得頻譜圖像對(duì)人類更為可見(jiàn)。此外,這種轉(zhuǎn)換可以幫助我們輕松實(shí)現(xiàn)高通/低通濾波器。

          步驟3:與步驟2相反。將零頻域部分移回原位置

          步驟4:與步驟1相反。計(jì)算二維快速傅里葉逆變換。

          步驟3和步驟4的過(guò)程是將頻譜信息轉(zhuǎn)換回灰度圖像。它可以通過(guò)應(yīng)用逆向移位和快速傅立葉變換(FFT)的逆運(yùn)算來(lái)實(shí)現(xiàn)。


          編碼


          在Python中,我們可以利用Numpy模塊中的numpy.fft ?輕松實(shí)現(xiàn)快速傅立葉變換(FFT)運(yùn)算操作。

          在理解了傅里葉變換背后的基本理論之后,我們就可以研究如何控制頻譜輸出來(lái)處理圖像了。首先,我們需要了解低/高通濾波器。

          低通濾波器


          圖 (e):

          低通濾波器是一種只允許低頻譜通過(guò)的濾波器。圖像中的低頻譜意味著像素值變化緩慢。例如,圖像中顏色變化較小的平滑區(qū)域(如新空白白紙的中心)被視為低頻譜內(nèi)容。

          由于低通濾波器的輸出只允許低頻通過(guò),對(duì)噪聲等高頻譜內(nèi)容進(jìn)行了阻塞,使得處理后的圖像具有較少的噪聲像素。因此,低通濾波器被廣泛應(yīng)用于圖像的去噪。

          高通濾波器

          圖(f)

          相反,高通濾波器是只允許高頻譜通過(guò)的濾波器。圖像中的高頻譜意味著像素值變化很大。例如,圖像中顏色變化較大的邊緣區(qū)域,如兩張重疊的白紙和黑紙之間的邊緣,被認(rèn)為是高頻譜內(nèi)容。

          在圖像中,通過(guò)做適當(dāng)?shù)闹貜?fù)計(jì)算來(lái)銳化原圖像,能用適當(dāng)?shù)闹貜?fù)計(jì)算來(lái)銳化原始圖像的圖像,從高通濾波器的輸出可獲得圖像中的邊緣。這將增強(qiáng)原始圖像的清晰度,使邊緣更加清晰。

          從圖e(5)和圖f(5),我們可以注意到這兩個(gè)濾波器呈現(xiàn)不同的特性。低通濾波器傾向于保留圖像中的整體信息。另一方面,高通濾波器試圖辨別出圖像中的變化。

          在了解了前一節(jié)中的低通/高通濾波器的工作原理后,讓我們繼續(xù)認(rèn)識(shí)濾波器形狀

          理想的濾波器


          圖(g):(從左到右)(1)使用D?=50的低通濾波器?(2)使用D?=50的高通濾波器

          公式 (a): 在理想低通濾波器的公式中,D?是合理常量,D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離


          在理想濾波器背后的概念非常簡(jiǎn)單:給定一個(gè)半徑值D?作為閾值,低通濾波器圖(g)(1)在閾值下H(u,v)等于1,在閾值以上H(u,v)等于0。



          公式(b): 在理想高通濾波器的公式中,D?是合理常量,D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離


          相反,高通濾波器圖(g)(2)在閾值下H(u,v)等于0,在閾值以上H(u,v)等于1。

          巴特沃思(Btterworth)濾波器


          (h):?(從左到右) (1)?使用n=20,D?=50的Butterworth?低通濾波器(2)?使用n=20,D?=50的Butterworth?高通濾波器

          ?

          圖 (i): (從左到右) (1)使用n=3的Butterworth 低通濾波器 (2)使用n=3的Butterworth高通濾波器

          公式(c): 在Butterworth低通濾波器的公式中, D?是一個(gè)合理常量, D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離

          與理想濾波器不同的是,巴特沃斯濾波器沒(méi)有明顯的不連續(xù)性,使得通過(guò)的頻率和被過(guò)濾的頻率之間有明顯的邊界。巴特沃斯濾波器在函數(shù)中引入了一個(gè)新的參數(shù)n。當(dāng)操作n時(shí),它影響著通過(guò)的頻率和被過(guò)濾的頻率之間邊界的清晰程度。圖(h)和圖(i)

          公式(d): 在Butterworth高通濾波器的公式中, D?是一個(gè)合理常量,D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離


          高斯(Gaussian)濾波器


          圖 (j):?(從左到右) (1) 使用D?=50的高斯低通濾波器?(2) 使用D?=50的高斯低通濾波器


          公式 (e): 在高斯低通濾波器的公式中,D?是一個(gè)合理常量,D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離

          與巴特沃斯濾波器相比,高斯濾波器產(chǎn)生的邊界更平滑。通過(guò)的頻譜和被過(guò)濾的頻譜之間的邊界非常模糊,這便可以更平滑的處理圖像。

          公式 (f): 在高斯高通濾波器的公式中,D?是一個(gè)合理常量,D(u,v)是頻域中一點(diǎn)(u,v)與頻域矩形中心之間的距離

          濾波器比較

          圖 (k): (從左到右) 理想濾波器, n=10的Butterworth濾波器和D?=50 的高斯濾波器

          我把所有不同的過(guò)濾器放在圖(k)中,以總結(jié)我們?cè)谶^(guò)濾器設(shè)計(jì)中所做的工作。從左到右,圓的邊緣變得模糊,這將對(duì)輸出結(jié)果產(chǎn)生不同的影響

          總體上來(lái)看,巴特沃斯濾波器是介于理想濾波器和高斯濾波器之間的濾波器。

          低通濾波器的結(jié)論


          圖 (l): (從左到右) (1) 理想濾波器的輸出 (2)巴特沃斯濾波器的輸出

          (3) D?=50時(shí)高斯濾波器的輸出

          圖(l)顯示所有三個(gè)濾波器都是低通濾波器,因?yàn)檩敵鰣D像保留了整個(gè)圖像信息。此外,我們可以很容易地注意到高斯濾波器由于低失真比其他兩個(gè)濾波器表現(xiàn)更好。理想濾波器產(chǎn)生大量波形噪聲的原因是,理想濾波器的設(shè)計(jì)阻塞了距離原點(diǎn)一定半徑以外的所有信息。因此,有些信息會(huì)在沒(méi)有任何平滑的情況下急劇中斷。相反,巴特沃斯濾波和高斯濾波是平滑的阻塞在距離原點(diǎn)一定半徑之外的信息,這使得圖像更平滑,失真更小。

          高通濾波器的結(jié)論

          圖 (m): (從左到右) (1) 理想濾波器的輸出 (2)巴特沃斯濾波器的輸出

          (3) D?=50時(shí)高斯濾波器的輸出

          毫無(wú)疑問(wèn),圖(m)中的濾波器是高通濾波器,因?yàn)檩敵鼋Y(jié)果只捕獲邊緣。在濾波器中,高通濾波器結(jié)果的差異類似于低通濾波器結(jié)果。與巴特沃斯濾波器和高斯濾波器相比,理想濾波器的濾波結(jié)果有很多失真。


          結(jié)束語(yǔ)


          傅立葉變換是處理二維信息的有力工具。FT允許我們?cè)诹硪粋€(gè)維度處理圖像,這帶來(lái)了更大的靈活性。在這篇文章中,我對(duì)使用傅立葉變換來(lái)處理圖像這一基本步驟做了整理,希望你喜歡如果本文對(duì)小伙伴有所幫助,請(qǐng)幫忙點(diǎn)個(gè)再看哦!


          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺(jué)」公眾號(hào)后臺(tái)回復(fù):擴(kuò)展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺(jué)、目標(biāo)跟蹤、生物視覺(jué)、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目52講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):Python視覺(jué)實(shí)戰(zhàn)項(xiàng)目即可下載包括圖像分割、口罩檢測(cè)、車道線檢測(cè)、車輛計(jì)數(shù)、添加眼線、車牌識(shí)別、字符識(shí)別、情緒檢測(cè)、文本內(nèi)容提取、面部識(shí)別等31個(gè)視覺(jué)實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺(jué)。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺(jué)公眾號(hào)后臺(tái)回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          交流群


          歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺(jué)、傳感器自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺(jué)SLAM“。請(qǐng)按照格式備注,否則不予通過(guò)。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~


          瀏覽 92
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄色电影地址 | 欧美v精品 | 日一本一乱一纶一视一频一一区一二区 | 婷婷精品国产亚洲AV老牛 | 亚洲中文字幕在线播放视频 |