Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #ifndef CvFundamentalMat_H
00009 #define CvFundamentalMat_H
00010
00011 #include <vector>
00012 #include <list>
00013
00014 #include "../../Workers/KeyPointExtraction/KeyPointMatch.h"
00015 #include "../../Workers/KeyPointExtraction/KeyPoint.h"
00016
00017
00018
00019 #include <opencv/cv.h>
00020
00026 class CvFundamentalMat
00027 {
00028 public:
00029
00031 CvFundamentalMat( std::vector< KeyPoint >* keyPoints1, std::vector< KeyPoint >* keyPoints2, std::list< KeyPointMatch >& matches );
00032
00034 ~CvFundamentalMat();
00035
00036 bool computeFundamentalMat();
00037
00039 std::list< KeyPointMatch > getMatches() { return m_Matches; }
00040
00041 void eliminateBadMatches();
00042
00043 private:
00044
00045 std::vector< KeyPoint >* m_KeyPoints1;
00046 std::vector< KeyPoint >* m_KeyPoints2;
00047
00048 std::list< KeyPointMatch > m_Matches;
00049
00050 int m_Success;
00051
00052 int m_MaxReprojectionError;
00053
00054 CvMat m_FundMatCv;
00055
00056 CvMat m_Points1CvMat;
00057 CvMat m_Points2CvMat;
00058 };
00059
00060 #endif