opencv "несовместимые векторные итераторы" - PullRequest
1 голос
/ 24 июня 2011

Я использую opencv 2.2 и VC ++ (2008) для отслеживания объекта, в то время как с помощью goodFeaturesToTrack в программе ' несовместимы векторные итераторы ' ошибка

vector<Point2f> points;
goodFeaturesToTrack(mat,points,10, 0.01, 10, Mat(), 3, 0, 0.04);

Есть ли какая-либо работавокруг этого?

1 Ответ

0 голосов
/ 19 февраля 2012

Попробуйте вместо этого следующее.

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 принимает дополнительный аргумент tempimage согласно документации . Его первые 3 аргумента имеют тип CvArr, которого нет у std::vector<cv::Point2f>, следовательно, разница в сообщении об ошибке итераторов std::vector.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...