How cxjyxxme/deep-online-video-stabilization works
This repository implements deep online video stabilization: it learns multi-grid image warps and applies them to unstable video frames, producing stabilized video and optional visualizations. The main user path is to provide a test list, video inputs, and a trained checkpoint to the deployment script; training is a separate path that builds the stabilization network and optimizes it from frame, flow, and feature-match data. The excerpts show the model’s warp and loss components, but not all deployment graph construction or training-data wiring, so uncertain links are omitted.
Main entry points: deploy_bundle.py Deploy runner · s_net_bundle_nobm.py Stabilization network · train_bundle_nobm.py Training runner · get_data_mini_after.py Sequence reader
Components 17
Video deployment
- Deploy runner
deploy_bundle.py
Model training
- Training runner
train_bundle_nobm.py - Training settings
configs/v2_93.py
Training data
- Sequence reader
get_data_mini_after.py - Basic reader
get_data.py - Feature matches
feature_fetcher.py
Warp model
- Stabilization network
s_net_bundle_nobm.py - ResNet layers
resnet.py - Tensor helpers
tf_utils.py - Grid transformer
spatial_transformer3.py - Spatial interpolation
spatial_transformer.py
Other components
- Video operator
- Test list
- Unstable video
- Model checkpoint
- Stabilized video
- Visual output
Connections 16
- Video operator → Deploy runner: runs
- Test list → Deploy runner: selects videos
- Unstable video → Deploy runner: reads frames
- Model checkpoint → Deploy runner: restores weights
- Deploy runner → Stabilized video: writes video
- Deploy runner → Visual output: writes visuals
- Training settings → Training runner: configures
- Training runner → Stabilization network: builds network
- Training runner → Stabilization network: optimizes losses
- Sequence reader → Training runner: provides batches
- Basic reader → Unstable video: reads records
- Feature matches → Sequence reader: fetches matches
- Stabilization network → Grid transformer: warps frames
- Stabilization network → ResNet layers: uses layers
- Stabilization network → Tensor helpers: uses helpers
- Spatial interpolation → Video operator