Skip to content

Commit c0e456d

Browse files
committed
calib3d: use calibration flags from the new enums
1 parent d121d1c commit c0e456d

File tree

1 file changed

+42
-40
lines changed

1 file changed

+42
-40
lines changed

modules/calib3d/src/calibration.cpp

Lines changed: 42 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1319,7 +1319,7 @@ static double cvCalibrateCamera2Internal( const CvMat* objectPoints,
13191319
(npoints->rows != 1 && npoints->cols != 1) )
13201320
CV_Error( CV_StsUnsupportedFormat,
13211321
"the array of point counters must be 1-dimensional integer vector" );
1322-
if(flags & CV_CALIB_TILTED_MODEL)
1322+
if(flags & CALIB_TILTED_MODEL)
13231323
{
13241324
//when the tilted sensor model is used the distortion coefficients matrix must have 14 parameters
13251325
if (distCoeffs->cols*distCoeffs->rows != 14)
@@ -1328,7 +1328,7 @@ static double cvCalibrateCamera2Internal( const CvMat* objectPoints,
13281328
else
13291329
{
13301330
//when the thin prism model is used the distortion coefficients matrix must have 12 parameters
1331-
if(flags & CV_CALIB_THIN_PRISM_MODEL)
1331+
if(flags & CALIB_THIN_PRISM_MODEL)
13321332
if (distCoeffs->cols*distCoeffs->rows != 12)
13331333
CV_Error( CV_StsBadArg, "Thin prism model must have 12 parameters in the distortion matrix" );
13341334
}
@@ -1498,26 +1498,28 @@ static double cvCalibrateCamera2Internal( const CvMat* objectPoints,
14981498

14991499
if(flags & CALIB_FIX_ASPECT_RATIO)
15001500
mask[0] = 0;
1501-
if( flags & CV_CALIB_FIX_FOCAL_LENGTH )
1501+
if( flags & CALIB_FIX_FOCAL_LENGTH )
15021502
mask[0] = mask[1] = 0;
1503-
if( flags & CV_CALIB_FIX_PRINCIPAL_POINT )
1503+
if( flags & CALIB_FIX_PRINCIPAL_POINT )
15041504
mask[2] = mask[3] = 0;
1505-
if( flags & CV_CALIB_ZERO_TANGENT_DIST )
1505+
if( flags & CALIB_ZERO_TANGENT_DIST )
15061506
{
15071507
param[6] = param[7] = 0;
15081508
mask[6] = mask[7] = 0;
15091509
}
15101510
if( !(flags & CALIB_RATIONAL_MODEL) )
15111511
flags |= CALIB_FIX_K4 + CALIB_FIX_K5 + CALIB_FIX_K6;
1512-
if( !(flags & CV_CALIB_THIN_PRISM_MODEL))
1512+
if( !(flags & CALIB_THIN_PRISM_MODEL))
15131513
flags |= CALIB_FIX_S1_S2_S3_S4;
1514-
if( !(flags & CV_CALIB_TILTED_MODEL))
1514+
if( !(flags & CALIB_TILTED_MODEL))
15151515
flags |= CALIB_FIX_TAUX_TAUY;
15161516

15171517
mask[ 4] = !(flags & CALIB_FIX_K1);
15181518
mask[ 5] = !(flags & CALIB_FIX_K2);
1519-
mask[6] =
1520-
mask[7] = !(flags & CALIB_FIX_TANGENT_DIST);
1519+
if( flags & CALIB_FIX_TANGENT_DIST )
1520+
{
1521+
mask[6] = mask[7] = 1;
1522+
}
15211523
mask[ 8] = !(flags & CALIB_FIX_K3);
15221524
mask[ 9] = !(flags & CALIB_FIX_K4);
15231525
mask[10] = !(flags & CALIB_FIX_K5);
@@ -1819,39 +1821,39 @@ double cvStereoCalibrate( const CvMat* _objectPoints, const CvMat* _imagePoints1
18191821
cvConvert( points, imagePoints[k] );
18201822
cvReshape( imagePoints[k], imagePoints[k], 2, 1 );
18211823

1822-
if( flags & (CV_CALIB_FIX_INTRINSIC|CV_CALIB_USE_INTRINSIC_GUESS|
1823-
CV_CALIB_FIX_ASPECT_RATIO|CV_CALIB_FIX_FOCAL_LENGTH) )
1824+
if( flags & (CALIB_FIX_INTRINSIC|CALIB_USE_INTRINSIC_GUESS|
1825+
CALIB_FIX_ASPECT_RATIO|CALIB_FIX_FOCAL_LENGTH) )
18241826
cvConvert( cameraMatrix, &K[k] );
18251827

1826-
if( flags & (CV_CALIB_FIX_INTRINSIC|CV_CALIB_USE_INTRINSIC_GUESS|
1827-
CV_CALIB_FIX_K1|CV_CALIB_FIX_K2|CV_CALIB_FIX_K3|CV_CALIB_FIX_K4|CV_CALIB_FIX_K5|CV_CALIB_FIX_K6) )
1828+
if( flags & (CALIB_FIX_INTRINSIC|CALIB_USE_INTRINSIC_GUESS|
1829+
CALIB_FIX_K1|CALIB_FIX_K2|CALIB_FIX_K3|CALIB_FIX_K4|CALIB_FIX_K5|CALIB_FIX_K6) )
18281830
{
18291831
CvMat tdist = cvMat( distCoeffs->rows, distCoeffs->cols,
18301832
CV_MAKETYPE(CV_64F,CV_MAT_CN(distCoeffs->type)), Dist[k].data.db );
18311833
cvConvert( distCoeffs, &tdist );
18321834
}
18331835

1834-
if( !(flags & (CV_CALIB_FIX_INTRINSIC|CV_CALIB_USE_INTRINSIC_GUESS)))
1836+
if( !(flags & (CALIB_FIX_INTRINSIC|CALIB_USE_INTRINSIC_GUESS)))
18351837
{
18361838
cvCalibrateCamera2( objectPoints, imagePoints[k],
18371839
npoints, imageSize, &K[k], &Dist[k], NULL, NULL, flags );
18381840
}
18391841
}
18401842

1841-
if( flags & CV_CALIB_SAME_FOCAL_LENGTH )
1843+
if( flags & CALIB_SAME_FOCAL_LENGTH )
18421844
{
18431845
static const int avg_idx[] = { 0, 4, 2, 5, -1 };
18441846
for( k = 0; avg_idx[k] >= 0; k++ )
18451847
A[0][avg_idx[k]] = A[1][avg_idx[k]] = (A[0][avg_idx[k]] + A[1][avg_idx[k]])*0.5;
18461848
}
18471849

1848-
if( flags & CV_CALIB_FIX_ASPECT_RATIO )
1850+
if( flags & CALIB_FIX_ASPECT_RATIO )
18491851
{
18501852
for( k = 0; k < 2; k++ )
18511853
aspectRatio[k] = A[k][0]/A[k][4];
18521854
}
18531855

1854-
recomputeIntrinsics = (flags & CV_CALIB_FIX_INTRINSIC) == 0;
1856+
recomputeIntrinsics = (flags & CALIB_FIX_INTRINSIC) == 0;
18551857

18561858
err.reset(cvCreateMat( maxPoints*2, 1, CV_64F ));
18571859
Je.reset(cvCreateMat( maxPoints*2, 6, CV_64F ));
@@ -1875,40 +1877,40 @@ double cvStereoCalibrate( const CvMat* _objectPoints, const CvMat* _imagePoints1
18751877
if( recomputeIntrinsics )
18761878
{
18771879
uchar* imask = solver.mask->data.ptr + nparams - NINTRINSIC*2;
1878-
if( !(flags & CV_CALIB_RATIONAL_MODEL) )
1879-
flags |= CV_CALIB_FIX_K4 | CV_CALIB_FIX_K5 | CV_CALIB_FIX_K6;
1880-
if( !(flags & CV_CALIB_THIN_PRISM_MODEL) )
1881-
flags |= CV_CALIB_FIX_S1_S2_S3_S4;
1882-
if( !(flags & CV_CALIB_TILTED_MODEL) )
1883-
flags |= CV_CALIB_FIX_TAUX_TAUY;
1884-
if( flags & CV_CALIB_FIX_ASPECT_RATIO )
1880+
if( !(flags & CALIB_RATIONAL_MODEL) )
1881+
flags |= CALIB_FIX_K4 | CALIB_FIX_K5 | CALIB_FIX_K6;
1882+
if( !(flags & CALIB_THIN_PRISM_MODEL) )
1883+
flags |= CALIB_FIX_S1_S2_S3_S4;
1884+
if( !(flags & CALIB_TILTED_MODEL) )
1885+
flags |= CALIB_FIX_TAUX_TAUY;
1886+
if( flags & CALIB_FIX_ASPECT_RATIO )
18851887
imask[0] = imask[NINTRINSIC] = 0;
1886-
if( flags & CV_CALIB_FIX_FOCAL_LENGTH )
1888+
if( flags & CALIB_FIX_FOCAL_LENGTH )
18871889
imask[0] = imask[1] = imask[NINTRINSIC] = imask[NINTRINSIC+1] = 0;
1888-
if( flags & CV_CALIB_FIX_PRINCIPAL_POINT )
1890+
if( flags & CALIB_FIX_PRINCIPAL_POINT )
18891891
imask[2] = imask[3] = imask[NINTRINSIC+2] = imask[NINTRINSIC+3] = 0;
1890-
if( flags & CV_CALIB_ZERO_TANGENT_DIST )
1892+
if( flags & CALIB_ZERO_TANGENT_DIST )
18911893
imask[6] = imask[7] = imask[NINTRINSIC+6] = imask[NINTRINSIC+7] = 0;
1892-
if( flags & CV_CALIB_FIX_K1 )
1894+
if( flags & CALIB_FIX_K1 )
18931895
imask[4] = imask[NINTRINSIC+4] = 0;
1894-
if( flags & CV_CALIB_FIX_K2 )
1896+
if( flags & CALIB_FIX_K2 )
18951897
imask[5] = imask[NINTRINSIC+5] = 0;
1896-
if( flags & CV_CALIB_FIX_K3 )
1898+
if( flags & CALIB_FIX_K3 )
18971899
imask[8] = imask[NINTRINSIC+8] = 0;
1898-
if( flags & CV_CALIB_FIX_K4 )
1900+
if( flags & CALIB_FIX_K4 )
18991901
imask[9] = imask[NINTRINSIC+9] = 0;
1900-
if( flags & CV_CALIB_FIX_K5 )
1902+
if( flags & CALIB_FIX_K5 )
19011903
imask[10] = imask[NINTRINSIC+10] = 0;
1902-
if( flags & CV_CALIB_FIX_K6 )
1904+
if( flags & CALIB_FIX_K6 )
19031905
imask[11] = imask[NINTRINSIC+11] = 0;
1904-
if( flags & CV_CALIB_FIX_S1_S2_S3_S4 )
1906+
if( flags & CALIB_FIX_S1_S2_S3_S4 )
19051907
{
19061908
imask[12] = imask[NINTRINSIC+12] = 0;
19071909
imask[13] = imask[NINTRINSIC+13] = 0;
19081910
imask[14] = imask[NINTRINSIC+14] = 0;
19091911
imask[15] = imask[NINTRINSIC+15] = 0;
19101912
}
1911-
if( flags & CV_CALIB_FIX_TAUX_TAUY )
1913+
if( flags & CALIB_FIX_TAUX_TAUY )
19121914
{
19131915
imask[16] = imask[NINTRINSIC+16] = 0;
19141916
imask[17] = imask[NINTRINSIC+17] = 0;
@@ -1979,7 +1981,7 @@ double cvStereoCalibrate( const CvMat* _objectPoints, const CvMat* _imagePoints1
19791981
for( k = 0; k < 2; k++ )
19801982
{
19811983
double* iparam = solver.param->data.db + (nimages+1)*6 + k*NINTRINSIC;
1982-
if( flags & CV_CALIB_ZERO_TANGENT_DIST )
1984+
if( flags & CALIB_ZERO_TANGENT_DIST )
19831985
dk[k][2] = dk[k][3] = 0;
19841986
iparam[0] = A[k][0]; iparam[1] = A[k][4]; iparam[2] = A[k][2]; iparam[3] = A[k][5];
19851987
iparam[4] = dk[k][0]; iparam[5] = dk[k][1]; iparam[6] = dk[k][2];
@@ -2029,14 +2031,14 @@ double cvStereoCalibrate( const CvMat* _objectPoints, const CvMat* _imagePoints1
20292031
dpdf = &dpdf_hdr;
20302032
dpdc = &dpdc_hdr;
20312033
dpdk = &dpdk_hdr;
2032-
if( flags & CV_CALIB_SAME_FOCAL_LENGTH )
2034+
if( flags & CALIB_SAME_FOCAL_LENGTH )
20332035
{
20342036
iparam[NINTRINSIC] = iparam[0];
20352037
iparam[NINTRINSIC+1] = iparam[1];
20362038
ipparam[NINTRINSIC] = ipparam[0];
20372039
ipparam[NINTRINSIC+1] = ipparam[1];
20382040
}
2039-
if( flags & CV_CALIB_FIX_ASPECT_RATIO )
2041+
if( flags & CALIB_FIX_ASPECT_RATIO )
20402042
{
20412043
iparam[0] = iparam[1]*aspectRatio[0];
20422044
iparam[NINTRINSIC] = iparam[NINTRINSIC+1]*aspectRatio[1];
@@ -2098,7 +2100,7 @@ double cvStereoCalibrate( const CvMat* _objectPoints, const CvMat* _imagePoints1
20982100
if( JtJ || JtErr )
20992101
cvProjectPoints2( &objpt_i, &om[k], &T[k], &K[k], &Dist[k],
21002102
&tmpimagePoints, dpdrot, dpdt, dpdf, dpdc, dpdk,
2101-
(flags & CV_CALIB_FIX_ASPECT_RATIO) ? aspectRatio[k] : 0);
2103+
(flags & CALIB_FIX_ASPECT_RATIO) ? aspectRatio[k] : 0);
21022104
else
21032105
cvProjectPoints2( &objpt_i, &om[k], &T[k], &K[k], &Dist[k], &tmpimagePoints );
21042106
cvSub( &tmpimagePoints, &imgpt_i[k], &tmpimagePoints );
@@ -2374,7 +2376,7 @@ void cvStereoRectify( const CvMat* _cameraMatrix1, const CvMat* _cameraMatrix2,
23742376

23752377
// For simplicity, set the principal points for both cameras to be the average
23762378
// of the two principal points (either one of or both x- and y- coordinates)
2377-
if( flags & CV_CALIB_ZERO_DISPARITY )
2379+
if( flags & CALIB_ZERO_DISPARITY )
23782380
{
23792381
cc_new[0].x = cc_new[1].x = (cc_new[0].x + cc_new[1].x)*0.5;
23802382
cc_new[0].y = cc_new[1].y = (cc_new[0].y + cc_new[1].y)*0.5;

0 commit comments

Comments
 (0)