public class UtilLepetitEPnP
extends java.lang.Object
PnPLepetitEPnP.| Constructor and Description |
|---|
UtilLepetitEPnP() |
| Modifier and Type | Method and Description |
|---|---|
static void |
computeCameraControl(double[] beta,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> cameraPts,
int numControl)
Computes the camera control points as weighted sum of null points.
|
static void |
constraintMatrix3x3(org.ejml.data.DenseMatrix64F L_3x6,
org.ejml.data.DenseMatrix64F L_6x3)
Extracts the linear constraint matrix for planar case 2 from the full 4x6 constraint matrix.
|
static void |
constraintMatrix3x3a(org.ejml.data.DenseMatrix64F L_3x6,
org.ejml.data.DenseMatrix64F L_3x3)
Extracts the linear constraint matrix for case 1 from the full 6x10 constraint matrix.
|
static void |
constraintMatrix3x6(org.ejml.data.DenseMatrix64F L,
org.ejml.data.DenseMatrix64F y,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> controlWorldPts,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts)
Linear constraint matrix for case 4 in the planar case
|
static void |
constraintMatrix6x10(org.ejml.data.DenseMatrix64F L,
org.ejml.data.DenseMatrix64F y,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> controlWorldPts,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts)
Linear constraint matrix used in case 4 in the general case
|
static void |
constraintMatrix6x3(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x3)
Extracts the linear constraint matrix for case 2 from the full 6x10 constraint matrix.
|
static void |
constraintMatrix6x4(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x4)
Extracts the linear constraint matrix for case 1 from the full 6x10 constraint matrix.
|
static void |
constraintMatrix6x6(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x6)
Extracts the linear constraint matrix for case 3 from the full 6x10 constraint matrix.
|
static void |
jacobian_Control3(org.ejml.data.DenseMatrix64F L_full,
double[] beta,
org.ejml.data.DenseMatrix64F A)
Computes the Jacobian given 3 control points.
|
static void |
jacobian_Control4(org.ejml.data.DenseMatrix64F L_full,
double[] beta,
org.ejml.data.DenseMatrix64F A)
Computes the Jacobian given 4 control points.
|
static void |
residuals_Control3(org.ejml.data.DenseMatrix64F L_full,
org.ejml.data.DenseMatrix64F y,
double[] beta,
double[] r)
Computes the residuals (difference between observed and predicted given 3 control points.
|
static void |
residuals_Control4(org.ejml.data.DenseMatrix64F L_full,
org.ejml.data.DenseMatrix64F y,
double[] beta,
double[] r)
Computes the residuals (difference between observed and predicted) given 4 control points.
|
public static void computeCameraControl(double[] beta,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> cameraPts,
int numControl)
beta - Beta values which describe the weights of null pointsnullPts - Null points that the camera point is a weighted sum ofcameraPts - The outputpublic static void constraintMatrix6x4(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x4)
public static void constraintMatrix6x3(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x3)
public static void constraintMatrix6x6(org.ejml.data.DenseMatrix64F L_6x10,
org.ejml.data.DenseMatrix64F L_6x6)
public static void constraintMatrix6x10(org.ejml.data.DenseMatrix64F L,
org.ejml.data.DenseMatrix64F y,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> controlWorldPts,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts)
L - Constraint matrixy - Vector containing distance between world control pointscontrolWorldPts - List of world control pointsnullPts - Null pointspublic static void constraintMatrix3x3a(org.ejml.data.DenseMatrix64F L_3x6,
org.ejml.data.DenseMatrix64F L_3x3)
public static void constraintMatrix3x3(org.ejml.data.DenseMatrix64F L_3x6,
org.ejml.data.DenseMatrix64F L_6x3)
public static void constraintMatrix3x6(org.ejml.data.DenseMatrix64F L,
org.ejml.data.DenseMatrix64F y,
org.ddogleg.struct.FastQueue<georegression.struct.point.Point3D_F64> controlWorldPts,
java.util.List<georegression.struct.point.Point3D_F64>[] nullPts)
L - Constraint matrixy - Vector containing distance between world control pointscontrolWorldPts - List of world control pointsnullPts - Null pointspublic static void residuals_Control4(org.ejml.data.DenseMatrix64F L_full,
org.ejml.data.DenseMatrix64F y,
double[] beta,
double[] r)
public static void residuals_Control3(org.ejml.data.DenseMatrix64F L_full,
org.ejml.data.DenseMatrix64F y,
double[] beta,
double[] r)
public static void jacobian_Control4(org.ejml.data.DenseMatrix64F L_full,
double[] beta,
org.ejml.data.DenseMatrix64F A)
public static void jacobian_Control3(org.ejml.data.DenseMatrix64F L_full,
double[] beta,
org.ejml.data.DenseMatrix64F A)