mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-02 09:30:25 +08:00
Gui: fixed warning scan not found when uncompressing data. Don't disable Mem/UseOdomFeatures checkbox anymore in monitoring mode (ROS).
This commit is contained in:
@@ -97,6 +97,7 @@ public:
|
|||||||
float angleIncrement() const {return angleIncrement_;}
|
float angleIncrement() const {return angleIncrement_;}
|
||||||
Transform localTransform() const {return localTransform_;}
|
Transform localTransform() const {return localTransform_;}
|
||||||
|
|
||||||
|
bool empty() const {return data_.empty();}
|
||||||
bool isEmpty() const {return data_.empty();}
|
bool isEmpty() const {return data_.empty();}
|
||||||
int size() const {return data_.cols;}
|
int size() const {return data_.cols;}
|
||||||
int dataType() const {return data_.type();}
|
int dataType() const {return data_.type();}
|
||||||
|
|||||||
@@ -4253,6 +4253,8 @@ Signature * Memory::createSignature(const SensorData & inputData, const Transfor
|
|||||||
int preDecimation = 1;
|
int preDecimation = 1;
|
||||||
std::vector<cv::Point3f> keypoints3D;
|
std::vector<cv::Point3f> keypoints3D;
|
||||||
SensorData decimatedData;
|
SensorData decimatedData;
|
||||||
|
UDEBUG("Received kpts=%d kpts3D=%d, descriptors=%d _useOdometryFeatures=%s",
|
||||||
|
(int)data.keypoints().size(), (int)data.keypoints3D().size(), data.descriptors().rows, _useOdometryFeatures?"true":"false");
|
||||||
if(!_useOdometryFeatures ||
|
if(!_useOdometryFeatures ||
|
||||||
data.keypoints().empty() ||
|
data.keypoints().empty() ||
|
||||||
(int)data.keypoints().size() != data.descriptors().rows ||
|
(int)data.keypoints().size() != data.descriptors().rows ||
|
||||||
|
|||||||
@@ -2603,7 +2603,7 @@ bool ExportCloudsDialog::getExportedClouds(
|
|||||||
|
|
||||||
// texture mesh
|
// texture mesh
|
||||||
UDEBUG("texture mapping=%d", _ui->checkBox_textureMapping->isEnabled() && _ui->checkBox_textureMapping->isChecked()?1:0);
|
UDEBUG("texture mapping=%d", _ui->checkBox_textureMapping->isEnabled() && _ui->checkBox_textureMapping->isChecked()?1:0);
|
||||||
if(!has2dScans && _ui->checkBox_textureMapping->isEnabled() && _ui->checkBox_textureMapping->isChecked())
|
if(!has2dScans && !meshes.empty() && _ui->checkBox_textureMapping->isEnabled() && _ui->checkBox_textureMapping->isChecked())
|
||||||
{
|
{
|
||||||
_progressDialog->appendText(tr("Texturing..."));
|
_progressDialog->appendText(tr("Texturing..."));
|
||||||
QApplication::processEvents();
|
QApplication::processEvents();
|
||||||
|
|||||||
@@ -1704,16 +1704,16 @@ void MainWindow::processStats(const rtabmap::Statistics & stat)
|
|||||||
|
|
||||||
// make sure data are uncompressed
|
// make sure data are uncompressed
|
||||||
// We don't need to uncompress images if we don't show them
|
// We don't need to uncompress images if we don't show them
|
||||||
bool uncompressImages =
|
bool uncompressImages = !signature.sensorData().imageCompressed().empty() && (
|
||||||
_ui->imageView_source->isVisible() ||
|
_ui->imageView_source->isVisible() ||
|
||||||
(_loopClosureViewer->isVisible() &&
|
(_loopClosureViewer->isVisible() &&
|
||||||
!signature.sensorData().depthOrRightCompressed().empty()) ||
|
!signature.sensorData().depthOrRightCompressed().empty()) ||
|
||||||
(_cloudViewer->isVisible() &&
|
(_cloudViewer->isVisible() &&
|
||||||
_preferencesDialog->isCloudsShown(0) &&
|
_preferencesDialog->isCloudsShown(0) &&
|
||||||
!signature.sensorData().depthOrRightCompressed().empty());
|
!signature.sensorData().depthOrRightCompressed().empty()));
|
||||||
bool uncompressScan =
|
bool uncompressScan = !signature.sensorData().laserScanCompressed().isEmpty() && (
|
||||||
_loopClosureViewer->isVisible() ||
|
_loopClosureViewer->isVisible() ||
|
||||||
(_cloudViewer->isVisible() && _preferencesDialog->isScansShown(0));
|
(_cloudViewer->isVisible() && _preferencesDialog->isScansShown(0)));
|
||||||
cv::Mat tmpRgb, tmpDepth, tmpG, tmpO, tmpE;
|
cv::Mat tmpRgb, tmpDepth, tmpG, tmpO, tmpE;
|
||||||
LaserScan tmpScan;
|
LaserScan tmpScan;
|
||||||
signature.sensorData().uncompressData(
|
signature.sensorData().uncompressData(
|
||||||
|
|||||||
@@ -3291,9 +3291,6 @@ void PreferencesDialog::showEvent ( QShowEvent * event )
|
|||||||
_ui->groupBox_source0->setEnabled(false);
|
_ui->groupBox_source0->setEnabled(false);
|
||||||
_ui->groupBox_odometry1->setEnabled(false);
|
_ui->groupBox_odometry1->setEnabled(false);
|
||||||
|
|
||||||
_ui->checkBox_useOdomFeatures->setChecked(false);
|
|
||||||
_ui->checkBox_useOdomFeatures->setEnabled(false);
|
|
||||||
|
|
||||||
this->setWindowTitle(tr("Preferences [Monitoring mode]"));
|
this->setWindowTitle(tr("Preferences [Monitoring mode]"));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -3305,8 +3302,6 @@ void PreferencesDialog::showEvent ( QShowEvent * event )
|
|||||||
_ui->groupBox_source0->setEnabled(true);
|
_ui->groupBox_source0->setEnabled(true);
|
||||||
_ui->groupBox_odometry1->setEnabled(true);
|
_ui->groupBox_odometry1->setEnabled(true);
|
||||||
|
|
||||||
_ui->checkBox_useOdomFeatures->setEnabled(true);
|
|
||||||
|
|
||||||
this->setWindowTitle(tr("Preferences"));
|
this->setWindowTitle(tr("Preferences"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user