OpenCV--特征匹配

OpenCV--特征匹配

  • 代碼和筆記

代碼和筆記

import cv2
import numpy as np"""
特征匹配
""""""
暴力特征匹配:使用第一組(第一幅圖)中的一個特征描述子,使用一些距離計算與第二組中的所有其他特征匹配,返回最接近的一個。
"""
img1 = cv2.imread('./img/cat.jpeg')
img2 = cv2.imread('./img/ca2.jpeg')# 創建特征檢測對象
sift = cv2.SIFT_create()# 計算描述子
kp1, des1 = sift.detectAndCompute(img1, None)
kp2, des2 = sift.detectAndCompute(img2, None)# 暴力特征匹配
# 計算距離的方式:1. NORM_L1:絕對值距離,SIFT和SURF使用。2. NORM_L2:歐氏距離,SIFT和SURF使用。3. HAMMING:漢明距離。ORB使用
bf = cv2.BFMatcher(cv2.NORM_L2)# 進行匹配
match = bf.match(des1, des2)# 繪制特征匹配
result = cv2.drawMatches(img1, kp1, img2, kp2, match, None)cv2.imshow('result', result)"""
FLANN特征匹配:快速最近鄰搜索包,算法集合,用的很少
"""cv2.waitKey(0)
cv2.destroyAllWindows()

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

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

相關文章

什么是自動化辦公

自動化辦公是指使用技術工具或軟件,通過預設流程或腳本,自動執行日常辦公任務,從而提升效率、減少錯誤、節約時間的辦公模式。它適用于需要重復性、規則明確的工作流程,讓員工將精力集中在更具創造性和戰略性的工作上。 自動化辦公…

常見排序算法總結 (四) - 快速排序與隨機選擇

快速排序 算法思想 每一輪在數組相應的范圍上隨機找一個元素進行劃分,將不大于它的所有元素都放到左邊,將大于它的元素都放到右邊。在左右兩個子數組上不斷地遞歸,直到整個數組上有序。 注意:實現時選擇的時參考荷蘭國旗問題優化…

unraid固態硬盤分區格式—默認1MiB對齊

背景 我的unraid中有三個機械硬盤和兩個固態硬盤,其中兩個固態硬盤組成zfs鏡像的cache,防止其中一個硬盤出問題導致數據丟失。然而,今天突然看到機械硬盤的分區格式為GPT 4k,而固態硬盤是MBR 1MiB。想到GPT更加優秀,并…

Flutter 圖片編輯板(一) 事件路由

一個圖片編輯板,有兩部分組成。編輯板和內容項。每一個內容項是被InteractiveViewer修飾的widget,具有縮放偏移的功能。 在圖片編輯板上, 會有多個內容相,圖片或文字(添加文字目前還沒做過)。 當要編輯其中…

數倉技術hive與oracle對比(一)

準備 包括軟硬件環境、數據、測試數據三方面的準備內容。 環境 虛擬機軟件virtualbox7,同樣的虛擬機配置:內存2G、cpu一核,物理主機同一臺macbookpro(13-2020款),所以硬盤IO讀寫速度一致。 綜上&#x…

AR眼鏡_消費級工業AR智能眼鏡主板硬件解決方案

AR眼鏡的研發是一項復雜的軟硬件集成工程,它需要在攝影、音頻、交互和連接等多個方面提供卓越的基礎體驗,因此產品的每個細節都顯得尤為重要。 在設計AR眼鏡時,重量、體積和散熱性能都是必須認真考量的關鍵因素。在芯片平臺的選擇上&#xff…

通信原理概論復習筆記(1)

1 緒論 消息: 通信系統傳輸對象, 信息的載體和物理表現形式. 信息: 消息的有效內容和內涵. 信號: 消息的傳輸載體. 模擬通信: 信源 → \to → 調制器 → \to → 信道(噪聲) → \to → 解調器 → \to → 信宿. 數字通信: 信源 → \to → 信源編碼(壓縮數字化) → \to →…

ASPICE評估如何優化軟件開發、測試和部署流程

ASPICE(Automotive SPICE,即汽車軟件過程改進及能力評定)評估在提高軟件開發、測試、部署的速度和質量方面發揮著重要作用。以下是ASPICE評估如何具體提高這些環節的具體方式: 一、提高軟件開發效率 標準化流程:ASPIC…

【OpenCV】Canny邊緣檢測

理論 Canny 邊緣檢測是一種流行的邊緣檢測算法。它是由 John F. Canny 在 1986 年提出。 這是一個多階段算法,我們將介紹算法的每一個步驟。 降噪 由于邊緣檢測易受圖像中的噪聲影響,因此第一步是使用 5x5 高斯濾波器去除圖像中的噪聲。我們在前面的章…

Ubuntu 安裝 web 服務器

安裝 apach sudo apt install apache2 -y 查看 apach2 版本號 apache2 -v 檢查是否啟動服務器 sudo service apache2 status 檢查可用的 ufw 防火墻應用程序配置 sudo ufw app list 關閉防火墻 sudo ufw disable 更改允許通過端口流量 sudo ufw allow Apache Full 開啟…

如何落地文件即服務?--- 基于makeself封裝服務并啟動

我通常想能不能給客戶一個文件,然后客戶通過執行這個簡單的指令就可以吧,一個服務在本地起來? 這是一種文件即服務的思想,不知道你有沒有類似的想法,當我發現https://makeself.io/ ,我覺得它能很好的解決我…

mysql集群MHA方式部署

1. 基本信息 部署機器角色部署路徑192.168.242.71MySQL-Mater MHA-NodeMySQL: /alidata1/mysql-5.7.43192.168.242.72MySQL-Slave MHA-NodeMHA-Node: /alidata1/admin/tools/mha4mysql-node-0.58192.168.242.73MySQL-Slave MHA-Node192.168.242.74MHA-ManagerMHA-Manager: …

【C++】8___繼承

目錄 一、基本語法 二、繼承方式 三、對象模型 四、繼承中的構造與析構的順序 五、繼承中同名成員處理 六、多繼承語法 七、菱形繼承 一、基本語法 好處:減少重復的代碼 語法: class 子類 : 繼承方式 父類 子類 也稱為 派生類 父類…

Netty客戶端接收不到服務端發送的數據問題

文章目錄 前言問題描述相關代碼解決方法 前言 環境 JDK:64位 jdk1.8.0_201 Netty:4.1.39.Final 問題描述 項目中使用Netty接受客戶端的消息,客戶端為硬件設備,在接受數據后發送數據到服務端。 同時因為客戶端沒有聯網&#xff…

IDEA方法注釋模板設置

目錄 創建模板 新建模板:命名為* 設置模板內容-IDEA格式模板 設置模板應用場景 設置參數 創建模板 /**Enter這里我們也按照這種習慣來設置IDEA的方法注釋:File-->Settings-->Editor-->Live Templates 先新建模板組,然后在模板組中…

vscode 配置C/C++環境控制臺參數

您可以通過以下步驟在VS Code中配置C/C環境的控制臺參數: 1,打開VS Code并進入您的C/C項目 2,點擊左側的"調試"圖標,然后點擊頂部的齒輪圖標,選擇“launch.json”。 3,在"launch.json&qu…

深度學習筆記之BERT(五)TinyBERT

深度學習筆記之TinyBERT 引言回顧:DistilBERT模型TinyBERT模型結構TinyBERT模型策略Transformer層蒸餾嵌入層蒸餾預測層蒸餾 TinyBERT模型的訓練效果展示 引言 上一節介紹了 DistilBERT \text{DistilBERT} DistilBERT模型,本節將繼續介紹優化性更強的知…

正則表達式——參考視頻B站《奇樂編程學院》

智能指針 一、背景🎈1.1. 模式匹配🎈1.2. 文本替換🎈1.3. 數據驗證🎈1.4. 信息提取🎈1.5. 拆分字符串🎈1.6. 高級搜索功能 二、原料2.1 參考視頻2.2 驗證網址 三、用法3.1 限定符3.1.1 ?3.1.2 *3.1.3 3.1.…

appium學習之二:adb命令

1、查看設備 adb devices 2、連接 adb connect IP:端口 3、安裝 adb install xxx.apk 4、卸載 adb uninstall 【包名】 5、把對應目錄下的1.txt文件傳到手機sdcard下 adb push 1.txt /sdcard 6、進入對應的設備里 adb shell 7、切入sdcard目錄 cd /sdcard 8、ls 查…

Tablesaw封裝Plot.ly實現數據可視化

上文介紹tablesaw的數據處理功能,本文向你展示其數據可視化功能,并通過幾個常用圖表示例進行說明。 Plot.ly包裝 可視化是數據分析的重要組成部分,無論你只是“查看”新數據集還是驗證機器學習算法的結果。Tablesaw是一個開源、高性能的Java…