Woolz Image Processing  Version 1.7.5
WlzTransRANSAC.c File Reference

Code based on RANSAC (Random Sample Consensus) for computing transforms from paired correspondences. More...

Data Structures

struct  _WlzTransRANSACVtx
 Vertex pairs as used by the transform RANSAC functions. Typedef: WlzTransRANSACVtx. More...
 

Typedefs

typedef double(* WlzTransformRANSACErrFn) (WlzTransform, WlzVertexType, WlzVertexP, WlzVertexType, WlzVertexP, int, void *)
 Pointer to a function called for user code to evaluate error distance between the transformed source vertex and the target vertex where these are selected from arrays of vertices uning the index. Example: More...
 
typedef WlzErrorNum(* WlzTransformRANSACFitFn) (WlzTransform *, WlzVertexType, WlzVertexP, WlzVertexType, WlzVertexP, int, int *, void *)
 Pointer to a function called for user code to fit a model transform to the indexed paried source and target vertices. Example: More...
 
typedef WlzErrorNum(* WlzTransformRANSACDegFn) (WlzTransform *, WlzVertexType, WlzVertexP, WlzVertexType, WlzVertexP, int, int *, void *)
 Pointer to a function called for user code to test a model transform for degeneracy, returning non-zero if the given transform is degenerate. In some cases (as in the example) it my be possible to simply inspect the transform, in others it may be necessary to transform the source vertices. Example: More...
 
typedef struct _WlzTransRANSACVtx WlzTransRANSACVtx
 

Functions

WlzTransform WlzTransformRANSAC (int nVtx, WlzVertexType tType, WlzVertexP tVtx, WlzVertexType sType, WlzVertexP sVtx, int minPair, WlzTransformRANSACFitFn fitFn, WlzTransformRANSACErrFn errFn, WlzTransformRANSACDegFn degFn, double oTol, double eTol, double pTol, int dMax, int iMax, int rMax, int iMin, void *cData, int *dstNIn, int **dstIn, WlzErrorNum *dstErr)
 Function to compute a transform from paired correspondences using RANSAC (Random Sample Consensus) which returns the transform for which there are the most inlier vertex pairs. This function is based on the following papers: M.A. Fishler and R.C. Boles "Random Sample Concensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography" Communication of the ACM, Vol 24, No 6, pp 381-395, 1981. Ondrej Chum and Jiri Matas "Optimal Randomized RANSAC" PAMI, Vol 30, No 8, pp 1472-1482, 2008. More...
 

Detailed Description

Code based on RANSAC (Random Sample Consensus) for computing transforms from paired correspondences.

Author
Bill Hill
Date
June 2014
Version
$Id$
Address: MRC Human Genetics Unit, MRC Institute of Genetics and Molecular Medicine, University of Edinburgh, Western General Hospital, Edinburgh, EH4 2XU, UK.
Copyright (C), [2014], The University Court of the University of Edinburgh, Old College, Edinburgh, UK.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Typedef Documentation