This PR separates the loading cost matrix as a separate class.
This allows running online_localizer in an "offline fashion". Basically, having only a cost matrix, the code now can run a search with the default relocalizer without requiring features files to be present. This, however, practically disables the "relocalization" so the search "can't jump" to a new location. The default relocalizer mimics the same expansion pattern as online search since it has no additional information about the features.
This PR also update the CostMatrixDatabase. It is not an OnlineDatabase anymore but directly inherits from iDatabase interface.
The OnlineDatabase now has a cost matrix is an optional parameter for faster search if you have by any chance already precomputed your cost matrix.
This PR separates the loading cost matrix as a separate class. This allows running online_localizer in an "offline fashion". Basically, having only a cost matrix, the code now can run a search with the default relocalizer without requiring features files to be present. This, however, practically disables the "relocalization" so the search "can't jump" to a new location. The
default relocalizer
mimics the same expansion pattern as online search since it has no additional information about the features.This PR also update the
CostMatrixDatabase
. It is not an OnlineDatabase anymore but directly inherits from iDatabase interface.The
OnlineDatabase
now has a cost matrix is an optional parameter for faster search if you have by any chance already precomputed your cost matrix.