Subversion Repositories seema-scanner

Rev

Rev 176 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 176 Rev 225
Line 2... Line 2...
2
#define SMCALIBRATIONPARAMETERS_H
2
#define SMCALIBRATIONPARAMETERS_H
3
 
3
 
4
#include <QObject>
4
#include <QObject>
5
#include <QDataStream>
5
#include <QDataStream>
6
#include <QMetaType>
6
#include <QMetaType>
-
 
7
#include <QTextStream>
7
#include <opencv2/opencv.hpp>
8
#include <opencv2/opencv.hpp>
8
 
9
 
9
class SMCalibrationParameters{
10
class SMCalibrationParameters{
10
 
11
 
11
    public:
12
    public:
Line 15... Line 16...
15
                                  K1(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), k1(0.0), cam1_error(0.0),
16
                                  K1(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), k1(0.0), cam1_error(0.0),
16
                                  R1(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), T1(0.0), stereo_error(0.0),
17
                                  R1(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), T1(0.0), stereo_error(0.0),
17
                                  Rr(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), Tr(0.0), rot_axis_error(0.0),
18
                                  Rr(1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0), Tr(0.0), rot_axis_error(0.0),
18
                                  E(0.0), F(0.0){
19
                                  E(0.0), F(0.0){
19
 
20
 
20
//            qRegisterMetaType<SMCalibrationParameters>("SMCalibrationParameters");
-
 
21
//            qRegisterMetaTypeStreamOperators<SMCalibrationParameters>("SMCalibrationParameters");
-
 
22
        }
21
        }
23
 
22
 
24
        ~SMCalibrationParameters(){}
23
        ~SMCalibrationParameters(){}
25
 
24
 
26
        unsigned int frameHeight;
25
        unsigned int frameHeight;
27
        unsigned int frameWidth;
26
        unsigned int frameWidth;
28
 
27
 
29
        cv::Matx33f K0; // intrinsic camera matrix
28
        cv::Matx33f K0; // intrinsic camera matrix
30
        cv::Vec<float, 5> k0; // distortion coefficients
29
        cv::Vec<float, 5> k0; // distortion coefficients
31
        double cam0_error; // overall reprojection error
30
        double cam0_error; // overall reprojection error
32
        std::vector<float> cam0_errors_per_view; // per view reprojection errors
31
        std::vector<double> cam0_errors_per_view; // per view reprojection errors
-
 
32
        std::vector<double> cam0_intrinsic_std;
-
 
33
        std::vector<double> cam0_extrinsic_std;
33
 
34
 
34
        cv::Matx33f K1;
35
        cv::Matx33f K1;
35
        cv::Vec<float, 5> k1;
36
        cv::Vec<float, 5> k1;
36
        double cam1_error;
37
        double cam1_error;
-
 
38
        std::vector<double> cam1_errors_per_view; // per view reprojection errors
-
 
39
        std::vector<double> cam1_intrinsic_std;
-
 
40
        std::vector<double> cam1_extrinsic_std;
37
 
41
 
38
        cv::Matx33f R1; // extrinsic rotation matrix camera 1
42
        cv::Matx33f R1; // extrinsic rotation matrix camera 1
39
        cv::Vec3f   T1; // extrinsic translation vector camera 1
43
        cv::Vec3f   T1; // extrinsic translation vector camera 1
40
        double stereo_error; // stereo calibration reprojection error
44
        double stereo_error; // stereo calibration reprojection error
41
        std::vector<float> cam1_errors_per_view; // per view reprojection errors
-
 
42
 
45
 
43
        cv::Matx33f Rr; // extrinsic rotation rotation stage
46
        cv::Matx33f Rr; // extrinsic rotation rotation stage
44
        cv::Vec3f   Tr; // extrinsic translation vector rotation stage
47
        cv::Vec3f   Tr; // extrinsic translation vector rotation stage
45
        double rot_axis_error; // 3d error of rotation axis fit
48
        double rot_axis_error; // 3d error of rotation axis fit
46
 
49
 
47
        cv::Matx33f E; // essential matrix
50
        cv::Matx33f E; // essential matrix
48
        cv::Matx33f F; // fundamental matrix
51
        cv::Matx33f F; // fundamental matrix
49
 
52
 
50
 
53
 
51
        void print();
54
        void print(std::ostream &stream);
-
 
55
        void printCamera(std::ostream &stream);
-
 
56
        void printRotationStage(std::ostream &stream);
52
        void exportToXML(QString fileName);
57
        void exportToXML(QString fileName);
53
        void importFromXML(QString fileName);
58
        void importFromXML(QString fileName);
54
};
59
};
55
 
60
 
56
QDataStream& operator>>(QDataStream& in, SMCalibrationParameters& data);
61
QDataStream& operator>>(QDataStream& in, SMCalibrationParameters& data);