- 機器視覺與機器學習:算法原理、框架應用與代碼實現
- 宋麗梅 朱新軍編著
- 7384字
- 2020-09-18 18:33:17
2.3 數字圖像處理的數學工具
2.3.1 傅里葉變換圖像處理
圖像頻域變換工具主要有傅里葉(Fourier)變換、余弦變換和小波變換等,其中傅里葉變換是最基本的一種,在數字圖像處理中應用廣泛。傅里葉變換對圖像的分解可比喻成一個玻璃棱鏡對光信號的分解。棱鏡是可以將光分解為不同顏色的物理儀器,每個成分的顏色由波長(或頻率)來決定。傅里葉變換可以看作數學上的棱鏡,能將函數基于頻率分解為不同的成分,從而可以更好地識別圖像中的各種成分。
圖像的頻率是表征圖像中灰度變化劇烈程度的指標,是灰度在平面空間上的梯度。如:大面積的沙漠在圖像中是一片灰度變化緩慢的區域,對應的頻率值很低,而地表屬性變換很大的邊緣區域在圖像中是一片灰度變化劇烈的區域,對應的頻率值較高。傅里葉變換有非常明顯的物理意義,設f是一個能量有限的模擬信號,則其傅里葉變換就表示f的譜。從純粹的數學意義上看,傅里葉變換是將一個函數轉換為一系列周期函數來處理的。從物理效果看,傅里葉變換是將圖像從空間域轉換到頻率域,其逆變換是將圖像從頻率域轉換到空間域。換句話說,傅里葉變換的物理意義是將圖像的灰度分布函數變換為圖像的頻率分布函數,傅里葉逆變換是將圖像的頻率分布函數變換為灰度分布函數。
(1)圖像傅里葉變換
傅里葉變換是數字圖像處理中應用最廣的一種變換,圖像增強、圖像復原和圖像分析與描述等每一類處理方法都要用到圖像變換,尤其是圖像的傅里葉變換。傅里葉變換將時域信號分解為不同頻率的正弦和余弦和的形式。它是數字圖像處理技術的基礎,其通過在時域和頻域來回切換圖像,來對圖像的信息特征進行提取和分析。
離散傅里葉變換的定義如下。
二維離散傅里葉變換為

逆變換為

式中,u,x∈{0,1,…,M-1},v,y∈{0,1,…,N-1}。在離散傅里葉變換對中,F(u,v)稱為離散信號f(x,y)的頻譜,而|F(u,v)|稱為幅度譜,φ(u,v)為相位角,功率譜為頻譜的平方,它們之間的關系為

圖像傅里葉變換與反變換效果如圖2-16所示。

圖2-16 圖像傅里葉變換
圖像傅里葉變換的matlab程序如下。

(2)傅里葉頻譜性質以及圖像旋轉
對灰度圖像進行二維傅里葉變換,對變換頻譜進行觀察,會發現一些性質。圖2-17為圖像旋轉后頻譜圖的比較。從圖中可以發現,隨著圖像的旋轉,圖像的紋理方向發生變換,同時圖像的頻譜也跟著旋轉。實際上,圖像紋理旋轉了多少度,其對應的頻譜圖像也旋轉相應的角度。

圖2-17 圖像旋轉后頻譜圖的比較
傅里葉頻譜性質MATLAB程序如下:


(3)傅里葉變換濾波
傅里葉變換對信號進行高通、帶通、低通濾波可實現混合信號的分離。如圖2-18所示,原始圖為低頻信號與高頻信號(條紋紋理)的組合,可使用二維傅里葉變換實現信號的分離。
圖像傅里葉變換濾波實現信號分離的程序如下。


圖2-18 圖像傅里葉變換信號分離

2.3.2 離散余弦變換
離散余弦變換(Discrete Cosine Transform,DCT)是與傅里葉變換相關的一種變換,它類似于離散傅里葉變換,但是只使用實數。離散余弦變換相當于一個長度大概是它兩倍的離散傅里葉變換。離散余弦變換的類型包括Ⅰ型、Ⅱ型和Ⅲ型等,其中最常用的是第二種類型。它的逆被稱為反離散余弦變換或逆離散余弦變換(IDCT)。
Ⅱ型和Ⅲ型離散余弦變換公式分別為

式中,F(u,v)為f(x,y)的DCT變換;(x,y)為圖像空間坐標;(u,v)為變換域坐標;N為圖像的大小。
離散余弦變換經常在信號處理和圖像處理中使用,用于對信號和圖像進行有損數據壓縮。這是由于離散余弦變換具有很強的能量集中特性:大多數自然信號(包括聲音和圖像)的能量都集中在離散余弦變換后的低頻部分。離散余弦變換常被用于JPEG圖像壓縮。此外,它也經常被用于求解偏微分方程。
圖2-19所示為圖像經過DCT變換,變換系數處理以及反變換重構后的結果。圖2-20所示為采用8×8離散余弦變換壓縮算法對圖像進行壓縮的結果。從圖2-20可以看出采用不同的壓縮參數(程序中的mask)時壓縮效果具有差別。圖2-21為基于離散余弦變換的相位展開算法處理結果,其中采用離散余弦變換求解偏微分方程進而實現了相位展開。

圖2-19 圖像離散余弦變換壓縮
a)原圖 b)離散余弦變換結果 c)離散余弦變換壓縮 d)壓縮結果

圖2-20 8×8圖像離散余弦變換壓縮
a)原圖 b)壓縮結果1 c)壓縮結果2 d)壓縮結果1誤差 e)壓縮結果2誤差
圖2-19中的處理實現程序如下。


圖2-20中的處理程序如下。



圖2-21 基于離散余弦變換的相位展開
a)原始連續相位圖 b)噪聲包裹相位圖 c)權重 d)解包裹相位
圖2-21中的處理程序如下。





2.3.3 偏微分方程圖像處理
偏微分方程圖像處理是這幾年興起的一種圖像處理方法,主要針對底層圖像處理,在圖像去噪、修復、分割等方向的應用中取得了不錯的效果。偏微分方程具有各項異性的特點,在圖像處理中可以在去噪的同時很好地保持邊緣。比如,在圖像修復中,利用偏微分方程對圖像進行建模,可以使得待修復區域周圍的有效信息沿等照度線自動向內擴散,在保持圖像邊緣的基礎上平滑噪聲。
偏微分方程在圖像處理中的成功應用可以歸功于兩個主要因素。首先,許多變分問題或它們的正則化逼近通常可以通過其歐拉-拉格朗日方程進行有效計算。其次,像經典的數學物理模型一樣,偏微分方程對于描述、建模,以及模擬許多動態和平衡的現象(如擴散、對流或輸運、反應等)非常有效。
圖像處理中的偏微分方程與變分模型存在一定關系。一方面,圖像處理中的偏微分方程不一定總滿足一個變分模型。這在物理中是常識,著名的例子有流體力學中的納維-斯托克斯方程、量子力學中的薛定諤方程、電磁學中的麥克斯韋方程。另一方面,在圖像處理中,許多偏微分方程都有對應的變分模型,比如熱擴散方程、平均曲率運動方程和全變分方程。下面介紹幾種典型的偏微分方程圖像處理模型。
1. PM模型及其改進模型
Perona和Malik對最早的各項同性熱傳導方程濾波模型進行了重要改進,將控制擴散速度函數g(|▽u|)引入模型中,又于1990年提出了第一個具有方向性的偏微分方程濾波模型——各向異性擴散模型,即PM模型。該模型用一個非線性方程代替熱傳導方程

式中,函數g(|▽u|)用于控制擴散速度,是圖像梯度▽u的非增函數,因此擴散速度在圖像邊緣處(相當于▽u大的地方)慢,使圖像邊緣能夠得到保持,而在均勻區域擴散速度較大(即▽u小的區域),能夠更好地平滑非邊緣區域。該模型極大地改進了濾波效果。
常用的控制擴散速度函數為

式中,k為預先設定的常數。在PM模型中,擴散根據控制擴散速度函數進行,降低了邊緣附近的平滑作用,但它對噪聲極為敏感,許多學者仍在不斷地對該函數進行改進。
復數擴散偏微分方程是PM模型的改進之一,其目的是避免或者減少PM模型的塊相應。其模型為

式中,u(x,y,t)為隨時間t演化的圖像;Im(u)為圖像u的虛部;▽·為散度操作符;D擴散速率定義為

式中,i為虛數單位;k為閾值參數;θ∈(-π/2,π/2),為相位角。其中不包含圖像的導數項,這是比實數擴散方法優越的一點。Gilboal等研究結果表明,復數擴散偏微分濾波在光滑區域幅度加強,在邊緣區域幅度減弱。
2. 全變分(Total Variation,TV)模型
基于變分方法的全變分模型最早起源于Osher,Rudin,Fatemi的工作,于1992年提出,簡稱為“ROF模型”。ROF模型中圖像的光滑部分使用TV范數描述,紋理部分采用L2(平方可積)刻畫,因此也叫作TV-L2模型。TV-L2模型的能量泛函表示為

式中,f為原始圖像;u為帶求解圖像;λ為正則參數。
L2范數對于零均值的Gaussian信號具有很好的描述。
3. 熱擴散方程的圖像去噪
熱擴散方程表示為

式中,Δ代表拉普拉斯算子;代表熱擴散方程演化圖像。
首先對時間項離散化

式中,n為離散化的迭代次數;Δt為離散化的時間步長,是一常數,比如取為0.1。
然后,對x和y離散化(采用前向差分,對應為i和j)

進一步可表示為

所以可以用簡單的數組與循環來實現熱擴散方程。圖2-22為熱擴散方程圖像去噪結果。

圖2-22 熱擴散方程圖像去噪
a)原圖1 b)噪聲圖1 c)去噪結果1 d)原圖2 e)噪聲圖2 f)去噪結果2
圖2-22所用的程序如下。

4. 全變分圖像去噪
全變分圖像去噪的能量泛函表示為

式中,ux和uy為u關于x和y的偏導數。
對應的歐拉-拉格朗日方程求解過程為

從而可以用簡單的數組與循環實現全變分模型的演化方程。圖2-23為全變分圖像去噪結果。

圖2-23 全變分圖像去噪
a)噪聲圖 b)噪聲圖100次迭代 c)噪聲圖200次迭代 d)噪聲圖300次迭代
全變分圖像去噪的程序如下。


2.3.4 小波變換等時頻分析方法
(1)小波變換
傅里葉變換將信號展開為無限個正弦和余弦的線性組合,這樣雖可得到信號的頻譜信息,但是不能獲得信號時間方面的信息。換句話說,傅里葉變換提供了圖像中所出現的所有頻率,但是并不能反映它們源于何處。窗口傅里葉變換(即短時傅里葉變換)可以定位信號的變化。它將信號分解為小窗口并將其看作周期函數做局部處理。然而,窗口傅里葉變換仍然存在很大缺陷:窄窗口帶來較差的頻率分辨率,而寬窗口帶來較差的定位效果。小波變換比窗口傅里葉變換更進一步,不僅能提供較精確的時域定位也能提供較精確的頻域定位。
小波變換興起于20世紀80年代中期,由于其具有良好的時頻局域分析能力,所以成為信號處理最重要的工具之一。對含“點奇異”的一維信號,小波具有最優的逼近性能。小波變換具有如下優點。
● 稀疏性:小波系數稀疏分布,經小波變換后,只用很少的非零系數即可實現對對象的表達。
● 多分辨率:對不同分辨率根據信號和噪聲分布消除噪聲。
● 去相關性:小波變換可對信號去相關,因此相對于時域,更有利于去噪。
● 基函數多樣性:可根據信號特點,結合濾波效果,來選擇或構造不同的小波基函數。
如果函數ψ(ω)滿足容許條件

則積分變換

為f(x)以ψ(x)為基的小波變換,引入符號ψa,b(x)

對f(x,y)∈L2(R2),其對應的小波變換為

式中,a為尺度因子;b、b1、b2為平移量。
以維納濾波器為例

式中,y(t)=x(t)?h(t)。
小波濾波的基本實現過程如下。
第一步:對圖像f(x,y)進行小波變換,得到各級變換系數

第二步:對高頻系數進行修正處理,可以得到系數的修正值

式中,η()為修正函數。
第三步:用a-J(k)及進行重構,得到濾波后的圖像
。
由一維小波張成的二維小波只具有有限方向,即水平、豎直、對角,多方向的缺乏導致其不能最優地表達線或面奇異性,對線或面奇異函數的逼近性能差強人意。
設f(x)∈L2(R2),定義連續小波變換:

式中,,ψ()為母小波;a為尺度因子;b為平移因子。參數a和b均連續變化,所以稱為連續小波變換。其內積表示形式為

參數a的變化決定著小波窗函數的形狀和頻譜結構。當a減小時,ψa,b(x)的頻譜集中于高頻部分,此時窗口尺寸較小,小波函數具有較好的空間分辨率;當a增大時,ψa,b(x)的頻譜集中于低頻部分,此時窗口尺寸變小,空間分辨率降低。
小波函數必須滿足容許條件,小波變換才存在逆變換,其容許條件為

式中,。容許條件表明,可以用作基本小波的函數ψa,b(x)必須滿足Ψ(0)=0的條件,即ψa,b(x)為均值為0的振蕩波形,Ψ(ω)具有帶通性。
(2)曲波變換
小波變換在圖像邊緣信息表達上存在嚴重不足,由一維小波張成的可分離小波只具有有限的方向性,不能“最優”地表示具有線性奇異性或面奇異性的高維函數。小波方向性的單一使得其不能很好地逼近具有高維奇異的信號。由于雙樹復小波的多尺度、近似平移不變性和多方向性,使得其比傳統小波在圖像去噪時更易保持邊緣。雙密度雙樹離散小波變換將信息提高到16個方向,但每個方向值由一個小波表示,使圖像的分解與重構精度受到限制。
多尺度幾何分析具有三個優點:即多分辨率分析特性、局域性和方向性。目前,多尺度幾何分析工具主要有Brushlet變換、Ridgelet變換、Ridgelet變換、Curvelet變換、Wedgelet變換、Beamlet變換、Bandlet變換、Contourlet變換、Directionlet變換以及Shearlet變換等。由于它們主要以變換為核心,因此也稱多尺度方向變換,為了能充分利用原函數的幾何正則性,這些變換的基的支撐區間表現為“長條形”,用最少的系數來逼近奇異曲線。
定理2.1 設,令
,其中曲線γ二階可導,則函數f的曲波變換的m項非線性逼近
誤差為

邊緣屬于突變信號,是彎曲的,而不是直線,這些信號在數學上表現為奇異性。小波、脊波等不能有效表達出圖像的這些特征。和小波相比,小波系數屬于“過”邊緣的表達,而曲波是“沿”邊緣的表達,如圖2-24所示,所以傳統小波在處理圖像上表現出很大的局限性。
在曲波變換尺度體系中,基函數本身對方向高度敏感。從圖2-24中可以看出,在同一尺度下,兩個不同位置的基元在方向上的表現只是略有差別,可見曲波具有很強的方向性。經過曲波分解,如果曲波基元與圖像的邊緣重合,那么在曲波系數上表現為大值,不重合則曲波系數很小,所以曲波系數能表達出該尺度、該方向上的邊緣信息。更進一步,為了捕獲圖像各個方向的邊緣,曲波可以進行不同尺度的分解,經旋轉、平移后實現邊緣特征的捕獲,在矩陣上表現為稀疏性。

圖2-24 圖像邊緣和Curvelet系數之間的關系
Candes等提出了兩種曲波變換的快速實現方法,分別是USFFT(基于非均勻采樣的快速傅里葉變換,Unequally Spaced FFT)和Wrap(基于頻域特殊采樣的卷繞規則Wrapping算法,Wrapping-based FFT)算法。這兩種算法的主要區別在于不同尺度、不同方向上空間網格的選擇方法不同,算法實現步驟簡單介紹如下。
基于USFFT的離散Curvelet變換實現基本過程如下。
第一步:對輸入的笛卡兒坐標下的二維函數(圖像)進行快速傅里葉變換,得到二維頻域表示

第二步:在頻域,對每一個(j,k)重采樣得到采樣值

第三步:將內插后的與
窗函數相乘便可得到

第四步:對進行二維快速傅里葉逆變換,可以得到離散Curvelet系數cD(j,l,k)。
基于Wrapping的離散Curvelet變換實現方法核心思想是:圍繞原點包裹(wrap),即在具體實現時對任意區域通過周期化技術一一映射到原點的仿射區域。該方法是在USFFT方法的基礎上增加wrap步驟,具體過程如下。
第一步:對輸入的一個笛卡兒坐標下的二維函數圖像進行二維快速傅里葉變換,得到二維頻域表示

第二步:在頻域對每一個(j,k)重采樣得到采樣值

第三步:將內插后的與
窗函數相乘便可得到

第四步:圍繞原點wrapping局部化;
第五步:對進行二維快速傅里葉逆變換,可以得到離散曲波系數cD(j,l,k)。
(3)剪切波變換
剪切波變換是一類新的多維函數逼近方法。剪切波通過一個基本函數的膨脹、剪切和平移變換來構造,體現了函數的幾何和數學特性,如近年來許多領域的學者所強調的函數方向性、尺度和振蕩等。剪切波變換是一種繼承曲波和輪廓波優點的新型多尺度幾何分析工具。
在L2(R2)空間中的二維函數f剪切波變換定義為

式中,Ψa,s,t為剪切波,它構成了在頻域中連續尺度a>0,位置t∈R2,曲率方向s∈R的局部化仿射系統。剪切波表示為

其中

它們分別為尺度矩陣和剪切矩陣。尺度矩陣Aa體現各向異性膨脹矩陣,剪切矩陣通過s參數化方向。
通過對尺度參數、剪切參數和平移參數離散化,得到離散的剪切波函數為

其中

相應的離散剪切波函數

對于ξ=(ξ1,ξ2),ξ1≠0,令

式中,,
,
?[-1/2,1/16]∪[1/16,1/2],并且
?[-1,1],能夠得到
以及
。
假定

并且對?j≥0

根據和
的支集就能夠得到函數的頻域支集為

也就是說,是一個大小為22j×2j的梯形對,方向為2-jl。
和曲波相比,剪切波的構造有著根本的區別,剪切波是由一族算子操作在一個函數上產生的,而曲波并不是這樣。圖2-25為曲波和剪切波的頻域剖分圖。曲波和剪切波的不同之處在于:①曲波不是和一個固定的平移格相關聯,如果考慮方向的敏感性,則剪切波的方向數目在每一個尺度加倍,而曲波則在每一個不同的尺度加倍;②剪切波定義在笛卡兒域,通過剪切變換獲得各種方向,而曲波是在極坐標域構造的,通過旋轉操作獲得方向。

圖2-25 圖像邊緣和曲波系數
a)曲波頻域剖分 b)剪切波頻域剖分
2.3.5 形態學處理
形態學本來指的是生物學中的一個分支,而此處的形態學為圖像處理中的常用算法工具,它分析的基礎是基于形態的數學運算。作為數學理論的一部分,它常用來調整分割后的圖像形狀以達到特定的目的,邊緣檢測、噪聲抑制、特征提取甚至圖像分割都可以將形態學運用于其中并且實際效果良好。
數學形態學是由一組形態學的集合運算組成的,其基本運算有膨脹、腐蝕、開運算/閉運算、擊中/擊不中、細化/粗化。這些基本運算在二值圖像和灰度圖像中各有特點。基于這些基本運算還可推導和組合出各種數學形態學實用算法。膨脹和腐蝕是數學形態學方法中最基本的運算。膨脹和腐蝕的原理是利用一個稱作結構元素的“探針”收集圖像的信息,當探針在圖像中不斷移動時,通過簡單的邏輯運算便可考察圖像各個部分之間的相互關系,從而了解圖像的結構特征。
腐蝕操作的運算符號為“Θ”,如果對集合A用結構元素B來進行腐蝕操作,則可以表示為AΘB,并且定義

式(2-75)表明,結構元素B在集合A中平移x掃描后,結構元素B依舊在集合A中的所有參考點集合即為運算結果,具體操作例如圖2-26所示過程。

圖2-26 腐蝕運算示意圖
a)集合A b)結構元素B c)腐蝕結果
圖2-26a中的陰影區域為集合A,圖2-26b中的陰影區域為結構元素B,設定紅色“+”號標記點為參考點,圖2-26c中的純黑部分為腐蝕運算后集合A所留下的部分,即腐蝕的結果。
膨脹操作的運算符號為“⊕”,如果對集合A用結構元素B來進行膨脹操作,則可以表示為A⊕B,并且定義

膨脹運算與腐蝕運算略有不同,需要先對結構元素B進行關于原點的映射得到,結構元素
在集合A中平移x掃描后,
的位移與A至少有一個非零元素相交時B的參考點位置集合即膨脹結果,具體操作例如圖2-27所示過程。
圖2-27a中的陰影區域為集合A,圖2-27b中的陰影區域為結構元素B,設定紅色“+”號標記點為參考點,圖2-27c中的陰影區域為結構元素B的映射,圖2-27d中的純黑區域為膨脹運算后集合A所增加的部分,整個陰影區域為膨脹的結果。

圖2-27 膨脹運算示意圖
a)集合A b)結構元素B c)映射d)膨脹結果
一般情況下,腐蝕運算和膨脹運算雖然不互為逆運算,但是可以通過恰當的組合變成新的形態運算,比如開運算和閉運算。使用相同的結構元素對圖像先進行腐蝕運算再進行膨脹運算即為開運算,其運算符號為“°”,如果對集合A用結構元素B來進行開運算操作,則可以表示為A°B,并且定義

開運算的作用較多,比如可以削弱圖像中狹長的區域,斷開不同區域之間的連接等。雖然作用與腐蝕運算差不多,但是開運算可以基本保持待測物體尺寸不變。
使用相同的結構元素對圖像先進行膨脹運算再進行腐蝕運算即為閉運算,其運算符號為“·”,如果對集合A用結構元素B來進行閉運算操作,則可以表示為A·B,并且定義

閉運算的作用也較多,也可以平滑圖像輪廓,但與開運算不同的是,閉運算一般用來連接斷開的臨近區域。同樣,它的作用雖然與膨脹運算差不多,但是可以基本保持待測物體尺寸不變。
- Instant Vert.x
- Irrlicht 1.7 Realtime 3D Engine Beginner's Guide
- 中文版After Effects CC 2020完全自學一本通
- Adobe創意大學Illustrator產品專家認證標準教材(CS6修訂版)
- 零基礎學后期:Photoshop+Lightroom數碼照片處理從新手到高手
- 3ds Max 2014從入門到精通
- Illustrator CC 2018中文版入門與提高
- 中文版Photoshop CS6平面設計從新手到高手(超值版)
- 輕松玩轉3D One AI
- Photoshop+CorelDRAW 字體設計與創意:草圖/實現/包裝(微課版)
- 中文版Photoshop CS5平面設計實用教程(第2版)
- Flash CC動畫制作與應用(第3版)
- Science Teaching with Moodle 2.0
- 中文版Photoshop CS5基礎培訓教程(移動學習版)
- Photoshop人像精修秘笈