Laboratoire minimal et reproductible pour exporter le modele RIFE v4.26 fourni vers ONNX, le valider, puis mesurer sa compatibilite avec ONNX Runtime CPU et DirectML.
- Dossier source fourni :
E:\AI\RIFEv4.26_0921_ONNX - Artefacts copies :
models/source/flownet.pkletmodels/source/IFNet_HDv3.original.py - Note : le dossier fourni contient
refine.pyet nonrife.py. Le wrapper d'origineRIFE_HDv3.pyreference aussi des modules d'entrainement absents. Ce labo reconstruit donc un wrapper d'inference autonome et limite aux composants utiles a l'export. - Note technique : le wrapper Python du labo peut padder en multiple de
64avant inference puis recadrer la sortie. En revanche, l'export ONNX livre le coeur d'inference sans auto-padding interne pour conserver un graphe propre. Les entrees ONNX doivent donc respecterHetWmultiples de64, ou etre paddees en amont.
scripts/: scripts Python courts et lisiblesmodels/source/: checkpoint source et copie du fichier officiel utilemodels/onnx/: exports ONNXtests/: images et sorties de validationreports/: rapports et verdict
Commandes PowerShell exactes :
Set-Location E:\AI\RIFE_ONNX_Lab
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r .\requirements.txtSi vous voulez forcer PyTorch CPU seulement :
pip uninstall -y torch torchvision torchaudio
pip install torch --index-url https://download.pytorch.org/whl/cpuInspection :
python .\scripts\inspect_model.pyExport ONNX :
python .\scripts\export_onnx.pyValidation PyTorch vs ONNX :
python .\scripts\validate_onnx.pyBenchmark CPU + DirectML :
python .\scripts\benchmark_onnx.pyTout relancer dans l'ordre :
python .\scripts\inspect_model.py
python .\scripts\export_onnx.py
python .\scripts\validate_onnx.py
python .\scripts\benchmark_onnx.py- ONNX exporte :
models/onnx/rife_v426_x2.onnx - Image de validation :
tests/interpolated_test.png - Rapports :
reports/*.md,reports/*.json
Ce projet n'integre rien a FrameShift pour l'instant. Il sert uniquement a repondre a cette question :
"Le checkpoint RIFE v4.26 fourni est-il exploitable proprement dans une future integration C#/.NET 8 avec ONNX Runtime DirectML ?"