/**
*
*/
package org.janelia.intensity;
import java.util.Collection;
import java.util.List;
import mpicbg.models.AffineModel1D;
import mpicbg.models.Model;
import mpicbg.models.PointMatch;
/**
* @author Stephan Saalfeld saalfelds@janelia.hhmi.org
*
*/
public class RansacRegressionFilter implements PointMatchFilter
{
final protected Model< ? > model = new AffineModel1D();
final protected int iterations = 1000;
final protected float maxEpsilon = 0.1f;
final protected float minInlierRatio = 0.1f;
final protected int minNumInliers = 10;
final protected float maxTrust = 3.0f;
@Override
public void filter( List< PointMatch > candidates, Collection< PointMatch > inliers )
{
try
{
if (
!model.filterRansac(
candidates,
inliers,
iterations,
maxEpsilon,
minInlierRatio,
minNumInliers,
maxTrust ) )
inliers.clear();
}
catch ( Exception e )
{
inliers.clear();
}
}
}