回覆列表
  • 1 # 包羅萬匠

    前言

    前面轉載過一篇關於傅立葉變換原理的文章《一篇難得的關於傅立葉分析的好文》。那篇文章寫得非常棒,淺顯易懂,可以說稍有基礎的人都能看懂那篇博文。但是那篇博文更多的是從訊號處理的角度以及原理的角度講述傅立葉變換。那麼在數字影象處理中,傅立葉變換之後得到的頻譜圖又有怎樣的運用呢?這篇部落格就是為了簡單講講傅立葉變換在數字影象處理中的意義和基本應用,如有錯誤請各位指出。

    數字影象的傅立葉變換

    透過前面的博文已經知道傅立葉變換是得到訊號在頻域的分佈,數字影象也是一種訊號,對它進行傅立葉變換得到的也是它的頻譜資料。對於數字影象這種離散的訊號,頻率大小表示訊號變化的劇烈程度或者說是訊號變化的快慢。頻率越大,變化越劇烈,頻率越小,訊號越平緩,對應到影象中,高頻訊號往往是影象中的邊緣訊號和噪聲訊號,而低頻訊號包含影象變化頻繁的影象輪廓及背景等訊號。

    需要說明的是,傅立葉變換得到的頻譜圖上的點與原影象上的點之間不存在一一對應的關係。

    頻域資料的應用1. 影象去噪

    根據上面說到的關係,我們可以根據需要獲得在頻域對影象進行處理,比如在需要除去影象中的噪聲時,我們可以設計一個低通濾波器,去掉影象中的高頻噪聲,但是往往也會抑制影象的邊緣訊號,這就是造成影象模糊的原因。以均值濾波為例,用均值模板與影象做卷積,大家都知道,在空間域做卷積,相當於在頻域做乘積,而均值模板在頻域是沒有高頻訊號的,只有一個常量的分量,所以均值模板是對影象區域性做低通濾波。除此之外,常見的高斯濾波也是一種低通濾波器,因為高斯函式經過傅立葉變換後,在頻域的分佈依然服從高斯分佈,如下圖所示。所以它對高頻訊號有很好的濾除效果。

    高斯函式在頻域的分佈圖像

    2. 影象增強及銳化

    影象增強需要增強影象的細節,而影象的細節往往就是影象中高頻的部分,所以增強影象中的高頻訊號能夠達到影象增強的目的。

    同樣的影象銳化的目的是使模糊的影象變得更加清晰,其主要方式是增強影象的邊緣部分,其實就是增強影象中灰度變化劇烈的部分,所以透過增強影象中的高頻訊號能夠增強影象邊緣,從而達到影象銳化的目的。從這裡可以看出,可以透過提取影象中的高頻訊號來得到影象的邊緣和紋理資訊。

    3. 其他基於頻譜和相位譜的操作等

    下面我們透過程式碼來看一下是否真如我們想想的一樣。

    程式碼執行結果

    如果在影象中加入噪聲,結果會如何呢?

    結果分析

    從上面的結果可以看出,低通濾波會讓影象變得模糊,可以對影象進行模糊處理,濾除影象的噪聲,高通濾波獲得了影象的邊緣和紋理資訊。此外,透過增強影象的高頻訊號,可以增強影象的對比度,因為影象中的高頻訊號主要是出現在邊緣及噪聲這樣的灰度出現躍變處的區域。

    從頻譜圖上可以看出,當將頻譜移頻到原點以後,影象中心比較亮。在頻譜圖中,一個點的亮暗主要與包含這個頻率的數目有關,也就是說在空間域中包含這種頻率的點越多,頻譜圖中對應的頻率的位置越亮。而經過頻移後,頻率為0的部分,也就是傅立葉變換所得到的常量分量在影象中心,由內往外擴散,點所代表的頻率越來越高。可以從上面的結果中看出,只取核心的小範圍內的低頻訊號再將其轉換回到時域空間,已經能夠在一定程度是看到影象的基本輪廓資訊,這說明了影象中的“能量”主要集中在低頻部分。

    實際上,為了方便理解,可以把影象的二維傅立葉變換得到的頻譜圖看作影象的梯度分佈圖(兩幅影象中的點並不是一一對應),頻譜圖中的某一個點所表徵的是空間域中某一個點與周圍點的灰度差異性,灰度差異越大,則頻率越大。當然時域中灰度變化劇烈的區域也包含了低頻訊號,因為低頻訊號是構成影象資訊的基礎。

    已完。。。

  • 2 # 前進的孤帆

    前言

    前面轉載過一篇關於傅立葉變換原理的文章《一篇難得的關於傅立葉分析的好文》。那篇文章寫得非常棒,淺顯易懂,可以說稍有基礎的人都能看懂那篇博文。但是那篇博文更多的是從訊號處理的角度以及原理的角度講述傅立葉變換。那麼在數字影象處理中,傅立葉變換之後得到的頻譜圖又有怎樣的運用呢?這篇部落格就是為了簡單講講傅立葉變換在數字影象處理中的意義和基本應用,如有錯誤請各位指出。

    數字影象的傅立葉變換

    透過前面的博文已經知道傅立葉變換是得到訊號在頻域的分佈,數字影象也是一種訊號,對它進行傅立葉變換得到的也是它的頻譜資料。對於數字影象這種離散的訊號,頻率大小表示訊號變化的劇烈程度或者說是訊號變化的快慢。頻率越大,變化越劇烈,頻率越小,訊號越平緩,對應到影象中,高頻訊號往往是影象中的邊緣訊號和噪聲訊號,而低頻訊號包含影象變化頻繁的影象輪廓及背景等訊號。

    需要說明的是,傅立葉變換得到的頻譜圖上的點與原影象上的點之間不存在一一對應的關係。

    頻域資料的應用1. 影象去噪

    根據上面說到的關係,我們可以根據需要獲得在頻域對影象進行處理,比如在需要除去影象中的噪聲時,我們可以設計一個低通濾波器,去掉影象中的高頻噪聲,但是往往也會抑制影象的邊緣訊號,這就是造成影象模糊的原因。以均值濾波為例,用均值模板與影象做卷積,大家都知道,在空間域做卷積,相當於在頻域做乘積,而均值模板在頻域是沒有高頻訊號的,只有一個常量的分量,所以均值模板是對影象區域性做低通濾波。除此之外,常見的高斯濾波也是一種低通濾波器,因為高斯函式經過傅立葉變換後,在頻域的分佈依然服從高斯分佈,如下圖所示。所以它對高頻訊號有很好的濾除效果。

    高斯函式在頻域的分佈圖像

    2. 影象增強及銳化

    影象增強需要增強影象的細節,而影象的細節往往就是影象中高頻的部分,所以增強影象中的高頻訊號能夠達到影象增強的目的。

    同樣的影象銳化的目的是使模糊的影象變得更加清晰,其主要方式是增強影象的邊緣部分,其實就是增強影象中灰度變化劇烈的部分,所以透過增強影象中的高頻訊號能夠增強影象邊緣,從而達到影象銳化的目的。從這裡可以看出,可以透過提取影象中的高頻訊號來得到影象的邊緣和紋理資訊。

    3. 其他基於頻譜和相位譜的操作等

    下面我們透過程式碼來看一下是否真如我們想想的一樣。

    程式碼執行結果

    如果在影象中加入噪聲,結果會如何呢?

    結果分析

    從上面的結果可以看出,低通濾波會讓影象變得模糊,可以對影象進行模糊處理,濾除影象的噪聲,高通濾波獲得了影象的邊緣和紋理資訊。此外,透過增強影象的高頻訊號,可以增強影象的對比度,因為影象中的高頻訊號主要是出現在邊緣及噪聲這樣的灰度出現躍變處的區域。

    從頻譜圖上可以看出,當將頻譜移頻到原點以後,影象中心比較亮。在頻譜圖中,一個點的亮暗主要與包含這個頻率的數目有關,也就是說在空間域中包含這種頻率的點越多,頻譜圖中對應的頻率的位置越亮。而經過頻移後,頻率為0的部分,也就是傅立葉變換所得到的常量分量在影象中心,由內往外擴散,點所代表的頻率越來越高。可以從上面的結果中看出,只取核心的小範圍內的低頻訊號再將其轉換回到時域空間,已經能夠在一定程度是看到影象的基本輪廓資訊,這說明了影象中的“能量”主要集中在低頻部分。

    實際上,為了方便理解,可以把影象的二維傅立葉變換得到的頻譜圖看作影象的梯度分佈圖(兩幅影象中的點並不是一一對應),頻譜圖中的某一個點所表徵的是空間域中某一個點與周圍點的灰度差異性,灰度差異越大,則頻率越大。當然時域中灰度變化劇烈的區域也包含了低頻訊號,因為低頻訊號是構成影象資訊的基礎。

  • 中秋節和大豐收的關聯?
  • 貨車吃胎解決方案?