Blame view

include/Autocalib.h 1.23 KB
b0bb08d1c   tristan   init
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
  #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;
  
  };