SURF SIFT ORB三種特徵檢測演算法比較

2021-07-29 14:08:01 字數 640 閱讀 7321

我們知道,雙目立體測距的基礎是利用視差求距離,而視差就是計算左右影象中對應點的畫素座標之差,這個左右圖中的對應點是由通過立體匹配得來。

立體匹配從大的方面說分為兩種,全域性匹配和區域性匹配,全域性匹配精度高,但是計算速度慢,不能滿足實時的要求,區域性匹配速度快,可以滿足實時的要求,但是精度不如前者,考慮到專案實際,需要實時的判斷機械人與環境的關係,就重點研究區域性匹配。區域性匹配又分為基於區域的匹配,基於特徵的匹配以及基於梯度的優化方法。綜合比較,選擇基於特徵的匹配。

基於特徵的匹配分為特徵點提取和匹配兩個步驟,本篇主要針對特徵點提取三種方法進行比較,分別是sift,surf以及orb三種方法,這三種方法在opencv裡面都已實現。surf基本就是sift的全面公升級版,有 surf基本就不用考慮sift,而orb的強點在於計算時間,以下具體比較:

計算速度:            orb>>surf>>sift(各差乙個量級)

旋轉魯棒性:        surf>orb~sift(表示差不多)

模糊魯棒性:        surf>orb~sift

尺度變換魯棒性: surf>sift>orb(orb並不具備尺度變換性)

所以結論就是,如果對計算實時性要求非常高,可選用orb演算法,但基本要保證正對拍攝;如果對實行性要求稍高,可以選擇surf;基本不用sift。

過濾特徵 三種特徵選擇總結

特徵選擇可以分為3種 目錄 filter 過濾法 embedded 嵌入法 一 filter 過濾法 按照發散性或者相關性對各個特徵進行評分,設定閾值或者待選擇閾值的個數,選擇特徵。1 移除低方差的特徵 2 單變數特徵選擇 對於分類問題 y離散 可採用 對於回歸問題 y連續 可採用 根據目標函式 通...

程序 三種型別,三種狀態

一 程序的概念 程序是執行乙個程式時所分配的資源,資源包括占用的cpu,記憶體等,是乙個動態執行過程。二 程序的組成 正文段使用者資料段 系統資料段 程序控制塊 pcb cpu暫存器值 堆疊 三 程序控制塊pcb 程序控制塊是系統用來控制和管理程序,獲得程序狀態和程序存在特徵的唯一標識。包括 程序標...

MYSQL inserOrUpdate三種寫法

一般資料表中都會不允許插入重複資料,先查詢資料庫中資料,再判斷是否存在,比較麻煩,可以直接用sql語句解決這個問題 1 insert into on duplicate key 無則新增,有則更新 insert into customer code name address createtime v...