Package boofcv.alg.geo.bundle.cameras
Class BundleUniversalOmni
java.lang.Object
boofcv.alg.geo.bundle.cameras.BundleUniversalOmni
- All Implemented Interfaces:
BundleAdjustmentCamera
Implementation of
CameraUniversalOmni
for bundle adjustment-
Field Summary
Modifier and TypeFieldDescriptiondouble
image center (units: pixels)double
image center (units: pixels)boolean
double
focal length along x and y axis (units: pixels)double
focal length along x and y axis (units: pixels)double
Mirror offset distance.double[]
radial distortion parameters: k1,...,kndouble
skew parameter, typically 0 (units: pixels)double
tangential distortion parametersdouble
tangential distortion parametersboolean
boolean
-
Constructor Summary
ConstructorDescriptionBundleUniversalOmni
(boolean zeroSkew, int numRadial, boolean includeTangential, boolean fixedMirror) BundleUniversalOmni
(boolean zeroSkew, int numRadial, boolean includeTangential, double mirrorOffset) BundleUniversalOmni
(CameraUniversalOmni intrinsic) -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
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[] inputX, double[] inputY, 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 x, double y, double z, 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.void
setK
(DMatrixRMaj K) Set's the classes state to the value contained in this map.toMap()
Convert's the values into a map format where each class's field has a corresponding key with the same name and primitive value or primitive array.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface boofcv.abst.geo.bundle.BundleAdjustmentCamera
setCameraState
-
Field Details
-
fx
public double fxfocal length along x and y axis (units: pixels) -
fy
public double fyfocal length along x and y axis (units: pixels) -
skew
public double skewskew parameter, typically 0 (units: pixels) -
cx
public double cximage center (units: pixels) -
cy
public double cyimage center (units: pixels) -
mirrorOffset
public double mirrorOffsetMirror offset distance. ξ -
radial
public double[] radialradial distortion parameters: k1,...,kn -
t1
public double t1tangential distortion parameters -
t2
public double t2tangential distortion parameters -
zeroSkew
public boolean zeroSkew -
tangential
public boolean tangential -
fixedMirror
public boolean fixedMirror
-
-
Constructor Details
-
BundleUniversalOmni
public BundleUniversalOmni(boolean zeroSkew, int numRadial, boolean includeTangential, boolean fixedMirror) -
BundleUniversalOmni
public BundleUniversalOmni(boolean zeroSkew, int numRadial, boolean includeTangential, double mirrorOffset) -
BundleUniversalOmni
public BundleUniversalOmni() -
BundleUniversalOmni
-
-
Method Details
-
convert
-
setK
-
setIntrinsic
public void setIntrinsic(double[] parameters, int offset) Description copied from interface:BundleAdjustmentCamera
Specifies the intrinsic camera parameters.- Specified by:
setIntrinsic
in interfaceBundleAdjustmentCamera
- Parameters:
parameters
- Array containing the parametersoffset
- Location of first index in the array which the parameters are stored
-
getIntrinsic
public void getIntrinsic(double[] parameters, int offset) Description copied from interface:BundleAdjustmentCamera
Copies the intrinsic camera into the array.- Specified by:
getIntrinsic
in interfaceBundleAdjustmentCamera
- Parameters:
parameters
- Array containing the parametersoffset
- Location of first index in the array which the parameters are stored
-
project
Description copied from interface:BundleAdjustmentCamera
Project the 3D point in the camera reference frame onto the camera's image plane.- Specified by:
project
in interfaceBundleAdjustmentCamera
- Parameters:
x
- 3D point in camera reference framey
- 3D point in camera reference framez
- 3D point in camera reference frameoutput
- Storage for projected point.
-
jacobian
public void jacobian(double camX, double camY, double camZ, double[] inputX, double[] inputY, boolean computeIntrinsic, @Nullable @org.jetbrains.annotations.Nullable double[] calibX, @Nullable @org.jetbrains.annotations.Nullable double[] calibY) Description copied from interface:BundleAdjustmentCamera
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.- Specified by:
jacobian
in interfaceBundleAdjustmentCamera
- Parameters:
camX
- (Input) 3D point in camera reference framecamY
- (Input) 3D point in camera reference framecamZ
- (Input) 3D point in camera reference frameinputX
- (Output) Partial of projected x' relative to input camera point.[@x'/@camX, @ x' / @ camY, @ x' / @ camZ]
length 3inputY
- (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
public int getIntrinsicCount()Description copied from interface:BundleAdjustmentCamera
Returns the number of intrinsic parameters for this model. If the camera is known then the number of parameters is zero- Specified by:
getIntrinsicCount
in interfaceBundleAdjustmentCamera
- Returns:
- number of intrinsic parameters.
-
setTo
Description copied from interface:BundleAdjustmentCamera
Set's the classes state to the value contained in this map. Used when deserializing.- Specified by:
setTo
in interfaceBundleAdjustmentCamera
-
toMap
Description copied from interface:BundleAdjustmentCamera
Convert's the values into a map format where each class's field has a corresponding key with the same name and primitive value or primitive array. This is used for serialization to YAML.- Specified by:
toMap
in interfaceBundleAdjustmentCamera
-