mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-03 10:00:23 +08:00
Decimation parameters for feature detection cannot be negative anymore (always done based to RGB image and depth image is decimated only if it is bigger than decimated rgb image). MainWindow: fixed light blue screen-only on full rehearsal merge.
This commit is contained in:
@@ -1892,12 +1892,23 @@ void MainWindow::processStats(const rtabmap::Statistics & stat)
|
||||
|
||||
bool fastMovement = (bool)uValue(stat.data(), Statistics::kMemoryFast_movement(), 0.0f);
|
||||
|
||||
int rehearsalMerged = (int)uValue(stat.data(), Statistics::kMemoryRehearsal_merged(), 0.0f);
|
||||
|
||||
// update cache
|
||||
Signature signature;
|
||||
if(stat.getLastSignatureData().id() == stat.refImageId())
|
||||
{
|
||||
signature = stat.getLastSignatureData();
|
||||
}
|
||||
else if(rehearsalMerged>0 &&
|
||||
rehearsalMerged == stat.getLastSignatureData().id() &&
|
||||
_cachedSignatures.contains(rehearsalMerged))
|
||||
{
|
||||
signature = _cachedSignatures.value(rehearsalMerged);
|
||||
}
|
||||
|
||||
if(signature.id()!=0)
|
||||
{
|
||||
// make sure data are uncompressed
|
||||
// We don't need to uncompress images if we don't show them
|
||||
bool uncompressImages = !signature.sensorData().imageCompressed().empty() && (
|
||||
@@ -1918,7 +1929,8 @@ void MainWindow::processStats(const rtabmap::Statistics & stat)
|
||||
uncompressScan?&tmpScan:0,
|
||||
0, &tmpG, &tmpO, &tmpE);
|
||||
|
||||
if( uStr2Bool(_preferencesDialog->getParameter(Parameters::kMemIncrementalMemory())) &&
|
||||
if( stat.getLastSignatureData().id() == stat.refImageId() &&
|
||||
uStr2Bool(_preferencesDialog->getParameter(Parameters::kMemIncrementalMemory())) &&
|
||||
signature.getWeight()>=0) // ignore intermediate nodes for the cache
|
||||
{
|
||||
if(smallMovement || fastMovement)
|
||||
@@ -1962,8 +1974,6 @@ void MainWindow::processStats(const rtabmap::Statistics & stat)
|
||||
|
||||
_ui->label_matchId->clear();
|
||||
|
||||
|
||||
int rehearsalMerged = (int)uValue(stat.data(), Statistics::kMemoryRehearsal_merged(), 0.0f);
|
||||
bool rehearsedSimilarity = (float)uValue(stat.data(), Statistics::kMemoryRehearsal_id(), 0.0f) != 0.0f;
|
||||
int proximityTimeDetections = (int)uValue(stat.data(), Statistics::kProximityTime_detections(), 0.0f);
|
||||
bool scanMatchingSuccess = (bool)uValue(stat.data(), Statistics::kNeighborLinkRefiningAccepted(), 0.0f);
|
||||
|
||||
Reference in New Issue
Block a user