cameraIMUParameters
Description
The cameraIMUParameters
object stores the camera-to-IMU parameter
estimations from the calibration optimization executed by the estimateCameraIMUTransform
function.
Creation
Description
[tform,camIMUParams] = estimateCameraIMUTransform(___)
returns the transformation between a camera reference frame and an IMU reference frame,
and the estimated calibration parameters as a cameraIMUParameters
object
camIMUParams
.
Properties
Transform
— SE(3) transformation from camera to IMU
se3
object
This property is read-only.
Fixed SE(3) transformation from the camera to the IMU, returned as an se3
object.
ReprojectionErrors
— Absolute difference between projected landmark points and image point observations in each frame
M-by-2-by-N array of doubles
This property is read-only.
Absolute difference between the projected landmark points and the image point
observations in each frame, stored as an
M-by-2-by-N array of doubles.
M is the number of landmarks in the target calibration board, and
N is the number of calibration images specified in the imagePoints
argument of the estimateCameraIMUTransform
function.
TranslationErrors
— Error in the IMU translation prediction between consecutive camera frames after calibration
(N-1)-by-3 numeric array
This property is read-only.
Error in IMU translation prediction between consecutive camera frames after
calibration, stored as a (N-1)-by-3 numeric array.
Nis the total number of images specified in the imagePoints
argument of the estimateCameraIMUTransform
function. Each row is a position of the form
[x,y,z], in meters.
RotationErrors
— Error in IMU rotation prediction between successive camera poses after calibration
(N-1)-by-3 numeric array
This property is read-only.
Error in the IMU rotation prediction between successive camera poses after
calibration, stored as a (N-1)-by-3 numeric array.
Nis the total number of images specified in the imagePoints
argument of the estimateCameraIMUTransform
function. Each row is an Euler rotation of the
form [z,y,x], in
radians.
CameraPoses
— Camera pose estimates from calibration
N-element array of se3
objects
This property is read-only.
Camera pose estimates from calibration, stored as an N-element
array of se3
objects.
N is the total number of calibration images used by the estimateCameraIMUTransform
function. Note that the computed camera pose
estimates may differ from user-specified poses after optimization.
ImagesUsed
— Indices of images used for calibration
M-by-1 array of positive integers
This property is read-only.
Indices of images used for the calibration, stored as a M-by-1 array of positive integers.
GravityRotation
— Gravity rotation
se3
object
This property is read-only.
Gravity rotation, stored as an se3
object.
You can use the gravity rotation for converting camera poses to a navigation reference frame.
AccelerometerBias
— Estimated accelerometer bias values at image sampling times
M-by-3 matrix
This property is read-only.
Estimated accelerometer bias values at image sampling times, stored as an
M-by-3 matrix. M is the number of calibration
images specified in the imagePoints
argument of the estimateCameraIMUTransform
function. Each row is an accelerometer bias in
the form [Accel_X_Bias, Accel_Y_Bias,
Accel_Z_Bias].
GyroscopeBias
— Estimated gyroscope bias values at sampling times
M-by-3 matrix
This property is read-only.
Estimated gyroscope bias values at image sampling times, stored as an
M-by-3 matrix. M is the number of calibration
images specified in the imagePoints
argument of the estimateCameraIMUTransform
function. Each row is a gyroscope bias in the
form [Gyro_X_Bias, Gyro_Y_Bias,
Gyro_Z_Bias].
Velocity
— IMU velocities
M-by-3 matrix
This property is read-only.
IMU velocities, stored as an M-by-3 matrix in the form
[Vel_X
Vel_Y
Vel_Z]. M is the number of calibration images used
by the estimateCameraIMUTransform
function. Vel_X,
Vel_Y, and Vel_Z are the xyz
velocities in meters per second.
SolutionInfo
— Results of calibration optimization
structure
This property is read-only.
Results of the calibration optimization, returned as a structure containing:
InitialCost
— Initial cost of the non-linear least squares problem formulated by the factor graph before the optimization.FinalCost
— Final cost of the non-linear least squares problem formulated by the factor graph after the optimization.Note
Cost is the sum of error terms, known as residuals, where each residual is a function of a subset of factor measurements.
NumSuccessfulSteps
— Number of iterations in which the solver decreases the cost. This value includes the initialization iteration at 0 in addition to the minimizer iterations.NumUnsuccessfulSteps
— Number of iterations in which the iteration is numerically invalid or the solver does not decrease the cost.TotalTime
— Total solver optimization time in seconds.TerminationType
— Termination type as an integer in the range [0, 2]:0
— Solver found a solution that meets convergence criterion and decreases in cost after optimization.1
— Solver could not find a solution that meets convergence criterion after running for the maximum number of iterations.2
— Solver terminated due to an error.
IsSolutionUsable
— The solution is usable if the solution has either converged orestimateCameraIMUTransform
has reached the maximum number of iterations. The value is1
(true
) if the solution is usable and the value is0
(false
) if the solution is not usable.
Object Functions
showIMUBiasEstimates | Visualize IMU accelerometer and gyroscope bias estimates |
showIMUPredictionErrors | Visualizes absolute values of IMU prediction errors |
showReprojectionErrors | Visualize means reprojection error for images as bar graph |
showTransform | Visualize estimated camera-to-IMU transformation |
validate | Validate camera-IMU calibration |
Version History
Introduced in R2024a
See Also
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)