Main Page   Modules   Compound List   File List   Compound Members   File Members  

harris_corner.h File Reference

#include <gandalf/common/misc_defs.h>
#include <gandalf/vision/mask1D.h>
#include <gandalf/vision/camera.h>
#include <gandalf/vision/corner_feature.h>
#include <gandalf/image/image_defs.h>
#include <gandalf/linalg/2x3matrix.h>

Go to the source code of this file.

Functions

Gan_CornerFeatureMapgan_harris_corner_q (Gan_Image *image, Gan_Image *mask, Gan_Mask1D *image_filter_y, Gan_Mask1D *image_filter_x, Gan_Mask1D *grad_filter_y, Gan_Mask1D *grad_filter_x, float kappa, float thres, Gan_Matrix23_f *A, int status, Gan_Camera *camera, Gan_LocalFeatureMapParams *lpms, Gan_CornerFeatureMap *corner_map)
 Computes corners in an image using the Harris algorithm.

Gan_CornerFeatureMapgan_harris_corner_s (Gan_Image *image, Gan_Image *mask, Gan_Mask1D *image_filter_y, Gan_Mask1D *image_filter_x, Gan_Mask1D *grad_filter_y, Gan_Mask1D *grad_filter_x, float kappa, float thres, Gan_Matrix23_f *A, int status, Gan_Camera *camera, Gan_LocalFeatureMapParams *lpms)
 Macro: Computes corners in an image using the Harris algorithm.


Detailed Description

Module: Plessey corner detector algorithm

Part of: Gandalf Library

Revision: Last edited: Author:

Copyright: (c) 2000 Imagineer Software Limited Based on Chris Harris's algorithm at Roke Manor Research


Function Documentation

Gan_CornerFeatureMap* gan_harris_corner_q Gan_Image   image,
Gan_Image   mask,
Gan_Mask1D   image_filter_y,
Gan_Mask1D   image_filter_x,
Gan_Mask1D   grad_filter_y,
Gan_Mask1D   grad_filter_x,
float    kappa,
float    thres,
Gan_Matrix23_f   A,
int    status,
Gan_Camera   camera,
Gan_LocalFeatureMapParams   lpms,
Gan_CornerFeatureMap   corner_map
 

Computes corners in an image using the Harris algorithm.

Parameters:
image The input image
mask Binary image indicating region to find corners or NULL
image_filter_y The image convolution mask in the y-direction
image_filter_x The image convolution mask in the x-direction
grad_filter_y The gradient convolution mask in the y-direction
grad_filter_x The gradient convolution mask in the x-direction
kappa The weighting factor used to compute the corner strength
thres The threshold on corner strength
A Affine transformation to apply to corner coordinates or NULL
status The initial status value set for each corner
camera Pointer to the camera calibration or NULL
lpms Pointer to local feature map parameters or NULL
corner_map The corner map to fill with corners
Applies the Harris corner detector to find corners in the input image. The squared image x/y gradients gx2/gy2 and product of x & y gradients gxy are computed. These are convolved with the given convolution masks grad_filter_y and grad_filter_x in the y/x directions respectively. The smoothed gradients sgx2, sgy2 and sgxy are then combined pixel-by-pixel into a corner strength

using the provided weighting factor kappa. The strength is non-maximum suppressed and thresholded by the given value thres.

An extra feature (from Forster's corner detector) is a pre-smoothing of the image given by the image_filter_y and image_filter_x convolution masks.

An affine transformation A is applied to the corner coordinates if the A pointer is not NULL.

If the camera calibration structure pointer is not NULL, distortion correction is applied to the corner positions. camera should be the correct camera calibration for the image coordinates obtained after applying the affine transformation A.

Returns:
Non-NULL a pointer to the computed corner map structure, or NULL on failure.
See also:
gan_harris_corner_s().


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