Package boofcv.alg.geo.selfcalib
Class SelfCalibrationLinearRotationMulti
java.lang.Object
boofcv.alg.geo.selfcalib.SelfCalibrationLinearRotationMulti
Camera calibration for when the camera's motion is purely rotational and has no translational
component and camera parameters can change every frame. Linear constraints need to be specified
on camera parameters. Based off of variable calibration Algorithm 19.3 on page 482 in [1].
Steps: 1) Compute homographies between view i and reference frame, i.e. xi = Hix, ensure det(H)=1 2) Uses equation wi=(Hi)-Tw(i)-1 to express linear constraints 3) Compute K using Cholesky decomposition w = U*UT. Actually implemented as an algebraic formula.
There will be a sign ambiguity in the returned result for the translation vector. That can be resolved by checking for positive depth of triangulated features.
- R. Hartley, and A. Zisserman, "Multiple View Geometry in Computer Vision", 2nd Ed, Cambridge 2003
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
computeInverseH
(List<Homography2D_F64> homography0toI) Ensures the determinant is one then inverts the homogrpahyestimate
(List<Homography2D_F64> viewsI_to_view0) Assumes that the camera parameter are constantgetFound()
int
Number of constraints which are applied by each viewvoid
setConstraints
(boolean zeroSkew, boolean principlePointOrigin, boolean knownAspect, double aspect) Specifies linear constraints Known aspect ratio constraint can only be used if zero skew is also assumped.
-
Constructor Details
-
SelfCalibrationLinearRotationMulti
public SelfCalibrationLinearRotationMulti()
-
-
Method Details
-
setConstraints
public void setConstraints(boolean zeroSkew, boolean principlePointOrigin, boolean knownAspect, double aspect) Specifies linear constraints Known aspect ratio constraint can only be used if zero skew is also assumped.- Parameters:
zeroSkew
- Assume that skew is zeroprinciplePointOrigin
- Principle point is at the originknownAspect
- that the aspect ratio is knownaspect
- If aspect is known then this is the aspect. ratio=fy/fx Ignored otherwise.
-
estimate
Assumes that the camera parameter are constant- Parameters:
viewsI_to_view0
- (Input) List of observed homographies- Returns:
- true if successful
-
numberOfConstraints
public int numberOfConstraints()Number of constraints which are applied by each view -
computeInverseH
Ensures the determinant is one then inverts the homogrpahy -
getFound
-