標籤:vs2013 opencv 影像處理 python
快樂蝦
http://blog.csdn.net/lights_joy/
歡迎轉載,但請保留作者資訊
影像金字塔是映像中多尺度表達的一種,最初用於機器視覺和映像壓縮。一幅映像的金字塔是一系列以金字塔形狀排列的解析度逐步降低,且來源於同一張原始圖的映像集合。其通過梯次向下採樣獲得,直到達到某個終止條件才停止採樣。金字塔的底部是待處理映像的高解析度表示,而頂部是低解析度的近似。層級越高,則映像越小,解析度越低。
一般情況下有兩種類型的影像金字塔常常出現在文獻和以及實際運用中。他們分別是:
高斯金字塔 ( Gaussianpyramid): 用來向下採樣,主要的影像金字塔
拉普拉斯金字塔 (Laplacianpyramid): 用來從金字塔低層映像重建上層未採樣映像,在數位影像處理中也即是預測殘差,可以對映像進行最大程度的還原,配合高斯金字塔一起使用。
兩者的簡要區別:高斯金字塔用來向下降採樣映像,而拉普拉斯金字塔則用來從金字塔底層映像中向上採樣重建一個映像。
影像金字塔中的向上和向下採樣分別通過OpenCV函數 pyrUp 和 pyrDown 實現。 這裡的向下與向上採樣,是對映像的尺寸而言的(和金字塔的方向相反),向上就是映像尺寸加倍,向下就是映像尺寸減半。而如果我們按中示範的金字塔方向來理解,金字塔向像其實在縮小,這樣剛好是反過來了。
但需要注意的是,PryUp和PryDown不是互逆的,即PryUp不是降採樣的逆操作。這種情況下,映像首先在每個維度上擴大為原來的兩倍,新增的行(偶數行)以0填充。然後給指定的濾波器進行卷積(實際上是一個在每個維度都擴大為原來兩倍的過濾器)去估計“丟失”像素的近似值。
用Python試試:
# 影像金字塔src = cv2.imread(‘f:\\tmp\\cotton.jpg‘)cv2.imshow(‘src‘, src)# 下採樣dst = cv2.pyrDown(src)cv2.imshow(‘dst‘, dst)# 上採樣src1 = cv2.pyrUp(dst)cv2.imshow(‘src1‘, src1)cv2.waitKey()
我們的原始映像:
下採樣後的映像:
還原後的映像:
映像明顯的模糊化。
??
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
Python影像處理(16):影像金字塔