Skip to content

Commit e800662

Browse files
committed
Fixed build with OpenCV >= 3.4.11
1 parent 33e9abd commit e800662

File tree

6 files changed

+192
-40
lines changed

6 files changed

+192
-40
lines changed

CMakeLists.txt

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -689,16 +689,6 @@ ELSEIF(OpenCV_VERSION VERSION_GREATER "3.4.2")
689689
ENDIF(${matchres} EQUAL -1)
690690
ENDIF()
691691

692-
# check if version status is "-dev" (SIFT compatibility issue between 4.3.0 vs 4.3.0-dev)
693-
FIND_FILE(OpenCV_VERSION_HPP opencv2/core/version.hpp
694-
PATHS ${OpenCV_INCLUDE_DIRS}
695-
NO_DEFAULT_PATH)
696-
FILE(READ ${OpenCV_VERSION_HPP} TMPTXT)
697-
STRING(FIND "${TMPTXT}" "-dev" matchres)
698-
IF(${matchres} EQUAL -1)
699-
SET(OPENCV_DEV "//")
700-
ENDIF(${matchres} EQUAL -1)
701-
702692
IF(NOT G2O_FOUND)
703693
SET(G2O "//")
704694
ELSE()

Version.h.in

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3838
#define RTABMAP_VERSION_COMPARE(major, minor, patch) (major>=@PROJECT_VERSION_MAJOR@ || (major==@PROJECT_VERSION_MAJOR@ && minor>=@PROJECT_VERSION_MINOR@) || (major==@PROJECT_VERSION_MAJOR@ && minor==@PROJECT_VERSION_MINOR@ && patch >=@PROJECT_VERSION_PATCH@))
3939

4040
@NONFREE@#define RTABMAP_NONFREE
41-
@OPENCV_DEV@#define RTABMAP_OPENCV_DEV
4241
@TORO@#define RTABMAP_TORO
4342
@G2O@#define RTABMAP_G2O
4443
@G2O_CPP_CONF@#define RTABMAP_G2O_CPP11

corelib/include/rtabmap/core/Features2d.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ namespace cv{
6262
namespace xfeatures2d {
6363
class FREAK;
6464
class BriefDescriptorExtractor;
65-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
65+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
6666
class SIFT;
6767
#endif
6868
class SURF;
@@ -73,10 +73,10 @@ class ORB;
7373
class SURF_CUDA;
7474
}
7575
}
76-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
76+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
7777
typedef cv::xfeatures2d::SIFT CV_SIFT;
7878
#else
79-
typedef cv::SIFT CV_SIFT; // SIFT is back in features2d since 4.3.0-dev
79+
typedef cv::SIFT CV_SIFT; // SIFT is back in features2d since 4.4.0 / 3.4.11
8080
#endif
8181
typedef cv::xfeatures2d::SURF CV_SURF;
8282
typedef cv::FastFeatureDetector CV_FAST;

corelib/src/Features2d.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ Feature2D * Feature2D::create(const ParametersMap & parameters)
509509
Feature2D * Feature2D::create(Feature2D::Type type, const ParametersMap & parameters)
510510
{
511511

512-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
512+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
513513
#ifndef RTABMAP_NONFREE
514514
if(type == Feature2D::kFeatureSurf || type == Feature2D::kFeatureSift)
515515
{
@@ -532,7 +532,7 @@ Feature2D * Feature2D::create(Feature2D::Type type, const ParametersMap & parame
532532
#endif
533533
#endif
534534

535-
#else // >= 4.3.0-dev
535+
#else // >= 4.4.0 >= 3.4.11
536536

537537
#ifndef RTABMAP_NONFREE
538538
if(type == Feature2D::kFeatureSurf)
@@ -542,7 +542,7 @@ Feature2D * Feature2D::create(Feature2D::Type type, const ParametersMap & parame
542542
}
543543
#endif
544544

545-
#endif // 4.3.0-dev
545+
#endif // >= 4.4.0 >= 3.4.11
546546

547547
#if CV_MAJOR_VERSION < 3
548548
if(type == Feature2D::kFeatureKaze)
@@ -963,7 +963,7 @@ void SIFT::parseParameters(const ParametersMap & parameters)
963963
Parameters::parse(parameters, Parameters::kSIFTSigma(), sigma_);
964964
Parameters::parse(parameters, Parameters::kSIFTRootSIFT(), rootSIFT_);
965965

966-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
966+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
967967
#ifdef RTABMAP_NONFREE
968968
#if CV_MAJOR_VERSION < 3
969969
_sift = cv::Ptr<CV_SIFT>(new CV_SIFT(this->getMaxFeatures(), nOctaveLayers_, contrastThreshold_, edgeThreshold_, sigma_));

guilib/src/PreferencesDialog.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
198198
#endif
199199

200200
// SIFT
201-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
201+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
202202
#ifndef RTABMAP_NONFREE
203203
_ui->comboBox_detector_strategy->setItemData(1, 0, Qt::UserRole - 1);
204204
_ui->vis_feature_detector->setItemData(1, 0, Qt::UserRole - 1);
@@ -2957,7 +2957,7 @@ void PreferencesDialog::writeCoreSettings(const QString & filePath) const
29572957

29582958
bool PreferencesDialog::validateForm()
29592959
{
2960-
#if CV_MAJOR_VERSION < 4 || (CV_MAJOR_VERSION == 4 && (CV_MINOR_VERSION < 3 || (CV_MINOR_VERSION==3 && !defined(RTABMAP_OPENCV_DEV))))
2960+
#if CV_MAJOR_VERSION < 3 || (CV_MAJOR_VERSION == 4 && CV_MINOR_VERSION <= 3) || (CV_MAJOR_VERSION == 3 && (CV_MINOR_VERSION < 4 || (CV_MINOR_VERSION==4 && CV_SUBMINOR_VERSION<11)))
29612961
#ifndef RTABMAP_NONFREE
29622962
// verify that SURF/SIFT cannot be selected if not built with OpenCV nonfree module
29632963
// BOW dictionary type
@@ -2978,7 +2978,7 @@ bool PreferencesDialog::validateForm()
29782978
_ui->vis_feature_detector->setCurrentIndex(Feature2D::kFeatureFastBrief);
29792979
}
29802980
#endif
2981-
#else //>= 4.3.0-dev
2981+
#else //>= 4.4.0 >= 3.4.11
29822982
#ifndef RTABMAP_NONFREE
29832983
// verify that SURF cannot be selected if not built with OpenCV nonfree module
29842984
// BOW dictionary type

0 commit comments

Comments
 (0)