boofcv.alg.geo.pose
Class PositionFromPairLinear2
- java.lang.Object
-
- boofcv.alg.geo.pose.PositionFromPairLinear2
-
public class PositionFromPairLinear2 extends java.lang.ObjectGiven two views of N objects and the known rotation, estimate the translation. A linear system is constructed from the equations below and solved for. A minimum of two point observations is required since rotation is already known. This high level characteristics of this algorithm was stated in [1], but the mathematics were not described or sketched.
Derivation:
λx = R*X + T 0 = hat(x)*R*X + hat(x)*T hat(x)*T = -hat(x)*R*X
where hat(x) is the cross product matrix of the homogeneous (x,y,1) vector, R is a rotation matrix, T is the known translation, and X is the known point in 3D.[1] Tardif, J.-P., Pavlidis, Y., and Daniilidis, K. "Monocular visual odometry in urban environments using an omnidirectional camera," IROS 2008
-
-
Constructor Summary
Constructors Constructor and Description PositionFromPairLinear2()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Vector3D_F64getT()booleanprocess(org.ejml.data.DenseMatrix64F R, java.util.List<Point3D_F64> worldPts, java.util.List<Point2D_F64> observed)Computes the translation given two or more feature observations and the known rotation
-
-
-
Method Detail
-
process
public boolean process(org.ejml.data.DenseMatrix64F R, java.util.List<Point3D_F64> worldPts, java.util.List<Point2D_F64> observed)Computes the translation given two or more feature observations and the known rotation- Parameters:
R- Rotation matrix. World to view.worldPts- Location of features in world coordinates.observed- Observations of point in current view. Normalized coordinates.- Returns:
- true if it succeeded.
-
getT
public Vector3D_F64 getT()
-
-
DataMelt 3.0 © DataMelt by jWork.ORG