Main Page   Modules   Compound List   File List   Compound Members   File Members  

corner_feature.h File Reference

#include <gandalf/common/misc_defs.h>
#include <gandalf/vision/camera.h>
#include <gandalf/vision/cameraf.h>
#include <gandalf/vision/local_feature.h>
#include <gandalf/image/pixel.h>
#include <gandalf/linalg/2x3matrixf.h>

Go to the source code of this file.

Compounds

struct  Gan_CornerFeature
 2D corner feature structure. More...

struct  Gan_CornerFeatureMap
 2D corner feature map structure. More...


Typedefs

typedef Gan_CornerFeature Gan_CornerFeature
 2D corner feature structure.

typedef Gan_CornerFeatureMap Gan_CornerFeatureMap
 2D corner feature map structure.


Functions

Gan_CornerFeatureMapgan_corner_feature_map_form (Gan_CornerFeatureMap *cmap, unsigned max_ncorners)
 Forms a corner feature map structure.

void gan_corner_feature_map_free (Gan_CornerFeatureMap *cmap)
 Frees a corner feature map structure.

Gan_Bool gan_corner_feature_map_clear (Gan_CornerFeatureMap *cmap, unsigned height, unsigned width, Gan_Matrix23_f *A, Gan_Camera *camera, Gan_LocalFeatureMapParams *lpms)
 Sets up and clears a corner feature map structure.

Gan_CornerFeaturegan_corner_feature_add (Gan_CornerFeatureMap *cmap, unsigned r, unsigned c, float rf, float cf, Gan_SquMatrix22_f *N, int status, int index, float strength)
 Adds a corner to a corner feature map.

Gan_Bool gan_corner_feature_map_postprocess (Gan_CornerFeatureMap *cmap)
 Postprocess feature map.

Gan_CornerFeatureMapgan_corner_feature_map_alloc (unsigned max_ncorners)
 Macro: Allocates a corner feature map structure.


Detailed Description

Module: Image corner point definition and functions

Part of: Gandalf Library

Revision: Last edited: Author:

Copyright: (c) 2000 Imagineer Software Limited


Function Documentation

Gan_CornerFeature* gan_corner_feature_add Gan_CornerFeatureMap   cmap,
unsigned    r,
unsigned    c,
float    rf,
float    cf,
Gan_SquMatrix22_f   N,
int    status,
int    index,
float    strength
 

Adds a corner to a corner feature map.

Parameters:
cmap A corner feature map
r The row location of the corner in the feature map window
c The column location of the corner in the feature map window
rf The floating point row location of the corner
cf The floating point column location of the corner
N Covariance matrix of the corner position or NULL
status The status of the corner feature (user-defined)
index The index of the corner feature (user-defined)
strength The strength of the corner feature
Adds a corner to a corner feature map with given coordinates, both in integer and floating corner formats, which should both be in the coordinate frame of the feature window, with (0,0) at the top-left corner. This routine transforms the floating corner coordinates appropriately given the affine transformation defined by the feature map structure cmap, removes any non-linear distortion specified by the camera part of the feature map structure, and writes all the information into a new feature point structure, a pointer to which is returned.

The strength should be in units linear with the image intensity, if that is applicable.

If the covariance N is passed as NULL, a default unit covariance for the corner feature is assumed.

Returns:
Non-NULL pointer to the new feature structure, or NULL on failure.

Gan_Bool gan_corner_feature_map_clear Gan_CornerFeatureMap   cmap,
unsigned    height,
unsigned    width,
Gan_Matrix23_f   A,
Gan_Camera   camera,
Gan_LocalFeatureMapParams   lpms
 

Sets up and clears a corner feature map structure.

Parameters:
cmap A corner feature map
height The height of the feature map region
width The width of the feature map region
A Affine transformation from window to corner coords or NULL
camera A pointer to the camera calibration or NULL
lpms Local feature map parameters or NULL
Sets attributes of a corner feature map prior to filling the feature map with corners. The lpms argument, if not NULL, is passed to gan_local_feature_map_form() to build a local blocked feature map for the corner features.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.

Gan_CornerFeatureMap* gan_corner_feature_map_form Gan_CornerFeatureMap   cmap,
unsigned    max_ncorners
 

Forms a corner feature map structure.

Parameters:
cmap A corner feature map
max_ncorners The number of corners initially to allocate for
Fills a structure to hold corner features, and sets it to be empty.

Returns:
non-NULL the formed feature map cmap, or NULL on failure.
See also:
gan_corner_feature_map_alloc(), gan_corner_feature_map_free().

void gan_corner_feature_map_free Gan_CornerFeatureMap   cmap
 

Frees a corner feature map structure.

Parameters:
cmap A corner feature map
Frees a previously formed/allocated structure that holds corner features.

Returns:
No value.
See also:
gan_corner_feature_map_form(), gan_corner_feature_map_alloc().

Gan_Bool gan_corner_feature_map_postprocess Gan_CornerFeatureMap   cmap
 

Postprocess feature map.

Parameters:
cmap A corner feature map
Postprocess feature map, building index array into local feature map. Call this function after building local feature counts with gan_corner_feature_add() using a UINT_MAX index argument, so that the index array for the local features will be built.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
See also:
gan_corner_feature_add().


Generated on Mon Oct 13 16:14:41 2003 by doxygen1.3-rc1