Parameters: Added "Reg/VarianceNormalized". Registration: Transforms are now only normalized in Registration. Added rgbd_dataset tool. MainWindow: odom inliers-only shown option. ExportCloudsDialog: ignoring intermediate nodes for texturing (if they don't have data). DatabaseViewer: "optimized" checkbox enabled in Constraints view for non-neighbor links too.

This commit is contained in:
matlabbe
2017-05-22 11:48:01 -04:00
parent 58e6424bf7
commit 385b7e3389
20 changed files with 758 additions and 155 deletions
+14 -6
View File
@@ -216,11 +216,14 @@ int main(int argc, char * argv[])
{
gtPath = uReplaceChar(gtPath, '~', UDirectory::homeDir());
gtPath = uReplaceChar(gtPath, '\\', '/');
printf(" Ground Truth: %s\n", gtPath.c_str());
if(!UFile::exists(gtPath))
{
UERROR("Ground truth file path is not valid: \"%s\"", gtPath.c_str());
return -1;
UWARN("Ground truth file path doesn't exist: \"%s\", benchmark values won't be computed.", gtPath.c_str());
gtPath.clear();
}
else
{
printf(" Ground Truth: %s\n", gtPath.c_str());
}
}
if(disp)
@@ -323,7 +326,7 @@ int main(int argc, char * argv[])
Transform(-0.27f, 0.0f, 0.08, 0.0f, 0.0f, 0.0f));
}
bool intermediateNodes = false;
bool intermediateNodes = Parameters::defaultRtabmapCreateIntermediateNodes();
Parameters::parse(parameters, Parameters::kRtabmapCreateIntermediateNodes(), intermediateNodes);
std::string databasePath = output+"/rtabmap" + seq + ".db";
UFile::erase(databasePath);
@@ -386,7 +389,7 @@ int main(int argc, char * argv[])
}
else
{
covariance = (covariance.inv() + odomInfo.covariance.inv()).inv();
covariance += odomInfo.covariance;
}
timer.restart();
@@ -399,8 +402,13 @@ int main(int argc, char * argv[])
double slamTime = timer.ticks();
++iteration;
printf("Iteration %d/%d: speed=%dkm/h camera=%dms, odom(quality=%d/%d)=%dms, slam=%dms\n",
printf("Iteration %d/%d: speed=%dkm/h camera=%dms, odom(quality=%d/%d)=%dms, slam=%dms",
iteration, totalImages, int(speed), int(cameraInfo.timeTotal*1000.0f), odomInfo.inliers, odomInfo.features, int(odomInfo.timeEstimation*1000.0f), int(slamTime*1000.0f));
if(processData && rtabmap.getLoopClosureId()>0)
{
printf(" *");
}
printf("\n");
cameraInfo = CameraInfo();
timer.restart();