图像处理(十五)ORB特征检测

ORB特征检测有直接的API,可以直接调用

ORB原理:分三部
一、提取特征点:ORB特征点其实就是边界,灰度变化较大的地方,因为ORB特征点的定义就是与周围点不一样的点,与转换成LBP图谱类似,以某点为圆心,选择合适的点数作为比较值,在总数目范围内规定一个阈值,不一样的点数超过这个阈值,即为特征点。

二、获取特征点描述:ORB特征点描述与LBP特征图谱类似,都是以二进制表示,选点方式也是一样,圆形,只是取值方式不同,LBP是以圆心为阈值,ORB是横纵坐标比较,比如横坐标比纵坐标大即为1

三、特征点匹配
特征点匹配是建立在多幅图的基础上,比较互相之间的特征点描述,匹配的目的是对特征点进行筛选,选出符合要求的特征点
简单的实现代码如下:

import numpy as np
import cv2

path = 'test.jpg'
image1 = cv2.imread(path,0)
image2 = cv2.imread('timg.jpg',0)

#创建检测器
detector = cv2.ORB_create()

#提取特征点和对特征点进行描述
key_point1,des1 = detector.detectAndCompute(image1,None)
key_point2,des2 = detector.detectAndCompute(image2,None)

#创建匹配器
mather = cv2.BFMatcher(cv2.NORM_HAMMING)
#进行匹配
match = mather.match(des1,des2)

image3 = cv2.drawMatches(image1,key_point1,image2,key_point2,match[:30],image2,flags=2)

cv2.imshow('test',image3)
cv2.imwrite('orb.jpg',image3)
cv2.waitKey(0)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值