Package boofcv.abst.geo.bundle
Interface BundleAdjustmentCamera
- All Known Implementing Classes:
BundleCameraProjective
,BundleDummyCamera
,BundleKannalaBrandt
,BundlePinhole
,BundlePinholeBrown
,BundlePinholeSimplified
,BundlePinholeSnavely
,BundleUniversalOmni
public interface BundleAdjustmentCamera
Generalized camera model for bundle adjustment. By implementing this function you can swap in and out
arbitrary camera models.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
getIntrinsic
(double[] parameters, int offset) Copies the intrinsic camera into the array.int
Returns the number of intrinsic parameters for this model.void
jacobian
(double camX, double camY, double camZ, double[] pointX, double[] pointY, boolean computeIntrinsic, @org.jetbrains.annotations.Nullable double[] calibX, @org.jetbrains.annotations.Nullable double[] calibY) Computes the gradient for the projected pixel coordinate with partials for the input 3D point in camera reference frame and camera intrinsic parameters.void
project
(double camX, double camY, double camZ, Point2D_F64 output) Project the 3D point in the camera reference frame onto the camera's image plane.void
setIntrinsic
(double[] parameters, int offset) Specifies the intrinsic camera parameters.
-
Method Details
-
setIntrinsic
void setIntrinsic(double[] parameters, int offset) Specifies the intrinsic camera parameters.- Parameters:
parameters
- Array containing the parametersoffset
- Location of first index in the array which the parameters are stored
-
getIntrinsic
void getIntrinsic(double[] parameters, int offset) Copies the intrinsic camera into the array.- Parameters:
parameters
- Array containing the parametersoffset
- Location of first index in the array which the parameters are stored
-
project
Project the 3D point in the camera reference frame onto the camera's image plane.- Parameters:
camX
- 3D point in camera reference framecamY
- 3D point in camera reference framecamZ
- 3D point in camera reference frameoutput
- Storage for projected point.
-
jacobian
void jacobian(double camX, double camY, double camZ, double[] pointX, double[] pointY, boolean computeIntrinsic, @Nullable @org.jetbrains.annotations.Nullable double[] calibX, @Nullable @org.jetbrains.annotations.Nullable double[] calibY) Computes the gradient for the projected pixel coordinate with partials for the input 3D point in camera reference frame and camera intrinsic parameters.[x',y']
is the projected pixel coordinate of the 3D point in camera reference frame.- Parameters:
camX
- (Input) 3D point in camera reference framecamY
- (Input) 3D point in camera reference framecamZ
- (Input) 3D point in camera reference framepointX
- (Output) Partial of projected x' relative to input camera point.[@x'/@camX, @ x' / @ camY, @ x' / @ camZ]
length 3pointY
- (Output) Partial of projected y' relative to input camera point.[@y'/@camX, @ y' / @ camY, @ y' / @ camZ]
length 3computeIntrinsic
- If true the calibX and calibY is computed. Otherwise they are ignored and can be nullcalibX
- (Output) Partial of projected x' relative to calibration parameters. length NcalibY
- (Output) Partial of projected y' relative to calibration parameters. length N
-
getIntrinsicCount
int getIntrinsicCount()Returns the number of intrinsic parameters for this model. If the camera is known then the number of parameters is zero- Returns:
- number of intrinsic parameters.
-