【抠图工具】图片、视频自动抠图(VideoMatting)


前言

本人之前相对视频做一个抠图处理,奈何手工逐帧抠肯定不行,本来想在网上找找有没有好用且免费的抠图工具,看到有非常多人推荐一款在线抠图的网站,叫什么无绿幕抠图。我就抱着好奇点开试了一试,结果效果还是很差,而且只是生成了gif动图。综合观察,奈何要么收费,要么就是效果很差。

所以,本人也就搜集了一下目前比较好的抠图算法,看到一篇《Robust High-Resolution Video Matting with Temporal Guidance》论文。于是想着借鉴一下制作一个可以直接供人拿来用的抠图工具。但是效果还不是很好,而且工具还有一些bug,不过现在先凑合用吧,有需要的人可以试一试。


提示:工具只是个半成品,打开、关闭还有处理过程中还没完善。

一、Video、Picture处理效果

示例:在人像背景较为单调的场景,效果还是不错。但是背景与人像颜色相近的地方效果较差,这也是目前大多数算法主要解决的问题。

1.图片抠图效果

原图

1.1原图

在这里插入图片描述

1.2 其他方法效果

在这里插入图片描述

1.3 本工具效果

原图

2.1 原图

在这里插入图片描述

2.2 其他方法效果

在这里插入图片描述

2.3 本工具效果

在这里插入图片描述

3.1 原图

在这里插入图片描述

3.2 其他方法效果

在这里插入图片描述

3.3 本工具效果

在这里插入图片描述

4.1 原图

在这里插入图片描述

4.2 其他方法效果

在这里插入图片描述

4.3 本工具效果

2.视频抠图效果

在这里插入图片描述

2.1 原视频

在这里插入图片描述

2.2 这是无绿幕免费在线处理效果

在这里插入图片描述

2.3 本工具处理效果

总结:
相较于免费的抠图工具,视频抠图效果还好,但是还有一些较为模糊的画面处理的不是很好。在图片抠图效果上,某些场景可能效果较差。

二、采用的方法

在这里插入图片描述

作者原代码为pytorch环境上训练的类Unet结构模型。主要分类编码、解码与上采样输出几个部分,具体不再赘述,可参考一下别人的分析博客
训练所使用的数据集包括:人像语义分割数据集、matting抠图数据集。采用的损失包括了:alpha通道L1损失与拉普拉斯金字塔损失、时序相关性损失、fg部分的L1损失和时序相关损失。将模型权重文件转换为onnx模型,本来想做个量化,所以现在处理时间可能稍久···,所以可以考虑后续加快预测处理速度,增加半精度选择、模型剪枝量化处理吧。

三、使用步骤

直接打开根目录下的Matting tool by CS.exe。

1.Data选择

Input Dir:选择所需处理的视频、图片;
Output Dir:选择保存位置文件夹;
Model weight:模型权重,选择weights文件夹下的model.onnx;
在这里插入图片描述

2.Advance设置

Show Result:可以实时显示处理过程(但由于显示控件问题,弹出显示了),但是由于cv2显示会影响处理速度,可以考虑去掉勾勾;
mode:选择处理的是视频还是图片;
background color:选择抠图背景颜色,默认绿幕;

3.Start Run

点击Start Run按钮开始处理,可通过命令行窗口查看当前处理进度(注意处理时不要关闭这个窗口)。如果不想处理了,可以点击Close Run按钮结束处理进程。
最终输出为output(+audio).mp4视频或者out.jpg图片。
工具可从网盘获取,目前bug较多,效果有限,仅供娱乐。
···百度云盘··· 提取码:1122

总结

训练效果有限,处理速度受限于设备配置情况,后续考虑做个剪枝量化处理。

更新:V1.3
又更新啦,有小伙伴反馈需要批量处理图片,我将原始功能按键做了修改,将输入改为了Input Images(选择多张图片的文件夹)和Input Video(选择单个视频文件)。从而可以批量处理图片了。
更新[b]下载地址在这里:
···百度云盘···
提取码:1210。
下载安装软件,里面有个小彩蛋,喜欢的可以打赏哦,感谢!
视频插帧软件还在加急制作中,五一劳动节快乐!

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值