OpenCV中的快速特征检测——FAST(Features from Accelerated Segment Test)
生活随笔
收集整理的這篇文章主要介紹了
OpenCV中的快速特征检测——FAST(Features from Accelerated Segment Test)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
OpenCV中的快速特征檢測——FAST(Features from Accelerated Segment Test)
- 1. 效果圖
- 2. 源碼
- 參考
- OpenCV中的尺度不變特征變換(SIFT Scale-Invariant Feature Transform)
- OpenCV中的SURF(Speeded-Up Robust Features 加速魯棒特征)
這篇博客將延續(xù)上倆篇博客,介紹OpenCV中的快速檢測特征——角點(diǎn)檢測的快速算法。SURF相比SIFT速度有所提升,但從實(shí)時(shí)應(yīng)用程序的角度來看,速度還不夠快。 一個(gè)最好的例子是SLAM(Simultaneous Localization and Mapping 同步定位和映射)移動(dòng)機(jī)器人,它的計(jì)算資源有限。于是有了本文的快速算法。
FAST (Features from Accelerated Segment Test) 加速段測試的特征
FAST用于角點(diǎn)的高速檢測,更快更好。
FAST比其他現(xiàn)有的角點(diǎn)探測器快幾倍。但它對高水平的噪音不穩(wěn)定,這取決于閾值。
1. 效果圖
原始圖如下:
FAST效果圖如下:
左圖顯示帶非極大值抑制的FAST(關(guān)鍵點(diǎn)846個(gè)),右圖顯示不帶非極大值抑制的FAST(關(guān)鍵點(diǎn)2426個(gè));
2. 源碼
# 快速特征檢測——FAST(Features from Accelerated Segment Test) 加速段測試的特征
# FAST用于角點(diǎn)的高速檢測,更快更好。
# 快速算法比其他現(xiàn)有的角點(diǎn)探測器快幾倍。但它對高水平的噪音不穩(wěn)定,這取決于閾值。import cv2origin = cv2.imread('images/simple.jpg')
cv2.imshow("origin", origin)gray = cv2.cvtColor(origin, cv2.COLOR_BGR2GRAY)# 使用默認(rèn)參數(shù)初始化快速特征檢測器
# fast = cv2.FastFeatureDetector() # opencv2
fast = cv2.FastFeatureDetector_create() # opencv3
print(fast)# 尋找和繪制關(guān)鍵點(diǎn)
kp = fast.detect(gray, None)
img2 = cv2.drawKeypoints(gray, kp, outImage=gray, color=(255, 0, 0))
print('defaultParameter res keypoints: ', len(kp))# 不支持打印所有的參數(shù)
# print("Threshold: ", fast.getThreshold('threshold'))
# print("nonmaxSuppression: ", fast.getNonmaxSuppression('nonmaxSuppression'))
# print("neighborhood: ", fast.getType('type'))
# print("Total Keypoints with nonmaxSuppression: ", len(kp))
cv2.imshow("default res", img2)
cv2.imwrite('fast_true.png', img2)# 抑制極大值抑制 Disable nonmaxSuppression
fast.setNonmaxSuppression(0)
kp = fast.detect(gray, None)print("Total Keypoints without nonmaxSuppression: ", len(kp))img3 = cv2.drawKeypoints(gray, kp, gray, color=(255, 0, 0))
cv2.imshow("nonmaxSuppression res", img3)
cv2.waitKey(0)
cv2.imwrite('fast_false.png', img3)
參考
- https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_fast/py_fast.html#fast
總結(jié)
以上是生活随笔為你收集整理的OpenCV中的快速特征检测——FAST(Features from Accelerated Segment Test)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenCV中的尺度不变特征变换(SIF
- 下一篇: OpenCV中的二进制鲁棒独立基本特征—