Autocalib.h
1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <iostream>
#include <vector>
#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/objdetect/objdetect.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include "optimization.h"
#include "FundMatFitting.hpp"
using namespace std;
class Autocalib
{
public:
vector<vector<cv::Point2d> > findFeaturePoint(vector<cv::Mat> img,double qualityLevel ); // paired measurement matrix
vector<vector<cv::Point2d> > getMeasureVector(vector<vector<cv::Point2d> > MatchVector); // dense measurement matrix i.e. without zeros
vector<vector<cv::Point2d> > searchAllMatch(vector<vector<cv::Point2d> > Vector); // remove zeros
cv::Mat vectorPoint2Mat(vector<vector<cv::Point2d> > Vector);
vector<cv::Mat> estimatFundMatVector(vector<vector<cv::Point2d> > MeasureVector);
cv::Mat plotStereoWithEpilines(cv::Mat img1,cv::Mat img2,cv::Mat F,vector<cv::Point2d> pts1,vector<cv::Point2d> pts2);
void showEpipolarLines(vector<cv::Mat> image, vector<vector<cv::Point2d> > measureVector, vector<cv::Mat> fundMatrix);
//void showRectificaEpipolarLines(vector<Mat> image, vector<vector<Point2d> > MeasureMatrix, vector<Mat> fundMatrix);
vector <cv::Mat> estimatParameter(cv::Mat measureMatrix);
private:
cv::Mat _W;
};