vue项目人脸侦测(tracking.js)
Vue项目,利用tracking.js 实现人脸侦测(摄像头输入,图片同理)
1 <template> 2 <div> 3 <video autoplay playsinline ref="video" id="video"></video> 4 <canvas id="canvas" width="500" height="400" class="canvas"></canvas> 5 <div @click="submit">上传照片</div> 6 </div> 7 </template> 8 <script> 9 import tracking from '@/assets/js/tracking.js' 10 import '@/assets/js/face-min.js' 11 export default { 12 name: 'componentName', 13 data () { 14 return { 15 videoEle: null 16 } 17 }, 18 method () { 19 openCamera () { 20 let tracker = new window.tracking.ObjectTracker('face') 21 tracker.setStepSize(2); 22 // // 转头角度影响识别率 23 tracker.setEdgesDensity(0.13) 24 tracker.setInitialScale(5) 25 this.trackerTask = window.tracking.track('#video', tracker, {camera: true}) 26 tracker.on('track', (event) => { 27 if (event.data.length > 0) { 28 console.log('有头像') 29 //人脸位置矩形顶点 30 console.log(event.data) 31 } else { 32 console.log('没有头像') 33 } 34 }) 35 }, 36 submit () { 37 console.log('提交') 38 let that = this 39 let canvas = document.getElementById('canvas') 40 let context = canvas.getContext('2d') 41 let video = document.getElementById('video') 42 context.drawImage(video, 0,0, 500, 400) 43 canvas.toBlob((blob) => { 44 // window.open(URL.createObjectURL(blob)) 45 // blob 格式 图片url 46 // that.avatarUrl = URL.createObjectURL(blob) 47 axios.post({faceUrl: URL.createObjectURL(blob)}) 48 .then((res) => { 49 console.log('上传成功') 50 }) 51 }) 52 } 53 } 54 }, 55 mounted () { 56 this.videoEle = this.$refs.video 57 this.openCamera() 58 }, 59 destroyed () { 60 // 停止侦测 61 this.trackerTask.stop() 62 // 关闭摄像头 63 window.tracking.closeCamera() 64 } 65 }
转载随笔/文章请保留出处和署名,谢谢!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)