ForVis: An In-Field Dataset and Benchmark for VIO Using Under-Canopy UAV Flights in Forests
Organizations: Department of Electrical and Computer Engineering, University of Maine, Orono, ME 04469, USA · School of Forest Resources, University of Maine, Orono, ME 04469, USA
Abstract
Visual-inertial Simultaneous Localization and Mapping (VI-SLAM) for UAVs remains difficult to evaluate in real forest environments, where motion, illumination changes, repetitive vegetation, and vibration can all affect estimation. We present ForVis, an in-field dataset and benchmark for evaluating VI-SLAM during UAV flight in forest environments. The dataset contains twelve flights across open meadow, above-canopy, and under-canopy conditions in each environment. In total, it provides 563.8s of flight over 1096.8m of trajectory, recorded simultaneously with an Intel RealSense D435i and an OAK-D Pro Wide together with inertial and flight-controller data. We benchmark seven open-source VI-SLAM systems over 504 runs. The results show that sensor choice has a larger effect on trajectory error than the spread between algorithms: all seven methods achieve lower median error on the OAK-D Pro than on the D435i. ForVis is intended to support evaluation of speed, accuracy and robustness for VI-SLAM in challenging forest flight.
Figures & tables
| Sequence | Roll/Pitch | Yaw | Duration | Path | Alt. range | p99 | Images | Frames | Size | Closure | Ground truth | |
| [ ∘ ] | [ ∘ ] | [s] | [m] | [m] | [m/s] | [ ∘ /s] | [%] | [GB] | [m] | |||
| mdw_1 | 31/32 | 151 | 39.7 | 74.0 | 7.0 | 4.72 | 93 | 7 281 | 94.4 | 1.8 | 0.05 | RTK fixed, 2.0 cm |
| mdw_2 | 52/37 | 140 | 34.7 | 70.4 | 13.8 | 7.99 | 81 | 6 159 | 87.3 | 1.5 | 0.10 | RTK fixed, 2.0 cm |
| mdw_3 | 69/70 | 427 | 39.1 | 66.6 | 5.6 | 5.49 | 158 | 7 086 | 91.8 | 1.8 | 0.10 | RTK fixed, 2.0 cm |
| abv_1 | 35/41 | 386 | 54.5 | 93.8 | 10.8 | 4.69 | 117 | 9 837 | 91.8 | 2.0 | 0.02 | RTK fixed, 2.0 cm |
| abv_2 | 54/57 | 464 | 52.6 | 108.4 | 14.1 | 8.64 | 98 | 9 585 | 93.6 | 2.1 | 0.05 | RTK fixed, 2.0 cm |
| Meadow | Above canopy | Under canopy | |||||||||
| Method | ATE (m) | Path error | ATE (m) | Path error | ATE (m) | Path error | Avg. runtime (s) | RTF wall / data | CPU mean (%) | Peak mem. (MB) | Seqs completed |
| OAK-D Pro W | |||||||||||
| orb_slam3 | 0.58 | 0.77% | 3.72 2 | 2.33% 2 | 1.75 | 2.25 % | 65.0 | 1.45 | 238 | 774 | 11/12 |
| okvis2_x | 0.28 | 0.38 % | 1.24 | 0.99% | 1.82 | 2.06% | 65.7 | 1.43 | 234 | 1016 | 12/12 |
| basalt | 1.71 | 1.63% | 1.03 | 0.82 % | 1.96 | 2.12% | 32.0 | 0.70 | 725 | 241 | 12/12 |
| stella_vslam | 1.10 | 1.52% | 2.54 | 2.10% | 1.88 | 2.15% | 178.5 | 3.89 | 174 | 811 | 12/12 |
| Sensor | Runs | Usable | Process fail | No ATE | Scale div. | Excursion | Failed |
|---|---|---|---|---|---|---|---|
| OAK-D Pro W | 252 | 244 | 3 | 1 | 3 | 1 | 3% |
| RealSense D435i | 252 | 228 | 0 | 0 | 18 | 6 | 10% |
| Total | 504 | 472 | 3 | 1 | 21 | 7 | 6.3% |
| Specification | RealSense D435i | OAK-D Pro Wide |
|---|---|---|
| Stereo IR Resolution | ||
| Stereo IR Rate | 30 Hz | 40 Hz |
| RGB Resolution | ||
| RGB Rate | 30 Hz | 20 Hz |
| Gyroscope Rate | 200 Hz | 400 Hz |
| Accelerometer Rate | 100 Hz | 400 Hz |
Appendix figures & tables4 assets
Supplementary material from the paper’s appendix.
Appendix
| Meadow | Above canopy | Under canopy | ||||||||||
| Method | 1 | 2 | 3 | 1 | 2 | 3 | 1 | 2 | 3 | 4 | 5 | 6 |
| OAK-D Pro W | ||||||||||||
| orb_slam3 | 0.58 | 0.66 | 0.27 | — | 1.69 2 | 5.74 | 1.77 | 2.05 | 2.50 | 1.18 | 1.73 | 1.11 |
| okvis2_x | 0.43 | 0.25 | 0.28 | 0.76 | 1.24 | 6.29 | 1.66 | 2.31 | 2.48 | 1.36 | 1.93 | 1.70 |
| basalt | 1.80 | 0.25 | 1.71 | 0.43 | 1.03 | 3.55 | 1.71 | 2.38 | 2.32 | 1.47 | 2.21 | 1.67 |
| stella_vslam | 0.64 | 1.45 | 1.10 | 1.94 | 2.54 | 14.31 | 1.74 | 2.23 | 2.50 | 1.33 | 2.01 | 1.76 |
| Method | Runs | Usable | Process | No ATE | Scale | Excursion | Failed |
|---|---|---|---|---|---|---|---|
| ORB-SLAM3 | 72 | 68 | 3 | 1 | 0 | 0 | 6% |
| OKVIS2-X | 72 | 72 | 0 | 0 | 0 | 0 | 0% |
| Basalt | 72 | 72 | 0 | 0 | 0 | 0 | 0% |
| Stella-VSLAM | 72 | 67 | 0 | 0 | 5 | 0 | 7% |
| SVO Pro | 72 | 63 | 0 | 0 | 2 | 7 | 12% |
| OpenVINS | 72 | 66 | 0 | 0 | 6 | 0 | 8% |
| Environment | Runs | Usable | Process | No ATE | Scale | Excursion | Failed |
|---|---|---|---|---|---|---|---|
| Open meadow | 126 | 121 | 0 | 0 | 3 | 2 | 4% |
| Above canopy | 126 | 101 | 3 | 1 | 18 | 3 | 20% |
| Under canopy | 252 | 250 | 0 | 0 | 0 | 2 | 1% |
| Sequence | Environment | Runs | Usable | Crash / No ATE | Guard | Failed |
|---|---|---|---|---|---|---|
| mdw_1 | Open meadow | 42 | 39 | 0 | 3 | 7% |
| mdw_2 | Open meadow | 42 | 41 | 0 | 1 | 2% |
| mdw_3 | Open meadow | 42 | 41 | 0 | 1 | 2% |
| abv_1 | Above canopy | 42 | 36 | 3 | 3 | 14% |
| abv_2 | Above canopy | 42 | 35 | 1 | 6 | 17% |
| abv_3 | Above canopy | 42 | 30 | 0 | 12 | 29% |