gpt4 book ai didi

opencv - 使用solvePnP时的断言错误

转载 作者:行者123 更新时间:2023-12-02 17:50:17 25 4
gpt4 key购买 nike

我正在使用SolvePnP查找相机姿态估计。我得到这个断言错误:

    OpenCV Error: Assertion failed (mtype == type0 || (CV_MAT_CN(mtype) == 1 && ((1 << type0) & fixedDepthMask) != 0)) in virtual void cv::_OutputArray::create(int, int const*, int, int, bool, int) const, file /home/reports/ci/slave/50-SDK/opencv/modules/core/src/matrix.cpp, line 1438 terminate called after throwing an instance of 'cv::Exception'
what(): /home/reports/ci/slave/50-SDK/opencv/modules/core/src/matrix.cpp:1438: error: (-215) mtype == type0 || (CV_MAT_CN(mtype) == 1 && ((1 << type0) & fixedDepthMask) != 0) in function virtual void cv::_OutputArray::create(int, int const*, int, int, bool, int) const

这是我的代码:
Vec4f noArray;
Vec3f rvec,tvec;
std::vector<cv::Vec3f> p3f;
Mat(p3d).copyTo(p3f);
std::vector<cv::Point2f> points2f;
Mat(points2d).copyTo(points2f);
solvePnP(p3f,points2f,camera,noArray,rvec,tvec,true,CV_ITERATIVE);

这里p3d是一个 vector (Vec3d),points2d是一个 vector (Point2d),camera是Matx33f。我究竟做错了什么?

最佳答案

看着源头。在代码中“创建”了“rvec”和“tvec”。将Mat初始化为“rvec”和“tvec”可以完成工作。

关于opencv - 使用solvePnP时的断言错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23586470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com