OpenCV半小時掌握基本操作之圖像金字塔
【OpenCV】⚠️高手勿入! 半小時學(xué)會基本操作 ⚠️ 圖像金字塔
概述
OpenCV 是一個跨平臺的計算機視覺庫, 支持多語言, 功能強大. 今天小白就帶大家一起攜手走進 OpenCV 的世界.
圖像金字塔
高斯金字塔
高斯金字塔 (Gaussian Pyramid) 是最基本的圖像塔. 對圖像進行高斯濾波, 然后去除偶數(shù)行和列. 對圖像放大形成上采樣.
下采樣:
例子:
# 讀取圖片 img = cv2.imread("person.jpg") print(img.shape) # (381, 382, 3) # 下采樣 down = cv2.pyrDown(img) print(down.shape) # (191, 191, 3) # 展示圖片 cv2.imshow("down", down) cv2.waitKey(0) cv2.destroyAllWindows()
上采樣:
例子:
# 讀取圖片 img = cv2.imread("person.jpg") print(img.shape) # (381, 382, 3) # 上采樣 up = cv2.pyrUp(img) print(up.shape) # (762, 764, 3) # 展示圖片 cv2.imshow("up", up) cv2.waitKey(0) cv2.destroyAllWindows()
下采樣然后上采樣 vs 原圖:
# 讀取圖片 img = cv2.imread("person.jpg") img = cv2.resize(img, (380, 380)) # 下采樣 down = cv2.pyrDown(img) # 上采樣 down_up = cv2.pyrUp(down) # 組合 combine = np.hstack((img, down_up)) # 圖片展示 cv2.imshow("combine", combine) cv2.waitKey(0) cv2.destroyAllWindows()
輸出結(jié)果:
從上圖我們可以看出, 原圖明顯比下采樣然后上采樣的圖清晰.
拉布拉斯金字塔
在進行高斯金字塔 (Gaussian Pyramid) 運算時, 在不斷的高斯濾波和下采樣, 我們丟失了很多高頻信號.
拉斯金字塔 (Laplacian Pyramid) 可以幫助我們保留高頻信號.
代碼:
# 讀取圖片 img = cv2.imread("person.jpg") img = cv2.resize(img, (380, 380)) # 下采樣 down = cv2.pyrDown(img) # 上采樣 down_up = cv2.pyrUp(down) # 原圖 - down_up result = img - down_up # 圖片展示 cv2.imshow("result", result) cv2.waitKey(0) cv2.destroyAllWindows()
輸出結(jié)果:
到此這篇關(guān)于OpenCV半小時掌握基本操作之圖像金字塔的文章就介紹到這了,更多相關(guān)OpenCV圖像金字塔內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python+Selenium自動化實現(xiàn)分頁(pagination)處理
這篇文章主要為大家詳細介紹了Python+Selenium自動化實現(xiàn)分頁pagination處理的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03python使用requests模塊實現(xiàn)爬取電影天堂最新電影信息
這篇文章主要介紹了python使用requests模塊實現(xiàn)爬取電影天堂最新電影信息,本文通過實例代碼給大家介紹了str/list/tuple三者之間怎么相互轉(zhuǎn)換,需要的朋友可以參考下2019-04-04Yolov5多邊形標簽和JSON數(shù)據(jù)格式轉(zhuǎn)換
通過labelme對圖進行標注后,得到的是json文件,而Yolov5對數(shù)據(jù)進行模型構(gòu)建的時候,讀取需要的是txt格式的文件。所以需要先通過Python進行文件格式的轉(zhuǎn)換,需要的朋友可以參考下2023-05-05Python使用urllib模塊的urlopen超時問題解決方法
這篇文章主要介紹了Python使用urllib模塊的urlopen超時問題解決方法,本文使用socket模塊中的setdefaulttimeout函數(shù)解決了超時問題,需要的朋友可以參考下2014-11-11python shapely.geometry.polygon任意兩個四邊形的IOU計算實例
這篇文章主要介紹了python shapely.geometry.polygon任意兩個四邊形的IOU計算實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04python神經(jīng)網(wǎng)絡(luò)Keras常用學(xué)習(xí)率衰減匯總
這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)Keras常用學(xué)習(xí)率衰減匯總,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-05-05darknet框架中YOLOv3對數(shù)據(jù)集進行訓(xùn)練和預(yù)測詳解
這篇文章主要為大家介紹了darknet框架中YOLOv3對數(shù)據(jù)集進行訓(xùn)練和預(yù)測使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-11-11jupyter-lab設(shè)置自啟動及遠程連接開發(fā)環(huán)境
本文主要介紹了jupyter-lab設(shè)置自啟動及遠程連接開發(fā)環(huán)境,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02