主要内容

SURFPoints

对象,用于存储SURF兴趣点

描述

对象之间传递数据的能力detectSURFFeaturesextractFeatures功能。它还可以用于操作和绘制这些函数返回的数据。您可以使用对象来填充点交互。在需要将非SURF兴趣点检测器与SURF描述符混合使用的情况下,可以使用这种方法。

创建

描述

例子

= SURFPoints (位置构造一个SURFPoints对象从一个-by-2数组[xy点坐标。

= SURFPoints (位置名称,值使用一个或多个名称-值对设置属性。将每个属性名用引号括起来。例如,点= SURFPoints(“度量”,0.0)

输入参数

全部展开

点坐标,指定为-by-2数组的形式[xy)坐标。表示点的个数。

属性

全部展开

对象持有的点数,以数字值指定。

点位置,指定为-by-2数组[xy点坐标。

特征被检测到的尺度,指定为大于或等于的值1.6

被检测特征的强度,用数值表示。

被检测特征的方向,指定为角度,以弧度为单位。角度从x轴逆时针方向测量,原点由位置财产。不要手动设置此属性。而是依赖于召唤extractFeatures来填充这个值。的extractFeatures命令功能修改默认值0.0,取向主要用于可视化目的。

在检测过程中确定的拉普拉斯符号,指定为-10,或1.可以使用该参数加速特征匹配过程。

具有相同度量值但不同拉普拉斯符号的斑点,其强度值不同。例如,黑色背景上的白色斑点和白色背景上的黑色斑点。可以使用此参数快速消除不匹配的blob。

对于非surf探测器,这个属性不相关。例如,对于角特性,您可以简单地使用默认值0

对象的功能

情节 情节点
isempty 确定点对象是否为空
长度 存储点数
selectStrongest 选择具有最强参数的点
大小 返回一个点对象的大小
selectUniform 选择均匀分布的特征点子集

例子

全部折叠

读入图像。

我= imread (“cameraman.tif”);

检测冲浪功能。

点= detectSURFFeatures(我);

显示10个最强点的位置和比例。

最强= points.selectStrongest (10);imshow(我);持有;情节(最大);

图中包含一个坐标轴。轴包含三个对象的类型为image, line。

在命令行上显示10个最强点的坐标。

最强。位置
ans =10 x2单一矩阵139.7482 95.9542 107.4502 232.0347 116.6112 138.2446 105.5152 172.1816 113.6975 48.7220 104.4210 75.7348 111.3914 154.4597 106.2879 175.2709 131.1298 98.3900 124.2933 64.4942

读入图像。

我= imread (“cameraman.tif”);

检测冲浪功能。

点= detectSURFFeatures(我);

显示最后5分。

imshow(我);持有;情节(点(end-4:结束));

图中包含一个坐标轴。轴包含三个对象的类型为image, line。

提示

虽然SURFPoints可以持有很多观点,它是一个标量对象。因此,元素个数surfPoints)总是返回1.这个值可能不同于长度surfPoints),返回该对象持有的真实点数。

参考文献

H. Bay, A. Ess, T. Tuytelaars和L. Van Gool。“SURF:加速健壮功能。”计算机视觉与图像理解(CVIU).Vol。110, No. 3, pp. 346-359, 2008。

扩展功能

介绍了R2011b