C++ 调用cv::CalibleCamera()失败

C++ 调用cv::CalibleCamera()失败,c++,opencv,C++,Opencv,我试图从函数cv::calibrateCamera()中获取cameraMatrix,实际上我不确定是否正确,我最初的想法是: 获取来自同一摄像机的两幅输入图像 从图像_1和图像_2中提取所有特征点 使用cv::CalibleCamera()获取cameraMatrix(不知道它是否有效) 以下是我的代码: 编译进行得很顺利,但当我运行它时,它抛出了一个异常: OpenCV错误:在创建文件中断言失败(i

我试图从函数cv::calibrateCamera()中获取cameraMatrix,实际上我不确定是否正确,我最初的想法是:

  • 获取来自同一摄像机的两幅输入图像
  • 从图像_1和图像_2中提取所有特征点
  • 使用cv::CalibleCamera()获取cameraMatrix(不知道它是否有效)
  • 以下是我的代码:

    编译进行得很顺利,但当我运行它时,它抛出了一个异常:

    OpenCV错误:在创建文件中断言失败(i<0) /home/hjbolide/OpenCV-2.3.1/modules/core/src/matrix.cpp,第1198行 在抛出“cv::Exception”实例后终止调用
    what():/home/hjbolide/OpenCV-2.3.1/modules/core/src/matrix.cpp:1198: 错误:(-215)在函数创建中i<0

    正如我所说,我只是在尝试这种方法,并试图从中获得cameraMatrix。不知道哪里出了问题。有什么建议吗


    非常感谢。

    我也有类似的问题。我从学习OpenCV书中移植了一个C校准示例,使用C++接口,看到了你所看到的精确错误。我将rvec和tvec更改为
    std::vector
    ,然后校准开始工作。请注意,2.3文档将rvec和tvec都标记为OutputarrayOfarray。

    我将从示例应用程序开始,并从那里开始工作OpenCV 2.4.6仍然如此。