日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Python,OpenCV图像金字塔cv2.pyrUp(), cv2.pyrDown()

發布時間:2023/11/27 生活经验 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python,OpenCV图像金字塔cv2.pyrUp(), cv2.pyrDown() 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Python,OpenCV圖像金字塔cv2.pyrUp, cv2.pyrDown

    • 1. 效果圖
    • 2. 原理
      • 2.1 什么是圖像金字塔
      • 2.2 金字塔分類
      • 2.3 應用
    • 3. 源碼
    • 參考

這篇博客將介紹圖像金字塔的理論,及用圖像金字塔cv2.pyrUp(), cv2.pyrDown()實現蘋果與梨的完美融合;

1. 效果圖

高斯金字塔效果圖如下:
一層是另一層的寬高的1/2;

高斯金字塔原圖 VS 低分辨率圖 VS 高分辨率效果圖如下:

可以看到先pyDown丟失了行列信息后,在pyUp填充行列信息圖像會極其的模糊。因為一旦降低分辨率,就會丟失信息。
拉普拉斯效果圖如下:

圖像融合效果圖如下:

2. 原理

2.1 什么是圖像金字塔

同一幅圖像的不同分辨率的圖像,從下到上看起來像金字塔,即稱之為金字塔;

2.2 金字塔分類

  • 高斯金字塔

高斯金字塔中的高層次(低分辨率)是通過去除低層次(高分辨率)圖像中的連續行和列而形成的。然后,將底層5個像素的貢獻值加上高斯權值,形成更高層次的每個像素;
每一層M×N圖像就變成了M/2×N/2圖像,面積減少到原來面積的四分之一。它被稱為八度音階。

  • 拉普拉斯金字塔

拉普拉斯金字塔是由高斯金字塔形成的;
拉普拉斯金字塔圖像就像邊緣圖像,它的大部分元素是零,用于圖像壓縮;
拉普拉斯金字塔中的一層是由高斯金字塔中的該層和高斯金字塔中其上層的擴展版本之間的差異形成的。

2.3 應用

  • 圖像壓縮
  • 圖像大小改變
  • 圖像融合:使用金字塔進行圖像融合可以實現無縫融合,而不會在圖像中留下太多數據。

3. 源碼

# 圖像金字塔
import cv2
import imutilsimg = cv2.imread('ym3.jpg')
img = imutils.resize(img, width=500)lower_reso = img
cv2.imshow("origin", img)for i in range(0, 3):lower_reso = cv2.pyrDown(lower_reso)cv2.imshow("lower_reso " + str(i), lower_reso)
cv2.waitKey(0)
cv2.destroyAllWindows()img = imutils.resize(img, width=300)
lower_reso = cv2.pyrDown(img)
higher_reso = cv2.pyrUp(lower_reso)
cv2.imshow("origin", img)
cv2.imshow("lower_reso", lower_reso)
cv2.imshow("higher_reso", higher_reso)
cv2.waitKey(0)def getLaplacian():img = cv2.imread('ym2.jpg')img = cv2.resize(img, (800, 800))# 為圖像生成高斯金字塔G = img.copy()gpA = [G]for i in range(4):G = cv2.pyrDown(G)gpA.append(G)# 為圖像生成拉普拉斯金字塔for i in range(4, 0, -1):GE = cv2.pyrUp(gpA[i])print(gpA[i - 1].shape, GE.shape)L = cv2.subtract(gpA[i - 1], GE)cv2.imshow("Laplacian " + str(i), L)cv2.waitKey(0)getLaplacian()

參考

  • https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_imgproc/py_pyramids/py_pyramids.html#py-pyramids

總結

以上是生活随笔為你收集整理的Python,OpenCV图像金字塔cv2.pyrUp(), cv2.pyrDown()的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。