GPS Deprived Environments: What's the best method for visual odemetry?

Take a look at this:
Experiment with Visual Odometry - ROVIO

You may try to implement monocular VIO on a RPI4 and hopefully get 10 fps that is the minimal speed to get acceptable flight control