❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 功能整合:SVFR 整合了视频人脸修复、着色和修复任务,提供统一的处理框架。
- 技术优势:基于 Stable Video Diffusion 的生成和运动先验,确保修复效果的时间连贯性。
- 应用场景:适用于影视后期制作、网络视频内容创作和数字档案修复等领域。
正文(附运行示例)
SVFR 是什么
SVFR(Stable Video Face Restoration)是腾讯优图实验室与厦门大学联合推出的通用视频人脸修复框架。它整合了视频人脸修复(BFR)、着色和修复任务,基于 Stable Video Diffusion(SVD)的生成和运动先验,通过统一的人脸修复框架处理特定任务的信息。
SVFR 引入了可学习的任务嵌入以增强任务识别,同时采用统一潜在正则化(ULR)来鼓励不同子任务之间的共享特征表示学习。为了进一步提高修复质量和时间稳定性,SVFR 还引入了面部先验学习和自参考细化策略。
SVFR 的主要功能
- 视频人脸修复(BFR):提升视频中人脸的细节和清晰度,使模糊或损坏的人脸画面变得更加清晰和自然。
- 人脸着色:为黑白或色彩失真的视频人脸添加生动的色彩,增强视觉效果。
- 人脸修复(Inpainting):修复视频中人脸的缺失部分,如遮挡或损坏的区域,恢复完整的人脸细节。
SVFR 的技术原理
- 任务整合:SVFR 整合了视频人脸修复、着色和修复任务,通过一个统一的框架处理这些任务,实现协同增益。
- 生成和运动先验:基于 Stable Video Diffusion 的生成和运动先验,增强修复效果,确保时间连贯性。
- 任务嵌入:引入可学习的任务嵌入,增强模型对特定任务的识别能力。
- 统一潜在正则化(ULR):采用 ULR 方法,鼓励不同子任务之间的特征共享,提升修复质量。
- 面部先验学习:通过面部地标等结构先验,模型可以更自然地嵌入面部结构信息,避免面部结构异常和纹理失真。
- 自引用细化:在推理阶段,通过参考之前生成的帧来优化当前帧的修复结果,增强时间稳定性。
如何运行 SVFR
1. 环境配置
首先,创建一个 conda 环境并安装依赖:
conda create -n svfr python=3.9 -y
conda activate svfr
pip install torch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2
pip install -r requirements.txt
2. 下载模型
下载 Stable Video Diffusion 和 SVFR 的预训练模型:
conda install git-lfs
git lfs install
git clone https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt models/stable-video-diffusion-img2vid-xt
手动下载 SVFR 的模型文件并放置在指定目录。
3. 运行推理
使用以下命令进行单任务或多任务推理:
python3 infer.py \
--config config/infer.yaml \
--task_ids 0 \
--input_path ./assert/lq/lq1.mp4 \
--output_dir ./results/
其中,task_ids
参数指定任务类型:
0
:视频人脸修复(BFR)1
:人脸着色2
:人脸修复(Inpainting)
资源
- 项目官网:https://wangzhiyaoo.github.io/SVFR
- GitHub 仓库:https://github.com/wangzhiyaoo/SVFR
- arXiv 技术论文:https://arxiv.org/pdf/2501.01235
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦