久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: opencv單目標定程序源碼 [打印本頁]

作者: tmac1    時間: 2016-11-7 14:39
標題: opencv單目標定程序源碼
#include <iostream>
#include <iomanip>
#include <vector>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/features2d/features2d.hpp>

#include "CameraCalibrator.h"

int main()
{

        cv::namedWindow("Image");
        cv::Mat image;
        std::vector<std::string> filelist;

        // generate list of chessboard image filename
        for (int i=1; i<=20; i++) {

                std::stringstream str;
                str << "../chessboards/chessboard" << std::setw(2) << std::setfill('0') << i << ".jpg";
                std::cout << str.str() << std::endl;

                filelist.push_back(str.str());
                image= cv::imread(str.str(),0);
                cv::imshow("Image",image);
       
                 cv::waitKey(100);
        }

        // Create calibrator object
    CameraCalibrator cameraCalibrator;
        // add the corners from the chessboard
        cv::Size boardSize(7,7);
        cameraCalibrator.addChessboardPoints(
                filelist,        // filenames of chessboard image
                boardSize);        // size of chessboard
                // calibrate the camera
    //        cameraCalibrator.setCalibrationFlag(true,true);
        cameraCalibrator.calibrate(image.size());

    // Image Undistortion
    image = cv::imread(filelist[6]);
        cv::Mat uImage= cameraCalibrator.remap(image);

        // display camera matrix
        cv::Mat cameraMatrix= cameraCalibrator.getCameraMatrix();
        std::cout << " Camera intrinsic: " << cameraMatrix.rows << "x" << cameraMatrix.cols << std::endl;
        std::cout << cameraMatrix.at<double>(0,0) << " " << cameraMatrix.at<double>(0,1) << " " << cameraMatrix.at<double>(0,2) << std::endl;
        std::cout << cameraMatrix.at<double>(1,0) << " " << cameraMatrix.at<double>(1,1) << " " << cameraMatrix.at<double>(1,2) << std::endl;
        std::cout << cameraMatrix.at<double>(2,0) << " " << cameraMatrix.at<double>(2,1) << " " << cameraMatrix.at<double>(2,2) << std::endl;

    imshow("Original Image", image);
    imshow("Undistorted Image", uImage);
        //打印相機內參數矩陣(3*3矩陣)
   /* cv::  Mat cameraMatrix = cameraCalibrator.getCameraMatrix();
    std::cout << " 相機內參數矩陣:" << cameraMatrix.rows << "x" << cameraMatrix.cols << std::endl;
    for (int i=0; i for (int j=0; j {
    cout<(i, j);
    if (j==2)
    cout< }*/
    //打印畸變系數矩陣(1*5矩陣)
    cv:: Mat distCoeffs = cameraCalibrator.getDistCoeffs();
    std::cout << "畸變系數矩陣:" << distCoeffs.rows << "x" << distCoeffs.cols << std::endl;
    //for (int i=0; i for (int j=0; j cout<(i, j)<<"\t";
        std::cout << distCoeffs.at<double>(0,0) << " " << distCoeffs.at<double>(0,1) << " " << distCoeffs.at<double>(0,2)<<" " << distCoeffs.at<double>(0,3)<<" "<< distCoeffs.at<double>(0,4)<< std::endl;



        cv::waitKey();
        return 0;
}






歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美国产日韩一区 | 亚洲黄色网址 | 国产中文在线 | 国产小视频在线播放 | 亚洲精品久久久久久久久 | 国产三级在线看 | 狠狠插狠狠操 | 三级黄网站 | 亚洲精品久久久久 | 久久靖品 | 日本三级大片 | 午夜拍拍 | 国产www视频| 亚洲黄色av | 精品一区二区三 | 日本在线精品 | 国产成人+综合亚洲+天堂 | 欧美激情一区 | 91超碰在线观看 | 日韩欧美不卡 | 国产一区二区三区在线视频 | 午夜免费av | 久草福利在线观看 | 国产专区在线播放 | 伊人av网 | 日韩国产欧美 | 黄色片免费网站 | 国产精品一区在线观看 | 亚洲精品999 | 成人深夜 | 在线观看黄色av | 精品欧美在线 | 久久精品美女 | 亚洲天堂一区二区三区 | 亚洲另类色综合网站 | 久久99精品久久久久久 | 狠狠干网 | 亚洲视频在线一区 | 免费久久久 | 成人在线小视频 | 美丽的姑娘观看在线播放 |