opencv學習(圖像金字塔)

1.什么是圖像金字塔

圖像金字塔是一種多尺度圖像表示方法,通過對原始圖像進行下采樣(縮小)和上采樣(放大),生成一系列不同分辨率的圖像集合,形似 “金字塔”(底部是高分辨率原始圖像,向上逐漸變為低分辨率圖像)。

2.核心作用

多尺度分析:不同分辨率的圖像適用于檢測不同大小的目標(如大目標在低分辨率圖像中更易識別,小目標需要高分辨率)。

圖像融合:結合不同尺度的圖像信息(如拉普拉斯金字塔可無縫融合兩張圖像的細節)。

降維與壓縮:低分辨率圖像數據量小,便于快速處理和存儲。

特征提取:在多個尺度上提取特征(如 SIFT 特征依賴金字塔實現尺度不變性)。

3.常見的2種操作方法

高斯金字塔,拉普拉斯金字塔

(1)高斯金字塔

是最常見的類型,通過下采樣上采樣操作生成,核心是高斯模糊(平滑)和降采樣。

下采樣(縮小圖像):cv2.pyrDown()

上采樣(放大圖像):cv2.pyrUp()

如代碼示例:

img=cv2.imread('aiye.jpg')
def cv_show(name,img):cv2.imshow(name,img)cv2.waitKey(0)cv2.destroyAllWindows()
cv_show('aiye',img)
print(img.shape)
#高斯金字塔(向下采樣(圖像縮小),向上采樣(圖像放大,矩陣添0))up1=cv2.pyrUp(img)
cv_show('up1',up1)
print(up1.shape)down1=cv2.pyrDown(img)
cv_show('down1',down1)
print(down1.shape)'''
先執行上采樣再執行下采樣,或者先下后上都是無法恢復到原圖的
'''
(2)拉普拉斯金字塔

基于高斯金字塔構建,用于保留圖像下采樣過程中丟失的細節,核心是 “原始圖像與上采樣后的下采樣圖像的差值”。

計算方式
公式:Li?=Gi??pyrUp(pyrDown(Gi)?)

如代碼示例:

up2=cv2.pyrUp(down1)
'''
img 和 up2 的尺寸不同(一個是 (299,299,3),另一個是 (300,300,3)),無法進行減法運算(lap=img-up2),
則先讓兩個圖像的尺寸大小一致了再進行減法。要么改img要么改up2
'''
up2_rs=cv2.resize(up2,(img.shape[1],img.shape[0]))
lap=img-up2_rs
cv_show('lap',lap)
print(lap.shape)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/916275.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/916275.shtml
英文地址,請注明出處:http://en.pswp.cn/news/916275.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從 C# 到 Python:項目實戰第五天的飛躍

在前面三天的學習中,我們已經掌握了 Python 的基礎語法、數據結構以及一些核心庫的使用。今天,我們將通過三個實戰項目,深入對比 C# 和 Python 在命令行工具開發、Web 應用開發以及數據處理方面的差異,感受 Python 在實際項目中的…

rabbitmq 03

一、mq的作用和使用場景 MQ的基本作用 MQ(Message Queue,消息隊列)是一種應用程序對應用程序的通信方法,主要作用包括: 異步處理:解耦生產者和消費者,允許生產者發送消息后立即返回&#xff0…

Ubuntu 24.04 顯示中文+使用中文鍵盤

ubuntu 24.04 中文顯示中文鍵盤Ubuntu中文輸入重啟iBus服務Ubuntu中文輸入 安裝的Ubuntu24.04,一般默認是英文的,要使用中文的話,可以通過命令行設置,也可以使用‘設置’,在圖形化界面中操作。 下面是在‘設置’的圖形…

Docker實戰:Tomcat容器從部署到自定義網頁的完整操作

Docker實戰:Tomcat容器從部署到自定義網頁的完整操作 繼Nginx容器部署后,我們再來實操Tomcat容器的使用——從拉取鏡像、啟動容器,到端口映射、網頁掛載,全程通過實際命令演示,帶你掌握Tomcat在Docker中的核心用法。 一…

使用cherry studio離線搭建私人知識庫流程記錄

本篇文章記錄近期嘗試在個人筆記本上、全離線狀態下搭建知識庫的流程。用到的工具包括:Cherry Studio、ollama。主要過程是:首先下載ollama用于管理大模型;然后,從魔塔社區下載需要的deepseek、千問大模型和bge-m3嵌入模型&#x…

【工具類】Linux 環境利用 uv 安裝多版本 python

文章目錄前置工作環境說明如果kali無法訪問網絡pypi 換源安裝 uvuv 寫入環境變量臨時寫入永久寫入無法打開 github 解決方案(注意此方法可能也會失效)安裝多版本 python查看已安裝的pythonuv python install到 uv 的 github 主頁,找安裝文件下…

求職招聘小程序源碼招聘小程序開發定制

身份:求職者、企業求職者:完善簡歷,簡歷投遞企業:企業入駐,查看簡歷企業會員:半年 、年度 權益:每日發布條數、刷新條數,簡歷下載數量聊天:求職者可以和企業聊天招聘會…

Git 使用全指南:從配置到免密登錄

Git 使用全指南:從配置到免密登錄一、Git 基礎配置二、Git 代碼提交流程2.1 克隆遠程倉庫2.2 創建并切換分支2.3 暫存文件2.4 提交到本地倉庫2.5 拉取遠程最新代碼2.6 推送本地分支到遠程三、VSCode 服務器免密登錄配置3.1 生成 Windows SSH 密鑰3.2 復制公鑰到服務…

組合期權:領式策略

文章目錄0.簡介1.多頭領式策略(Long Collar)?1.1 策略構成1.2 適用場景?1.3 損益分析1.4 案例示范2.空頭領式策略(Short Collar)?2.1 策略構成2.2 適用場景2.3 損益分析2.4 案例示范參考文獻0.簡介 領式策略(Colla…

ECSPI控制器

目錄 SPI協議簡介 極性與相位 SPI框圖 單字節收發 發送數據流程 接收數據流程 ECSPI控制器 關鍵特性 時鐘源 主機模式 等待狀態 片選控制 單突發傳輸 多突發傳輸 相位控制 ECSPI Memory Map ECSPI寄存器 ECSPIx_RXDATA ECSPIx_TXDATA ?編輯 ECSPIx_CONREG …

HTTP 與 SpringBoot 參數提交與接收協議方式

HTTP 協議支持多種參數提交方式,主要取決于請求方法(Method)和內容類型(Content-Type)。以下是主要的參數提交協議:1. URL 查詢參數 (Query Parameters)請求方法: GET (也可用于其他方法)格式: ?key1value1&key2value2示例: GET /users?id123&…

Lua(數組)

Lua 數組基礎概念Lua 中的數組實際上是用整數索引的 table,是一種特殊形式的表。數組索引通常從 1 開始(Lua 慣例),但也可以從其他值開始。創建數組通過表構造器初始化數組:-- 索引從 1 開始的數組 local arr {10, …

【Docker項目實戰】在Docker環境下部署go-file文件分享工具

【Docker項目實戰】在Docker環境下部署go-file文件分享工具一、go-file介紹1.1 go-file簡介1.2 go-file特點1.3 go-file使用場景二、本地環境介紹2.1 本地環境規劃2.2 本次實踐介紹三、本地環境檢查3.1 檢查Docker服務狀態3.2 檢查Docker版本3.3 檢查docker compose 版本四、下…

C++基礎學習——文件操作詳解

一、文件流類概述 C 標準庫提供了三個主要的文件流類: ifstream (輸入文件流):用于從文件讀取數據ofstream (輸出文件流):用于向文件寫入數據fstream (文件流):既可讀又可寫 這些類都繼承自 iostream 類,因此可以使用 …

Android補全計劃 DrawerLayout使用

DrawerLayout其實用了很久了,甚至封裝了一些代碼方便不同項目使用,但重構代碼的時候突然意識到這塊內容很不成體系,因此又參考了些文檔,組建了自己的一個文檔。 toolbardrawerlayout能寫的效果很多,在此我也只是截取了…

人工智能之數學基礎:概率論之韋恩圖的應用

韋恩圖的應用由于事件的計算有時候太過于抽象了,此時我們可以使用韋恩圖的方式來進行驗證,我們下面來舉一個例子,A∪B)-CA∪(B-C)是否成立?我們可以通過韋恩圖來完成這個任務:我們通過這種方式來一點一點的…

小白成長之路-部署Zabbix7(二)

文章目錄一、zabbix-自動發現二、自動注冊三、zabbix-網易云郵箱-發送消息二、zabbix-釘釘告警總結一、zabbix-自動發現 1.在準備兩臺虛擬機,我的是192.168.144.12,192.168.144.13 server換成zabbix服務器的ip地址 vim /etc/zabbix/zabbix_agentd.conf 2.創建自動…

CMU15445-2024fall-project4踩坑經歷

project4目錄Task1Task2ReconstructSeqScanTask3InsertCommitTxnMgrDbgGenerateNewUndoLog And GenerateUpdateUndoLogUpdate And Delete垃圾回收Task4Index Insert并發控制Index ScanDelete、Update并發控制主鍵更新Bonus 1Bonus 2處理寫傾斜感謝CMU的教授們給我們分享了如此精…

C++20 協程

摘要:C20 引入的協程機制為異步編程提供了輕量級解決方案,其核心優勢在于通過用戶態調度實現高效的上下文切換,適用于 I/O 密集型任務、生成器模式等場景。本文系統闡述 C20 協程的底層原理與實踐要點,首先解析協程的基本結構&…

《計算機組成原理與匯編語言程序設計》實驗報告二 基本數字邏輯及漢字顯示

目 錄 一、實驗學時 二、實驗目的 三、實驗要求 四、實驗內容 五、實驗步驟 1、打開Logisim軟件,列出并行四位二進制全加器邏輯電路真值表,并使用與、或、非、異或等基本原件實現并行四位二進制全加器邏輯電路,鋪設完成后進行測試進而…