91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++ OpenCV特征提取之如何實現Harris角點檢測

發布時間:2021-11-26 10:13:37 來源:億速云 閱讀:658 作者:小新 欄目:大數據

這篇文章主要介紹C++ OpenCV特征提取之如何實現Harris角點檢測,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

簡介

算法基本思想是使用一個固定窗口在圖像上進行任意方向上的滑動,比較滑動前與滑動后兩種情況,窗口中的像素灰度變化程度,如果存在任意方向上的滑動,都有著較大灰度變化,那么我們可以認為該窗口中存在角點。

關于角點的應用在圖像處理上比較廣泛,如圖像匹配(FPM特征點匹配)、相機標定等。網上也有很多博客對Harris角點檢測原理進行描述,但基本上只是描述了算法流程,而其中相關細節并未作出解釋,我們簡單補充說明一下

角點

下面有兩幅不同視角的圖像,通過找出對應的角點進行匹配。

C++ OpenCV特征提取之如何實現Harris角點檢測

再看下圖所示,放大圖像的兩處角點區域:

C++ OpenCV特征提取之如何實現Harris角點檢測

我們可以直觀的概括下角點所具有的特征:

>輪廓之間的交點;

>對于同一場景,即使視角發生變化,通常具備穩定性質的特征;

>該點附近區域的像素點無論在梯度方向上還是其梯度幅值上有著較大變化;

算法基本思想是使用一個固定窗口在圖像上進行任意方向上的滑動,比較滑動前與滑動后兩種情況,窗口中的像素灰度變化程度,如果存在任意方向上的滑動,都有著較大灰度變化,那么我們可以認為該窗口中存在角點

先上效果視頻

相關API

cornerHarris(InputArray src, OutputArray dst, int blockSize, int apertureSize, double k, int borderType=BORDER_DEFAULT )

參數:

  • src – 輸入單通道8位或浮點圖像.

  • dst – 圖像存儲Harris檢測器響應。它具有CVY32 FC1類型,大小與SRC相同

  • blockSize – 鄰域大小

  • apertureSize – 索貝爾算子參數值

  • k – Harris檢測器的閾值

  • boderType – 參數

實現步驟

  1. 將圖像轉為灰度圖(cvtcolor)

  2. 創建一個CV_32FC1的同樣大小圖像(Mat::zeros(size,CV_32FC1))

  3. 進行Harris角點檢測(cornerHarris)

  4. 歸一化(normalize)

  5. 轉化為絕對值(convertScaleAbs)

  6. 把獲取到的的大于閾值的的角點畫紅色的圓顯示出來

代碼演示

我們新建一個項目opencv--connerharris,簡單說一下,以后我們就不再說了,我們把Opencv3.4.1重新用Cmake編譯了一遍,因為做特片簡單需要加入Opencv-contrib的庫,所以我們重新編譯在newbuild里了,同時編譯環境也重新配了一個,配置里面多少一些DLL和LIB別的還是按照配置屬性(VS2017配置OpenCV通用屬性),然后在源文件寫入#include和main方法

C++ OpenCV特征提取之如何實現Harris角點檢測

在上面定義一個默認閾值和一個過程方法,因為我們用到了Trackbar

C++ OpenCV特征提取之如何實現Harris角點檢測

然輸出圖像上創建Trackbar

C++ OpenCV特征提取之如何實現Harris角點檢測

在過程前先轉為灰度圖

C++ OpenCV特征提取之如何實現Harris角點檢測

接下來就是重點,我們的Harris_Deal的方法

C++ OpenCV特征提取之如何實現Harris角點檢測

C++ OpenCV特征提取之如何實現Harris角點檢測

顯示效果

C++ OpenCV特征提取之如何實現Harris角點檢測


以上是“C++ OpenCV特征提取之如何實現Harris角點檢測”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴山县| 大洼县| 灯塔市| 葵青区| 象山县| 措勤县| 同德县| 剑川县| 台东市| 长垣县| 黑山县| 札达县| 诏安县| 平顺县| 淮滨县| 山阴县| 苏州市| 黄石市| 乐亭县| 徐州市| 东兰县| 淮北市| 宣化县| 隆德县| 土默特右旗| 大悟县| 新密市| 江门市| 赤城县| 靖远县| 庐江县| 昌黎县| 永寿县| 颍上县| 榆林市| 钟祥市| 新民市| 华阴市| 东港市| 台湾省| 浦江县|