public class CVReconstruction3d
extends java.lang.Object
Constructor and Description |
---|
CVReconstruction3d() |
Modifier and Type | Method and Description |
---|---|
static Matrix3d |
computeCameraCalibration(double f,
Point2d c)
Determines the camera's intrinsic calibration matrix
|
static Matrix3x4 |
computeCameraMatrix(double f,
Point2d c,
RigidTransform3d T)
Computes a camera matrix
|
static Matrix3x4 |
computeCameraMatrix(Matrix3d K,
RigidTransform3d T)
Transforms an intrinsic camera calibration matrix to a full camera matrix P
|
static Matrix3d |
computeEssentialMatrix(Matrix3d F,
Matrix3d K1,
Matrix3d K2)
Computes the essential matrix from intrinsic camera calibration and fundamental matrix
|
static Matrix3d |
computeEssentialMatrix(RigidTransform3d T1,
RigidTransform3d T2)
Computes the essential matrix from extrinsic camera calibration
|
static Matrix3d |
computeFundamentalMatrix(Matrix3x4 P1,
Matrix3x4 P2)
Compute fundamental matrix from two general camera matrices
|
static RigidTransform3d[] |
computeRelativeTransform(Matrix3d F,
Matrix3d K1,
Matrix3d K2)
Computes the relative transform between two cameras by decomposing the essential matrix.
|
static Vector4d |
homogeneousReconstruction(Matrix3x4 P1,
Matrix3x4 P2,
Point2d p1,
Point2d p2) |
static RigidTransform3d |
linearEightPointAlgorithm(java.util.Collection<? extends Point2d> p1,
java.util.Collection<? extends Point2d> p2,
Matrix3d K1,
Matrix3d K2)
Performs the eight-point algorithm for determining the essential matrix and recovering the extrinsic
camera transform.
|
static Matrix3d |
linearNormalizedEightPointAlgorithm(java.util.Collection<? extends Point2d> p1,
java.util.Collection<? extends Point2d> p2)
Compute fundamental matrix from a set of corresponding 2D points
|
public static Matrix3d computeCameraCalibration(double f, Point2d c)
f
- focal distancec
- principal point (center, optional - defaults to zero)public static Matrix3x4 computeCameraMatrix(Matrix3d K, RigidTransform3d T)
K
- intrinsic camera calibrationT
- extrinsic camera calibrationpublic static Matrix3x4 computeCameraMatrix(double f, Point2d c, RigidTransform3d T)
f
- uniform focal distancec
- principal point (center, optional - defaults to zero)T
- camera-to-world transform (optional - defaults to identity)public static Matrix3d computeFundamentalMatrix(Matrix3x4 P1, Matrix3x4 P2)
P1
- camera matrix 1P2
- camera matrix 2public static Matrix3d computeEssentialMatrix(Matrix3d F, Matrix3d K1, Matrix3d K2)
F
- fundamental matrix between two camerasK1
- camera 1 intrinsic calibration matrixK2
- camera 2 intrinsic calibration matrixpublic static Matrix3d computeEssentialMatrix(RigidTransform3d T1, RigidTransform3d T2)
T1
- camera 1 world transformT2
- camera 2 world transformpublic static RigidTransform3d[] computeRelativeTransform(Matrix3d F, Matrix3d K1, Matrix3d K2)
F
- fundamental matrixK1
- camera 1 intrinsic calibration matrixK2
- camera 2 intrinsic calibration matrixpublic static Matrix3d linearNormalizedEightPointAlgorithm(java.util.Collection<? extends Point2d> p1, java.util.Collection<? extends Point2d> p2)
p1
- set of points in camera 1p2
- set of points in camera 2public static Vector4d homogeneousReconstruction(Matrix3x4 P1, Matrix3x4 P2, Point2d p1, Point2d p2)
public static RigidTransform3d linearEightPointAlgorithm(java.util.Collection<? extends Point2d> p1, java.util.Collection<? extends Point2d> p2, Matrix3d K1, Matrix3d K2)
p1
- set of points in camera 1p2
- set of points in camera 2K1
- intrinsic camera calibration for camera 1K2
- intrinsic camera calibration for camera 2