CvInvokeStereoCalibrate Method (MCvPoint3D32f, PointF, PointF, IInputOutputArray, IInputOutputArray, IInputOutputArray, IInputOutputArray, Size, IOutputArray, IOutputArray, IOutputArray, IOutputArray, CalibType, MCvTermCriteria) |
http://www.emgu.com
Estimates transformation between the 2 cameras making a stereo pair. If we have a stereo camera, where the relative position and orientatation of the 2 cameras is fixed, and if we computed poses of an object relative to the first camera and to the second camera, (R1, T1) and (R2, T2), respectively (that can be done with cvFindExtrinsicCameraParams2), obviously, those poses will relate to each other, i.e. given (R1, T1) it should be possible to compute (R2, T2) - we only need to know the position and orientation of the 2nd camera relative to the 1st camera. That's what the described function does. It computes (R, T) such that:
R2=R*R1,
T2=R*T1 + T
Namespace: Emgu.CVAssembly: Emgu.CV.World (in Emgu.CV.World.dll) Version: 3.2.0.2682 (3.2.0.2682)
Syntax public static void StereoCalibrate(
MCvPoint3D32f[][] objectPoints,
PointF[][] imagePoints1,
PointF[][] imagePoints2,
IInputOutputArray cameraMatrix1,
IInputOutputArray distCoeffs1,
IInputOutputArray cameraMatrix2,
IInputOutputArray distCoeffs2,
Size imageSize,
IOutputArray r,
IOutputArray t,
IOutputArray e,
IOutputArray f,
CalibType flags,
MCvTermCriteria termCrit
)
Public Shared Sub StereoCalibrate (
objectPoints As MCvPoint3D32f()(),
imagePoints1 As PointF()(),
imagePoints2 As PointF()(),
cameraMatrix1 As IInputOutputArray,
distCoeffs1 As IInputOutputArray,
cameraMatrix2 As IInputOutputArray,
distCoeffs2 As IInputOutputArray,
imageSize As Size,
r As IOutputArray,
t As IOutputArray,
e As IOutputArray,
f As IOutputArray,
flags As CalibType,
termCrit As MCvTermCriteria
)
public:
static void StereoCalibrate(
array<array<MCvPoint3D32f>^>^ objectPoints,
array<array<PointF>^>^ imagePoints1,
array<array<PointF>^>^ imagePoints2,
IInputOutputArray^ cameraMatrix1,
IInputOutputArray^ distCoeffs1,
IInputOutputArray^ cameraMatrix2,
IInputOutputArray^ distCoeffs2,
Size imageSize,
IOutputArray^ r,
IOutputArray^ t,
IOutputArray^ e,
IOutputArray^ f,
CalibType flags,
MCvTermCriteria termCrit
)
static member StereoCalibrate :
objectPoints : MCvPoint3D32f[][] *
imagePoints1 : PointF[][] *
imagePoints2 : PointF[][] *
cameraMatrix1 : IInputOutputArray *
distCoeffs1 : IInputOutputArray *
cameraMatrix2 : IInputOutputArray *
distCoeffs2 : IInputOutputArray *
imageSize : Size *
r : IOutputArray *
t : IOutputArray *
e : IOutputArray *
f : IOutputArray *
flags : CalibType *
termCrit : MCvTermCriteria -> unit
Parameters
- objectPoints
- Type: Emgu.CV.StructureMCvPoint3D32f
The 3D location of the object points. The first index is the index of image, second index is the index of the point - imagePoints1
- Type: System.DrawingPointF
The 2D image location of the points for camera 1. The first index is the index of the image, second index is the index of the point - imagePoints2
- Type: System.DrawingPointF
The 2D image location of the points for camera 2. The first index is the index of the image, second index is the index of the point - cameraMatrix1
- Type: Emgu.CVIInputOutputArray
The input/output camera matrices [fxk 0 cxk; 0 fyk cyk; 0 0 1]. If CV_CALIB_USE_INTRINSIC_GUESS or CV_CALIB_FIX_ASPECT_RATIO are specified, some or all of the elements of the matrices must be initialized - distCoeffs1
- Type: Emgu.CVIInputOutputArray
The input/output vectors of distortion coefficients for each camera, 4x1, 1x4, 5x1 or 1x5 - cameraMatrix2
- Type: Emgu.CVIInputOutputArray
The input/output camera matrices [fxk 0 cxk; 0 fyk cyk; 0 0 1]. If CV_CALIB_USE_INTRINSIC_GUESS or CV_CALIB_FIX_ASPECT_RATIO are specified, some or all of the elements of the matrices must be initialized - distCoeffs2
- Type: Emgu.CVIInputOutputArray
The input/output vectors of distortion coefficients for each camera, 4x1, 1x4, 5x1 or 1x5 - imageSize
- Type: System.DrawingSize
Size of the image, used only to initialize intrinsic camera matrix - r
- Type: Emgu.CVIOutputArray
The rotation matrix between the 1st and the 2nd cameras' coordinate systems - t
- Type: Emgu.CVIOutputArray
The translation vector between the cameras' coordinate systems - e
- Type: Emgu.CVIOutputArray
The optional output essential matrix - f
- Type: Emgu.CVIOutputArray
The optional output fundamental matrix - flags
- Type: Emgu.CV.CvEnumCalibType
The calibration flags - termCrit
- Type: Emgu.CV.StructureMCvTermCriteria
Termination criteria for the iterative optimization algorithm
See Also