Я работаю над Ubuntu 16.4 в проекте C ++ и пытаюсь использовать функцию в opencv2 / calib3d.hpp, но безуспешно.
У меня нет проблем с использованием, например, cv :: Point3d, но как только я добавляю, я получаю следующую ошибку:
/ usr / local / include / opencv2 / features2d / features2d.hpp: 69: ошибка:
переопределение класса cv :: KeyPoint, класса CV_EXPORTS_W_SIMPLE
KeyPoint
Вот мой код:
#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/calib3d.hpp>
int main()
{
std::cout << "cv hello"<< std::endl;
return 0;
}
Когда я использую "pkg-config --modversion opencv", чтобы использовать версию opencv, я получаю "3.1.0"
Моя идея заключается в том, что у меня установлено несколько версий opencv и они конфликтуют.
Я думаю, потому что в предложении завершения, когда я добавляю
#include, у меня есть несколько эквивалентных предложений calib3d.hpp.
Как узнать, установлена ли у меня несколько версий?