位置: 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 转载请保留说明!

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

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

  • 苹果13promax怎么关闭专注模式(苹果13promax怎么设置来电铃声)

    苹果13promax怎么关闭专注模式(苹果13promax怎么设置来电铃声)

  • iqoo8pro怎么打开节日壁纸(iqoo8pro怎么打开液冷散热)

    iqoo8pro怎么打开节日壁纸(iqoo8pro怎么打开液冷散热)

  • alook是什么(abook是什么意思中文)

    alook是什么(abook是什么意思中文)

  • 返送中是什么意思(反送zhong什么意思)

    返送中是什么意思(反送zhong什么意思)

  • 卡贴机不能随意切换飞行模式(卡贴机会突然不能用吗)

    卡贴机不能随意切换飞行模式(卡贴机会突然不能用吗)

  • 设置透明色只能一部分(设置为透明)

    设置透明色只能一部分(设置为透明)

  • 发货地址和实际发货地址不一样(发货地址和实际发货地址不一样客服怎么处理)

    发货地址和实际发货地址不一样(发货地址和实际发货地址不一样客服怎么处理)

  • z390和b365主板区别(z390比b365好在哪)

    z390和b365主板区别(z390比b365好在哪)

  • 主机进水了第一时间怎么处理(主机进水了第一天开不了)

    主机进水了第一时间怎么处理(主机进水了第一天开不了)

  • 剪映怎么把照片做成视频(剪映怎么把照片做成动态视频)

    剪映怎么把照片做成视频(剪映怎么把照片做成动态视频)

  • 抖音怎么看电影完整版(抖音怎么看电影入口)

    抖音怎么看电影完整版(抖音怎么看电影入口)

  • 拍立得为什么拍出来是黑色的(拍立得为什么拍出来偏的)

    拍立得为什么拍出来是黑色的(拍立得为什么拍出来偏的)

  • p30可以无线充电吗(p30可以无线充电不)

    p30可以无线充电吗(p30可以无线充电不)

  • 苹果手机微信电话不显示来电界面(苹果手机微信电话声音特别小)

    苹果手机微信电话不显示来电界面(苹果手机微信电话声音特别小)

  • 如何永久存储大量照片(如何永久存储大文档)

    如何永久存储大量照片(如何永久存储大文档)

  • 手机qq怎么修改昵称(手机qq怎么修改密码)

    手机qq怎么修改昵称(手机qq怎么修改密码)

  • word数字字体改不了(word如何改数字字体)

    word数字字体改不了(word如何改数字字体)

  • 无互联网连接是怎么回事(无互联网络链接怎么回事)

    无互联网连接是怎么回事(无互联网络链接怎么回事)

  • airpods刻了字还能退吗(airpods刻了字还能退货吗)

    airpods刻了字还能退吗(airpods刻了字还能退货吗)

  • 麒麟990与骁龙855哪个厉害(麒麟990与骁龙855差多少)

    麒麟990与骁龙855哪个厉害(麒麟990与骁龙855差多少)

  • 怎么设置别人打电话提示关机(怎么设置别人打电话提示空号)

    怎么设置别人打电话提示关机(怎么设置别人打电话提示空号)

  • 小程序怎么推广(小程序怎么推广会比较好)

    小程序怎么推广(小程序怎么推广会比较好)

  • 骁龙710性能如何(骁龙710什么水平)

    骁龙710性能如何(骁龙710什么水平)

  • 使用Vue脚手架配置代理服务器的两种方式(vue脚手架配合springsecurity)

    使用Vue脚手架配置代理服务器的两种方式(vue脚手架配合springsecurity)

  • 快递费包不包括送货上门
  • 车船税的免征对象是什么
  • 付款方和发票抬头不一致如何账务处理
  • 企业所得税税前扣除政策
  • 退货一定要卖家同意吗
  • 税务局三代手续费政策
  • 即将发生坏事的预兆
  • 待报解预算收入付款怎么做账
  • 制造企业需要设哪些部门
  • 饮料工业发展前景如何
  • 非居民企业投资收益
  • 小规模纳税人汇算清缴要填什么表
  • 销项进项怎么转化
  • 来料加工税务账应采取哪种核算方式?
  • 施工企业结算金额怎么算
  • 道路施工企业的财务核算包括
  • 公司罚款作为一种对过错方式的处罚
  • 年薪制有什么好处
  • 二手房增值营业税
  • 健身房属于什么经营类别
  • 个体工商年报填写
  • 合作社未按时报税怎么处理?
  • 收到质量赔偿款从总账做账可以
  • 广告公司确认收入怎么写
  • 上月的应付账款怎么记账
  • 客户的佣金怎么处理
  • 企业内部股权划拨流程
  • 微信转账截图可以p图吗
  • 车辆拍卖怎么过户
  • 前端向后端发送请求
  • 营改增全面推开为什么还叫试点
  • 零基础java从入门到精通
  • 财务运作规律
  • 分期收款销售账务处理及税务处理
  • vue3.0 vite
  • 残疾人就业保障金计入什么科目
  • 预付卡怎么开票
  • spring bootcsdn
  • /t python
  • 阿里什么
  • vue父子组件传值
  • html+php
  • php css教程下载
  • 外经证还有几天到期延期需要的资料
  • 进项税额在借方是增加还是减少
  • 所得税汇算清缴需要调增的项目
  • sql 生成新表
  • 出租营改增之前取得的有形动产
  • 工会经费发放奖励个税处理
  • mongodb视频教程
  • 代开发票可能遇到的问题是?
  • 企业所得税是哪种
  • 如何开具污水处理证明
  • 公司汽车维修
  • 结转资金和结余资金的含义
  • 一次性开票分期确认收入已什么做原始凭证
  • 商业企业库存商品
  • SQL函数substr使用简介
  • sql修改表的所属空间
  • sql server存储过程教程
  • linux的head命令
  • Ubuntu 14.04安装java的方法以Ubuntu14.04为例
  • win10mobile还能用吗
  • 怎么在win7系统看蓝牙
  • windows8安装步骤
  • matplotlib pypi
  • sql怎么设置自增列
  • windows下安装nas
  • unity优化gc
  • 怎么用bootstrap搭建网站
  • android设置移动网络灰色是什么原因
  • 安卓框架是什么怎么用
  • Python cx_freeze打包工具处理问题思路及解决办法
  • javascript基础笔记
  • javascript教程 csdn
  • jquery设置滚动条
  • jqgrid 动态表头
  • 深入理解新发展理念
  • 税务退休工资
  • 税务区域代码怎么填
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设