mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 01:20:25 +08:00
Added CalibrationDialog in Preferences->source for convenience. The database is also changed to handle new FX, FY, CX and CY intrinsic parameters instead of only depthConstant parameter. Added version of the database in a new table Admin. Updated to version 0.7.0.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1613 f169173b-cf89-36c8-b27e-44dbe73f0c83
This commit is contained in:
@@ -27,11 +27,23 @@ public:
|
||||
CalibrationDialog(QWidget * parent = 0);
|
||||
virtual ~CalibrationDialog();
|
||||
|
||||
bool isCalibrated() const {return calibrated_;}
|
||||
const cv::Mat & cameraMatrix() const {return cameraMatrix_;} // Matrix K
|
||||
const cv::Mat & distCoeffs() const {return distCoeffs_;} // Matrix D
|
||||
float fx() const {return cameraMatrix_.at<double>(0,0);} // K(0)
|
||||
float fy() const {return cameraMatrix_.at<double>(1,1);} // K(4)
|
||||
float cx() const {return cameraMatrix_.at<double>(0,2);} // K(2)
|
||||
float cy() const {return cameraMatrix_.at<double>(1,2);} // K(5)
|
||||
|
||||
public slots:
|
||||
void setBoardWidth(int width);
|
||||
void setBoardHeight(int height);
|
||||
void setSquareSize(double size);
|
||||
|
||||
private slots:
|
||||
void processImage(const cv::Mat & image);
|
||||
void restart();
|
||||
void calibrate();
|
||||
void exit();
|
||||
|
||||
protected:
|
||||
virtual void closeEvent(QCloseEvent* event);
|
||||
|
||||
@@ -189,7 +189,10 @@ private:
|
||||
int id,
|
||||
const cv::Mat & rgb,
|
||||
const cv::Mat & depth,
|
||||
float depthConstant,
|
||||
float fx,
|
||||
float fy,
|
||||
float cx,
|
||||
float cy,
|
||||
const Transform & localTransform,
|
||||
const Transform & pose,
|
||||
float voxelSize,
|
||||
@@ -224,7 +227,10 @@ private:
|
||||
QMap<int, std::vector<unsigned char> > _imagesMap;
|
||||
QMap<int, std::vector<unsigned char> > _depthsMap;
|
||||
QMap<int, std::vector<unsigned char> > _depths2DMap;
|
||||
QMap<int, float> _depthConstantsMap;
|
||||
QMap<int, float> _depthFxsMap;
|
||||
QMap<int, float> _depthFysMap;
|
||||
QMap<int, float> _depthCxsMap;
|
||||
QMap<int, float> _depthCysMap;
|
||||
QMap<int, Transform> _localTransformsMap;
|
||||
std::map<int, Transform> _currentPosesMap;
|
||||
Transform _odometryCorrection;
|
||||
|
||||
@@ -159,7 +159,10 @@ public:
|
||||
Src getSourceRGBD() const; // Openni group
|
||||
QString getSourceOpenniDevice() const; //Openni group
|
||||
Transform getSourceOpenniLocalTransform() const; //Openni group
|
||||
float getSourceOpenniFocalLength() const; // Openni group
|
||||
float getSourceOpenniFx() const; // Openni group
|
||||
float getSourceOpenniFy() const; // Openni group
|
||||
float getSourceOpenniCx() const; // Openni group
|
||||
float getSourceOpenniCy() const; // Openni group
|
||||
|
||||
int getIgnoredDCComponents() const;
|
||||
|
||||
@@ -219,6 +222,7 @@ private slots:
|
||||
void openDatabaseViewer();
|
||||
void cleanOdometryTest();
|
||||
void testOdometry();
|
||||
void calibrate();
|
||||
|
||||
protected:
|
||||
virtual void showEvent ( QShowEvent * event );
|
||||
|
||||
Reference in New Issue
Block a user