Skip to content

Draft: Save long term keyframes

Bruno Zanotti requested to merge brunozanotti/basalt:serialize-ltkfs into main

Remaining items (all marked in code as TODO@mateosss)

  • Improve dyncast msg
  • Pointer output queues in optical flow
  • Load map button
  • Remove keyframeposes on marg
  • Decide next_lmid
  • Decide next_kfid
  • Decide frame_count
  • Decide whether to keep debug matrices of before and after addZeroKeyframeToMargData
  • Use binary instead of json? ubjson maybe?
  • Generalize last bit of types:
    • load: add to LandmarkDatabaseBase: numLandmarks, getKeyframeIds, getLandmarkIds, assignNewIds
    • load: add to PatchesContainerBase: assignNewIds
    • save: getLongTermKeyframesSubMap to return a LandmarkDatabaseBase::Ptr? careful with refcounting
    • save: add to LandmarkDatabaseBase.getLongTermKeyframesSubMap to return a LandmarkDatabaseBase::Ptr? careful with refcounting
    • save: add to LandmarkDatabaseBase: numObservations, numKeyframePoses, numLandmarks
    • save: add to PatchesContainerBase: numPatches
  • Recover pattern case 24, 52, 50
  • Build with double
  • Fix if (!keyframed && !marginalized && !present) BASALT_ASSERT(false)
  • Decide miscelaneous things about behaviour of addMap, assignNewIds, do we want them generic or specific to save-loading?
  • is it ok to leave lm.backup fields at zero? or do they have important info
  • why linearized==true in PoseStateWithLin
  • Try with fixation
  • Debug why it bounces off

EDIT: I tidied the UI with subpanels:

subpanels

Edited by Mateo de Mayo

Merge request reports