General purpose feature location and interest operators.

Imrect *canny(Imrect * im, double sigma, double precision, double lowthres, double upthres, int lengththres)Returns an image of edgel data structures calculated by the canny edge detection algorithm operatin at a scale determined by sigma and a sensitivity determined by lowthres which hysteresis thresholding set by upthres. The resulting edges are segmented into strings with a minimum lenght set by lengththres.

Imrect *corner(Imrect *im,double sigma,double precision,double lowthres)Our own implementation of the Harris and Stephens corner detection algorithm, a rationalisation of Moravec's interest operator. It returns an image of subpixel located corners stored as edgel structures.

Imrect *imf_nmax(Imrect *im,float thres,int num)General purpose maxima location algorithm for extracting features from feature enhanced images. Features are located wherever a pixel is greater than thres and less than no more than num of it's nearest 9 neighbours. Set num to 2 for ridge detection and 0 for peak location.

void im_locate_max(Imrect * im, int *y, int *x)Locate the point of maximum value in the given image.