Subversion Repositories seema-scanner

Rev

Rev 111 | Rev 114 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 111 Rev 113
Line 30... Line 30...
30
        // Camera 0
30
        // Camera 0
31
        std::vector<cv::Point2f> qci0;
31
        std::vector<cv::Point2f> qci0;
32
        // Extract checker corners
32
        // Extract checker corners
33
        bool success0 = cv::findChessboardCorners(SMCalibrationSetI.frame0, checkerCount, qci0, cv::CALIB_CB_ADAPTIVE_THRESH + cv::CALIB_CB_FAST_CHECK);
33
        bool success0 = cv::findChessboardCorners(SMCalibrationSetI.frame0, checkerCount, qci0, cv::CALIB_CB_ADAPTIVE_THRESH + cv::CALIB_CB_FAST_CHECK);
34
        if(success0){
34
        if(success0){
-
 
35
            // Convert bayer to grayscale
35
            cv::Mat gray;
36
            cv::Mat gray;
36
            cv::cvtColor(SMCalibrationSetI.frame0, gray, CV_RGB2GRAY);
37
            cv::cvtColor(SMCalibrationSetI.frame0, gray, CV_BayerBG2GRAY);
-
 
38
            cv::cvtColor(gray, gray, CV_RGB2GRAY);
37
            cv::cornerSubPix(gray, qci0, cv::Size(5, 5), cv::Size(-1, -1),cv::TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 20, 0.001));
39
            cv::cornerSubPix(gray, qci0, cv::Size(5, 5), cv::Size(-1, -1),cv::TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 20, 0.001));
38
            // Draw colored chessboard
40
            // Draw colored chessboard
39
            SMCalibrationSetI.frame0Result = SMCalibrationSetI.frame0.clone();
41
            SMCalibrationSetI.frame0Result = SMCalibrationSetI.frame0.clone();
40
            cvtools::drawChessboardCorners(SMCalibrationSetI.frame0Result, checkerCount, qci0, success0, 10);
42
            cvtools::drawChessboardCorners(SMCalibrationSetI.frame0Result, checkerCount, qci0, success0, 10);
41
        }
43
        }
Line 45... Line 47...
45
        // Camera 1
47
        // Camera 1
46
        std::vector<cv::Point2f> qci1;
48
        std::vector<cv::Point2f> qci1;
47
        // Extract checker corners
49
        // Extract checker corners
48
        bool success1 = cv::findChessboardCorners(SMCalibrationSetI.frame1, checkerCount, qci1, cv::CALIB_CB_ADAPTIVE_THRESH + cv::CALIB_CB_FAST_CHECK);
50
        bool success1 = cv::findChessboardCorners(SMCalibrationSetI.frame1, checkerCount, qci1, cv::CALIB_CB_ADAPTIVE_THRESH + cv::CALIB_CB_FAST_CHECK);
49
        if(success1){
51
        if(success1){
-
 
52
            // Convert bayer to grayscale
50
            cv::Mat gray;
53
            cv::Mat gray;
51
            cv::cvtColor(SMCalibrationSetI.frame1, gray, CV_RGB2GRAY);
54
            cv::cvtColor(SMCalibrationSetI.frame1, gray, CV_BayerBG2GRAY);
52
            cv::cornerSubPix(gray, qci1, cv::Size(5, 5), cv::Size(-1, -1),cv::TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 20, 0.001));
55
            cv::cornerSubPix(gray, qci1, cv::Size(5, 5), cv::Size(-1, -1),cv::TermCriteria(CV_TERMCRIT_EPS + CV_TERMCRIT_ITER, 20, 0.001));
53
            // Draw colored chessboard
56
            // Draw colored chessboard
54
            SMCalibrationSetI.frame1Result = SMCalibrationSetI.frame1.clone();
57
            SMCalibrationSetI.frame1Result = SMCalibrationSetI.frame1.clone();
55
            cvtools::drawChessboardCorners(SMCalibrationSetI.frame1Result, checkerCount, qci1, success1, 10);
58
            cvtools::drawChessboardCorners(SMCalibrationSetI.frame1Result, checkerCount, qci1, success1, 10);
56
        }
59
        }