add XVSDK VIO

This commit is contained in:
Borong Yuan
2024-06-03 10:28:45 +08:00
parent fc9dcd6b3d
commit a327c9530c
4 changed files with 79 additions and 26 deletions

View File

@@ -425,6 +425,7 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
if (!CameraSeerSense::available())
{
_ui->comboBox_cameraRGBD->setItemData(kSrcSeerSense - kSrcRGBD, 0, Qt::UserRole - 1);
_ui->comboBox_odom_sensor->setItemData(3, 0, Qt::UserRole - 1);
}
_ui->openni2_exposure->setEnabled(CameraOpenNI2::exposureGainAvailable());
_ui->openni2_gain->setEnabled(CameraOpenNI2::exposureGainAvailable());
@@ -6240,6 +6241,11 @@ PreferencesDialog::Src PreferencesDialog::getOdomSourceDriver() const
//Zed SDK
return kSrcStereoZed;
}
else if(_ui->comboBox_odom_sensor->currentIndex() == 3)
{
//XVisio SDK
return kSrcSeerSense;
}
else if(_ui->comboBox_odom_sensor->currentIndex() != 0)
{
UERROR("Not implemented!");
@@ -6408,7 +6414,7 @@ Camera * PreferencesDialog::createCamera(
bool odomOnly,
bool odomSensorExtrinsicsCalib)
{
if(odomOnly && !(driver == kSrcStereoRealSense2 || driver == kSrcStereoZed))
if(odomOnly && !(driver == kSrcStereoRealSense2 || driver == kSrcStereoZed || driver == kSrcSeerSense))
{
QMessageBox::warning(this, tr("Odometry Sensor"),
tr("Driver %1 cannot support odometry only mode.").arg(driver), QMessageBox::Ok);
@@ -6807,9 +6813,13 @@ Camera * PreferencesDialog::createCamera(
{
UDEBUG("SeerSense");
camera = new CameraSeerSense(
getOdomSourceDriver() == kSrcSeerSense,
this->getGeneralInputRate(),
this->getSourceLocalTransform());
((CameraSeerSense*)camera)->setIMU(true, _ui->checkbox_publishInterIMU->isChecked());
camera->setInterIMUPublishing(
_ui->checkbox_publishInterIMU->isChecked(),
_ui->checkbox_publishInterIMU->isChecked() && getIMUFilteringStrategy()>0?
IMUFilter::create((IMUFilter::Type)(getIMUFilteringStrategy()-1), this->getAllParameters()):0);
}
else if(driver == kSrcUsbDevice)
{

View File

@@ -8144,6 +8144,11 @@ when using the file type, logs are saved in LogRtabmap.txt (located in the worki
<string>ZED sdk</string>
</property>
</item>
<item>
<property name="text">
<string>SeerSense</string>
</property>
</item>
</widget>
</item>
<item row="0" column="1">
@@ -8741,7 +8746,7 @@ when using the file type, logs are saved in LogRtabmap.txt (located in the worki
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="page_99">
<widget class="QWidget" name="page_98">
<layout class="QVBoxLayout" name="verticalLayout_177">
<item>
<spacer name="verticalSpacer_83">
@@ -11892,7 +11897,7 @@ see Sqlite3 doc 'PRAGMA synchronous'.</string>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="label_755">
<widget class="QLabel" name="label_757">
<property name="text">
<string>Likelihood ratio for VP.</string>
</property>