c++ - 如何通过opencv cv :: calibrateCamera通过索引返回访问值?
问题描述
我使用opencv函数cv::calibrateCamera
来校准我的相机,我想像这样访问索引返回的值cameraMatrix.at<float>(2,2)
,但是失败了!代码和结果是这样的:
cv::Mat cameraMatrix = cv::Mat(3, 3, CV_32F);
cv::Mat distCoeffs = cv::Mat(1, 5, CV_32F);
cv::Mat rvecs;
cv::Mat tvecs;
double reprojectError;
reprojectError = cv::calibrateCamera(pointsOnBoard, pointsOnImg, imgSize,
cameraMatrix, distCoeffs, rvecs, tvecs);
std::cout << "Intrinsic matrix:" << std::endl;
std::cout << cameraMatrix << std::endl;
std::cout << "Value at [2,2]: " << cameraMatrix.at<float>(2,2) << std::endl;
我已经尝试了一些这样的代码,一切都很好!
float tmp[] = {1,2,3,4,5,6,7,8,9};
cv Mat test = Mat(3,3,CV_32F,tmp);
std::cout << "Value at [2,2]: " << test.at<float>(2,2) << std::endl;
解决方案
推荐阅读
- api - 如何解决此错误消息以使用 Sonos 获取访问令牌
- virtual - OpenLiteSpeed 上的虚拟主机不会确认域名
- hybris - Hybris中的“hmcIndexField”有什么用?
- javascript - 加载和居中未知尺寸的图像,保持纵横比和填充
- python - OSError ssl 握手?
- c# - 如何在 C# 中捕获命令提示符进程完成并在此之后执行某些操作?
- eclipse - Eclipse 单词自动提示
- powerbi - DAX 建议在 PowerBI 中生成特定加权平均度量?
- python - Python 请求我收到连接重置错误
- python - pytest - 在所有其他测试之后重新运行失败的测试