主要内容

detectORBFeatures

检测ORB关键点并返回ORBPoints对象

描述

例子

= detectORBFeatures (返回一个ORBPoints对象,该对象包含关于ORB关键点的信息。采用定向快速旋转简要(ORB)特征检测方法从输入图像中检测出ORB关键点。

例子

= detectORBFeatures (名称,值使用一个或多个名称-值对参数指定选项。

例子

全部折叠

将图像读入工作区。

I = imread(“businessCard.png”);

将图像转换为灰度图像。

I = im2gray(I);

显示灰度图像。

图imshow(我)

图中包含一个轴对象。axis对象包含一个image类型的对象。

检测和存储ORB关键点。

点= detectorb特征(I);

显示灰度图像并绘制检测到的ORB关键点。禁止在检测到的关键点周围显示圆圈。ORB关键点检测在高强度方差区域。

figure imshow(I) hold住情节(点,“ShowScale”,假)

图中包含一个轴对象。axis对象包含image、line类型的2个对象。

将一个二进制图像读入工作区。

I = imread(“star.png”);

显示图像。

图imshow(我)

图中包含一个轴对象。axis对象包含一个image类型的对象。

检测和存储ORB关键点。指定图像分解的比例因子为1.01,分解层数为3。

点= detectorb特征(I,“ScaleFactor”, 1.01,“NumLevels”3);

显示图像并绘制检测到的ORB关键点。二进制形状图像中的拐点被检测为ORB关键点。

figure imshow(I) hold住情节(点)

图中包含一个轴对象。axis对象包含image、line类型的3个对象。

输入参数

全部折叠

输入图像,指定为——- - - - - -N灰度图像。输入图像必须是实数且非稀疏的。

数据类型:||int16|uint8|uint16|逻辑

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:detectORBFeatures(我,‘NumLevels’,4)

用于图像分解的比例因子,指定为由逗号分隔的对组成“ScaleFactor”一个大于1的标量。每个分解级别的尺度值为ScaleFactor水平-1),在那里水平是范围[0,Numlevels1]。给定输入图像的大小——- - - - - -N,每一层分解的图像大小为 年代 c 一个 l e F 一个 c t o r l e v e l 1 ——- - - - - - N 年代 c 一个 l e F 一个 c t o r l e v e l 1

数据类型:||int8|int16|int32|int64|uint8|uint16|uint64|uint32

分解级别的数目,指定为由逗号分隔的对组成“NumLevels”一个大于等于1的标量。增加这个值可以从图像中提取更多分解级别的关键点。

用于提取关键点的分解级别的数量受限于该级别上的图像大小。为了检测关键点,分解级别的图像大小必须至少为63 × 63。分解的最大级别计算为

l e v e l 马克斯 =地板 日志 最小值 N 日志 63 日志 ScaleFactor + 1

的默认值或指定值“NumLevels”大于水平马克斯时,函数修改NumLevels水平马克斯并返回一个警告。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint64|uint32

用于关键点检测的感兴趣区域,指定为逗号分隔的对,由“投资回报”和格式为[的向量xy宽度高度].前两个元素表示感兴趣区域的左上角的位置。最后两个元素表示感兴趣区域的宽度和高度。感兴趣的区域的宽度和高度都必须大于或等于63。

输出参数

全部折叠

返回的ORB关键点ORBPoints对象。对象包含在输入图像中检测到的关键点的信息。

算法

该函数使用ORB特征检测方法从输入图像中检测关键点[1]

参考文献

[1] Rublee, E. V. Rabaud, K. Konolige, G. Bradski。“ORB: SIFT或SURF的有效替代品。”在2011年计算机视觉国际会议论文集, 2564 - 2571。巴塞罗那,西班牙:IEEE, 2011。

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

版本历史

在R2019a中引入

Baidu
map