android 自动截取人脸,【前端】H5人脸实时识别自动截取人脸照片

本文探讨了在H5环境中实现移动端人脸认证并集成到微信公众号的难点,包括自定义相机遮罩、实时人脸识别以及浏览器兼容性问题。尽管存在困难,作者通过getUserMedia API和trackingjs库实现了部分功能,但兼容性仍有待改善。提供了在线演示和实现原理,鼓励读者深入研究和测试。
摘要由CSDN通过智能技术生成

一、前言

因公务业务需要,需要移动端H5人脸认证后开门,而且要在微信浏览器中,也就是嵌入到公众号里。

e53dc42bb394aab5bfa265cf1efe8b09.png

这要是放在App上做,其实不算什么难点。关键在于他喵的是网页!!!

划重点:网页!!

总所周知,h5调用相机拍照或者摄像,一般用一个input:

复制代码

这样当你点击input的时候,会唤醒手机自带的相机,进行拍摄或者拍照。

二、分析

难点1 自定义一个这样的遮罩在相机里,完全是异想天开。

难点2 实时进行人脸识别,因为唤醒相机进行录像完全是在录像,你不能操作视频流。

难点3 各类厂商的浏览器兼容性问题。(突出在IOS和安卓)。

三、思考

咋办捏?

办法1 跟客户说做不了网页的,要么搞个App?

办法2 删库跑路??

其实没有这么极端,产品去看了别家的做法,同样也达不到这个理想的效果,都是用input去调自带的相机。

好吧,老老实实用这样办法搞定了。但是我想继续深入研究一下这方面,所以有了这篇文章。

四、来个在线演示吧 在线人脸检测

ad637f6cf8db8e9e7dac952499a03934.gif

实现了难度1和2,但是对于各种手机和浏览器的兼容情况就不怎么理想。

机型

小米浏览器

微信浏览器

QQ浏览器

UC

Chrome

猎豹

Safari

小米8

fail

pass

pass

pass

pass

pass

--

iphone7P

--

fail

--

--

--

--

fail

华为mate20

--

pass

--

--

--

--

--

华为mate30

--

pass

--

--

--

--

--

-- 代表没测

只有小米8都测了是因为是我自己的手机,其他的都是直接微信发给同事测的。

下面放上地址,大家可以帮忙测试一下!

五、实现原理

H5的API: getUserMedia + 人脸检测: trackingjs

实现起来并不难,关键是兼容性的问题。

5.1 getUserMedia

94ba31ab3c1ba874bf188cb481820855.png

5.2 trackingjs

4604860fd57b10d463b0fa73706f3c8b.png

5.3 将这两者结合使用即可

链接都放出来了,感兴趣的童鞋可以去深入了解,结合自己需求做出相应的产品来。

六、后话

虽然说有这个getUserMedia API可以去调用摄像头,但是兼容性始终没有很好的解决。期待各厂商可以支持。

trackingjs可以检测人脸、眼睛、嘴巴和颜色,在线demo中仅仅使用了人脸检测功能。

欢迎大家踊跃提问和发挥idea。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值