Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

360-VIO-Toolkit

Tools for processing 360° video with embedded IMU and GPS data into VIO SLAM inputs, visualizing and aligning the resulting trajectory to GPS, and exporting for NeRF or COLMAP.

Preprocessing

Place input .mp4 files in data/videos/, then run from the repo root:

.\.venv\Scripts\activate.ps1
python .\scripts\preprocessing\preprocess_video.py --name <sequence_name> --start <seconds or HH:MM:SS> --duration <seconds> --overwrite

Interim files are written to data/tmp_interim_components/. Final VIO inputs are written to results/<sequence_name>/<sequence_name>/.

See Preprocessing Guide for individual script usage, rotation calibration, and external tool setup.

Requirements

pip install -r requirements.txt

The preprocessing runner also requires ffmpeg, ffprobe, and exiftool on PATH (or passed via --ffmpeg, --ffprobe, --exiftool). Install via conda:

conda install -c conda-forge ffmpeg exiftool

Post-processing

After running the VIO program, copy estimated_trajectory.txt into results/<sequence_name>/, then run:

# Align trajectory to GPS
python .\scripts\postprocessing\align_vio_to_gps.py --sequence <sequence_name>

# Plot overview + animated video
python .\scripts\postprocessing\plot_estimated_trajectory.py --sequence <sequence_name> --no-show --animate

See Postprocessing Guide for GPS alignment options, trajectory visualization, NeRF export, and COLMAP reference image generation.

About

Scripts for preprocessing 360° video for visual-inertial odometry, aligning estimated trajectories to GPS, and visualizing results. Made for use with my extended VIO system: github.com/aaronmillergit/insta360-titan-vio

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages