查看原文
其他

如何做到让屏幕中的人不翼而飞?这个JavaScript项目告诉你该怎么做!

TJ TJ君 2021-11-12

大家好,我是TJ

一个励志推荐10000款开源项目与工具的程序员


TJ君今天发现一个很好玩的项目,竟然只用JavaScript、js就可以使一个视频中的人物凭空消失!你说神奇不神奇?

那到底是怎么做到的呢?且听TJ君跟你慢慢道来

GitHub上该项目的名字是Real-Time-Person-Removal,翻译过来就是很形象的实时人物移除,效果自然是将人从视频背景不变的前提下移除掉。

为了实现这个目标,项目主要运用的技术就是JavaScript在web浏览器中使用TensorFlow.js,TensorFlow.js是一个开源的基于硬件加速的JavaScript库,用于训练和部署机器学习模型。

TJ君看了下代码,似乎作者还用到了谷歌一个预训练人像分割模型,将人像从图片中分割出来,以达到清除的效果。就是script.js文件中的这段代码:

// An object to configure parameters to set for the bodypix model.
// See github docs for explanations.
const bodyPixProperties = {
  architecture'MobileNetV1',
  outputStride16,
  multiplier0.75,
  quantBytes4
};

我们来看下实际运行中的消失效果,上下两段视频对比。

很像魔术对吧?你敢相信这一切都是在js里完成的吗?其中主要的功能函数是processSegmentation,有兴趣的小伙伴可以去看下,TJ君这里就不全部把代码贴出来了。

不过TJ君真的很佩服能写出这个逻辑的程序猿,短短的几个文件就实现了这么牛逼的功能,当然如果想直接尝试的小伙伴可以用在线试用地址直接尝试:https://codepen.io/jasonmayes/pen/GRJqgma,不过要关联你的摄像头哦。

想仔细研究其代码的小伙伴,赶紧赶紧,一起来研究下:

点击下方卡片,关注公众号“TJ君

回复“消失”,获取仓库地址


关注我,每天了解一个牛x、好用、有趣的东东

往期推荐

还在玩暗黑2重置版?国外大神都自己开源复刻,赶紧来学学!

一款告诉你历史价格的插件,双11购物必备!

一款简单易学的支付宝开源支付项目

强力 Java 爬虫工具

30秒就能学会代码?什么东西这么厉害?


: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存