我试图在OpenCV中使用findEssentialMat函数但我无法编译它。 以下是我的示例代码。每次我执行make时,都会收到此错误:
/.../code/test.cpp: In function ‘int main(int, char**)’:
/.../code/test.cpp:17:51: error: ‘findEssentialMat’ was not declared in this scope
1.0, mask1);
请有人告诉我我做错了什么。我已使用CMakeLists.txt与 find_package(OpenCV REQUIRED)和 $ {OpenCV_LIBS} 链接了必要的lib。
非常感谢你。
#include <stdio.h>
#include <opencv2/opencv.hpp>
#include <opencv2/calib3d/calib3d.hpp>
using namespace cv;
using namespace std;
int main( int argc, char** argv )
{
Mat feature1, feature2, mask1;
Mat E = findEssentialMat(feature1,
feature2,
1.0,
Point2d(0, 0),
FM_RANSAC,
0.999,
1.0, mask1);
Mat f = findFundamentalMat(feature1, feature2, FM_RANSAC, 3, 0.99, mask1);
return 1;
}