Fixed odometry mesh with long edges, Optimizer/Robust is not set false because of some "solution not found" from g2o or gtsam

This commit is contained in:
matlabbe
2016-02-18 15:23:25 -05:00
parent 04d153df59
commit 62c7be9f35
4 changed files with 32 additions and 6 deletions

View File

@@ -832,7 +832,8 @@ void MainWindow::processOdometry(const rtabmap::OdometryEvent & odom)
output,
_preferencesDialog->getCloudMeshingAngle(),
_preferencesDialog->isCloudMeshingQuad(),
_preferencesDialog->getCloudMeshingTriangleSize());
_preferencesDialog->getCloudMeshingTriangleSize(),
Eigen::Vector3f(pose.x(), pose.y(), pose.z()));
if(polygons.size())
{
if(!_ui->widget_cloudViewer->addCloudMesh("cloudOdom", output, polygons, _odometryCorrection))
@@ -3720,6 +3721,23 @@ void MainWindow::postProcessing()
signatureFrom.setWords3(std::multimap<int, cv::Point3f>());
signatureTo.setWords(std::multimap<int, cv::KeyPoint>());
signatureTo.setWords3(std::multimap<int, cv::Point3f>());
if(signatureFrom.sensorData().imageRaw().empty())
{
signatureFrom.sensorData().uncompressData();
if(signatureFrom.sensorData().imageRaw().empty())
{
continue;
}
}
if(signatureTo.sensorData().imageRaw().empty())
{
signatureTo.sensorData().uncompressData();
if(signatureTo.sensorData().imageRaw().empty())
{
continue;
}
}
}
Transform transform;