有什么好用的去除视频背景颜色工具

2023-11-15 17:51:00 +08:00
 noobma

通过一些网站生成的数字人视频,用的绿色背景,视频内容就是一个站着的人在讲话,头有些轻微的转动,嘴巴会动,其他基本上就是不动的内容。

现在是通过 ffmpeg 进行颜色替换把 mp4 转成 webm ,但是在人的边缘和背景交界的地方,还是能看出绿色的颜色,要是调大 colorkey 的第二个参数,可能会把人身上的一些颜色给替换掉了。

下面这张图是 ffmpeg 替换的效果 https://imgur.com/a/Tytu8R8

所以现在求一个效果好的工具,最好是开源、免费的;要是收费的话,可以提供试用看效果的也可以

963 次点击
所在节点    程序员
11 条回复
ysc3839
2023-11-16 06:00:42 +08:00
效果好的 keying 算法应该没有开源的,基本是跟随一些专业剪辑软件提供的。
开源的基于 AI 的方案可以看看
ysc3839
2023-11-16 06:02:03 +08:00
可以看看 RobustVideoMatting ,不过这不是根据颜色来去除背景,而是通用的可以去除任何背景,但效果不一定比专业的 keying 算法好
https://peterl1n.github.io/RobustVideoMatting/#/
noobma
2023-11-16 10:11:05 +08:00
@ysc3839 谢谢大佬,在 colab 上试了下 RobustVideoMatting ,也在 https://replicate.com/explore?query=background 这里找了些 ai 的去除方案,效果都不太理想,人物边缘的绿色还是有😓

我在想用 ffmpeg 导出所有的图片,然后有没有什么工具可以识别人物轮廓的坐标,再沿着人物的轮廓把一圈的 1px 替换成透明的颜色,再把这些图片重新合成视频,最好是可以本地通过代码或者命令行调用的工具
ysc3839
2023-11-16 10:43:34 +08:00
@noobma 看看测试截图?印象中效果没那么差,该不会是没处理好边缘吧?
noobma
2023-11-16 11:16:01 +08:00
@ysc3839 https://imgur.com/a/NpiQ5YG
大佬你看看,是不是跟我调成了输出图片序列有关
noobma
2023-11-16 11:23:48 +08:00
@noobma 这是原视频截图
https://imgur.com/a/OYbsl02
ysc3839
2023-11-16 11:51:14 +08:00
@noobma 改成输出视频试试?需要改一下背景色,inference.py 115 行的 120,255,155 改成 0,0,0
ysc3839
2023-11-16 11:55:34 +08:00
StubbornHuang
2023-11-16 16:59:22 +08:00
可以考虑 AI 的方案,前段时间刚刚开发过一个类似的产品,抠除人像效果还不错,对于不复杂的背景感觉效果很好
foursking
112 天前
@noobma 请问找到好的方式了吗
foursking
112 天前
@StubbornHuang 具体产品名字有吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/992194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX