public class SubPixelCorners extends Object
HarrisIPD
or other methods) to an
optimised sub-pixel estimate. The method works by iteratively updating the
sub-pixel position of a point based on the inverse of the local gradient
auto-correlation matrix.Constructor and Description |
---|
SubPixelCorners(int halfWidth,
int halfHeight,
int zeroZoneHalfWidth,
int zeroZoneHalfHeight,
Predicate<IterationState> iter)
Construct with the given search window size, zeroed window and predicate to
stop the iteration.
|
SubPixelCorners(int halfWidth,
int halfHeight,
Predicate<IterationState> iter)
Construct with the given search window size and predicate to stop the
iteration.
|
Modifier and Type | Method and Description |
---|---|
Point2dImpl |
findSubPixCorner(FImage src,
Point2d corner)
Find the sub-pixel estimated position of a corner
|
List<Point2dImpl> |
findSubPixCorners(FImage src,
List<? extends Point2d> corners)
Find the sub-pixel estimated position of each corner
|
public SubPixelCorners(int halfWidth, int halfHeight, Predicate<IterationState> iter)
halfWidth
- half the search window width (actual size is 2*halfWidth + 1,
centred on point)halfHeight
- half the search window height (actual size is 2*halfHeight + 1,
centred on point)iter
- the predicate to stop iterationpublic SubPixelCorners(int halfWidth, int halfHeight, int zeroZoneHalfWidth, int zeroZoneHalfHeight, Predicate<IterationState> iter)
The zeroed window is a dead region in the middle of the search zone over which the summation over gradients is not done. It is used sometimes to avoid possible singularities of the autocorrelation matrix.
halfWidth
- half the search window width (actual size is 2*halfWidth + 1,
centred on point)halfHeight
- half the search window height (actual size is 2*halfHeight + 1,
centred on point)zeroZoneHalfWidth
- the half-width of the zeroed region in the weighting arrayzeroZoneHalfHeight
- the half-height of the zeroed region in the weighting arrayiter
- the predicate to stop iterationpublic List<Point2dImpl> findSubPixCorners(FImage src, List<? extends Point2d> corners)
src
- the imagecorners
- the initial corner positionspublic Point2dImpl findSubPixCorner(FImage src, Point2d corner)
src
- the imagecorner
- the initial corner position