M-File Help: SurfPointFeature View code for SurfPointFeature

SurfPointFeature

SURF point corner feature object

A subclass of PointFeature for SURF features.

Methods

plot Plot feature position
plot_scale Plot feature scale
distance Descriptor distance
match Match features
ncc Descriptor similarity
uv Return feature coordinate
display Display value
char Convert value to string

Properties

u horizontal coordinate
v vertical coordinate
strength feature strength
scale feature scale
theta feature orientation [rad]
descriptor feature descriptor (vector)
image_id index of image containing feature

Properties of a vector of SurfCornerFeature objects are returned as a vector. If F is a vector (Nx1) of SurfCornerFeature objects then F.u is a 2xN matrix with each column the corresponding u coordinate.

Notes

Reference

Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, "SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346--359, 2008

See also

isurf, PointFeature, ScalePointFeature, SiftPointFeature


SurfPointFeature.SurfPointFeature

Create a SURF point feature object

f = SurfPointFeature() is a point feature object with null parameters.

f = PointFeature(u, v) is a point feature object with specified coordinates.

f = PointFeature(u, v, strength) as above but with specified strength.

See also

isurf


SurfPointFeature.match

Match SURF point features

m = F.match(f2, options) is a vector of FeatureMatch objects that describe candidate matches between the two vectors of SURF features F and f2. Correspondence is based on descriptor similarity.

[m,C] = F.match(f2, options) as above but returns a correspodence matrix where each row contains the indices of corresponding features in F and f2 respectively.

Options

'thresh', T Match threshold (default 0.05)
'median' Threshold at the median distance

Notes

See also

FeatureMatch


SurfPointFeature.plot_scale

Plot feature scale

F.plot_scale(options) overlay a marker to indicate feature point position and scale.

F.plot_scale(options, ls) as above but the optional line style arguments ls are passed to plot.

If F is a vector then each element is plotted.

Options

'circle' Indicate scale by a circle (default)
'clock' Indicate scale by circle with one radial line for orientation
'arrow' Indicate scale and orientation by an arrow
'disk' Indicate scale by a translucent disk
'color', C Color of circle or disk (default green)
'alpha', A Transparency of disk, 1=opaque, 0=transparent (default 0.2)

SurfPointFeature.support

Support region of feature

out = F.support(im, w) is an image of the support region of the feature F, extracted from the image im in which the feature appears. The support region is scaled to WxW and rotated so that the feature's orientation axis is upward.

out = F.support(images, w) as above but if the features were extracted from an image sequence images then the feature is extracted from the appropriate image in the same sequence.

[out,T] = F.support(images, w) as above but returns the pose of the feature as a 3x3 homogeneous transform in SE(2) that comprises the feature position and orientation.

F.support(im, w) as above but the support region is displayed.

See also

SurfPointFeature


 

© 1990-2012 Peter Corke.