国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼

這篇具有很好參考價值的文章主要介紹了圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

圖像金字塔是對圖像進行多分辨率表示的一種有效且簡單的結構。
一個圖像金字塔是一系列以金字塔形狀排列的分辨率逐步降低的圖像。圖像金字塔的底部是待處理圖像的高分辨率表示,而頂部是低分辨率表示。

圖像金字塔有什么作用?
圖像金字塔常用于圖像縮放、圖像重構、圖像融合、圖像增強技術中。
這里說下圖像金字塔在圖像融合技術中的應用:多分辨率塔式圖像融合算法是現(xiàn)在較為常用的圖像融合方法。在這類算法中,原圖像被層層濾波和縮小,形成一個塔狀結構。在塔的每一層都用一種融合算法對這一層的數(shù)據(jù)進行融合,從而得到一個經(jīng)算法處理后的塔式結構,然后對處理后的塔式結構進行重構,從而得到合成圖像。
另外,圖像金字塔可以將原圖像分別分解到不同的空間頻帶上,這樣就可以針對不同分解層的不同頻帶上的特征與細節(jié),采用不同的算子以達到更有針對性的算法優(yōu)化處理。

高斯金字塔和拉普拉斯金字塔是最常見的兩種圖像金字塔。

下面詳細介紹高斯金字塔和拉普拉斯金字塔。

高斯金字塔
高斯金字塔是指通過高斯模糊濾波和下采樣不斷地將圖像的尺寸縮小,進而在金字塔中包含多個分辨率的一組圖像。高斯金字塔的形式如下圖所示:
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
一般情況下,高斯金字塔的最底層為原圖像,每向上一層就會通過高斯模糊濾波+下采樣縮小一次圖像的尺寸。
通常情況下,圖像的長與寬會縮小為原來的一半,由于每次圖像的長與寬都縮小為原來的一半,圖像的縮小速度非???,因此常見的高斯金字塔的層數(shù)為3~6。

在OpenCV中提供了函數(shù)pyrDown(),用于生成圖像的上一層高斯金字塔。
函數(shù)pyrDown()的原型如下:

void cv::pyrDown(InputArray src,
                 OutputArray dst,
                 const Size & dstsize = Size(),
                 int borderType = BORDER_DEFAULT )

函數(shù)pyrDown()的參數(shù)意義如下:
src—輸入圖像
dst—輸出圖像,它的寬度和高度大致為src的1/2 ,具體精確的大小由第三個參數(shù)dstsize決定。
dstsize—目標圖像的大小,默認值為Size((src.cols+1)/2, (src.rows+1)/2),自己指定時需要滿足以下條件。
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
bordertype—做高斯濾波時的邊界擴展標志。關于邊界擴展的詳細介紹可參見下面這篇博文:
https://www.hhai.cc/thread-178-1-1.html
使用函數(shù)pyrDown()生成上一層高斯金字塔包含兩個過程,即高斯核卷積(用于實現(xiàn)高斯模糊濾波)和下采樣兩個過程。
G n G_{n} Gn?表示第n層高斯金字塔的圖像,則 G 0 G_{0} G0?表示高斯金字塔的最底層,這一層實際上就是原圖像。為了得到 G n + 1 G_{n+1} Gn+1?,首先需要對 G n G_{n} Gn?進行高斯核卷積,即做高斯低通濾波,然后刪除所有的偶數(shù)行和偶數(shù)列(這是一種下采樣操作),從而得到 G n + 1 G_{n+1} Gn+1?。
函數(shù)pyrDown()使用的高斯核如下:
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
提問:為什么高斯金字塔在下采樣操作之前要先進行高斯低通濾波。
答:這樣做既能保證高斯金字塔低通處理的性質,又能對圖像進行平滑,使下采樣得到的圖像不至于出現(xiàn)邊界縫隙。
總結一下:圖像高斯金字塔的上一層是對下一層進行低通濾波后再進行隔行隔列采樣得到的。上一層圖像的大小約為下一層圖像的1/4。

拉普拉斯金字塔
拉普拉斯金字塔實際上是為了實現(xiàn)高斯金字塔的圖像重建而存在的。它是在高斯金字塔的基礎上生成的。拉普拉斯金字塔是高斯金字塔與其上一層通過上采樣擴大后的差值圖像,這里的上采樣一般采用插值的方式進行。

昊虹君在網(wǎng)上找到了一幅示意圖,很形象具體地解釋了拉普拉斯金字塔是怎么回事,
這幅示意圖請大家訪問本博文的原文查看,
本博文的原文鏈接:

https://www.hhai.cc/thread-198-1-1.html

從上面昊虹君找到的那幅示意圖我們可以清晰地看出:第n層拉普拉斯圖像實際上是第n層高斯圖像與第n+1層高斯圖像經(jīng)上采樣后的差值,由于高斯濾波器是一種低通濾波器,所以我們可以說某一級的拉普拉斯金字塔可以反映出其同級的高斯金字塔的高頻分量。有些文獻把拉普拉斯金字塔反映其同級高斯金字塔的高頻分量的性質稱為拉普拉斯金字塔的預測殘差作用。

從上面拉普拉斯圖像的生成過程我們可以看出,在利用高斯金字塔生成拉普拉斯金字塔的過程中,假設高斯金字塔為N層,則在計算第N層的拉普拉斯金字塔時我們還要額外計算出第N+1層的高斯金字塔才能進而計算出第N層的拉普拉斯金字塔。

OpenCV提供了函數(shù)pyrUp()用于幫助計算出拉普拉斯金字塔。通過它可以把第n層的高斯金字塔圖像進行上采樣后再進行高斯卷積模糊濾波操作。
OpenCV官方文檔中對其功能的描述如下:
The function performs the upsampling step of the Gaussian pyramid construction, though it can actually be used to construct the Laplacian pyramid. First, it upsamples the source image by injecting even zero rows and columns and then convolves the result with the same kernel as in pyrDown multiplied by 4
從上面的描述中我們可知,函數(shù)pyrUp()的上采樣操作是均勻地隔行隔列加0值。上采樣完成之后用下面這個卷積核進行高斯卷積模糊濾波操作。
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
請注意:上面這個卷積核與函數(shù)pyrDown()的卷積核有所不同,具體是函數(shù)pyrDown()高斯卷積核需要乘以四才得到函數(shù)pyrUp()的卷積核,至于為什么要這樣做,博主昊虹君目前沒有搞清楚,猜想應該是與其上采樣時隔行隔列插0值有關。知道原因的朋友可以與昊虹君說一說,先謝謝了。

函數(shù)pyrDown()的的原型如下:

void cv::pyrUp(InputArray src,
               OutputArray dst,
               const Size & dstsize = Size(),
               int borderType = BORDER_DEFAULT )

各參數(shù)的意義和函數(shù)pyrDown()的一樣,這里就不再贅述了。

這里要特別注意:函數(shù)pyrDown()的dst參數(shù)中得到的并不是拉普拉斯金字塔圖像。
如果要得到拉普拉斯金字塔圖像,還需要按下面的公式進行運算。
L n L_{n} Ln?表示第n層拉普拉斯金字塔, G n G_{n} Gn?表示第n層高斯金字塔,則有:

L n = G n ? P y r u p ( G n + 1 ) L_{n}=G_{n}-Pyrup(G_{n+1}) Ln?=Gn??Pyrup(Gn+1?)

顯然我們可以利用下面的公式重構第n層高斯金字塔圖像:
G n ′ = L n + P y r u p ( G n + 1 ) G_{n}^{'} =L_{n}+Pyrup(G_{n+1}) Gn?=Ln?+Pyrup(Gn+1?)

接下來上基于Python-OpenCV的示例代碼,
該示例代碼是對函數(shù)pyrDown()和pyrUp()的綜合使用,
該示例代碼先對圖像進行高斯金字塔下采樣處理,
再利用某一層的拉普拉普金字塔和高斯金字塔還原上一層圖像。
代碼寫了詳細的注釋,大家應該能夠很容易理解。

具體的代碼請大家訪問本博文的原文獲取,
本博文的原文鏈接:

https://www.hhai.cc/thread-198-1-1.html

代碼運行結果如下圖所示:
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼
從上面的結果中我們可以看出,利用某一層的高斯金字塔和拉普拉斯金字塔重構出的圖像與原圖相比在細節(jié)上(高頻分量上)并沒有多少缺失。文章來源地址http://www.zghlxwxcb.cn/news/detail-440524.html

到了這里,關于圖像金字塔、高斯金字塔、拉普拉斯金字塔是怎么回事?附利用拉普拉斯金字塔和高斯金字塔重構原圖的Python-OpenCV代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 圖像處理之LoG算子(高斯拉普拉斯)

    圖像處理之LoG算子(高斯拉普拉斯)

    LoG算子是由拉普拉斯算子改進而來。拉普拉斯算子是二階導數(shù)算子,是一個標量,具有線性、位移不變性,其傳函在頻域空間的原點為0。所有經(jīng)過拉普拉斯算子濾波的圖像具有零平均灰度。但是該算子的缺點是對噪聲具有敏感性,因此在實際應用中,一般先要對圖像進行平滑

    2024年02月16日
    瀏覽(27)
  • OpenCV(十六):高斯圖像金字塔

    OpenCV(十六):高斯圖像金字塔

    目錄 1.高斯圖像金字塔原理 2.高斯圖像金字塔實現(xiàn) 1.高斯圖像金字塔原理 高斯圖像金字塔是一種用于多尺度圖像表示和處理的重要技術。它通過對圖像進行多次高斯模糊和下采樣操作來生成不同分辨率的圖像層級,每個層級都是原始圖像的模糊和降采樣版本。 以下是高斯圖

    2024年02月09日
    瀏覽(31)
  • opencv基礎45-圖像金字塔01-高斯金字塔cv2.pyrDown()

    opencv基礎45-圖像金字塔01-高斯金字塔cv2.pyrDown()

    圖像金字塔(Image Pyramid)是一種用于多尺度圖像處理和分析的技術,它通過構建一系列不同分辨率的圖像,從而使得圖像可以在不同尺度下進行處理和分析。圖像金字塔在計算機視覺、圖像處理和計算機圖形學等領域中廣泛應用,可以用于目標檢測、特征提取、圖像匹配、尺

    2024年02月13日
    瀏覽(98)
  • 機器視覺技術與應用實戰(zhàn)(平均、高斯、水平prewitt、垂直prewitt、水平Sobel、垂直Sobel、拉普拉斯算子、銳化、中值濾波)

    機器視覺技術與應用實戰(zhàn)(平均、高斯、水平prewitt、垂直prewitt、水平Sobel、垂直Sobel、拉普拉斯算子、銳化、中值濾波)

    ? ? ?扯一點題外話,這一個月經(jīng)歷了太多,接連感染了甲流、乙流,人都快燒沒了,乙流最為嚴重,燒了一個星期的38-39度,咳嗽咳到虛脫。還是需要保護好身體,感覺身體扛不住幾次連續(xù)發(fā)燒!(甲流乙流是病毒,提前準備好奧司他韋,這個是阻斷病毒復制的藥,48小時內(nèi)

    2024年01月21日
    瀏覽(20)
  • 學習筆記:Opencv實現(xiàn)拉普拉斯圖像銳化算法

    學習筆記:Opencv實現(xiàn)拉普拉斯圖像銳化算法

    2023.8.19 為了在暑假內(nèi)實現(xiàn)深度學習的進階學習,Copy大神的代碼,記錄學習日常 圖像銳化的百科: 圖像銳化算法-sharpen_lemonHe_的博客-CSDN博客 在環(huán)境配置中要配置opencv: pip install opencv-contrib-python Code and lena.png:注意你是否在data下由lena.png ? 附上lena.png ?效果所示(解讀):

    2024年02月12日
    瀏覽(32)
  • 使用 OpenCV 進行圖像模糊度檢測(拉普拉斯方差方法)

    使用 OpenCV 進行圖像模糊度檢測(拉普拉斯方差方法)

    工作中遇到,簡單整理 人臉識別中,對于模糊程度較高的圖像數(shù)據(jù),識別率低,錯誤率高。 雖然使用 AdaFace 模型,對 低質量人臉 表現(xiàn)尤為突出。 但是還是需要對 模糊程度高的圖像進行丟棄處理 當前通過 閾值分類 ,符合要求的進行特性提取 實際應用中,可以維護一個 質

    2024年02月15日
    瀏覽(87)
  • Python實現(xiàn)多種圖像銳化方法:拉普拉斯算子和Sobel算子

    Python實現(xiàn)多種圖像銳化方法:拉普拉斯算子和Sobel算子

    圖像和視頻逐漸成為人們生活中信息獲取的重要來源,而圖像和視頻在傳輸過程中有很多因素可能造成圖像模糊,比如不正確的聚焦會產(chǎn)生離焦模糊,景物和照相機的相對運動會造成運動模糊,圖像壓縮造成的高頻成分丟失模糊。 模糊降低了圖像的清晰度,嚴重影響了圖像質

    2024年02月04日
    瀏覽(27)
  • OV5640 攝像頭的圖像拉普拉斯銳化處理和邊緣提取

    OV5640 攝像頭的圖像拉普拉斯銳化處理和邊緣提取

    如圖所示,這是整個視頻采集系統(tǒng)的原理框圖。 ????????上電初始,F(xiàn)PGA 需要通過 IIC 接口對 CMOS Sensor 進行寄存器初始化配置。這些初始化的基本參數(shù),即初始化地址對應的初始化數(shù)據(jù)都存儲在一個預先配置好的 FPGA 片內(nèi) ROM中。在初始化配置完成后,CMOS Sensor 就能夠持續(xù)

    2024年02月01日
    瀏覽(26)
  • 圖像金字塔

    圖像金字塔

    圖像金字塔 簡單來說就是 自下而上圖像一步一步縮小 1 高斯金字塔(涉及高斯分布) 向下采樣(縮小,對金字塔來說是自下向上) 第一步: 高斯濾波去噪 第二部:將偶數(shù)行和列去掉 向上采樣(放大,對金字塔來說是自上向下) 第一步:在每個方向上擴大兩倍,新增的行和

    2023年04月22日
    瀏覽(34)
  • OpenCv之圖像金字塔

    OpenCv之圖像金字塔

    目錄 一、圖像金字塔介紹 ?二、高斯金字塔 三、拉普拉斯金字塔 圖像金字塔是圖像中多尺度表達的一種,最主要用于圖像的分割,是一種以多分辨率來解釋圖像的有效但概念簡單的結構。簡單來說,圖像金字塔是同一圖像不同分辨率的子圖集合。 圖像金字塔的作用: 圖像金

    2024年02月12日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包