opencv“向量迭代器不兼容”
Posted
技术标签:
【中文标题】opencv“向量迭代器不兼容”【英文标题】:opencv "vector iterators incompatible" 【发布时间】:2011-06-24 09:10:15 【问题描述】:我正在使用 opencv 2.2 和 VC++(2008) 跟踪对象,同时在程序中使用 goodFeaturesToTrack 'vector iterators incompatible' 出现错误
vector<Point2f> points;
goodFeaturesToTrack(mat,points,10, 0.01, 10, Mat(), 3, 0, 0.04);
有没有办法解决这个问题?
【问题讨论】:
【参考方案1】:请尝试以下方法。
std::vector<cv::Point2f> points;
cv::Mat pointmat(points);
cv::Mat tempmat = Mat(mat.rows,mat.cols, cv::CV_32FC1);
goodFeaturesToTrack(mat,pointmat, tempmat,10, 0.01, 10, Mat(), 3, 0, 0.04);
goodFeaturesToTrack 根据documentation 采用额外的 tempimage 参数。它的前 3 个参数是 CvArr 类型,std::vector<cv::Point2f>
不是,因此 std::vector
迭代器错误消息的差异。
【讨论】:
以上是关于opencv“向量迭代器不兼容”的主要内容,如果未能解决你的问题,请参考以下文章