位置: IT常识 - 正文

UNI-APP 人脸识别分析及实现(前端)(unik面部识别怎么用)

编辑:rootadmin
UNI-APP 人脸识别分析及实现(前端) APP开发一个人脸识别,实现刷脸功能实现流程:

推荐整理分享UNI-APP 人脸识别分析及实现(前端)(unik面部识别怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uniapp人脸识别打卡,uniapp人脸识别登录,uniapp人脸识别身份证,uniapp人脸识别方案,uniapp人脸识别上传,uniapp人脸识别上传,uniapp人脸识别上传,uniapp人脸识别方案,内容如对您有帮助,希望把文章链接给更多的朋友!

UNI-APP 人脸识别分析及实现(前端)(unik面部识别怎么用)

1、打开摄像头——自动读取照片——传输给后端——后端交由第三发或自主开发来识别——返回结果(相识度比) 2、打开摄像头——自动读取视频——传输给后端——后端通过解析视频,截取图片交由第三发或自主开发来识别——返回结果(相识度比) 通过分析,只需要做两步骤:打开摄像头和自动读取视频或照片

打开摄像头

分步骤分析:打开摄像头,并展示视频效果在html上,目前有两种方式: 1、使用camera组件进行,借用.createcameracontext()对象来打开摄像头(由于平台差异,uniapp不能在App、H5、支付宝/字节跳动/飞书/360小程序中使用) 2、通过livepusher对象(直播推流技术)实现视频预览和截屏 现在就有两种获取推流的方式了:第一种是nvue开发,第二种vue开发 如果是nvue开发,可以直接使用live-pusher组件进行直播推流,如果是vue开发,则需要使用h5+的plus.video.LivePusher对象来获取

使用NVUE来开发人脸识别

实际实现流程:调用手机摄像头创建直播推流 → 自动截图 → 压缩图片为base64格式→ 上传图片到服务器 → 服务器调用阿里人脸api → 阿里api返回该图片与底图的相似度

html部分<template> <view><div class="custom" :style="{height: CustomBar+'px'}"><view class="navcontent" :style="[{top:statusBar + 'px'}]"><text style="color: #FFFFFF;font-size: 16px;line-height: 45px;" class="iconfont icon-xiangzuo" @click="BackPage">返回</text><text style="color: #FFFFFF;font-size: 16px;line-height: 45px;">人脸识别</text><text></text></view></div> <div class="livefater"><div style="width: 350px;height: 350px;border-radius: 350px;overflow: hidden;background-color: #CCCCCC;"><live-pusher id='livePusher' ref="livePusher" class="livePusher" url=""mode="SD" :muted="true" :enable-camera="true" :auto-focus="true" :beauty="1" whiteness="2"aspect="1:1" @statechange="statechange" @netstatus="netstatus" @error = "error"></live-pusher></div><cover-image src="../static/image/gai.png" class="gaiimg"></cover-image></div> <button class="btn" @click="startPreview">打开摄像头进行人脸识别</button> </view></template>js部分 export default { data: { fil: true,imgList:[""],statusBar:'',CustomBar: 0 },onLoad(){// this.startPreview()}, onReady() { // 注意:需要在onReady中 或 onLoad 延时 this.context = uni.createLivePusherContext("livePusher", this);var that = thisuni.getSystemInfo({ success:function(e){ // 计算导航栏高度that.statusBar = e.statusBarHeight // #ifndef MP if(e.platform == 'android') { that.CustomBar = e.statusBarHeight + 50 }else { that.CustomBar = e.statusBarHeight + 45 } console.log(that.statusBar)// #endif // #ifdef MP-WEIXIN let custom = wx.getMenuButtonBoundingClientRect() that.CustomBar = custom.bottom + custom.top - e.statusBarHeight // #endif // #ifdef MP-ALIPAY that.CustomBar = e.statusBarHeight + e.titleBarHeight // #endif }}) }, methods: {Timer(){}, statechange(e) { console.log("statechange:" + JSON.stringify(e)); }, netstatus(e) { console.log("netstatus:" + JSON.stringify(e)); }, error(e) { console.log("error:" + JSON.stringify(e)); }, start: function() { this.context.start({ success: (a) => { console.log("livePusher.start:" + JSON.stringify(a)); } }); }, close: function() { this.context.close({ success: (a) => { console.log("livePusher.close:" + JSON.stringify(a)); } }); },// 拍照事件 snapshot: function() {var that = this this.context.snapshot({ success: (e) => { console.log(JSON.stringify(e));that.getMinImage(e.message.tempImagePath) } }); },// 开启摄像头 startPreview() {console.log("1")var that = this this.context.startPreview({ success: (a) => { console.log("livePusher.startPreview:" + JSON.stringify(a));that.Timer = setInterval(function(){that.snapshot()if(that.imgList.length>3){console.log("3")clearInterval(that.Timer)}},2000) } }); },// 使用plus.zip.compressImage压缩图片并转换成base64getMinImage(imgPath) {plus.zip.compressImage({src: imgPath,dst: imgPath,overwrite: true,quality: 40},zipRes => {setTimeout(() => {var reader = new plus.io.FileReader();reader.onloadend = res => {var speech = res.target.result; //base64图片console.log(speech);this.imgList.push(speech);};//一定要使用plus.io.convertLocalFileSystemURL将target地址转换为本地文件地址,否则readAsDataURL会找不到文件reader.readAsDataURL(plus.io.convertLocalFileSystemURL(zipRes.target));}, 1000);},function(error) {console.log('Compress error!', error);});},BackPage() {uni.navigateBack({delta: 1});} } }css部分.custom{background-color: #2C65F7;}.navcontent{height: 45px;display: -ms-flex;display: -webkit-flex;display: flex;justify-content:space-around;flex-direction:row;color:#FFFFFF;}.livePusher{width: 350px;height: 350px;}.livefater{display: -ms-flex;display: -webkit-flex;display: flex;justify-content:center;flex-direction:column;align-items:center;margin-top: 50rpx;margin-bottom: 50rpx;height: 350px;}.gaiimg{width: 350px;height: 350px;margin-top: -350px;}使用微信小程序开发人脸识别

微信小程序开发人脸识别,有很大的限制,在于资质审核。 微信文档

本文链接地址:https://www.jiuchutong.com/zhishi/283737.html 转载请保留说明!

上一篇:无痛人流多少钱(无痛人流多少钱?)

下一篇:最新小程序反编译详细教程,亲测可用(小程序在线反编译网页版)

  • 台式机网卡驱动异常怎么修复(台式机网卡)(台式机网卡驱动装不上)

    台式机网卡驱动异常怎么修复(台式机网卡)(台式机网卡驱动装不上)

  • opporeno 4pro是5g手机还是4g呢(opporeno4pro5g好用吗?)

    opporeno 4pro是5g手机还是4g呢(opporeno4pro5g好用吗?)

  • m881q是魅族什么型号(m81是魅族什么型号)

    m881q是魅族什么型号(m81是魅族什么型号)

  • 该商户仅支持150元以内的花呗订单(该商户仅支持150以内)

    该商户仅支持150元以内的花呗订单(该商户仅支持150以内)

  • 门禁卡复制成功不能用怎么解决(门禁卡复制成功数据一致但打不开门)

    门禁卡复制成功不能用怎么解决(门禁卡复制成功数据一致但打不开门)

  • 华为手机闹铃声音在哪设置(华为手机闹铃声音小)

    华为手机闹铃声音在哪设置(华为手机闹铃声音小)

  • xsmax跑分多少才正常

    xsmax跑分多少才正常

  • cpu中的控制器的功能是什么(cpu中控制器的作用)

    cpu中的控制器的功能是什么(cpu中控制器的作用)

  • 蓝牙耳机放进充电仓是自动充电吗(蓝牙耳机放进充电仓一直亮红灯)

    蓝牙耳机放进充电仓是自动充电吗(蓝牙耳机放进充电仓一直亮红灯)

  • 手机发视频对方听不见声音(手机发视频对方听不到声音)

    手机发视频对方听不见声音(手机发视频对方听不到声音)

  • 手机显示3g怎么回事(手机显示3g怎么调成4g)

    手机显示3g怎么回事(手机显示3g怎么调成4g)

  • 荣耀9时间设置(荣耀时间设置在手机哪里)

    荣耀9时间设置(荣耀时间设置在手机哪里)

  • ipad支持快充吗(苹果2019款ipad支持快充吗)

    ipad支持快充吗(苹果2019款ipad支持快充吗)

  • qq等待验证是什么意思(qq等待验证是什么意思多久会没有)

    qq等待验证是什么意思(qq等待验证是什么意思多久会没有)

  • 美图秀秀不发布就不能保存吗(美图秀秀 发布)

    美图秀秀不发布就不能保存吗(美图秀秀 发布)

  • 多媒体有源音箱怎么连手机(漫步者多媒体有源音箱)

    多媒体有源音箱怎么连手机(漫步者多媒体有源音箱)

  • oppor17充电是40瓦吗(oppor17的充电功率)

    oppor17充电是40瓦吗(oppor17的充电功率)

  • 快手直播伴侣看不到字幕(快手直播伴侣看不到互动消息)

    快手直播伴侣看不到字幕(快手直播伴侣看不到互动消息)

  • 光影精灵5键盘怎么亮(光影精灵5键盘灯怎么换颜色)

    光影精灵5键盘怎么亮(光影精灵5键盘灯怎么换颜色)

  • 进微信密码怎么设置(进微信密码怎么改密码)

    进微信密码怎么设置(进微信密码怎么改密码)

  • 饿了吗取消订单的影响(饿了吗取消订单骑手会怎么样)

    饿了吗取消订单的影响(饿了吗取消订单骑手会怎么样)

  • 华为运动健康怎么使用(华为运动健康怎么关闭锁屏显示)

    华为运动健康怎么使用(华为运动健康怎么关闭锁屏显示)

  • 微信当日步数怎么抹除(微信当日步数怎么删掉 知乎)

    微信当日步数怎么抹除(微信当日步数怎么删掉 知乎)

  • 大华无法找到网络主机(大华找不到网络主机和网络断线)

    大华无法找到网络主机(大华找不到网络主机和网络断线)

  • vue3 响应式 API 之 ref(vue3 响应式ui框架)

    vue3 响应式 API 之 ref(vue3 响应式ui框架)

  • 织梦教程:首页、列表页调用文章body内容的两种方法(织梦官网)

    织梦教程:首页、列表页调用文章body内容的两种方法(织梦官网)

  • 进口环节消费税需要自行申报吗
  • 什么是企业税务登记号
  • 企业异地迁移
  • 计入税金及附加的税种口诀
  • 注册资本 投资比例
  • 转让不动产销项税
  • 应交税费明细表填制
  • 应收账款借方负数的会计分录怎么做
  • 接受实物投资纳印花税怎么缴纳?
  • 写字楼出租可以给租户注册吗
  • 购买电脑的方案
  • 公司职员聚餐取个名字
  • 税收奖励需要纳税吗
  • 设备租赁涉及税种
  • 小规模银行存款多笔小金额财务费用可以合并记账吗?
  • 代购商品委托书怎么写
  • 一般纳税人企业所得税政策最新2023
  • 企业怎么才能开100万发票
  • 母子公司之间的借款利息支出增值税能否抵扣
  • 生物制品税率3%税率什么时候开始的
  • 科技推广和应用服务业
  • 证券权益包括哪些内容
  • linux版笔记本什么意思
  • Win10新版21364发布: 可直接运行Linux图形程序
  • thinkphp表单提交
  • ajax调用php函数
  • npm info: node: --openssl-legacy-provider is not allowed in NODE_OPTIONS
  • Vue3 入门笔记 ---- 利用Element Plus对页面进行布局划分以及实现左侧公共菜单
  • 野生动植物种源包括
  • 外经证逾期未核实怎么办
  • php中实现文件上传需要用到哪几个函数
  • 百慕大玛丽号
  • php str_split
  • php路由教程
  • yolo改进方法
  • 语义特征的语法学概念
  • 前端es2020
  • python getpass模块
  • 缴纳工会筹备金可以计入工会经费科目吗
  • 跨年坏账准备转回
  • 成本费用票包括哪些
  • 一般纳税人和小规模公司怎么区分
  • MongoDB的mongo shell常用操作方法及操作脚本笔记
  • 国债收益率如何查看
  • 交强险怎么报警
  • 企业利润分配的内容
  • 兼职收入用缴纳增值税吗
  • 固定资产接受捐赠的条件
  • 公司借给股东钱
  • 编制现金流量表应以什么为基础
  • 双倍余额递减法例题及解析
  • 仓库管理人员工资属于什么费用
  • 困难补助属于兜底政策吗
  • 公司给员工租的宿舍如何做分录
  • 生产成本福利费如何分摊
  • 没有票的成本怎么处理
  • 购入土地使用权以什么为计税依据
  • 国家也通过国有企业利用自己的财政资金
  • 旅游饮食服务企业的特点包括
  • mysql 5.7 8.0
  • sql server中的文件位置可以很灵活
  • 取消默认
  • xp系统怎么删除应用程序
  • linux rpm如何安装
  • win8粘贴板
  • linux卸载安装
  • javascript中的继承
  • 安卓开源部分叫什么
  • pg搭建
  • eclipse创建android项目
  • 使用脚本什么意思
  • 基于jquery的框架有哪些
  • jquery动态设置div高度
  • python抢红包
  • python中按下某个按键
  • 社保由税务部门征收的文件
  • 广东省行业税负率表
  • 别墅与普通住宅的优缺点
  • 个人所得税税收政策2023最新规定
  • 强化管理定义
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设