Hi,
Option 1:
In DatabaseViewer, it is possible to remove links from the graph to cut out some part of the map. In Graph View, mouse over the links you want to remove, then in Constraints View, browse to that link and click on Reject. Note that the data is still kept in the database, but won't be assembled in the global map.
Option 2:
With sqlitebrowser or directly by command line, to remove a node completely from the database, we should be careful to remove all its links and to clear optimized poses to force rtabmap re-optimize with the new graph afterwards. Assuming we want to remove nodes 10 to 24:
# remove links
sqlite3 rtabmap.db "Delete from Link where (from_id>=10 and from_id<=24) or (to_id>=10 and to_id<=24)"
# remove nodes
sqlite3 rtabmap.db "Delete from Node where id>=10 and id<=24"
# remove data
sqlite3 rtabmap.db "Delete from Data where id>=10 and id<=24"
sqlite3 rtabmap.db "Delete from Feature where node_id>=10 and node_id<=24"
# the following one may not exist with older databases, can be skipped also if global descriptors are not used
sqlite3 rtabmap.db "Delete from GlobalDescriptor where id>=10 and id<=24"
# clear optimzed graph to force rtabmap to re-create it the next time
sqlite3 rtabmap.db "Update Admin set opt_ids = null, opt_poses = null"
# remove any statistics saved with the nodes removed (optional, but may be required if the last node is removed to avoid issues with duplicate ids)
sqlite3 rtabmap.db "Delete from Statistics where id>=10 and id<=24"
cheers,
Mathieu