diff --git a/modules/calib3d/src/calibration.cpp b/modules/calib3d/src/calibration.cpp index edb109beb1..62a1c3c006 100644 --- a/modules/calib3d/src/calibration.cpp +++ b/modules/calib3d/src/calibration.cpp @@ -2778,17 +2778,13 @@ CV_IMPL int cvStereoRectifyUncalibrated( cvPerspectiveTransform( _m1, _m1, &H0 ); cvPerspectiveTransform( _m2, _m2, &H2 ); CvMat A = cvMat( 1, npoints, CV_64FC3, lines1 ), BxBy, B; - double a[9], atb[3], x[3]; - CvMat AtA = cvMat( 3, 3, CV_64F, a ); - CvMat AtB = cvMat( 3, 1, CV_64F, atb ); + double x[3]; CvMat X = cvMat( 3, 1, CV_64F, x ); cvConvertPointsHomogeneous( _m1, &A ); cvReshape( &A, &A, 1, npoints ); cvReshape( _m2, &BxBy, 1, npoints ); cvGetCol( &BxBy, &B, 0 ); - cvGEMM( &A, &A, 1, 0, 0, &AtA, CV_GEMM_A_T ); - cvGEMM( &A, &B, 1, 0, 0, &AtB, CV_GEMM_A_T ); - cvSolve( &AtA, &AtB, &X, CV_SVD_SYM ); + cvSolve( &A, &B, &X, CV_SVD ); double ha[] = {