圖像金字塔(高斯金字塔、拉普拉斯金字塔)

 

一、圖像金字塔函數

圖像金字塔是圖像中多尺度表達的一種,最主要用於圖像的分割,是一種以多分辨率來解釋圖像的有效但概念簡單的結構post

圖像金字塔最初用於機器視覺和圖像壓縮,一幅圖像的金字塔是一系列以金字塔形狀排列的分辨率逐步下降,且來源於同一張原始圖的圖像集合。其經過梯次向下採樣得到,直到達到某個終止條件才中止採樣。優化

金字塔的底部是待處理圖像的高分辨率表示,而頂部是低分辨率的近似。3d

咱們將一層一層的圖像比喻成金字塔,層級越高,則圖像越小,分辨率越低blog

通常狀況下有兩種類型的圖像金字塔經常出如今文獻和以及實際運用中。他們分別是:ci

  ●高斯金字塔(Gaussianpyramid): 用來向下採樣,主要的圖像金字塔
  拉普拉斯金字塔(Laplacianpyramid): 用來從金字塔低層圖像重建上層未採樣圖像,在數字圖像處理中也便是預測殘差,能夠對圖像進行最大程度的還原,配合高斯金字塔一塊兒使用。
二者的簡要區別:高斯金字塔用來向降低採樣圖像,5而拉普拉斯金字塔則用來從金字塔底層圖像中向上採樣重建一個圖像。數學

要從金字塔第i層生成第i+1層(咱們表示第i+1層爲G_i+1),咱們先要用高斯覈對G_1進行卷積,而後刪除全部偶數行和偶數列。固然的是,新獲得圖像面積會變爲源圖像的四分之一。按上述過程對輸入圖像G_0執行操做就可產生出整個金字塔。it

當圖像向金字塔的上層移動時,尺寸和分辨率就下降。OpenCV中,從金字塔中上一級圖像生成下一級圖像的能夠用PryDown。而經過PryUp將現有的圖像在每一個維度都放大兩遍。圖像處理

圖像金字塔中的向上和向下採樣分別經過OpenCV函數 pyrUp 和 pyrDown 實現。class

歸納起來就是:

  ●對圖像向上採樣:pyrUp函數
  ●對圖像向下採樣:pyrDown函數
這裏的向下與向上採樣,是對圖像的尺寸而言的(和金字塔的方向相反),向上就是圖像尺寸加倍,向下就是圖像尺寸減半。而若是咱們按上圖中演示的金字塔方向來理解,金字塔向上圖像其實在縮小,這樣恰好是反過來了。

但須要注意的是,PryUp和PryDown不是互逆的,即PryUp不是降採樣的逆操做。這種狀況下,圖像首先在每一個維度上擴大爲原來的兩倍,新增的行(偶數行)以0填充。而後給指定的濾波器進行卷積(其實是一個在每一個維度都擴大爲原來兩倍的過濾器)去估計「丟失」像素的近似值。

PryDown( )是一個會丟失信息的函數。爲了恢復原來更高的分辨率的圖像,咱們要得到由降採樣操做丟失的信息,這些數據就和拉普拉斯金字塔有關係了。

二、高斯金字塔

高斯金字塔是經過高斯平滑和亞採樣得到一些列下采樣圖像,也就是說第K層高斯金字塔經過平滑、亞採樣就能夠得到K+1層高斯圖像,高斯金字塔包含了一系列低通濾波器,其截至頻率從上一層到下一層是以因子2逐漸增長,因此高斯金字塔能夠跨越很大的頻率範圍。金字塔的圖像以下:

另外,每一層都按從下到上的次序編號, 層級 G_i+1 (表示爲 G_i+1尺寸小於第i層G_i)。

 ⑴對圖像的向下取樣

爲了獲取層級爲 G_i+1 的金字塔圖像,咱們採用以下方法:

  <1>對圖像G_i進行高斯內核卷積

  <2>將全部偶數行和列去除

獲得的圖像即爲G_i+1的圖像,顯而易見,結果圖像只有原圖的四分之一。經過對輸入圖像G_i(原始圖像)不停迭代以上步驟就會獲得整個金字塔。同時咱們也能夠看到,向下取樣會逐漸丟失圖像的信息。

以上就是對圖像的向下取樣操做,即縮小圖像。

 ⑵對圖像的向上取樣

若是想放大圖像,則須要經過向上取樣操做獲得,具體作法以下:

  <1>將圖像在每一個方向擴大爲原來的兩倍,新增的行和列以0填充

  <2>使用先前一樣的內核(乘以4)與放大後的圖像卷積,得到 「新增像素」的近似值

獲得的圖像即爲放大後的圖像,可是與原來的圖像相比會發覺比較模糊,由於在縮放的過程當中已經丟失了一些信息,若是想在縮小和放大整個過程當中減小信息的丟失,這些數據造成了拉普拉斯金字塔。

那麼,咱們接下來一塊兒看一看拉普拉斯金字塔的概念吧。

 三、拉普拉斯金字塔

 下式是拉普拉斯金字塔第i層的數學定義:

 

式中的表示第i層的圖像。而UP()操做是將源圖像中位置爲(x,y)的像素映射到目標圖像的(2x+1,2y+1)位置,即在進行向上取樣。符號表示卷積,爲5x5的高斯內核。

咱們下文將要介紹的pryUp,就是在進行上面這個式子的運算。

所以,咱們能夠直接用OpenCV進行拉普拉斯運算:

 

也就是說,拉普拉斯金字塔是經過源圖像減去先縮小後再放大的圖像的一系列圖像構成的。

整個拉普拉斯金字塔運算過程能夠經過下圖來歸納:

 

因此,咱們能夠將拉普拉斯金字塔理解爲高斯金字塔的逆形式。

另外再提一點,關於圖像金字塔很是重要的一個應用就是實現圖像分割。圖像分割的話,先要創建一個圖像金字塔,而後在G_i和G_i+1的像素直接依照對應的關係,創建起」父與子「關係。而快速初始分割能夠先在金字塔高層的低分辨率圖像上完成,而後逐層對分割加以優化。

相關文章
相關標籤/搜索