public abstract class LucasKanadeMatcher extends Object
Modifier and Type | Class and Description |
---|---|
static class |
LucasKanadeMatcher.Parameters
Default parameters for the containing class and its sub-classes;
a (usually modified) instance of this class is passed to the constructor
of a non-abstract sub-class.
|
Modifier | Constructor and Description |
---|---|
protected |
LucasKanadeMatcher(ij.process.FloatProcessor I,
ij.process.FloatProcessor R,
LucasKanadeMatcher.Parameters params)
Creates a new Lucas-Kanade-type matcher.
|
Modifier and Type | Method and Description |
---|---|
int |
getIteration() |
ProjectiveMapping |
getMatch(ProjectiveMapping Tinit)
Performs the full optimization on the given image pair (I, R).
|
ProjectiveMapping |
getReferenceMappingTo(Point2D[] Q)
Calculates the transformation that maps the reference image
R (centered
around the origin) to the given quad Q. |
Point2D[] |
getReferencePoints() |
abstract double |
getRmsError()
Measures the RMS intensity difference between the reference image R and the
patch in the search image I defined by the current warp Tp.
|
protected ij.process.FloatProcessor |
gradientX(ij.process.FloatProcessor fp) |
protected ij.process.FloatProcessor |
gradientY(ij.process.FloatProcessor fp) |
abstract boolean |
hasConverged()
Checks if the matcher has converged.
|
abstract ProjectiveMapping |
iterateOnce(ProjectiveMapping Tp)
Performs a single matching iteration on the given image pair (I, R).
|
protected void |
showSteepestDescentImages(double[][][] S) |
protected LucasKanadeMatcher(ij.process.FloatProcessor I, ij.process.FloatProcessor R, LucasKanadeMatcher.Parameters params)
I
- the search image (of type FloatProcessor
).R
- the reference image (of type FloatProcessor
)params
- a parameter object of type LucasKanadeMatcher.Parameters
.public ProjectiveMapping getReferenceMappingTo(Point2D[] Q)
R
(centered
around the origin) to the given quad Q.Q
- an arbitrary quad (should be inside the search image I);R
's bounding rectangle to Q
.public Point2D[] getReferencePoints()
public ProjectiveMapping getMatch(ProjectiveMapping Tinit)
Tinit
- the transformation from the reference image R to
the initial search patch, assuming that R is centered at the coordinate
origin!public abstract ProjectiveMapping iterateOnce(ProjectiveMapping Tp)
Tp
- the warp transformation from the reference image R to
the initial search patch, assuming that R is centered at the coordinate
origin!public abstract boolean hasConverged()
public abstract double getRmsError()
public int getIteration()
protected ij.process.FloatProcessor gradientX(ij.process.FloatProcessor fp)
protected ij.process.FloatProcessor gradientY(ij.process.FloatProcessor fp)
protected void showSteepestDescentImages(double[][][] S)
Copyright © 2006–2017, Wilhelm Burger, Mark J. Burge (BSD 2-Clause Simplified License)