RVM:AI实时视频抠图,完美绿幕诞生

最近由字节跳动开源的一套人工智能视频抠图方案火了,RVM(Robust Video Matting)专为稳定人物视频抠像设计。不同于现有神经网络将每一帧作为单独图片处理,RVM 使用循环神经网络,在处理视频流时有时间记忆。RVM 可在任意视频上做实时高清抠像。在 Nvidia GTX 1080Ti 上实现 4K 76FPS 和 HD 104FPS。目前虽没有面向大众的简易工具,但是基于 torch、onnx 和 ncnn 的模型均已放出,可见其受欢迎程度。

0. 效果截图

1. Colab 在线尝鲜

Colab 入口

步骤主要有三步,第一步上传待处理的视频或图片;第二步:安装 Python 等环境依赖第三步:使用 Pytorch 加载模型并设置导出路径

视频处理完毕后,会在当前目录下生成三个文件。

  • com.mp4:在绿幕背景上合成的抠图结果。
  • pha.mp4:原始的 alpha 遮罩。
  • fgr.mp4:原始前景预测。

2. 本地尝鲜

首先下载项目到本地,然后解压并进入目录,执行安装依赖环境命令:

pip install -r requirements_inference.txt

然后加载模型

import torch
from model import MattingNetwork

model = MattingNetwork('mobilenetv3').eval().cuda()  # 或 "resnet50"
model.load_state_dict(torch.load('rvm_mobilenetv3.pth'))

上述步骤也可以直接从 Pytorch 直接加载模型

# 加载模型
model = torch.hub.load("PeterL1n/RobustVideoMatting", "mobilenetv3") # 或 "resnet50"

# 转换 API
convert_video = torch.hub.load("PeterL1n/RobustVideoMatting", "converter")

最后一步,视频入口及出口设置:

from inference import convert_video

convert_video(
    model,                           # 模型,可以加载到任何设备(cpu 或 cuda)
    input_source='input.mp4',        # 视频文件,或图片序列文件夹
    output_type='video',             # 可选 "video"(视频)或 "png_sequence"(PNG 序列)
    output_composition='output.mp4', # 若导出视频,提供文件路径。若导出 PNG 序列,提供文件夹路径
    output_video_mbps=4,             # 若导出视频,提供视频码率
    downsample_ratio=None,           # 下采样比,可根据具体视频调节,或 None 选择自动
    seq_chunk=12,                    # 设置多帧并行计算
)

3. 手机端体验

可以参考该 GitHub 地址:https://github.com/FeiGeChuanShu/ncnn_Android_RobustVideoMatting

4. 速度

速度用 inference_speed_test.py 测量以供参考。

GPU dType HD (1920x1080) 4K (3840x2160)
RTX 3090 FP16 172 FPS 154 FPS
RTX 2060 Super FP16 134 FPS 108 FPS
GTX 1080 Ti FP32 104 FPS 74 FPS

5. 应用开发

目前的应用范围主要偏向专业人员,未来或许会出现更多跨终端的 GUI 视图,方便普通人开箱即用。不过该项目采用 GPL 协议,意味着商用困难,想要普通人用得起,对开发者而言没有利好,只能用爱发电。虽然 ResNet 诞生于 2015,但是近几年的论文中并未有效果显著的新模型出现,说明图像模型这块基本趋于自满状态,从 pt 文件,转到 onnx,再转到 ncnn 已经非常成熟,唯一卡住的地方就是基于 C 语言的 ncnn 编程。所以想要大众用得起的 GUI 视图,还需要打通 ncnn 到 go 版本的转换,遗憾的是目前尚未有人尝试这么做。假如有 go 版 ncnn,那么就可以很方便的使用 wails 打包跨终端的应用。

联系方式
广告
网站统计

累计发布:211 篇

总点赞量:1322

累计运行:5 年 198 天

建站日期:2018-10-25