Ошибки при компиляции несвободных /features2d.hpp
Я пытаюсь написать c++
программа с использованием SIFT
, Я уже установил и построил opencv_contrib-master
модуль, как некоторые предположили, что последняя версия OpenCV
(версия 3.0, которая у меня есть) не имеет этого модуля. Я могу физически найти несвободную папку, а также файл featuures2d в ней, но каждый раз, когда я пытаюсь скомпилировать, я получаю следующие ошибки внутриfeatures2d.hpp
'сам файл:
/usr/include/opencv2/nonfree/features2d.hpp:73: error: expected ',' or '...' before '<' token vector<KeyPoint>& keypoints) const;
/usr/include/opencv2/nonfree/features2d.hpp:73: error: 'vector' has not been declared
/usr/include/opencv2/nonfree/features2d.hpp:77: error: 'vector' has not been declared vector<KeyPoint>& keypoints,
/usr/include/opencv2/nonfree/features2d.hpp:77: error: expected ',' or '...' before '<' token
/usr/include/opencv2/nonfree/features2d.hpp:83: error: 'vector' has not been declared void buildGaussianPyramid( const Mat& base, vector<Mat>& pyr, int nOctaves ) const; vector<KeyPoint>& keypoints,
/usr/include/opencv2/nonfree/features2d.hpp:76: error: 'void cv::SIFT::operator()(cv::InputArray, cv::InputArray, int) const' cannot be overloaded void operator()(InputArray img, InputArray mask,
/usr/include/opencv2/nonfree/features2d.hpp:72: error: with 'void cv::SIFT::operator()(cv::InputArray, cv::InputArray, int) const'
void operator()(InputArray img, InputArray mask, vector<KeyPoint>& keypoints) const;
Всего существует 26 ошибок, но большинство из нихvector not declared
'хотя я включил vector.h
также. Основная программа распознает siftfeaturedetector, но все ошибки происходят из nonfree/features2d.hpp
файл. Любые предложения, что может быть не так?
Я также очень плохо знаком с OpenCV
и извиняюсь за отсутствие технических деталей. Спасибо