Example - Interpolated Frames |
---|
Example - Video Inflation (YouTube) |
---|
Demo of 32X Video Inflation with marked original frames |
Example - GIF to MP4 (frame size X4, frame rate X8) | Example - Original GIF |
---|---|
https://user-images.githubusercontent.com/825994/224549158-7df76e49-28ec-4a3c-9b2b-4699729bd84f.mp4 |
🎥 VFIformer-WebUI Features | |
---|---|
➗ Frame Interpolation | Restore Missing Frames, Reveal Hidden Motion |
🔎 Frame Search | Synthesize Between Frames At Precise Times |
🎈 Video Inflation | Create Super Slow-Motion |
💕 Resynthesize Video | Create a Complete Set of Replacement Frames |
🪄 Frame Restoration | Restore Adjacent Missing / Damaged Frames |
🔬 Video Blender | Project-Based Movie Restoration |
📁 File Conversion | Convert between PNG Sequences and Videos |
🔢 Resequence Files | Renumber for Import into Video Editing Software |
🎞️ Change FPS | Convert any FPS to any other FPS |
💎 GIF to MP4 | Convert Animated GIF to MP4 in one click |
📈 Upscale Frames | Use Real-ESRGAN to Enlarge and Clean Frames |
- Get VFIformer working on your local system
- See their repo at https://github.com/dvlab-research/VFIformer
- I run locally with:
- Anaconda 23.1.0
- Python 3.10.9
- Torch 1.13.1
- Cuda 11.7
- NVIDIA RTX 3090
- Windows 11
- Clone this repo in a separate directory and copy all directories/files on top of your working VFIformer installation
- This code makes no changes to their original code (but borrows some) and causes no conflicts with it
- It shouldn't introduce any additional requirements over what VFIformer, Gradio-App and Real-ESRGAN need
- If it's set up properly, the following command should write a new file
images/image1.png
using default settings
python interpolate.py
- Get VFIformer working on your local system
- See their repo at https://github.com/dvlab-research/VFIformer
- I run locally with:
- Anaconda 23.1.0
- Python 3.10.9
- Torch 1.13.1
- Cuda 11.7
- NVIDIA RTX 3090
- Windows 11
- Clone this repo to a directory in which you intend to use the app and/or develop on it
- Copy the following directories from your working VFIformer installation to this directory:
dataloader
models
pretrained_models
utils
- If it's set up properly, the following command should write a new file
images/image1.png
python interpolate.py
The GIF to MP4 feature uses Real-ESRGAN to clean and upscale frames
- Get Real-ESRGAN working on your local system
- See their repo at https://github.com/xinntao/Real-ESRGAN
- Clone their repo to its own directory and follow their instructions for local setup
- Copy the
realesrgan
directory to yourVFIformer-WebUI
directory
- The Real-ESRGAN 4x+ model (65MB) will automatically download on first use
A few features rely on FFmpeg being available on the system path
The application can be started in any of these ways:
webui.bat
python webui.py
- Command line arguments
--config_path path
path to alternate configuration file, defaultconfig.yaml
--verbose
enables verbose output to the console, default False
- Command line arguments
The core feature have command-line equivalents
- add Audio tools
YouTube
- Feb 01 2023 "Fun with AI: De-Ticking a Ticking Clock" https://youtu.be/JhibFQvP7X0
- Jan 28 2023 "Fun with AI: Infinite Slow Motion" https://youtu.be/sKQKuYU-fcQ
- Jan 24 2023 "Fun with AI: Me as a Baby, Restoring 60 year old 8mm film" https://youtu.be/PiLv5u1PYiE
Thanks! to the VFIformer folks for their amazing AI frame interpolation tool
Thans! to the Real-ESRGAN folks for their wonderful frame restoration/upscaling tool
Thanks! to the stable-diffusion-webui folks for their great UI, amazing tool, and for inspiring me to learn Gradio
Thanks to Gradio for their easy-to-use Web UI building tool and great docs
Royalty-Free Videos used for the examples
- "FunfaIr in Barcelona" https://motionarray.com/stock-video/funfair-in-barcelona-1163645/
- "Batter Misses A Pitch" https://motionarray.com/stock-video/batter-misses-a-pitch-1231021/
- "Bursting A Balloon" https://motionarray.com/stock-video/bursting-a-balloon-253645/