Subversion Repositories seema-scanner

Rev

Rev 78 | Rev 225 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
27 jakw 1
#ifndef SMCalibrationWorker_H
2
#define SMCalibrationWorker_H
22 jakw 3
 
25 jakw 4
#include <QObject>
22 jakw 5
 
25 jakw 6
#include "SMTypes.h"
22 jakw 7
 
207 flgw 8
// fwd decl
9
class SMCalibrationParameters;
10
 
22 jakw 11
namespace Ui {
27 jakw 12
    class SMCalibrationWorker;
22 jakw 13
}
14
 
27 jakw 15
class SMCalibrationWorker : public QObject{
22 jakw 16
    Q_OBJECT
17
 
18
    public:
78 jakw 19
        SMCalibrationWorker(){}
27 jakw 20
        ~SMCalibrationWorker(){}
207 flgw 21
        void performStageCalibration(
22
                const std::vector< std::vector<cv::Point2f> > &qc0Stereo,
23
                const std::vector< std::vector<cv::Point2f> > &qc1Stereo,
24
        SMCalibrationParameters& cal);
25
 
26
 
27
public slots:
28
        void performCameraCalibration(std::vector< SMCalibrationSet > calibrationData);
22 jakw 29
    private slots:
25 jakw 30
    signals:
29 jakw 31
        void newFrameResult(int idx, int camID, bool success, cv::Mat frameResult);
27 jakw 32
        void newSetProcessed(int idx);
25 jakw 33
        void done();
22 jakw 34
 
25 jakw 35
    private:
207 flgw 36
        void perViewReprojError(const std::vector<bool> &success0,
37
                               const std::vector< std::vector<cv::Point3f> > &Q0,
38
                               const std::vector<cv::Mat> &cam_tvecs0,
39
                               const std::vector<cv::Mat> &cam_rvecs0,
40
                               const std::vector< std::vector<cv::Point2f> > &qc0,
41
                                const cv::Matx33f &K0,
42
                                const cv::Vec<float, 5> &k0,
43
                               std::vector<float> &camX_errors_per_view);
44
        std::vector<cv::Point3f> generateObjCoordsInWorldCS(const cv::Size checkerCount, const float checkerSize);
22 jakw 45
};
46
 
27 jakw 47
#endif // SMCalibrationWorker_H