Fixed build with ZED SDK 1.0.0 (#85)

This commit is contained in:
matlabbe
2016-06-23 15:40:11 -04:00
parent f2d48cb894
commit 70da8d26c0
2 changed files with 98 additions and 25 deletions

View File

@@ -766,9 +766,9 @@ CameraStereoZed::CameraStereoZed(
confidenceThr_(confidenceThr) confidenceThr_(confidenceThr)
{ {
#ifdef RTABMAP_ZED #ifdef RTABMAP_ZED
UASSERT(resolution_ >= sl::zed::HD2K && resolution_ <=sl::zed::VGA); UASSERT(resolution_ >= sl::zed::HD2K && resolution_ <sl::zed::LAST_RESOLUTION);
UASSERT(quality_ >= sl::zed::NONE && quality_ <=sl::zed::QUALITY); UASSERT(quality_ >= sl::zed::NONE && quality_ <sl::zed::LAST_MODE);
UASSERT(sensingMode_ >= sl::zed::FULL && sensingMode_ <=sl::zed::RAW); UASSERT(sensingMode_ >= sl::zed::FILL && sensingMode_ <sl::zed::LAST_SENSING_MODE);
UASSERT(confidenceThr_ >= 0 && confidenceThr_ <=100); UASSERT(confidenceThr_ >= 0 && confidenceThr_ <=100);
#endif #endif
} }
@@ -791,9 +791,9 @@ CameraStereoZed::CameraStereoZed(
confidenceThr_(confidenceThr) confidenceThr_(confidenceThr)
{ {
#ifdef RTABMAP_ZED #ifdef RTABMAP_ZED
UASSERT(resolution_ >= sl::zed::HD2K && resolution_ <=sl::zed::VGA); UASSERT(resolution_ >= sl::zed::HD2K && resolution_ <sl::zed::LAST_RESOLUTION);
UASSERT(quality_ >= sl::zed::NONE && quality_ <=sl::zed::QUALITY); UASSERT(quality_ >= sl::zed::NONE && quality_ <sl::zed::LAST_MODE);
UASSERT(sensingMode_ >= sl::zed::FULL && sensingMode_ <=sl::zed::RAW); UASSERT(sensingMode_ >= sl::zed::FILL && sensingMode_ <sl::zed::LAST_SENSING_MODE);
UASSERT(confidenceThr_ >= 0 && confidenceThr_ <=100); UASSERT(confidenceThr_ >= 0 && confidenceThr_ <=100);
#endif #endif
} }
@@ -835,11 +835,17 @@ bool CameraStereoZed::init(const std::string & calibrationFolder, const std::str
} }
} }
//init WITH self-calibration (- last parameter to false -) //init WITH self-calibration
sl::zed::ERRCODE err = zed_->init( sl::zed::InitParams parameters(
(sl::zed::MODE)quality_, (sl::zed::MODE)quality_, //MODE
-1, // search for any GPU sl::zed::METER, //UNIT
true, false, false); sl::zed::IMAGE, //COORDINATE_SYSTEM
false, // verbose
-1, //device
-1., //minDist
false, //disableSelfCalib
false); //vflip
sl::zed::ERRCODE err = zed_->init(parameters);
// Quit if an error occurred // Quit if an error occurred
if (err != sl::zed::SUCCESS) if (err != sl::zed::SUCCESS)
@@ -860,7 +866,7 @@ bool CameraStereoZed::init(const std::string & calibrationFolder, const std::str
stereoParams->LeftCam.fy, stereoParams->LeftCam.fy,
stereoParams->LeftCam.cx, stereoParams->LeftCam.cx,
stereoParams->LeftCam.cy, stereoParams->LeftCam.cy,
stereoParams->baseline/1000.0f, stereoParams->baseline,
this->getLocalTransform(), this->getLocalTransform(),
cv::Size(res.width, res.height)); cv::Size(res.width, res.height));
@@ -913,7 +919,6 @@ SensorData CameraStereoZed::captureImage()
// get depth image // get depth image
cv::Mat depth; cv::Mat depth;
slMat2cvMat(zed_->retrieveMeasure(sl::zed::MEASURE::DEPTH)).copyTo(depth); slMat2cvMat(zed_->retrieveMeasure(sl::zed::MEASURE::DEPTH)).copyTo(depth);
depth /= 1000.0; // to meters
data = SensorData(left, depth, stereoModel_.left(), this->getNextSeqID(), UTimer::now()); data = SensorData(left, depth, stereoModel_.left(), this->getNextSeqID(), UTimer::now());
} }

View File

@@ -63,16 +63,25 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
<y>-477</y> <y>-265</y>
<width>686</width> <width>685</width>
<height>2023</height> <height>1826</height>
</rect> </rect>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_16"> <layout class="QVBoxLayout" name="verticalLayout_16">
<property name="spacing"> <property name="spacing">
<number>0</number> <number>0</number>
</property> </property>
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -3034,12 +3043,12 @@ when using the file type, logs are saved in LogRtabmap.txt (located in the worki
<widget class="QComboBox" name="comboBox_stereoZed_sensingMode"> <widget class="QComboBox" name="comboBox_stereoZed_sensingMode">
<item> <item>
<property name="text"> <property name="text">
<string>FULL</string> <string>FILL</string>
</property> </property>
</item> </item>
<item> <item>
<property name="text"> <property name="text">
<string>RAW</string> <string>STANDARD</string>
</property> </property>
</item> </item>
</widget> </widget>
@@ -3111,6 +3120,11 @@ when using the file type, logs are saved in LogRtabmap.txt (located in the worki
<string>PERFORMANCE</string> <string>PERFORMANCE</string>
</property> </property>
</item> </item>
<item>
<property name="text">
<string>MEDIUM</string>
</property>
</item>
<item> <item>
<property name="text"> <property name="text">
<string>QUALITY</string> <string>QUALITY</string>
@@ -3628,7 +3642,16 @@ when using the file type, logs are saved in LogRtabmap.txt (located in the worki
<string>Directory of images (optional settings)</string> <string>Directory of images (optional settings)</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout_93"> <layout class="QVBoxLayout" name="verticalLayout_93">
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -8785,7 +8808,16 @@ If set to false, classic RTAB-Map loop closure detection is done using only imag
</property> </property>
<widget class="QWidget" name="page_54"> <widget class="QWidget" name="page_54">
<layout class="QVBoxLayout" name="verticalLayout_85"> <layout class="QVBoxLayout" name="verticalLayout_85">
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -8925,7 +8957,16 @@ Lower the ratio -&gt; higher the precision. 0 means disabled, matching the neare
</widget> </widget>
<widget class="QWidget" name="page_55"> <widget class="QWidget" name="page_55">
<layout class="QVBoxLayout" name="verticalLayout_86"> <layout class="QVBoxLayout" name="verticalLayout_86">
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -9083,7 +9124,16 @@ Lower the ratio -&gt; higher the precision. 0 means disabled, matching the neare
<property name="spacing"> <property name="spacing">
<number>0</number> <number>0</number>
</property> </property>
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -9163,7 +9213,16 @@ Lower the ratio -&gt; higher the precision. 0 means disabled, matching the neare
<property name="spacing"> <property name="spacing">
<number>0</number> <number>0</number>
</property> </property>
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>
@@ -9275,7 +9334,16 @@ Lower the ratio -&gt; higher the precision. 0 means disabled, matching the neare
<property name="spacing"> <property name="spacing">
<number>0</number> <number>0</number>
</property> </property>
<property name="margin"> <property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number> <number>0</number>
</property> </property>
<item> <item>