VL_PLOTFRAME(FRAME) plots the frames FRAME. Frames are attributed image regions (as, for example, extracted by a feature detector). A frame is a vector of D=2,3,..,6 real numbers, depending on its class. VL_PLOTFRAME() supports the following classes:
- Point
FRAME(1:2) are the x,y coordinates of the point
- Circle
FRAME(1:2) are the x,y coordinates of the center. FRAME(3) is the circle radius..
- Oriented circle
FRAME(1:2) are the x,y coordiantes of the center. FRAME(3) is the radius. FRAME(4) is the orientation, expressed as a ppsitive rotation (note that images use a left-handed system with the Y axis pointing downwards).
- Ellipse
FRAME(1:2) are the x,y coordiantes of the center. FRAME(3:5) are the element S11, S12, S22 of a 2x2 covariance matrix S (a positive semidefinite matrix) defining the ellipse shape. The ellipse is the set of points {x + T: x' inv(S) x = 1}, where T is the center.
- Oriented ellipse
FRAME(1:2) are the x,y coordiantes of the center. FRAME(3:6) is the column-wise stacking of a 2x2 matrix A defining the ellipse shape and orientation. The ellipse is obtaine by transforming a unit circle by A as the set of points {A x + T : |x| = 1}, where T is the center.
All frames can be thought of as an affine transformation of the unit circle. For unoriented frames, the affine transformation is selected so that the positive Y direction (downwards, graviy vector) is preserved.
H = VL_PLOTFRAME(...) returns the handle H of the graphical object representing the frames.
VL_PLOTFRAME(FRAMES) for a matrix of FRAMES plots multiple frames. Using this call is much faster than calling VL_PLOTFRAME() for each frame.
VL_PLOTFRAME(FRAMES,...) passes any extra argument to the underlying plot function. The first optional argument can be a line specification string such as the one used by PLOT().
See also: VL_FRAME2OELL(), VL_HELP().