ECCV2022-RIFE

GitHub
5.4k 534 中等 1 次阅读 今天MIT开发框架视频图像
AI 解读 由 AI 自动生成,仅供参考

ECCV2022-RIFE 是一款专为视频帧插值设计的高效开源模型,核心功能是在两帧画面之间智能生成中间帧,从而将普通视频转化为流畅的高帧率慢动作视频。它有效解决了传统插值算法在处理快速运动或复杂场景时容易出现的画面模糊、伪影及卡顿问题,显著提升了视频播放的顺滑度与视觉质感。

该工具技术亮点在于其“实时中间流估计”架构,即使在消费级显卡(如 RTX 2080Ti)上,也能对 720p 分辨率视频实现每秒 30 帧以上的 2 倍插值速度,并支持任意时间步长的灵活插值。此外,项目持续迭代,不仅针对动漫场景进行了专门优化,还探索了其在扩散模型生成视频的后处理应用,展现了极强的适应性。

ECCV2022-RIFE 适合多类用户群体:研究人员可基于其开源代码深入探索视频生成前沿技术;开发者能利用提供的 CLI 接口或集成方案(如 VapourSynth、ncnn-vulkan)构建自定义应用;而普通创作者及视频爱好者则可通过 SVFI、FlowFrames 等第三方图形界面软件,零门槛地体验电影级补帧效果,让老旧低帧率素材焕发新生。

使用场景

一位独立动画创作者需要将一段由 AI 生成的 24 帧/秒短视频转化为流畅的 60 帧/秒高帧率作品,以适配现代显示设备并提升视觉质感。

没有 ECCV2022-RIFE 时

  • 画面卡顿生硬:传统插值算法(如光学流线性估算)在处理大动态场景时,无法准确预测中间帧,导致动作转折处出现明显的顿挫感。
  • 伪影与撕裂严重:在角色快速移动或背景复杂变化时,生成的中间帧容易出现物体边缘撕裂、重影或奇怪的形变,破坏画面完整性。
  • 渲染效率低下:现有高精度方案往往计算量巨大,在普通消费级显卡(如 RTX 2080Ti)上处理 720p 视频难以达到实时速度,大幅延长制作周期。
  • 时间步长受限:大多数工具仅支持固定的倍率插值,无法灵活指定任意时间点生成帧,限制了后期调速的自由度。

使用 ECCV2022-RIFE 后

  • 丝滑流畅体验:利用其实时中间流估计技术,能精准推算任意两帧间的运动轨迹,将 24 帧视频无损升级为 60 帧甚至更高,动作如丝绸般顺滑。
  • 细节完美保留:针对动漫及扩散模型生成视频优化的模型版本,有效消除了快速运动下的伪影和撕裂,确保角色轮廓清晰、背景稳定。
  • 实时高效处理:在主流 GPU 上可实现 30+ FPS 的 2 倍 720p 插值速度,大幅缩短等待时间,让创作者能快速迭代不同参数效果。
  • 灵活任意插值:支持在两帧之间生成任意时间步长的中间帧,不仅可用于升帧,还能轻松实现精细的慢动作特效控制。

ECCV2022-RIFE 通过高精度的实时流估计,以极低的算力成本解决了视频插值中的卡顿与伪影难题,让高质量高帧率视频制作变得触手可及。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 需要 NVIDIA GPU(官方测试基于 2080Ti),支持 CUDA 加速
  • Docker 运行需配置 GPU 驱动
  • 显存需求未明确说明,但高分辨率视频建议降低缩放比例 (--scale)
内存

训练环境推荐 20GB+;推理环境未明确说明最低需求

依赖
notes1. 首次运行前需手动下载预训练模型文件(HD 模型等)并解压至 train_log/ 目录。 2. 项目提供 Docker 支持,可通过 Dockerfile 构建容器运行。 3. macOS 用户可参考特定的 Pull Request (#300) 获取支持。 4. 处理 4K 等高分辨率视频时,建议添加 --scale=0.5 参数以避免显存不足或生成混乱图案。 5. 训练复现需要 16 核 CPU、4 张 GPU 和 20GB 内存的环境。
python3.x (通过 pip3 和 python3 命令推断)
torch
numpy
opencv-python
Pillow
tqdm
ECCV2022-RIFE hero image

快速开始

视频帧插值的实时中间光流估计

YouTube | BiliBili | Colab | 教程 | DeepWiki

简介

本项目实现了视频帧插值的实时中间光流估计。目前,我们的模型在2080Ti GPU上可以以30+FPS的速度进行2倍于720p分辨率的插帧处理。它支持在任意两帧图像之间进行任意时间步长的插帧。

2024年8月 - 我们发现4.22.lite非常适合用于对某些扩散模型生成的视频进行后处理。

2023年11月 - 我们最近发布了针对动漫场景优化的新版本v4.7-4.10! 我们借鉴了SAFA的研究成果。

2022年7月4日 - 我们的论文已被ECCV2022接收。感谢所有相关作者、贡献者和用户!

从2020年到2022年,我们曾五次提交RIFE(分别被CVPR21、ICCV21、AAAI22和CVPR22拒绝)。感谢所有匿名审稿人,你们的建议极大地帮助我们改进了论文!

ECCV海报 | ECCV 5分钟演讲 | 论文中文介绍 | 反驳意见(2WA1WR->3WA)

置顶软件:RIFE-App | FlowFrames | SVFI(中文)

两张输入图像的16倍插帧结果:

演示 演示

软件

Flowframes | SVFI(中文) | Waifu2x-Extension-GUI | Autodesk Flame | SVP | mpv_PlayKit | enhancr

RIFE-App(付费) | Steam-VFI(付费)

我们不对上述软件的开发负责,也不参与其中。根据开源许可协议,我们尊重其他开发者们的商业行为。

VapourSynth-RIFE | RIFE-ncnn-vulkan | VapourSynth-RIFE-ncnn-Vulkan | vs-mlrt

如果你是一名开发者,欢迎关注Practical-RIFE,该项目旨在通过添加各种功能和设计更快速度的新模型,使RIFE对用户更加实用。

你可以查看这个pull request以获得对macOS的支持。

CLI使用

安装

git clone git@github.com:megvii-research/ECCV2022-RIFE.git
cd ECCV2022-RIFE
pip3 install -r requirements.txt

运行

视频帧插值

你可以使用我们的示例视频或你自己的视频。

python3 inference_video.py --exp=1 --video=video.mp4 

(生成video_2X_xxfps.mp4)

python3 inference_video.py --exp=2 --video=video.mp4

(进行4倍插帧)

python3 inference_video.py --exp=1 --video=video.mp4 --scale=0.5

(如果你的视频分辨率非常高,比如4K,我们建议设置--scale=0.5(默认为1.0)。如果生成的视频出现杂乱的图案,可以尝试将--scale设为2.0。该参数控制光流模型的处理分辨率。)

python3 inference_video.py --exp=2 --img=input/

(从png文件读取视频,例如input/0.png ... input/612.png,确保png文件名是数字顺序排列的)

python3 inference_video.py --exp=2 --video=video.mp4 --fps=60

(添加慢动作效果,音频会被移除)

python3 inference_video.py --video=video.mp4 --montage --png

(如果你想将原视频拼接起来并保存为png格式的输出)

扩展应用

你可以参考#278了解光流估计,以及参考#291了解视频拼接

图像插值

python3 inference_img.py --img img0.png img1.png --exp=4

(2^4=16倍插帧结果) 之后,你可以使用png文件生成mp4:

ffmpeg -r 10 -f image2 -i output/img%d.png -s 448x256 -c:v libx264 -pix_fmt yuv420p output/slomo.mp4 -q:v 0 -q:a 0

你也可以用png文件生成gif:

ffmpeg -r 10 -f image2 -i output/img%d.png -s 448x256 -vf "split[s0][s1];[s0]palettegen=stats_mode=single[p];[s1][p]paletteuse=new=1" output/slomo.gif

在docker中运行

将预训练模型放置在train_log/\*.pkl中(如上所述)。

构建容器:

docker build -t rife -f docker/Dockerfile .

运行容器:

docker run --rm -it -v $PWD:/host rife:latest inference_video --exp=1 --video=untitled.mp4 --output=untitled_rife.mp4
docker run --rm -it -v $PWD:/host rife:latest inference_img --img img0.png img1.png --exp=4

使用GPU加速(需要为docker配置合适的GPU驱动程序):

docker run --rm -it --gpus all -v /dev/dri:/dev/dri -v $PWD:/host rife:latest inference_video --exp=1 --video=untitled.mp4 --output=untitled_rife.mp4

评估

下载我们论文中提到的 RIFE 模型RIFE_m 模型

UCF101: 在 ./UCF101/ucf101_interp_ours/ 下载 UCF101 数据集

Vimeo90K: 在 ./vimeo_interp_test 下载 Vimeo90K 数据集

MiddleBury: 在 ./other-data 和 ./other-gt-interp 下载 MiddleBury OTHER 数据集

HD: 在 ./HD_dataset 下载 HD 数据集。我们还提供一个 google drive 下载链接

# RIFE
python3 benchmark/UCF101.py
# "PSNR: 35.282 SSIM: 0.9688"
python3 benchmark/Vimeo90K.py
# "PSNR: 35.615 SSIM: 0.9779"
python3 benchmark/MiddleBury_Other.py
# "IE: 1.956"
python3 benchmark/HD.py
# "PSNR: 32.14"

# RIFE_m
python3 benchmark/HD_multi_4X.py
# "PSNR: 22.96(544*1280), 31.87(720p), 34.25(1080p)"

训练与复现

下载 Vimeo90K 数据集

我们使用 16 核 CPU、4 张 GPU 和 20GB 内存进行训练:

python3 -m torch.distributed.launch --nproc_per_node=4 train.py --world_size=4

版本历史

2021年3月18日 arXiv: 修改主要实验数据,尤其是与运行时间相关的问题。

2021年8月12日 arXiv: 移除预训练模型依赖,并提出用于帧插值的特权蒸馏方案。移除 census loss 监督。

2021年11月17日 arXiv: 支持任意时间点的帧插值,即 RIFEm,并增加了更多实验。

推荐

我们诚挚推荐以下相关论文:

CVPR22 - 通过视频帧插值优化视频预测

CVPR22 - 基于 Transformer 的视频帧插值

CVPR22 - IFRNet:用于高效帧插值的中间特征精炼网络

CVPR23 - 用于视频预测的动态多尺度体素流网络

CVPR23 - 通过帧间注意力提取运动和外观信息以实现高效视频帧插值

引用

如果您认为本项目有所帮助,请随时点赞或引用我们的论文:

@inproceedings{huang2022rife,
  title={实时视频帧插值中的中间光流估计},
  author={Huang, Zhewei and Zhang, Tianyuan and Heng, Wen and Shi, Boxin and Zhou, Shuchang},
  booktitle={欧洲计算机视觉会议(ECCV)论文集},
  year={2022}
}

参考文献

光流: ARFlow pytorch-liteflownet RAFT pytorch-PWCNet

视频插值: DVF TOflow SepConv DAIN CAIN MEMC-Net SoftSplat BMBC EDSC EQVI

版本历史

arxiv_v5_code2021/08/13

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|2周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

160.4k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

109.2k|★★☆☆☆|昨天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架