Added StereoSGBM (fixed #77) (#318)

* Added StereoSGBM class

* fixed StereoSGBM build for OpenCV2
This commit is contained in:
matlabbe
2018-10-04 16:10:16 -04:00
committed by GitHub
parent a1079761e7
commit 16309e6d18
13 changed files with 1231 additions and 413 deletions

View File

@@ -184,6 +184,10 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
_ui->odom_strategy->setItemData(8, 0, Qt::UserRole - 1);
#endif
#if CV_MAJOR_VERSION < 3
_ui->stereosgbm_mode->setItemData(2, 0, Qt::UserRole - 1);
#endif
#ifndef RTABMAP_NONFREE
_ui->comboBox_detector_strategy->setItemData(0, 0, Qt::UserRole - 1);
_ui->comboBox_detector_strategy->setItemData(1, 0, Qt::UserRole - 1);
@@ -1161,6 +1165,12 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
_ui->stereo_flow_eps->setObjectName(Parameters::kStereoEps().c_str());
_ui->stereo_opticalFlow->setObjectName(Parameters::kStereoOpticalFlow().c_str());
//StereoDense
_ui->comboBox_stereoDense_strategy->setObjectName(Parameters::kStereoDenseStrategy().c_str());
connect(_ui->comboBox_stereoDense_strategy, SIGNAL(currentIndexChanged(int)), _ui->stackedWidget_stereoDense, SLOT(setCurrentIndex(int)));
_ui->comboBox_stereoDense_strategy->setCurrentIndex(Parameters::defaultStereoDenseStrategy());
_ui->stackedWidget_stereoDense->setCurrentIndex(Parameters::defaultStereoDenseStrategy());
//StereoBM
_ui->stereobm_blockSize->setObjectName(Parameters::kStereoBMBlockSize().c_str());
_ui->stereobm_minDisparity->setObjectName(Parameters::kStereoBMMinDisparity().c_str());
@@ -1171,6 +1181,20 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
_ui->stereobm_speckleWinSize->setObjectName(Parameters::kStereoBMSpeckleWindowSize().c_str());
_ui->stereobm_tetureThreshold->setObjectName(Parameters::kStereoBMTextureThreshold().c_str());
_ui->stereobm_uniquessRatio->setObjectName(Parameters::kStereoBMUniquenessRatio().c_str());
_ui->stereobm_disp12MaxDiff->setObjectName(Parameters::kStereoBMDisp12MaxDiff().c_str());
//StereoSGBM
_ui->stereosgbm_blockSize->setObjectName(Parameters::kStereoSGBMBlockSize().c_str());
_ui->stereosgbm_minDisparity->setObjectName(Parameters::kStereoSGBMMinDisparity().c_str());
_ui->stereosgbm_numDisparities->setObjectName(Parameters::kStereoSGBMNumDisparities().c_str());
_ui->stereosgbm_preFilterCap->setObjectName(Parameters::kStereoSGBMPreFilterCap().c_str());
_ui->stereosgbm_speckleRange->setObjectName(Parameters::kStereoSGBMSpeckleRange().c_str());
_ui->stereosgbm_speckleWinSize->setObjectName(Parameters::kStereoSGBMSpeckleWindowSize().c_str());
_ui->stereosgbm_uniquessRatio->setObjectName(Parameters::kStereoSGBMUniquenessRatio().c_str());
_ui->stereosgbm_disp12MaxDiff->setObjectName(Parameters::kStereoSGBMDisp12MaxDiff().c_str());
_ui->stereosgbm_p1->setObjectName(Parameters::kStereoSGBMP1().c_str());
_ui->stereosgbm_p2->setObjectName(Parameters::kStereoSGBMP2().c_str());
_ui->stereosgbm_mode->setObjectName(Parameters::kStereoSGBMMode().c_str());
// reset default settings for the gui
resetSettings(_ui->groupBox_generalSettingsGui0);

File diff suppressed because it is too large Load Diff