Camera class: localTransform parameter should not have optical rotation anymore (it is added afterwards in the constructor). OdomSensor: the extrinsics should not contain optical rotation anymore. These 2 changes make it more convenient to set transfomation parameters in the UI. MainWindow::createCamera() now has odomSensor argument for convenience (for inherited classes to set both camera and odom sensor in the same function).

This commit is contained in:
matlabbe
2021-05-26 13:40:46 -04:00
parent 21dbeed4b7
commit ada3e75005
34 changed files with 96 additions and 80 deletions

View File

@@ -305,7 +305,11 @@ protected:
const QString & newDatabasePathOutput() const { return _newDatabasePathOutput; }
virtual ParametersMap getCustomParameters() {return ParametersMap();}
virtual Camera* createCamera();
virtual Camera * createCamera(
Camera ** odomSensor,
Transform & odomSensorExtrinsics,
double odomSensorTimeOffset,
float odomSensorScaleFactor);
private:
Ui_mainWindow * _ui;

View File

@@ -166,7 +166,6 @@ public:
double getOdomF2MGravitySigma() const;
bool isOdomDisabled() const;
bool isOdomSensorAsGt() const;
double getOdomSensorScaleFactor() const;
bool isGroundTruthAligned() const;
bool isGraphsShown() const;
@@ -280,7 +279,7 @@ public:
QString getIMUPath() const;
int getIMURate() const;
Camera * createCamera(bool useRawImages = false, bool useColor = true); // return camera should be deleted if not null
Camera * createOdomSensor(Transform & extrinsics, double & timeOffset); // return camera should be deleted if not null
Camera * createOdomSensor(Transform & extrinsics, double & timeOffset, float & scaleFactor); // return camera should be deleted if not null
int getIgnoredDCComponents() const;