2016-11-03 6 views
0

opencvの基本行列を見つけるためにこのコード(ソース)を使いたいと思います。OpenCVの関数findFundamentalMatにエラーがあります

#include <iostream> 
using namespace std; 

#include <opencv2/opencv.hpp> 
using namespace cv;  
int point_count = 100; 
     vector<Point2f> points1(point_count); 
     vector<Point2f> points2(point_count); 

     // initialize the points here ... */ 
     for(int i = 0; i < point_count; i++) 
     { 
      points1[i] = Point2f(10.0f, 20.0f); 
      points2[i] = Point2f(0.3f, 40.0f); 
     } 

     Mat fundamental_matrix = 
     findFundamentalMat(points1, points2, FM_RANSAC, 3, 0.99); 

が、私はこの

undefined reference to `cv::findFundamentalMat(cv::_InputArray const&, cv::_InputArray const&, int, double, double, cv::_OutputArray const&)' 

ようfindFundamentalMatでエラーを取得しています私が間違っているの何を指摘し、私はOpenCVのに新しいですと、感謝記述してください。

答えて

0

リンカエラーです。リンカーライブラリにcalib3d、おそらく他のものを含める必要があります。

+0

includeded calib3dは、エラー致命的なエラーが発生しました:calib3d:そのようなファイルやディレクトリは – Rahul

+0

ありませんあなたがオンになっているどのOS?どのようなコンパイラを使用しますか? –

+0

のUbuntu 16.04 のLinux 4.4.0-42-ジェネリック、私はPKG-config設定--libs OpenCVの -Lは/ usr/local/libの-lopencv_shape -lopencv_stitching -lopencv_objdetect -lopencv_superres -lopencv_videostab -lopencv_calib3dの日食 – Rahul

1

Windowsユーザーの場合、findFundamentalMat関数を使用するには、calib3d.hppを含める必要があります。

#include "opencv2/calib3d/calib3d.hpp" 
関連する問題